updates for deals
This commit is contained in:
parent
7809f6fac4
commit
829f7b4c4b
@ -67,7 +67,7 @@ export default class DealsListDeal extends React.Component
|
|||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<p>
|
<p>
|
||||||
{ statuses[ statuscode_id ].index === undefined ? "Не начата" : `${ statuses[ statuscode_id ].index } ${ pluralize(step, 'этапа', 'этап', 'этапа', 'этапов') } ${ pluralize(statuses[ statuscode_id ].index, 'пройдено', 'пройден', 'пройдено', 'пройдено') }` }
|
{ statuses[ statuscode_id ].index === undefined ? "Новая сделка" : `${ statuses[ statuscode_id ].index } ${ pluralize(step, 'этапа', 'этап', 'этапа', 'этапов') } ${ pluralize(statuses[ statuscode_id ].index, 'пройдено', 'пройден', 'пройдено', 'пройдено') }` }
|
||||||
{/*}
|
{/*}
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width={18} height={18} fill="none">
|
<svg xmlns="http://www.w3.org/2000/svg" width={18} height={18} fill="none">
|
||||||
<path stroke="#8E94A7" strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M14.625 6.75 9 12.375 3.375 6.75" />
|
<path stroke="#8E94A7" strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M14.625 6.75 9 12.375 3.375 6.75" />
|
||||||
@ -82,7 +82,11 @@ export default class DealsListDeal extends React.Component
|
|||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<button className="button" onClick={() => { onSelectDeal(opp_number, index) }} >
|
<button className="button" onClick={() => { onSelectDeal(opp_number, index) }} >
|
||||||
Еще { statuses[ statuscode_id ].index !== undefined ? (7 - statuses[ statuscode_id ].index) : 7 } { pluralize(statuses[ statuscode_id ].index !== undefined ? (7 - statuses[ statuscode_id ].index) : 7, 'этапа', 'этап', 'этапа', 'этапов') }
|
{ statuscode_id === 105 || statuscode_id === 107 ? (
|
||||||
|
"Подробнее"
|
||||||
|
) : (
|
||||||
|
<>Еще { statuses[ statuscode_id ].index !== undefined ? (6 - statuses[ statuscode_id ].index) : 6 } { pluralize(statuses[ statuscode_id ].index !== undefined ? (6 - statuses[ statuscode_id ].index) : 6, 'этапа', 'этап', 'этапа', 'этапов') }</>
|
||||||
|
) }
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width={18} height={18} fill="none">
|
<svg xmlns="http://www.w3.org/2000/svg" width={18} height={18} fill="none">
|
||||||
<path stroke="#1C01A9" strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M14.625 6.75 9 12.375 3.375 6.75" />
|
<path stroke="#1C01A9" strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M14.625 6.75 9 12.375 3.375 6.75" />
|
||||||
</svg>
|
</svg>
|
||||||
|
|||||||
@ -564,7 +564,7 @@ class DocumentsForm extends Step
|
|||||||
{
|
{
|
||||||
console.log({ document });
|
console.log({ document });
|
||||||
return (
|
return (
|
||||||
<div className="block" key={ index }>
|
<div className="block deal_documents_form_group" key={ index }>
|
||||||
<div className="left">
|
<div className="left">
|
||||||
<p><b><span>{ document.name }</span>:</b></p>
|
<p><b><span>{ document.name }</span>:</b></p>
|
||||||
</div>
|
</div>
|
||||||
@ -575,6 +575,7 @@ class DocumentsForm extends Step
|
|||||||
files={ files[ document.doc_id ] !== undefined ? files[ document.doc_id ] : [] }
|
files={ files[ document.doc_id ] !== undefined ? files[ document.doc_id ] : [] }
|
||||||
onAddFile={ (file) => { this._handle_onAddFile(document.doc_id, file) } }
|
onAddFile={ (file) => { this._handle_onAddFile(document.doc_id, file) } }
|
||||||
onDeleteFile={ (file) => this._handle_onDeleteFile(document.doc_id, file) }
|
onDeleteFile={ (file) => this._handle_onDeleteFile(document.doc_id, file) }
|
||||||
|
document={ document }
|
||||||
/>
|
/>
|
||||||
) : (
|
) : (
|
||||||
<>
|
<>
|
||||||
@ -598,16 +599,6 @@ class DocumentsForm extends Step
|
|||||||
{/*}
|
{/*}
|
||||||
<div className="message documents">
|
<div className="message documents">
|
||||||
<div className="doc_list">
|
<div className="doc_list">
|
||||||
<div className="docs_list medium-icon">
|
|
||||||
<div className="row">
|
|
||||||
<p className="doc_name i-pdf i-medium">№123/2023 от 01.01.2023</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div className="docs_list medium-icon">
|
|
||||||
<div className="row">
|
|
||||||
<p className="doc_name i-pdf i-medium">№123/2023 от 01.01.2023</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<p>Документы, отправленные Вами принадлежат другой организации бла бла коммент от менеджера</p>
|
<p>Документы, отправленные Вами принадлежат другой организации бла бла коммент от менеджера</p>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -4,41 +4,52 @@ import moment from "moment";
|
|||||||
import { SpinnerCircular } from 'spinners-react';
|
import { SpinnerCircular } from 'spinners-react';
|
||||||
|
|
||||||
const LIMIT = 10000000;
|
const LIMIT = 10000000;
|
||||||
const LIMIT_FILES = 1;
|
const LIMIT_FILES = 10;
|
||||||
|
|
||||||
export default class FileDropzoneDeals extends FileDropzone
|
export default class FileDropzoneDeals extends FileDropzone
|
||||||
{
|
{
|
||||||
render()
|
render()
|
||||||
{
|
{
|
||||||
const { files, onAddFile, onDeleteFile, uploading, } = this.props;
|
const { files, onAddFile, onDeleteFile, uploading, document, } = this.props;
|
||||||
|
console.log("FileDropzoneDeals", { document });
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
{ files.length > 0 && (
|
{ files.length > 0 && (
|
||||||
<div className="horizontal_dropzone_files">
|
<div className="horizontal_dropzone_files_wrapper">
|
||||||
{ files.map((file, index) => (
|
<div className="horizontal_dropzone_files horizontal_dropzone_files_item">
|
||||||
<div className="file" key={ index }>
|
{ files.map((file, index) =>
|
||||||
{ file.sent ? (
|
{
|
||||||
<div className="delete" onClick={ () => onDeleteFile(file) }>
|
return (
|
||||||
<div className="icon"></div>
|
<div className="file" key={ index }>
|
||||||
|
{ file.sent ? (
|
||||||
|
<div className="delete" onClick={ () => onDeleteFile(file) }>
|
||||||
|
<div className="icon"></div>
|
||||||
|
</div>
|
||||||
|
) : (
|
||||||
|
<div className="loading">
|
||||||
|
<SpinnerCircular size={ 22 } thickness={ 100 } speed={ 100 } color="rgba(255, 255, 255, 1)" secondaryColor="rgba(168, 2, 107, 0.5)" style={{ marginTop: "8px" }}/>
|
||||||
|
</div>
|
||||||
|
) }
|
||||||
|
<div className="doc_icon">
|
||||||
|
<span className="extension">PDF</span>
|
||||||
|
</div>
|
||||||
|
<div className="title">
|
||||||
|
<span>{ file.name }</span>
|
||||||
|
<span>{ moment().format("DD.MM.YYYY") }</span>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
) : (
|
)
|
||||||
<div className="loading">
|
} ) }
|
||||||
<SpinnerCircular size={ 22 } thickness={ 100 } speed={ 100 } color="rgba(255, 255, 255, 1)" secondaryColor="rgba(168, 2, 107, 0.5)" style={{ marginTop: "8px" }}/>
|
</div>
|
||||||
</div>
|
{ document.comment !== null && document.comment !== "" && (
|
||||||
) }
|
<div className="horizontal_dropzone_files_item">
|
||||||
<div className="doc_icon">
|
<p className="horizontal_dropzone_files_comment">
|
||||||
<span className="extension">PDF</span>
|
<span>{ document.check }</span>
|
||||||
</div>
|
<span>{ document.comment }</span>
|
||||||
<div className="title">
|
</p>
|
||||||
<span>{ file.name }</span>
|
|
||||||
<span>{ moment().format("DD.MM.YYYY") }</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
)) }
|
)}
|
||||||
{/*}
|
|
||||||
<p key={ index }>{ file.size > LIMIT && (<span style={{ color: "#A8026B", }}>Ошибка, превышен допустимый размер файла в 10 мб.</span>) } { file.name } - { parseFloat(file.size / 1000000).toFixed(file.size < 100000 ? 3 : 2) } мб. <small style={{ color: "#A8026B", textDecoration: "underline", cursor: "pointer" }} onClick={ () => onDeleteFile(file.name) }>[ удалить ]</small></p>
|
|
||||||
{*/}
|
|
||||||
</div>
|
</div>
|
||||||
) }
|
) }
|
||||||
{ !uploading && files.length < LIMIT_FILES && (
|
{ !uploading && files.length < LIMIT_FILES && (
|
||||||
@ -48,7 +59,7 @@ export default class FileDropzoneDeals extends FileDropzone
|
|||||||
<div className={`files`}></div>
|
<div className={`files`}></div>
|
||||||
<div className={`horizontal_dropzone_inner`}>
|
<div className={`horizontal_dropzone_inner`}>
|
||||||
<p data-sm-text="Выберите файлы">
|
<p data-sm-text="Выберите файлы">
|
||||||
<span>Перенесите файлы на экран для быстрой загрузки или выберите файл с компьютера </span>
|
<span>Перенесите файлы на экран для быстрой загрузки или выберите файл с компьютера</span>
|
||||||
</p>
|
</p>
|
||||||
<label htmlFor="" className="button button-blue">Загрузить файл</label>
|
<label htmlFor="" className="button button-blue">Загрузить файл</label>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -5328,7 +5328,6 @@ main .dropdown_blocks_list.zero-margin.gibdd .dropdown_block .block_body .fines_
|
|||||||
.contractStatus_list .list_item div:nth-child(2) p {
|
.contractStatus_list .list_item div:nth-child(2) p {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
color: var(--text_not_active);
|
color: var(--text_not_active);
|
||||||
min-width: 120px;
|
|
||||||
}
|
}
|
||||||
.contractStatus_list .list_item div:nth-child(2):before {
|
.contractStatus_list .list_item div:nth-child(2):before {
|
||||||
content: "";
|
content: "";
|
||||||
@ -5394,7 +5393,7 @@ main .dropdown_blocks_list.zero-margin.gibdd .dropdown_block .block_body .fines_
|
|||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
gap: 0 8px;
|
gap: 0 8px;
|
||||||
}
|
}
|
||||||
.contractStatus_list .list_item :first-child {
|
.contractStatus_list .list_item div:first-child {
|
||||||
min-width: 60px;
|
min-width: 60px;
|
||||||
}
|
}
|
||||||
.contractStatus_list .list_item:not(:last-child) {
|
.contractStatus_list .list_item:not(:last-child) {
|
||||||
@ -6095,7 +6094,6 @@ main .dropdown_blocks_list.zero-margin.gibdd .dropdown_block .block_body .fines_
|
|||||||
.horizontal_dropzone_files .file {
|
.horizontal_dropzone_files .file {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
width: 40%;
|
|
||||||
}
|
}
|
||||||
.horizontal_dropzone_files .file .delete {
|
.horizontal_dropzone_files .file .delete {
|
||||||
margin-left: 0px;
|
margin-left: 0px;
|
||||||
@ -6162,6 +6160,25 @@ main .dropdown_blocks_list.zero-margin.gibdd .dropdown_block .block_body .fines_
|
|||||||
margin-top: 2px;
|
margin-top: 2px;
|
||||||
color: #8e94a7;
|
color: #8e94a7;
|
||||||
}
|
}
|
||||||
|
.horizontal_dropzone_files_wrapper {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
gap: 0px 20px;
|
||||||
|
padding-top: 15px;
|
||||||
|
}
|
||||||
|
.horizontal_dropzone_files_wrapper .horizontal_dropzone_files_item {
|
||||||
|
width: 50%;
|
||||||
|
}
|
||||||
|
.horizontal_dropzone_files_comment {
|
||||||
|
background: rgba(131, 3, 84, 0.1);
|
||||||
|
padding: 15px 25px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
.horizontal_dropzone_files_comment span:first-child {
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
.deals_contracts {
|
.deals_contracts {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
@ -6394,3 +6411,8 @@ main .dropdown_blocks_list.zero-margin.gibdd .dropdown_block .block_body .fines_
|
|||||||
padding-top: 10px;
|
padding-top: 10px;
|
||||||
padding-bottom: 20px;
|
padding-bottom: 20px;
|
||||||
}
|
}
|
||||||
|
.deal_documents_form_group {
|
||||||
|
padding-top: 15px;
|
||||||
|
padding-bottom: 15px;
|
||||||
|
border-top: solid 1px #edeff5;
|
||||||
|
}
|
||||||
|
|||||||
@ -6030,7 +6030,6 @@ main .dropdown_blocks_list.zero-margin.gibdd .dropdown_block {
|
|||||||
p {
|
p {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
color: var(--text_not_active);
|
color: var(--text_not_active);
|
||||||
min-width: 120px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
&:before {
|
&:before {
|
||||||
@ -6105,10 +6104,10 @@ main .dropdown_blocks_list.zero-margin.gibdd .dropdown_block {
|
|||||||
gap: 0 8px;
|
gap: 0 8px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
:first-child {
|
&:first-child {
|
||||||
min-width: 60px;
|
min-width: 60px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&:not(:last-child) {
|
&:not(:last-child) {
|
||||||
@ -7012,7 +7011,6 @@ main .dropdown_blocks_list.zero-margin.gibdd .dropdown_block {
|
|||||||
.file {
|
.file {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
width: 40%;
|
|
||||||
|
|
||||||
.delete {
|
.delete {
|
||||||
margin-left: 0px;
|
margin-left: 0px;
|
||||||
@ -7091,6 +7089,32 @@ main .dropdown_blocks_list.zero-margin.gibdd .dropdown_block {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.horizontal_dropzone_files_wrapper {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
gap: 0px 20px;
|
||||||
|
padding-top: 15px;
|
||||||
|
|
||||||
|
.horizontal_dropzone_files_item {
|
||||||
|
width: 50%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.horizontal_dropzone_files_comment {
|
||||||
|
background: rgba(131, 3, 84, 0.10);
|
||||||
|
padding: 15px 25px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
|
||||||
|
span {
|
||||||
|
&:first-child {
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
.deals_contracts {
|
.deals_contracts {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
@ -7383,4 +7407,10 @@ main .dropdown_blocks_list.zero-margin.gibdd .dropdown_block {
|
|||||||
padding-top: 10px;
|
padding-top: 10px;
|
||||||
padding-bottom: 20px;
|
padding-bottom: 20px;
|
||||||
// margin-top: 30px;
|
// margin-top: 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.deal_documents_form_group {
|
||||||
|
padding-top: 15px;
|
||||||
|
padding-bottom: 15px;
|
||||||
|
border-top: solid 1px #edeff5;
|
||||||
}
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user