Browse Source

客户列表增加批量修改合同时间

dev
马远东 3 weeks ago
parent
commit
d7994269e5
  1. 12
      src/api/basicdata/basicClient.js
  2. 114
      src/views/basicdata/brand/basicClient.vue

12
src/api/basicdata/basicClient.js

@ -120,4 +120,14 @@ export const $_mainList = data => {
method: 'post', method: 'post',
data, data,
}); });
}; };
// 获取客户列表
export const $_updateClientTime = data => {
return request({
url: '/api/logpm-basicdata/basicdataClient/updateClientTime',
method: 'post',
data,
});
};

114
src/views/basicdata/brand/basicClient.vue

@ -45,6 +45,7 @@
<el-button type="primary" icon="el-icon-plus" @click="handleAdd"> </el-button> <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> <el-button type="danger" icon="Upload" @click="handleImport"> </el-button>
<el-button type="danger" icon="Upload" @click="BatchModify">批量修改 </el-button>
</div> </div>
<!-- 头部右侧按钮模块 --> <!-- 头部右侧按钮模块 -->
<div class="avue-crud__right"> <div class="avue-crud__right">
@ -196,7 +197,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="客户主体" v-if="form.cleanObjType !=3"> <el-form-item label="客户主体" v-if="form.cleanObjType != 3">
<el-select v-model="form.mainId" class="m-2" placeholder="请选择客户主体" style="width: 100%" filterable> <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-option v-for="item in dictList" :key="item.id" :label="item.name" :value="item.id" />
</el-select> </el-select>
@ -327,6 +328,28 @@
<template #default="{ scope }"> </template> <template #default="{ scope }"> </template>
</tablecmt> </tablecmt>
</el-dialog> </el-dialog>
<el-dialog v-model="dialogTime" title="批量修改" width="500">
<el-form :model="formTime" label-width="auto" style="max-width: 600px" v-loading="loadingTime">
<el-form-item label="开始日期">
<el-date-picker v-model="formTime.contractStartTime" type="date" placeholder="选择时间" format="YYYY/MM/DD"
value-format="YYYY-MM-DD" />
</el-form-item>
<el-form-item label="结束日期">
<el-date-picker v-model="formTime.contractEndTime" type="date" placeholder="选择时间" format="YYYY/MM/DD"
value-format="YYYY-MM-DD" />
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button @click="dialogTime = false">关闭</el-button>
<el-button :disabled="loadingTime" type="primary" @click="TimeSubmit">
提交
</el-button>
</div>
</template>
</el-dialog>
</basic-container> </basic-container>
</template> </template>
@ -343,14 +366,16 @@ import {
getClientLogList, getClientLogList,
$_exportclientTemplate, $_exportclientTemplate,
$_mainList, $_mainList,
$_updateClientTime,
} from '@/api/basicdata/basicClient'; } from '@/api/basicdata/basicClient';
import option from '@/option/basicdata/basicClient'; import option from '@/option/basicdata/basicClient';
import { mapGetters } from 'vuex'; import { mapGetters } from 'vuex';
import { ElMessage, ElMessageBox } from 'element-plus'
import BasicShopSub from '@/views/basicdata/brand/basicShopSub.vue'; import BasicShopSub from '@/views/basicdata/brand/basicShopSub.vue';
import { getDictionaryBiz } from '@/api/system/dict'; import { getDictionaryBiz } from '@/api/system/dict';
import { getSelect, getLazyTree, getLazyList, getLazyTreeAll } from '@/api/base/region'; import { getSelect, getLazyTree, getLazyList, getLazyTreeAll } from '@/api/base/region';
import { getToken } from '@/utils/auth'; import { getToken } from '@/utils/auth';
import globalc from '@/api/basicdata/globalc'; // import globalc from '@/api/basicdata/globalc';
import { Base64 } from 'js-base64'; import { Base64 } from 'js-base64';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
import { exportBlob } from '@/api/common'; import { exportBlob } from '@/api/common';
@ -363,6 +388,12 @@ export default {
}, },
data() { data() {
return { return {
formTime: {
contractEndTime: '',
contractStartTime: '',
},
loadingTime: false,
dialogTime: false,
excelForm: {}, excelForm: {},
clientloading: false, clientloading: false,
dictList: [], dictList: [],
@ -1075,7 +1106,76 @@ export default {
encodeURIComponent(Base64.encode(row.leaseAccessories)) encodeURIComponent(Base64.encode(row.leaseAccessories))
); );
}, },
//
BatchModify() {
if (!this.selectionList.length) {
ElMessage({
message: '请勾选要修改的数据',
type: 'warning',
})
return
}
this.formTime = {}
this.dialogTime = true;
},
//
TimeSubmit() {
if (!this.formTime.contractEndTime && !this.formTime.contractStartTime) {
ElMessage({
message: '开始时间和结束时间至少选择一个',
type: 'warning',
})
return
}
ElMessageBox.confirm(
'是否确认批量修改?',
'提示',
{
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}
)
.then(async () => {
try {
this.loading = true
this.loadingTime = true
let data = {
...this.formTime,
ids: this.selectionList.map(item => item.id)
}
if (!data.contractEndTime) {
delete data.contractEndTime
}
if (!data.contractStartTime) {
delete data.contractStartTime
}
console.log(data, '准备提交的数据');
let res = await $_updateClientTime(data)
const { code, msg } = res.data
if (code == 200) {
ElMessage({
message: msg,
type: 'success',
})
this.dialogTime = false;
this.onLoad(this.page);
}
} catch (e) {
this.loading = false;
console.log(e, 'e:=>>>>');
} finally {
this.loadingTime = false;
}
})
.catch(() => {
})
},
async changeclientId() { async changeclientId() {
$_mainList( $_mainList(
{ {
@ -1306,10 +1406,10 @@ export default {
}); });
return; return;
} }
if(this.form.mainId){ if (this.form.mainId) {
this.form.mainName = this.dictList.find(item=>item.id == this.form.mainId).name;// this.form.mainName = this.dictList.find(item => item.id == this.form.mainId).name;//
} }
await add(this.form); await add(this.form);
this.box = false; this.box = false;
this.onLoad(this.page); this.onLoad(this.page);
@ -1350,8 +1450,8 @@ export default {
}); });
return; return;
} }
if(this.form.mainId){ if (this.form.mainId) {
this.form.mainName = this.dictList.find(item=>item.id == this.form.mainId).name;// this.form.mainName = this.dictList.find(item => item.id == this.form.mainId).name;//
} }
await update(this.form); await update(this.form);
this.box = false; this.box = false;

Loading…
Cancel
Save