Commit 1cc42bcb authored by qinj's avatar qinj

审批校验字段修改

parent 494a23df
...@@ -2,56 +2,76 @@ ...@@ -2,56 +2,76 @@
<div class="form-container"> <div class="form-container">
<Title :title="title"> <Title :title="title">
<span>*</span>为必填项 <span>*</span>为必填项
</Title> </Title>
<div class="basic-info"> <div class="basic-info">
<ele-form-section <ele-form-section v-model="formData"
v-model="formData" :rules="rules"
:rules="rules" :sections="sections">
:sections="sections" <template v-slot:ExtLockRsp_SDK="{ formData }">
> <!-- 插槽内容有el-form-item组件包裹 -->
<template v-slot:ExtLockRsp_SDK="{ formData }"> <el-select v-if="formData.ExtProcessNode_SDK==2"
<!-- 插槽内容有el-form-item组件包裹 --> v-model="formData.ExtLockRsp_SDK"
<el-select v-if="formData.ExtProcessNode_SDK==2" v-model="formData.ExtLockRsp_SDK" :disabled="!formData.ExtProcessNode_SDK==2" style="width: 91%" multiple filterable placeholder="请选择" no-match-text="无匹配数据" @change="handleSelectRSP"> :disabled="!formData.ExtProcessNode_SDK==2"
<el-option style="width: 91%"
v-for="item in province" multiple
:key="item.ExtAgentID_SDK" filterable
:label="item.Name" placeholder="请选择"
:value="item.ExtAgentID_SDK" no-match-text="无匹配数据"
/> @change="handleSelectRSP">
</el-select> <el-option v-for="item in province"
<el-input v-else v-model="formData.ExtLockRspName_SDK" disabled> :key="item.ExtAgentID_SDK"
</el-input> :label="item.Name"
</template> :value="item.ExtAgentID_SDK" />
<template v-slot:ExtLockCity_SDK="{ formData }"> </el-select>
<!-- 插槽内容有el-form-item组件包裹 --> <el-input v-else
<el-select v-if="formData.ExtProcessNode_SDK==2" v-model="formData.ExtLockCity_SDK" :disabled="!formData.ExtProcessNode_SDK==2" style="width: 91%" multiple filterable placeholder="请选择" no-match-text="无匹配数据" @change='handleSelectCity'> v-model="formData.ExtLockRspName_SDK"
<el-option disabled>
v-for="item in apptions" </el-input>
:key="item.Code" </template>
:label="item.Name" <template v-slot:ExtLockCity_SDK="{ formData }">
:value="item.Code" <!-- 插槽内容有el-form-item组件包裹 -->
/> <el-select v-if="formData.ExtProcessNode_SDK==2"
</el-select> v-model="formData.ExtLockCity_SDK"
<el-input v-else v-model="formData.ExtLockCityName_SDK" disabled> :disabled="!formData.ExtProcessNode_SDK==2"
</el-input> style="width: 91%"
</template> multiple
<template v-slot:ExtChannelType_SDK="{ formData }"> filterable
<!-- 插槽内容有el-form-item组件包裹 --> placeholder="请选择"
<el-select v-if="formData.ExtProcessNode_SDK==2" v-model="formData.ExtChannelType_SDK" :disabled="!formData.ExtProcessNode_SDK==2" style="width: 91%" filterable placeholder="请选择" no-match-text="无匹配数据"> no-match-text="无匹配数据"
<el-option @change='handleSelectCity'>
v-for="item in cOptions" <el-option v-for="item in apptions"
:key="item.keyword" :key="item.Code"
:label="item.content" :label="item.Name"
:value="item.keyword" :value="item.Code" />
/> </el-select>
</el-select> <el-input v-else
<el-input v-else v-model="formData.ExtChannelType_SDKText" disabled> v-model="formData.ExtLockCityName_SDK"
</el-input> disabled>
</template> </el-input>
</template>
<template v-slot:ExtChannelType_SDK="{ formData }">
<!-- 插槽内容有el-form-item组件包裹 -->
<el-select v-if="formData.ExtProcessNode_SDK==2"
v-model="formData.ExtChannelType_SDK"
:disabled="!formData.ExtProcessNode_SDK==2"
style="width: 91%"
filterable
placeholder="请选择"
no-match-text="无匹配数据">
<el-option v-for="item in cOptions"
:key="item.keyword"
:label="item.content"
:value="item.keyword" />
</el-select>
<el-input v-else
v-model="formData.ExtChannelType_SDKText"
disabled>
</el-input>
</template>
</ele-form-section> </ele-form-section>
<div class="table-contain"> <div class="table-contain">
<div class="form-container">附件信息</div> <div class="form-container">附件信息</div>
<el-table :data="tableData2" <el-table :data="tableData2"
border border
style="width: 100%"> style="width: 100%">
<el-table-column prop="FileName" <el-table-column prop="FileName"
...@@ -64,22 +84,26 @@ ...@@ -64,22 +84,26 @@
label="操作者"> label="操作者">
</el-table-column> </el-table-column>
<el-table-column label="操作"> <el-table-column label="操作">
<el-link slot-scope="{ row }" type="primary" @click="btnLink(row)">下载</el-link> <el-link slot-scope="{ row }"
type="primary"
@click="btnLink(row)">下载</el-link>
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination v-show="TotalRecords>0" <pagination v-show="TotalRecords>0"
:total="TotalRecords" :total="TotalRecords"
:page.sync="page.currentPage" :page.sync="page.currentPage"
:limit.sync="page.pageSize" :limit.sync="page.pageSize"
@pagination="getList" /> @pagination="getList" />
</div> </div>
<div class="table-contain"> <div class="table-contain">
<div class="form-container">审批意见</div> <div class="form-container">审批意见</div>
<div class="btn"> <div class="btn">
<el-button type="primary" @click="approve">审批</el-button> <el-button type="primary"
<el-button type="" @click="reject">退回</el-button> @click="approve">审批</el-button>
</div> <el-button type=""
<el-table :data="tableData" @click="reject">退回</el-button>
</div>
<el-table :data="tableData"
border border
style="width: 100%"> style="width: 100%">
<el-table-column prop="Node" <el-table-column prop="Node"
...@@ -95,31 +119,36 @@ ...@@ -95,31 +119,36 @@
label="备注"> label="备注">
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination v-show="TotalRecords>0" <pagination v-show="TotalRecords>0"
:total="TotalRecords" :total="TotalRecords"
:page.sync="page.currentPage" :page.sync="page.currentPage"
:limit.sync="page.pageSize" :limit.sync="page.pageSize"
@pagination="getList" /> @pagination="getList" />
</div>
<el-dialog title="审批意见"
:visible.sync="dialogFormVisible">
<el-form :model="form">
<el-form-item label-width=500>
<el-input v-model="form.note"
autocomplete="off"></el-input>
</el-form-item>
</el-form>
<div slot="footer"
class="dialog-footer">
<el-button @click="dialogFormVisible = false">取 消</el-button>
<el-button type="primary"
:loading="loading"
@click="approveClick">确 定</el-button>
</div>
</el-dialog>
</div> </div>
<el-dialog title="审批意见" :visible.sync="dialogFormVisible">
<el-form :model="form">
<el-form-item label-width=500>
<el-input v-model="form.note" autocomplete="off"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="dialogFormVisible = false">取 消</el-button>
<el-button type="primary" :loading="loading" @click="approveClick">确 定</el-button>
</div>
</el-dialog>
</div>
</div> </div>
</template> </template>
<script> <script>
import Title from '@/components/Title' import Title from '@/components/Title'
import { getCustomer,typeSearch,lockRsp,ProcessApproval,processHistory,getOneModel } from '@/api/customers'; import { getCustomer, typeSearch, lockRsp, ProcessApproval, processHistory, getOneModel } from '@/api/customers';
import Pagination from '@/components/Pagination' import Pagination from '@/components/Pagination'
import { Country } from '@/api/qcc' import { Country } from '@/api/qcc'
export default { export default {
...@@ -127,17 +156,17 @@ export default { ...@@ -127,17 +156,17 @@ export default {
Pagination, Pagination,
Title, Title,
}, },
data () { data() {
return { return {
form:{}, form: {},
dialogFormVisible:false, dialogFormVisible: false,
title: '城市代理商审批', title: '城市代理商审批',
addBtnStart: false, addBtnStart: false,
objectId: '', objectId: '',
id:'', id: '',
status:0, status: 0,
loading:false, loading: false,
tableData2:[], tableData2: [],
formData: {}, formData: {},
province: [], province: [],
sections: [ sections: [
...@@ -149,8 +178,8 @@ export default { ...@@ -149,8 +178,8 @@ export default {
label: '公司全称', label: '公司全称',
layout: 24, layout: 24,
code: 'qcc', code: 'qcc',
disabled:true, disabled: true,
returnFn: function(row) { returnFn: function (row) {
return { return {
Name: row.Name, Name: row.Name,
ExtSocialUnifiedCreditCode_SDK: row.CreditCode, ExtSocialUnifiedCreditCode_SDK: row.CreditCode,
...@@ -162,24 +191,24 @@ export default { ...@@ -162,24 +191,24 @@ export default {
type: 'input', type: 'input',
label: '公司全称曾用名', label: '公司全称曾用名',
layout: 12, layout: 12,
disabled:true, disabled: true,
}, },
ExtSocialUnifiedCreditCode_SDK: { ExtSocialUnifiedCreditCode_SDK: {
type: 'input', type: 'input',
label: '社会统一信用代码', label: '社会统一信用代码',
disabled:true, disabled: true,
layout: 12 layout: 12
}, },
ExtRegisteredCapital_SDK: { ExtRegisteredCapital_SDK: {
type: 'input', type: 'input',
label: '注册资本(万元)', label: '注册资本(万元)',
disabled:true, disabled: true,
layout: 12, layout: 12,
}, },
ExtCorporateName_SDK: { ExtCorporateName_SDK: {
type: 'input', type: 'input',
label: '法人', label: '法人',
disabled:true, disabled: true,
layout: 12, layout: 12,
}, },
// Ext_QuoteOppotunity_KUT: { // Ext_QuoteOppotunity_KUT: {
...@@ -196,30 +225,30 @@ export default { ...@@ -196,30 +225,30 @@ export default {
type: 'input', type: 'input',
label: '省份', label: '省份',
layout: 12, layout: 12,
disabled:true, disabled: true,
}, },
ExtCityName_SDK: { ExtCityName_SDK: {
type: 'input', type: 'input',
label: '城市', label: '城市',
layout: 12, layout: 12,
isOptions: true, isOptions: true,
disabled:true, disabled: true,
}, },
ExtDistrictName_SDK: { ExtDistrictName_SDK: {
type: 'input', type: 'input',
label: '县市', label: '县市',
layout: 12, layout: 12,
isOptions: true, isOptions: true,
disabled:true, disabled: true,
}, },
ExtAddressDetail_SDK: { ExtAddressDetail_SDK: {
type: 'input', type: 'input',
label: '详细经营地址', label: '详细经营地址',
layout: 12, layout: 12,
disabled:true, disabled: true,
}, },
} }
}, },
...@@ -229,36 +258,36 @@ export default { ...@@ -229,36 +258,36 @@ export default {
ExtLeader_SDK: { ExtLeader_SDK: {
type: 'input', type: 'input',
label: '公司负责人姓名', label: '公司负责人姓名',
disabled:true, disabled: true,
layout: 12 layout: 12
}, },
ExtLeaderPhone_SDK: { ExtLeaderPhone_SDK: {
type: 'input', type: 'input',
label: '公司负责人联系方式', label: '公司负责人联系方式',
disabled:true, disabled: true,
layout: 12 layout: 12
}, },
ExtLeaderEmail_SDK: { ExtLeaderEmail_SDK: {
type: 'input', type: 'input',
label: '公司负责人邮箱', label: '公司负责人邮箱',
disabled:true, disabled: true,
layout: 12 layout: 12
}, },
ExtUnis_SDK: { ExtUnis_SDK: {
type: 'input', type: 'input',
layout: 12, layout: 12,
disabled:true, disabled: true,
label: 'Unis业务负责人姓名' label: 'Unis业务负责人姓名'
}, },
ExtUnisPhone_SDK: { ExtUnisPhone_SDK: {
type: 'input', type: 'input',
layout: 12, layout: 12,
disabled:true, disabled: true,
label: 'Unis业务负责人联系方式' label: 'Unis业务负责人联系方式'
}, },
ExtUnisEmail_SDK: { ExtUnisEmail_SDK: {
type: 'input', type: 'input',
disabled:true, disabled: true,
label: 'Unis业务负责人邮箱', label: 'Unis业务负责人邮箱',
layout: 12 layout: 12
}, },
...@@ -282,10 +311,10 @@ export default { ...@@ -282,10 +311,10 @@ export default {
// }, // },
} }
}, },
{ {
title: '签约信息', title: '签约信息',
formDesc: { formDesc: {
ExtChannelType_SDK : { ExtChannelType_SDK: {
type: 'select', type: 'select',
label: '签约渠道类型', label: '签约渠道类型',
layout: 12, layout: 12,
...@@ -301,158 +330,163 @@ export default { ...@@ -301,158 +330,163 @@ export default {
label: '覆盖范围(城市)', label: '覆盖范围(城市)',
layout: 12, layout: 12,
}, },
} }
}, },
], ],
tableData:[], tableData: [],
TotalRecords:0, TotalRecords: 0,
page:{}, page: {},
apptions:[], apptions: [],
cOptions:[], cOptions: [],
// 同 vue-ele-form // 同 vue-ele-form
rules: { rules: {
ExtChannelType_SDK: {required: true, message: '请选择签约渠道类型'}, ExtChannelType_SDK: { required: true, message: '请选择签约渠道类型' },
ExtLockRsp_SDK: { required: true, message: '请选择锁定RSP' }, ExtLockRsp_SDK: { required: true, message: '请选择锁定RSP' },
ExtLockCity_SDK: { required: true, message: '请选择城市覆盖范围' }, ExtLockCity_SDK: { required: true, message: '请选择城市覆盖范围' },
} }
} }
}, },
watch:{ watch: {
}, },
created(){ created() {
this.id=this.$route.query.id this.id = this.$route.query.id
this.getList() this.getList()
this.getHistoryList() this.getHistoryList()
this.getChannelType() this.getChannelType()
this.getFile() this.getFile()
}, },
methods: { methods: {
getFile(){ getFile() {
const page={ const page = {
currentPage:1, currentPage: 1,
pageSize:10, pageSize: 10,
businessObjectID:this.id businessObjectID: this.id
} }
getOneModel(page).then(resp=>{ getOneModel(page).then(resp => {
this.tableData2=resp.results this.tableData2 = resp.results
})
},
getList() {
getCustomer({ objectID: this.id }).then((resp) => {
resp.results[0].ExtChannelType_SDK = null
this.formData = resp.results[0]
if (this.formData.ExtProcessNode_SDK != 2) {
this.rules.ExtChannelType_SDK = []
}
lockRsp({ extProvince_SDK: resp.results[0].ExtProvince_SDK }).then((resp) => {
this.province = resp.results
})
const app = { provinceCode: resp.results[0].ExtProvince_SDK }
this.$request(Country.searchCity, app).then((resp) => {
this.apptions = resp.results
})
}) })
}, },
getList(){ getChannelType() {
getCustomer({objectID:this.id}).then((resp)=>{ typeSearch({ code: 'ExtChannelType_SDK', module: 'Customer', content: 'CCP' }).then((resp) => {
resp.results[0].ExtChannelType_SDK=null this.cOptions = resp
this.formData=resp.results[0]
lockRsp({extProvince_SDK: resp.results[0].ExtProvince_SDK}).then((resp)=>{
this.province=resp.results
})
const app={provinceCode:resp.results[0].ExtProvince_SDK}
this.$request(Country.searchCity,app).then((resp) => {
this.apptions=resp.results
}) })
})
}, },
getChannelType(){ getHistoryList() {
typeSearch({code:'ExtChannelType_SDK',module:'Customer',content:'CCP'}).then((resp)=>{ processHistory({ businessObjectID: this.id }).then((resp) => {
this.cOptions=resp this.tableData = resp.results
}) })
},
getHistoryList(){
processHistory({businessObjectID:this.id}).then((resp)=>{
this.tableData=resp.results
})
}, },
btnLink(row){ btnLink(row) {
window.location.href = row.FileURL window.location.href = row.FileURL
}, },
handleSelectRSP(value){ handleSelectRSP(value) {
console.log('val',value) console.log('val', value)
let cont=[] let cont = []
let val=[] let val = []
this.province.forEach((el)=>{ this.province.forEach((el) => {
value.forEach((item)=>{ value.forEach((item) => {
if(el.ExtAgentID_SDK==item){ if (el.ExtAgentID_SDK == item) {
cont.push(el.Name) cont.push(el.Name)
val.push(el.ExtAgentID_SDK) val.push(el.ExtAgentID_SDK)
} }
}) })
}) })
this.formData.ExtLockRspName_SDK=cont//获取的 name this.formData.ExtLockRspName_SDK = cont//获取的 name
this.formData.ExtLockRsp_SDK=val//获取的 id this.formData.ExtLockRsp_SDK = val//获取的 id
},
handleSelectCity(value) {
let cont = []
let val = []
this.apptions.forEach((el) => {
value.forEach((item) => {
if (el.Code == item) {
cont.push(el.Name)
val.push(el.Code)
}
})
})
this.formData.ExtLockCityName_SDK = cont//获取的 name
this.formData.ExtLockCity_SDK = val//获取的 id
}, },
handleSelectCity(value){ handleSuccess() {
let cont=[]
let val=[]
this.apptions.forEach((el)=>{
value.forEach((item)=>{
if(el.Code==item){
cont.push(el.Name)
val.push(el.Code)
}
})
})
this.formData.ExtLockCityName_SDK=cont//获取的 name
this.formData.ExtLockCity_SDK=val//获取的 id
},
handleSuccess () {
// this.$message.success('创建成功') // this.$message.success('创建成功')
}, },
approve(){ approve() {
this.dialogFormVisible=true this.dialogFormVisible = true
this.status=1 this.status = 1
}, },
reject(){ reject() {
this.dialogFormVisible=true this.dialogFormVisible = true
this.status=2 this.status = 2
}, },
approveClick(){ approveClick() {
const extLockRsp_SDK=this.formData.ExtLockRsp_SDK.toString() const extLockRsp_SDK = this.formData.ExtLockRsp_SDK.toString()
const extLockRspName_SDK=this.formData.ExtLockRspName_SDK.toString() const extLockRspName_SDK = this.formData.ExtLockRspName_SDK.toString()
const extLockCity_SDK=this.formData.ExtLockCity_SDK.toString() const extLockCity_SDK = this.formData.ExtLockCity_SDK.toString()
const extLockCityName_SDK=this.formData.ExtLockCityName_SDK.toString() const extLockCityName_SDK = this.formData.ExtLockCityName_SDK.toString()
const cc={extProcessNode_SDK:this.formData.ExtProcessNode_SDK, const cc = {
extCustomerType_SDK:this.formData.ExtCustomerType_SDK, extProcessNode_SDK: this.formData.ExtProcessNode_SDK,
extProvince_SDK:this.formData.ExtProvince_SDK, extCustomerType_SDK: this.formData.ExtCustomerType_SDK,
objectID:this.formData.ObjectID, extProvince_SDK: this.formData.ExtProvince_SDK,
extLockRsp_SDK:extLockRsp_SDK, objectID: this.formData.ObjectID,
extLockRspName_SDK:extLockRspName_SDK, extLockRsp_SDK: extLockRsp_SDK,
extLockCity_SDK:extLockCity_SDK, extLockRspName_SDK: extLockRspName_SDK,
extLockCityName_SDK:extLockCityName_SDK, extLockCity_SDK: extLockCity_SDK,
extChannelType_SDK:this.formData.ExtChannelType_SDK} extLockCityName_SDK: extLockCityName_SDK,
if(this.status==1){ extChannelType_SDK: this.formData.ExtChannelType_SDK
const add={customerDTO:cc,note:this.form.note,result:"approve"}
this.loading=true
ProcessApproval(add).then((resp)=>{
this.loading=false
this.$message.success("审批成功!")
this.dialogFormVisible=false
this.$router.back()
})
}else{
const bdd={customerDTO:cc,note:this.form.note,result:"reject"}
this.loading=true
ProcessApproval(bdd).then((resp)=>{
this.loading=false
this.$message.success("退回成功!")
this.dialogFormVisible=false
this.$router.back()
})
} }
if (this.status == 1) {
const add = { customerDTO: cc, note: this.form.note, result: "approve" }
this.loading = true
ProcessApproval(add).then((resp) => {
this.loading = false
this.$message.success("审批成功!")
this.dialogFormVisible = false
this.$router.back()
})
} else {
const bdd = { customerDTO: cc, note: this.form.note, result: "reject" }
this.loading = true
ProcessApproval(bdd).then((resp) => {
this.loading = false
this.$message.success("退回成功!")
this.dialogFormVisible = false
this.$router.back()
})
}
}, },
// 对象格式转化为键值对 // 对象格式转化为键值对
paramsToFormData(obj) { paramsToFormData(obj) {
const formData = new FormData(); const formData = new FormData();
Object.keys(obj).forEach((key) => { Object.keys(obj).forEach((key) => {
if (obj[key] instanceof Array) { if (obj[key] instanceof Array) {
obj[key].forEach((item) => { obj[key].forEach((item) => {
formData.append(key, item); formData.append(key, item);
}); });
return; return;
} }
formData.append(key, obj[key]); formData.append(key, obj[key]);
}); });
return formData; return formData;
}, },
} }
...@@ -460,27 +494,27 @@ extChannelType_SDK:this.formData.ExtChannelType_SDK} ...@@ -460,27 +494,27 @@ extChannelType_SDK:this.formData.ExtChannelType_SDK}
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
::v-deep .el-row--flex { ::v-deep .el-row--flex {
display: -webkit-box; display: -webkit-box;
.el-col-14 { .el-col-14 {
width: 90%; width: 90%;
}
} }
.basic-info { }
::v-deep .ele-form-btns{ .basic-info {
.el-form-item__content { ::v-deep .ele-form-btns {
display: none; .el-form-item__content {
} display: none;
} }
} }
.btn { }
margin-left: 45%; .btn {
margin-bottom: 8px; margin-left: 45%;
} margin-bottom: 8px;
.table-contain { }
padding: 0 80px 0 20px; .table-contain {
margin-left: 65px; padding: 0 80px 0 20px;
background: #fff; margin-left: 65px;
border-radius: 2px; background: #fff;
border-radius: 2px;
} }
</style> </style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment