|
|
|
@ -5,17 +5,37 @@
|
|
|
|
|
<!-- 查询模块 --> |
|
|
|
|
<el-form :inline="true" :model="query" class="header_search"> |
|
|
|
|
<el-form-item label="客户名称:"> |
|
|
|
|
<el-input v-model.trim="query.clientName" placeholder="请输入客户名称"></el-input> |
|
|
|
|
<el-input |
|
|
|
|
v-model.trim="query.clientName" |
|
|
|
|
clearable |
|
|
|
|
placeholder="请输入客户名称" |
|
|
|
|
></el-input> |
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item label="客户类型:"> |
|
|
|
|
<el-select v-model="query.clientType" class="m-2" placeholder="请选择客户端类型"> |
|
|
|
|
<el-option v-for="item in clientType" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey" /> |
|
|
|
|
<el-select |
|
|
|
|
v-model="query.clientType" |
|
|
|
|
clearable |
|
|
|
|
class="m-2" |
|
|
|
|
placeholder="请选择客户端类型" |
|
|
|
|
> |
|
|
|
|
<el-option |
|
|
|
|
v-for="item in clientType" |
|
|
|
|
:key="item.dictKey" |
|
|
|
|
:label="item.dictValue" |
|
|
|
|
:value="item.dictKey" |
|
|
|
|
/> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item label="地址:"> |
|
|
|
|
<el-cascader :options="optioner" v-model="query.bladeRegionProvinceId" :props="{ checkStrictly: true }"> |
|
|
|
|
<el-cascader |
|
|
|
|
filterable |
|
|
|
|
:options="optioner" |
|
|
|
|
v-model="query.bladeRegionProvinceId" |
|
|
|
|
:props="{ checkStrictly: true }" |
|
|
|
|
clearable |
|
|
|
|
> |
|
|
|
|
<template #default="{ node, data }"> |
|
|
|
|
<span>{{ data.label }}</span> |
|
|
|
|
<span v-if="!node.isLeaf"> ({{ data.children.length }}) </span> |
|
|
|
@ -24,9 +44,19 @@
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item label="合同开始时间:" class="el-times"> |
|
|
|
|
<el-date-picker v-model="dataShi" type="daterange" unlink-panels range-separator="至" |
|
|
|
|
start-placeholder="开始时间" end-placeholder="结束时间" :shortcuts="shortcuts" :size="'default'" |
|
|
|
|
format="YYYY/MM/DD" value-format="YYYY-MM-DD HH:mm:ss" /> |
|
|
|
|
<el-date-picker |
|
|
|
|
v-model="dataShi" |
|
|
|
|
type="daterange" |
|
|
|
|
unlink-panels |
|
|
|
|
range-separator="至" |
|
|
|
|
start-placeholder="开始时间" |
|
|
|
|
end-placeholder="结束时间" |
|
|
|
|
:shortcuts="shortcuts" |
|
|
|
|
:size="'default'" |
|
|
|
|
format="YYYY/MM/DD" |
|
|
|
|
value-format="YYYY-MM-DD HH:mm:ss" |
|
|
|
|
clearable |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<!-- <el-form-item label="合同结束时间:">--> |
|
|
|
|
<!-- <el-input v-model="query.contractEntTime" placeholder="请输入合同结束时间"></el-input>--> |
|
|
|
@ -43,7 +73,9 @@
|
|
|
|
|
<!-- 头部左侧按钮模块 --> |
|
|
|
|
<div class="avue-crud__left"> |
|
|
|
|
<el-button type="primary" icon="el-icon-plus" @click="handleAdd">新 增</el-button> |
|
|
|
|
<el-button type="danger" icon="el-icon-delete" @click="handleDelete" plain>删 除</el-button> |
|
|
|
|
<el-button type="danger" icon="el-icon-delete" @click="handleDelete" plain |
|
|
|
|
>删 除</el-button |
|
|
|
|
> |
|
|
|
|
<el-button type="danger" icon="Upload" @click="handleImport">导 入 </el-button> |
|
|
|
|
</div> |
|
|
|
|
<!-- 头部右侧按钮模块 --> |
|
|
|
@ -54,12 +86,25 @@
|
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</el-row> |
|
|
|
|
<tablecmt class="tableNode" :columnList="columnList" :tableData="data" :loading="loading" @inputTxt="inputsc" |
|
|
|
|
@timeCheck="timesc" @btnCheck="btnsc" @selectCheck="selectsc" @selection="selectionChange" |
|
|
|
|
@makeCargo="makeCargo"> |
|
|
|
|
<tablecmt |
|
|
|
|
class="tableNode" |
|
|
|
|
:columnList="columnList" |
|
|
|
|
:tableData="data" |
|
|
|
|
:loading="loading" |
|
|
|
|
@inputTxt="inputsc" |
|
|
|
|
@timeCheck="timesc" |
|
|
|
|
@btnCheck="btnsc" |
|
|
|
|
@selectCheck="selectsc" |
|
|
|
|
@selection="selectionChange" |
|
|
|
|
@makeCargo="makeCargo" |
|
|
|
|
> |
|
|
|
|
<template #default="slotProps"> |
|
|
|
|
<el-text type="primary" text icon="el-icon-view" @click="handleView(slotProps.scope.row)">查看</el-text> |
|
|
|
|
<el-text type="primary" text icon="el-icon-edit" @click="handleEdit(slotProps.scope.row)">编辑</el-text> |
|
|
|
|
<el-text type="primary" text icon="el-icon-view" @click="handleView(slotProps.scope.row)" |
|
|
|
|
>查看</el-text |
|
|
|
|
> |
|
|
|
|
<el-text type="primary" text icon="el-icon-edit" @click="handleEdit(slotProps.scope.row)" |
|
|
|
|
>编辑</el-text |
|
|
|
|
> |
|
|
|
|
<el-text type="primary" text icon="el-icon-delete" @click="rowDel(slotProps.scope.row)"> |
|
|
|
|
删除 |
|
|
|
|
</el-text> |
|
|
|
@ -105,13 +150,27 @@
|
|
|
|
|
<div class="avue-crud__pagination flex-c-sb" style="width: 100%"> |
|
|
|
|
<div style="font-size: 14px">勾选数量: {{ selectionList.length }}</div> |
|
|
|
|
<!-- 分页模块 --> |
|
|
|
|
<el-pagination align="right" background @size-change="sizeChange" @current-change="currentChange" |
|
|
|
|
:current-page="page.currentPage" :page-sizes="[30, 50, 80, 120, 5000]" :page-size="page.pageSize" |
|
|
|
|
layout="total, sizes, prev, pager, next, jumper" :total="page.total"> |
|
|
|
|
<el-pagination |
|
|
|
|
align="right" |
|
|
|
|
background |
|
|
|
|
@size-change="sizeChange" |
|
|
|
|
@current-change="currentChange" |
|
|
|
|
:current-page="page.currentPage" |
|
|
|
|
:page-sizes="[30, 50, 80, 120, 5000]" |
|
|
|
|
:page-size="page.pageSize" |
|
|
|
|
layout="total, sizes, prev, pager, next, jumper" |
|
|
|
|
:total="page.total" |
|
|
|
|
> |
|
|
|
|
</el-pagination> |
|
|
|
|
</div> |
|
|
|
|
<el-dialog :modal-append-to-body="false" :append-to-body="false" title="客户导入" append-to-body v-model="excelBox" |
|
|
|
|
width="555px"> |
|
|
|
|
<el-dialog |
|
|
|
|
:modal-append-to-body="false" |
|
|
|
|
:append-to-body="false" |
|
|
|
|
title="客户导入" |
|
|
|
|
append-to-body |
|
|
|
|
v-model="excelBox" |
|
|
|
|
width="555px" |
|
|
|
|
> |
|
|
|
|
<!-- <avue-form :option="excelOption" v-model="excelForm" :upload-after="uploadAfter"> |
|
|
|
|
<template #excelTemplate> |
|
|
|
|
<a |
|
|
|
@ -143,25 +202,45 @@
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div v-loading="loadingObj.UploadLoadong"> |
|
|
|
|
<el-upload class="upload-demo" drag :headers="headers" |
|
|
|
|
action="/api/logpm-basicdata/basicdataClient/import-basicDataClient" :before-upload="handleBeforeUpload" |
|
|
|
|
:on-success="handleSuccess" :on-error="handleClose" multiple> |
|
|
|
|
<el-upload |
|
|
|
|
class="upload-demo" |
|
|
|
|
drag |
|
|
|
|
:headers="headers" |
|
|
|
|
action="/api/logpm-basicdata/basicdataClient/import-basicDataClient" |
|
|
|
|
:before-upload="handleBeforeUpload" |
|
|
|
|
:on-success="handleSuccess" |
|
|
|
|
:on-error="handleClose" |
|
|
|
|
multiple |
|
|
|
|
> |
|
|
|
|
<el-icon class="el-icon--upload"><upload-filled /></el-icon> |
|
|
|
|
<div class="el-upload__text">拖拽文件或 <em>点击上传</em></div> |
|
|
|
|
</el-upload> |
|
|
|
|
</div> |
|
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
|
|
<el-dialog :modal-append-to-body="false" :append-to-body="false" title="文件校验" append-to-body |
|
|
|
|
v-model="Fileverification" width="555px"> |
|
|
|
|
<el-dialog |
|
|
|
|
:modal-append-to-body="false" |
|
|
|
|
:append-to-body="false" |
|
|
|
|
title="文件校验" |
|
|
|
|
append-to-body |
|
|
|
|
v-model="Fileverification" |
|
|
|
|
width="555px" |
|
|
|
|
> |
|
|
|
|
<div> |
|
|
|
|
<el-divider content-position="left">文件校验</el-divider> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div v-loading="FileverificationLoadong"> |
|
|
|
|
<el-upload class="upload-demo" drag :headers="headers" |
|
|
|
|
action="/api/logpm-basicdata/basicdataClient/checkImportBasicDataClient" :before-upload="handleBeforeUpload" |
|
|
|
|
:on-success="handleSuccess" :on-error="handleClose" multiple> |
|
|
|
|
<el-upload |
|
|
|
|
class="upload-demo" |
|
|
|
|
drag |
|
|
|
|
:headers="headers" |
|
|
|
|
action="/api/logpm-basicdata/basicdataClient/checkImportBasicDataClient" |
|
|
|
|
:before-upload="handleBeforeUpload" |
|
|
|
|
:on-success="handleSuccess" |
|
|
|
|
:on-error="handleClose" |
|
|
|
|
multiple |
|
|
|
|
> |
|
|
|
|
<el-icon class="el-icon--upload"><upload-filled /></el-icon> |
|
|
|
|
<div class="el-upload__text">拖拽文件或 <em>点击上传</em></div> |
|
|
|
|
</el-upload> |
|
|
|
@ -169,8 +248,19 @@
|
|
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
|
|
<!-- 表单模块 --> |
|
|
|
|
<el-dialog destroy-on-close :modal-append-to-body="false" :append-to-body="false" :title="title" v-model="box" |
|
|
|
|
width="40%" align-center :before-close="beforeClose" :close-on-click-modal="false" append-to-body draggable> |
|
|
|
|
<el-dialog |
|
|
|
|
destroy-on-close |
|
|
|
|
:modal-append-to-body="false" |
|
|
|
|
:append-to-body="false" |
|
|
|
|
:title="title" |
|
|
|
|
v-model="box" |
|
|
|
|
width="40%" |
|
|
|
|
align-center |
|
|
|
|
:before-close="beforeClose" |
|
|
|
|
:close-on-click-modal="false" |
|
|
|
|
append-to-body |
|
|
|
|
draggable |
|
|
|
|
> |
|
|
|
|
<div v-loading="loadingObj.submitLoading"> |
|
|
|
|
<el-form :disabled="view" ref="form" :model="form" :rules="rules" label-width="120px"> |
|
|
|
|
<!-- 表单字段 --> |
|
|
|
@ -178,41 +268,91 @@
|
|
|
|
|
<!-- :validate-method="validateInput" --> |
|
|
|
|
|
|
|
|
|
<!-- :disabled="viewClientEntd" --> |
|
|
|
|
<el-input v-model="form.clientCode" placeholder="请输入客户编码" style="width: 100%" disabled /> |
|
|
|
|
<el-input |
|
|
|
|
v-model="form.clientCode" |
|
|
|
|
placeholder="请输入客户编码" |
|
|
|
|
style="width: 100%" |
|
|
|
|
disabled |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="客户名称" prop="clientName"> |
|
|
|
|
<el-input v-model.trim="form.clientName" placeholder="请输入客户名称" style="width: 100%" /> |
|
|
|
|
<el-input |
|
|
|
|
v-model.trim="form.clientName" |
|
|
|
|
placeholder="请输入客户名称" |
|
|
|
|
style="width: 100%" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="客户类型" prop="clientType"> |
|
|
|
|
<el-select v-model="form.clientType" class="m-2" placeholder="请选择客户端类型" style="width: 100%"> |
|
|
|
|
<el-option v-for="item in clientType" :key="item.dictKey" :label="item.dictValue" |
|
|
|
|
:value="item.dictKey" /> |
|
|
|
|
<el-select |
|
|
|
|
v-model="form.clientType" |
|
|
|
|
class="m-2" |
|
|
|
|
placeholder="请选择客户端类型" |
|
|
|
|
style="width: 100%" |
|
|
|
|
> |
|
|
|
|
<el-option |
|
|
|
|
v-for="item in clientType" |
|
|
|
|
:key="item.dictKey" |
|
|
|
|
:label="item.dictValue" |
|
|
|
|
:value="item.dictKey" |
|
|
|
|
/> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="结算对象类型" prop="cleanObjType"> |
|
|
|
|
<el-select v-model="form.cleanObjType" class="m-2" placeholder="请选择客户端类型" style="width: 100%"> |
|
|
|
|
<el-option v-for="item in Settlementobjecttype" :key="item.dictKey" :label="item.dictValue" |
|
|
|
|
:value="item.dictKey" /> |
|
|
|
|
<el-select |
|
|
|
|
v-model="form.cleanObjType" |
|
|
|
|
class="m-2" |
|
|
|
|
placeholder="请选择客户端类型" |
|
|
|
|
style="width: 100%" |
|
|
|
|
> |
|
|
|
|
<el-option |
|
|
|
|
v-for="item in Settlementobjecttype" |
|
|
|
|
:key="item.dictKey" |
|
|
|
|
:label="item.dictValue" |
|
|
|
|
:value="item.dictKey" |
|
|
|
|
/> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item label="客户主体" v-if="form.cleanObjType !=3"> |
|
|
|
|
<el-select v-model="form.mainId" class="m-2" placeholder="请选择客户主体" style="width: 100%" filterable> |
|
|
|
|
<el-option v-for="item in dictList" :key="item.id" :label="item.name" :value="item.id" /> |
|
|
|
|
<el-form-item label="客户主体" v-if="form.cleanObjType != 3"> |
|
|
|
|
<el-select |
|
|
|
|
v-model="form.mainId" |
|
|
|
|
class="m-2" |
|
|
|
|
placeholder="请选择客户主体" |
|
|
|
|
style="width: 100%" |
|
|
|
|
filterable |
|
|
|
|
> |
|
|
|
|
<el-option |
|
|
|
|
v-for="item in dictList" |
|
|
|
|
:key="item.id" |
|
|
|
|
:label="item.name" |
|
|
|
|
:value="item.id" |
|
|
|
|
/> |
|
|
|
|
</el-select> |
|
|
|
|
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item label="服务类型" prop="typeServiceList"> |
|
|
|
|
<el-select v-model="form.typeServiceList" multiple placeholder="请选择" style="width: 100%" |
|
|
|
|
@change="coverCharge"> |
|
|
|
|
<el-option v-for="item in freightType" :key="item.dictKey" :label="item.dictValue" |
|
|
|
|
:value="item.dictKey"> |
|
|
|
|
<el-select |
|
|
|
|
v-model="form.typeServiceList" |
|
|
|
|
multiple |
|
|
|
|
placeholder="请选择" |
|
|
|
|
style="width: 100%" |
|
|
|
|
@change="coverCharge" |
|
|
|
|
> |
|
|
|
|
<el-option |
|
|
|
|
v-for="item in freightType" |
|
|
|
|
:key="item.dictKey" |
|
|
|
|
:label="item.dictValue" |
|
|
|
|
:value="item.dictKey" |
|
|
|
|
> |
|
|
|
|
</el-option> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="配送类型" prop="businessType" v-if="distriType"> |
|
|
|
|
<el-radio-group v-model="form.businessType" class="ml-4" v-for="item in distributionType"> |
|
|
|
|
<el-radio-group |
|
|
|
|
v-model="form.businessType" |
|
|
|
|
class="ml-4" |
|
|
|
|
v-for="item in distributionType" |
|
|
|
|
> |
|
|
|
|
<el-radio :label="item.dictKey" size="large" style="margin-right: 25px">{{ |
|
|
|
|
item.dictValue |
|
|
|
|
}}</el-radio> |
|
|
|
@ -220,15 +360,29 @@
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item label="联系人" prop="linkman" v-if="viewEntd"> |
|
|
|
|
<el-input v-model.trim="form.linkman" placeholder="请输入联系人" style="width: 100%" /> |
|
|
|
|
<el-input |
|
|
|
|
v-model.trim="form.linkman" |
|
|
|
|
placeholder="请输入联系人" |
|
|
|
|
style="width: 100%" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="联系电话" prop="phone" v-if="viewEntd"> |
|
|
|
|
<el-input v-model.trim="form.phone" placeholder="请输入联系电话" style="width: 100%" /> |
|
|
|
|
<el-input |
|
|
|
|
v-model.trim="form.phone" |
|
|
|
|
placeholder="请输入联系电话" |
|
|
|
|
style="width: 100%" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="地址" prop="bladeRegionProvinceId"> |
|
|
|
|
<el-cascader :options="optioner" style="width: 100%" v-model="form.bladeRegionProvinceId" :props="{ |
|
|
|
|
checkStrictly: true, |
|
|
|
|
}" filterable> |
|
|
|
|
<el-cascader |
|
|
|
|
:options="optioner" |
|
|
|
|
style="width: 100%" |
|
|
|
|
v-model="form.bladeRegionProvinceId" |
|
|
|
|
:props="{ |
|
|
|
|
checkStrictly: true, |
|
|
|
|
}" |
|
|
|
|
filterable |
|
|
|
|
> |
|
|
|
|
<template #default="{ node, data }"> |
|
|
|
|
<span>{{ data.label }}</span> |
|
|
|
|
<span v-if="!node.isLeaf"> ({{ data.children.length }}) </span> |
|
|
|
@ -236,43 +390,80 @@
|
|
|
|
|
</el-cascader> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="详细地址"> |
|
|
|
|
<el-input v-model.trim="form.detailedly" placeholder="请填写详细地址" style="width: 100%" /> |
|
|
|
|
<el-input |
|
|
|
|
v-model.trim="form.detailedly" |
|
|
|
|
placeholder="请填写详细地址" |
|
|
|
|
style="width: 100%" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="默认付款方式" prop="defaultPaymentMethods"> |
|
|
|
|
<el-select v-model="form.defaultPaymentMethods" placeholder="请选择默认付款方式"> |
|
|
|
|
<el-option v-for="item in defaultPaymentMethodsOptions" :key="item.value" :label="item.dictValue" |
|
|
|
|
:value="item.dictKey" /> |
|
|
|
|
<el-option |
|
|
|
|
v-for="item in defaultPaymentMethodsOptions" |
|
|
|
|
:key="item.value" |
|
|
|
|
:label="item.dictValue" |
|
|
|
|
:value="item.dictKey" |
|
|
|
|
/> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item label="合同附件" prop="leaseAccessories" style="width: 100%"> |
|
|
|
|
<el-upload v-model:file-list="fileList" class="upload-demo" :action="action" :headers="headers" multiple |
|
|
|
|
:on-preview="handlePreview" :on-success="(response, file, fileList) => { |
|
|
|
|
uploadSuccess(fileList); |
|
|
|
|
} |
|
|
|
|
" :on-remove="handleRemove" :before-remove="beforeRemove" :before-upload="beforeUploadFn" :limit="3" |
|
|
|
|
:on-exceed="handleExceed"> |
|
|
|
|
<el-upload |
|
|
|
|
v-model:file-list="fileList" |
|
|
|
|
class="upload-demo" |
|
|
|
|
:action="action" |
|
|
|
|
:headers="headers" |
|
|
|
|
multiple |
|
|
|
|
:on-preview="handlePreview" |
|
|
|
|
:on-success=" |
|
|
|
|
(response, file, fileList) => { |
|
|
|
|
uploadSuccess(fileList); |
|
|
|
|
} |
|
|
|
|
" |
|
|
|
|
:on-remove="handleRemove" |
|
|
|
|
:before-remove="beforeRemove" |
|
|
|
|
:before-upload="beforeUploadFn" |
|
|
|
|
:limit="3" |
|
|
|
|
:on-exceed="handleExceed" |
|
|
|
|
> |
|
|
|
|
<el-button type="Primary" icon="Position">上传</el-button> |
|
|
|
|
<template #tip> |
|
|
|
|
<div class="el-upload__tip">大小不超过500KB的jpg/png文件。</div> |
|
|
|
|
</template> |
|
|
|
|
</el-upload> |
|
|
|
|
<el-image-viewer v-if="showImgViewer" :url-list="imgPreviewUrl" @close="handleCo" :z-index="300" |
|
|
|
|
fit="cover" /> |
|
|
|
|
<el-image-viewer |
|
|
|
|
v-if="showImgViewer" |
|
|
|
|
:url-list="imgPreviewUrl" |
|
|
|
|
@close="handleCo" |
|
|
|
|
:z-index="300" |
|
|
|
|
fit="cover" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="合同开始时间" prop="contractStartTime" label-width="120px"> |
|
|
|
|
<el-date-picker v-model="form.contractStartTime" type="date" placeholder="选择时间" format="YYYY/MM/DD" |
|
|
|
|
value-format="YYYY-MM-DD" /> |
|
|
|
|
<el-date-picker |
|
|
|
|
v-model="form.contractStartTime" |
|
|
|
|
type="date" |
|
|
|
|
placeholder="选择时间" |
|
|
|
|
format="YYYY/MM/DD" |
|
|
|
|
value-format="YYYY-MM-DD" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item label="合同结束时间" prop="contractEntTime" label-width="120px"> |
|
|
|
|
<el-date-picker v-model="form.contractEntTime" type="date" placeholder="选择时间" format="YYYY/MM/DD" |
|
|
|
|
value-format="YYYY-MM-DD" /> |
|
|
|
|
<el-date-picker |
|
|
|
|
v-model="form.contractEntTime" |
|
|
|
|
type="date" |
|
|
|
|
placeholder="选择时间" |
|
|
|
|
format="YYYY/MM/DD" |
|
|
|
|
value-format="YYYY-MM-DD" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-form> |
|
|
|
|
<!-- 表单按钮 --> |
|
|
|
|
<div v-if="!view" class="flex-c-c"> |
|
|
|
|
<el-button type="primary" icon="el-icon-circle-check" @click="handleSubmit('form')">提 交</el-button> |
|
|
|
|
<el-button type="primary" icon="el-icon-circle-check" @click="handleSubmit('form')" |
|
|
|
|
>提 交</el-button |
|
|
|
|
> |
|
|
|
|
<el-button icon="el-icon-circle-close" @click="box = false">取 消</el-button> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
@ -281,16 +472,36 @@
|
|
|
|
|
<!-- 账号绑定弹出框页面 |
|
|
|
|
1、显示登录账号 |
|
|
|
|
2、显示账号的名称 --> |
|
|
|
|
<el-dialog :modal-append-to-body="false" :append-to-body="false" title="开通账号" v-model="openAcountStatus"> |
|
|
|
|
<el-form :disabled="view" ref="openAcountorm" :model="openAcountform" :rules="openAcountrules" |
|
|
|
|
label-width="120px"> |
|
|
|
|
<el-dialog |
|
|
|
|
:modal-append-to-body="false" |
|
|
|
|
:append-to-body="false" |
|
|
|
|
title="开通账号" |
|
|
|
|
v-model="openAcountStatus" |
|
|
|
|
> |
|
|
|
|
<el-form |
|
|
|
|
:disabled="view" |
|
|
|
|
ref="openAcountorm" |
|
|
|
|
:model="openAcountform" |
|
|
|
|
:rules="openAcountrules" |
|
|
|
|
label-width="120px" |
|
|
|
|
> |
|
|
|
|
<el-form-item label="姓名" prop="linkman"> |
|
|
|
|
<el-input v-model="openAcountform.name" placeholder="请输入联系人" maxlength="20" style="width: 100%" /> |
|
|
|
|
<el-input |
|
|
|
|
v-model="openAcountform.name" |
|
|
|
|
placeholder="请输入联系人" |
|
|
|
|
maxlength="20" |
|
|
|
|
style="width: 100%" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item label="账号" prop="linkman"> |
|
|
|
|
<el-input v-model="openAcountform.phone" placeholder="请输入电话" type="number" maxlength="11" |
|
|
|
|
style="width: 100%" /> |
|
|
|
|
<el-input |
|
|
|
|
v-model="openAcountform.phone" |
|
|
|
|
placeholder="请输入电话" |
|
|
|
|
type="number" |
|
|
|
|
maxlength="11" |
|
|
|
|
style="width: 100%" |
|
|
|
|
/> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="密码"> |
|
|
|
|
<span style="color: red">默认系统初始化密码</span> |
|
|
|
@ -299,14 +510,24 @@
|
|
|
|
|
|
|
|
|
|
<template #footer> |
|
|
|
|
<span v-if="!view" class="dialog-footer"> |
|
|
|
|
<el-button type="primary" icon="el-icon-circle-check" @click="handleSubmit('form')">提 交</el-button> |
|
|
|
|
<el-button icon="el-icon-circle-close" @click="openAcountStatus = false">取 消</el-button> |
|
|
|
|
<el-button type="primary" icon="el-icon-circle-check" @click="handleSubmit('form')" |
|
|
|
|
>提 交</el-button |
|
|
|
|
> |
|
|
|
|
<el-button icon="el-icon-circle-close" @click="openAcountStatus = false" |
|
|
|
|
>取 消</el-button |
|
|
|
|
> |
|
|
|
|
</span> |
|
|
|
|
</template> |
|
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
|
|
<el-drawer title="子表操作" append-to-body size="60%" v-model="drawer" :direction="direction" |
|
|
|
|
:before-close="handleDrawerClose"> |
|
|
|
|
<el-drawer |
|
|
|
|
title="子表操作" |
|
|
|
|
append-to-body |
|
|
|
|
size="60%" |
|
|
|
|
v-model="drawer" |
|
|
|
|
:direction="direction" |
|
|
|
|
:before-close="handleDrawerClose" |
|
|
|
|
> |
|
|
|
|
<BasicShopSub :mainId="basicClientId"></BasicShopSub> |
|
|
|
|
</el-drawer> |
|
|
|
|
<!-- <el-drawer--> |
|
|
|
@ -321,8 +542,15 @@
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<!-- 日志 --> |
|
|
|
|
<el-dialog :modal-append-to-body="false" :append-to-body="false" title="客户日志" width="70%" :align-center="true" |
|
|
|
|
v-model="popUpShow.logVisted" isNotSave> |
|
|
|
|
<el-dialog |
|
|
|
|
:modal-append-to-body="false" |
|
|
|
|
:append-to-body="false" |
|
|
|
|
title="客户日志" |
|
|
|
|
width="70%" |
|
|
|
|
:align-center="true" |
|
|
|
|
v-model="popUpShow.logVisted" |
|
|
|
|
isNotSave |
|
|
|
|
> |
|
|
|
|
<tablecmt ref="tableLogNode" class="mt10" :columnList="columnLogList" :tableData="logData"> |
|
|
|
|
<template #default="{ scope }"> </template> |
|
|
|
|
</tablecmt> |
|
|
|
@ -1072,31 +1300,28 @@ export default {
|
|
|
|
|
downloadLink(row) { |
|
|
|
|
window.open( |
|
|
|
|
'http://192.168.10.100:8012/onlinePreview?url=' + |
|
|
|
|
encodeURIComponent(Base64.encode(row.leaseAccessories)) |
|
|
|
|
encodeURIComponent(Base64.encode(row.leaseAccessories)) |
|
|
|
|
); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
async changeclientId() { |
|
|
|
|
$_mainList( |
|
|
|
|
{ |
|
|
|
|
current: 1, |
|
|
|
|
size: 1, |
|
|
|
|
} |
|
|
|
|
) |
|
|
|
|
$_mainList({ |
|
|
|
|
current: 1, |
|
|
|
|
size: 1, |
|
|
|
|
}) |
|
|
|
|
.then(res => { |
|
|
|
|
console.log(res, '客户'); |
|
|
|
|
if (res.data.code == 200 && res.data.data?.length) { |
|
|
|
|
this.dictList = res.data.data |
|
|
|
|
this.dictList = res.data.data; |
|
|
|
|
} else { |
|
|
|
|
this.dictList = []; |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
.catch(error => { |
|
|
|
|
console.log(error); |
|
|
|
|
}) |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//控制控货 |
|
|
|
|
makeCargo(row) { |
|
|
|
|
console.log('控货操作!!', row); |
|
|
|
@ -1185,7 +1410,8 @@ export default {
|
|
|
|
|
}, |
|
|
|
|
handleExceed(files, fileList) { |
|
|
|
|
this.$message.warning( |
|
|
|
|
`当前限制选择 3 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length |
|
|
|
|
`当前限制选择 3 个文件,本次选择了 ${files.length} 个文件,共选择了 ${ |
|
|
|
|
files.length + fileList.length |
|
|
|
|
} 个文件` |
|
|
|
|
); |
|
|
|
|
}, |
|
|
|
@ -1252,7 +1478,7 @@ export default {
|
|
|
|
|
// 此处可以处理验证失败的逻辑,比如显示错误消息 |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
} catch (error) { } |
|
|
|
|
} catch (error) {} |
|
|
|
|
if (!this.form.typeServiceList.includes('3')) { |
|
|
|
|
delete this.form.businessType; |
|
|
|
|
} |
|
|
|
@ -1306,10 +1532,10 @@ export default {
|
|
|
|
|
}); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
if(this.form.mainId){ |
|
|
|
|
this.form.mainName = this.dictList.find(item=>item.id == this.form.mainId).name;//客户主体名称 |
|
|
|
|
if (this.form.mainId) { |
|
|
|
|
this.form.mainName = this.dictList.find(item => item.id == this.form.mainId).name; //客户主体名称 |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
await add(this.form); |
|
|
|
|
this.box = false; |
|
|
|
|
this.onLoad(this.page); |
|
|
|
@ -1350,8 +1576,8 @@ export default {
|
|
|
|
|
}); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
if(this.form.mainId){ |
|
|
|
|
this.form.mainName = this.dictList.find(item=>item.id == this.form.mainId).name;//客户主体名称 |
|
|
|
|
if (this.form.mainId) { |
|
|
|
|
this.form.mainName = this.dictList.find(item => item.id == this.form.mainId).name; //客户主体名称 |
|
|
|
|
} |
|
|
|
|
await update(this.form); |
|
|
|
|
this.box = false; |
|
|
|
@ -1412,7 +1638,7 @@ export default {
|
|
|
|
|
getDetail(row.id).then(res => { |
|
|
|
|
console.log(res.data.data, 'res.data.data'); |
|
|
|
|
this.form = res.data.data; |
|
|
|
|
this.form.mainId = res.data.data.mainId |
|
|
|
|
this.form.mainId = res.data.data.mainId; |
|
|
|
|
if (this.form.detailedly == '0' || this.form.detailedly == '-1') { |
|
|
|
|
this.form.detailedly = ''; |
|
|
|
|
} |
|
|
|
@ -1619,18 +1845,19 @@ export default {
|
|
|
|
|
}, |
|
|
|
|
onLoad(page, params = {}) { |
|
|
|
|
this.loading = true; |
|
|
|
|
const submitData = { ...params, ...this.query }; |
|
|
|
|
// console.log('-=-=', this.query); |
|
|
|
|
if (this.dataShi?.length) { |
|
|
|
|
// console.log('-=-=', this.dataShi); |
|
|
|
|
this.query.startDate = this.dataShi[0]; |
|
|
|
|
this.query.endDate = this.dataShi[1]; |
|
|
|
|
submitData.startDate = this.dataShi[0]; |
|
|
|
|
submitData.endDate = this.dataShi[1]; |
|
|
|
|
} |
|
|
|
|
if (!!this.query.bladeRegionProvinceId) { |
|
|
|
|
this.query.bladeRegionCityId = this.query.bladeRegionProvinceId[1]; |
|
|
|
|
this.query.bladeRegionAreaId = this.query.bladeRegionProvinceId[2]; |
|
|
|
|
this.query.bladeRegionProvinceId = this.query.bladeRegionProvinceId[0]; |
|
|
|
|
if (!!submitData.bladeRegionProvinceId) { |
|
|
|
|
submitData.bladeRegionCityId = submitData.bladeRegionProvinceId[1]; |
|
|
|
|
submitData.bladeRegionAreaId = submitData.bladeRegionProvinceId[2]; |
|
|
|
|
submitData.bladeRegionProvinceId = submitData.bladeRegionProvinceId[0]; |
|
|
|
|
} |
|
|
|
|
getList(page.currentPage, page.pageSize, Object.assign(params, this.query)) |
|
|
|
|
getList(page.currentPage, page.pageSize, submitData) |
|
|
|
|
.then(res => { |
|
|
|
|
const data = res.data.data; |
|
|
|
|
console.log(data); |
|
|
|
@ -1797,7 +2024,7 @@ export default {
|
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
created() { |
|
|
|
|
this.changeclientId() |
|
|
|
|
this.changeclientId(); |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
</script> |
|
|
|
|