Commit 2de7e94e authored by qinj's avatar qinj

审批页

parent a11f5faf
...@@ -13,6 +13,14 @@ export const province = { ...@@ -13,6 +13,14 @@ export const province = {
searchUrl: '/customer/searchProcessCustomer', searchUrl: '/customer/searchProcessCustomer',
} }
//查询审批单个列表
export function getCustomer(data) {
return request({
url: '/customer/getOne',
method: 'post',
data
})
}
// 查询全部代理商数据 // 查询全部代理商数据
export function getAllData(data) { export function getAllData(data) {
return request({ return request({
...@@ -67,6 +75,30 @@ export function searchProduct(data) { ...@@ -67,6 +75,30 @@ export function searchProduct(data) {
data data
}) })
} }
//查询渠道类型
export function typeSearch(data){
return request({
url: '/commonSession/searchAll',
method: 'post',
data
})
}
//查询渠道类型
export function lockRsp(data){
return request({
url: '/customer/searchLockRsp',
method: 'post',
data
})
}
//审批的提交
export function ProcessApproval(data){
return request({
url: '/customer/processApproval',
method: 'post',
data
})
}
// // 客户发布记录 // // 客户发布记录
// export const releaseRecord = { // export const releaseRecord = {
// createUrl: '/releaserecord/create', // createUrl: '/releaserecord/create',
......
...@@ -111,7 +111,7 @@ ...@@ -111,7 +111,7 @@
</template> </template>
<!-- 按钮区插槽 --> <!-- 按钮区插槽 -->
<template v-slot:form-btn="{ btns }"> <!-- <template v-slot:form-btn="{ btns }">
<slot :btns="getBtns(btns)" name="form-btn"> <slot :btns="getBtns(btns)" name="form-btn">
<el-button <el-button
v-for="(btn, index) of btns" v-for="(btn, index) of btns"
...@@ -120,7 +120,7 @@ ...@@ -120,7 +120,7 @@
@click="btn.click" @click="btn.click"
>{{ btn.text }}</el-button> >{{ btn.text }}</el-button>
</slot> </slot>
</template> </template> -->
</ele-form> </ele-form>
</template> </template>
......
...@@ -34,12 +34,20 @@ const customersRouter = { ...@@ -34,12 +34,20 @@ const customersRouter = {
name: 'PotentialCustomers', name: 'PotentialCustomers',
meta: { title: 'potentialCustomers' } meta: { title: 'potentialCustomers' }
}, },
{
path: '/potential-list',
component: () => import('@/views/customers/potential-list'),
name: 'PotentialList',
meta: {title: '代理商审批'},
hidden: true,
},
{ {
path: '/regular', path: '/regular',
component: () => import('@/views/customers/regular-customers'), component: () => import('@/views/customers/regular-customers'),
name: 'RegularCustomers', name: 'RegularCustomers',
meta: { title: 'regularCustomers' } meta: { title: 'regularCustomers' }
}, },
// { // {
// path: 'resource', // path: 'resource',
// meta: { title: '资源池管理' }, // meta: { title: '资源池管理' },
......
...@@ -43,7 +43,7 @@ export default { ...@@ -43,7 +43,7 @@ export default {
methods: { methods: {
// 编辑 // 编辑
handleEdit(val) { handleEdit(val) {
this.$router.push({ path: '/customersAdd',query:{id:val.ObjectID} }) this.$router.push({ path: '/potential-list',query:{id:val.ObjectID} })
}, },
} }
......
<template>
<div class="form-container">
<Title :title="title">
<span>*</span>为必填项
</Title>
<div class="basic-info">
<ele-form-section
v-model="formData"
:rules="rules"
:sections="sections"
/>
<div class="btn">
<el-button type="primary" @click="dialogFormVisible = true">审批</el-button>
<el-button type="" @click="dialogFormVisible = true">退回</el-button>
</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="approveClick(0)">取 消</el-button>
<el-button type="primary" @click="approveClick(1)">确 定</el-button>
</div>
</el-dialog>
</div>
</div>
</template>
<script>
import Title from '@/components/Title'
import { customerCreate, provinceSearch, citySearch, districtSearch,getCustomer,typeSearch,lockRsp,ProcessApproval } from '@/api/customers';
export default {
components: {
Title,
customerCreate,
provinceSearch,
citySearch,
districtSearch
},
data () {
return {
form:{},
dialogFormVisible:false,
title: '代理商审批',
addBtnStart: false,
objectId: '',
id:'',
formData: {},
province: [],
sections: [
{
title: '基本信息',
formDesc: {
Name: {
type: 'input',
label: '公司全称',
layout: 24,
code: 'qcc',
disabled:true,
returnFn: function(row) {
return {
Name: row.Name,
ExtSocialUnifiedCreditCode_SDK: row.CreditCode,
ExtCorporateName_SDK: row.OperName
}
},
},
ExtSecondName_SDK: {
type: 'input',
label: '公司全称曾用名',
layout: 12,
disabled:true,
},
ExtSocialUnifiedCreditCode_SDK: {
type: 'input',
label: '社会统一信用代码',
disabled:true,
layout: 12
},
ExtRegisteredCapital_SDK: {
type: 'input',
label: '注册资本(万元)',
disabled:true,
layout: 12,
},
ExtCorporateName_SDK: {
type: 'input',
label: '法人',
disabled:true,
layout: 12,
},
// Ext_QuoteOppotunity_KUT: {
// type: 'input',
// label: '税务登记编号',
// layout: 12
// },
}
},
{
title: '地址信息',
formDesc: {
ExtProvince_SDK: {
type: 'select',
label: '省份',
layout: 12,
disabled:true,
options: async data => {
const res = await provinceSearch({})
var result = res.results.map(item => {
return {
text: item.Name,
value: item.Code
}
})
return result
},
},
ExtCity_SDK: {
type: 'select',
label: '城市',
layout: 12,
isOptions: true,
disabled:true,
optionsLinkageFields: ['ExtProvince_SDK'],
options: async data => {
if (!data.ExtProvince_SDK) {
return []
}
const res = await citySearch({
provinceCode: data.ExtProvince_SDK
})
var result = res.results.map(item => {
return {
text: item.Name,
value: item.Code
}
})
return result
},
},
ExtDistrict_SDK: {
type: 'select',
label: '县市',
layout: 12,
isOptions: true,
disabled:true,
optionsLinkageFields: ['ExtProvince_SDK', 'ExtCity_SDK'],
options: async data => {
if (!data.ExtCity_SDK) {
return []
}
const res = await districtSearch({
cityCode: data.ExtCity_SDK
})
var result = res.results.map(item => {
return {
text: item.Name,
value: item.Code
}
})
return result
},
},
ExtAddressDetail_SDK: {
type: 'input',
label: '详细经营地址',
layout: 12,
disabled:true,
},
}
},
{
title: '联系信息',
formDesc: {
ExtLeader_SDK: {
type: 'input',
label: '公司负责人姓名',
disabled:true,
layout: 12
},
ExtLeaderPhone_SDK: {
type: 'input',
label: '公司负责人联系方式',
disabled:true,
layout: 12
},
ExtLeaderEmail_SDK: {
type: 'input',
label: '公司负责人邮箱',
disabled:true,
layout: 12
},
ExtUnis_SDK: {
type: 'input',
layout: 12,
disabled:true,
label: 'Unis业务负责人姓名'
},
ExtUnisPhone_SDK: {
type: 'input',
layout: 12,
disabled:true,
label: 'Unis业务负责人联系方式'
},
ExtUnisEmail_SDK: {
type: 'input',
disabled:true,
label: 'Unis业务负责人邮箱',
layout: 12
},
ExtBusiness_SDK: {
type: 'input',
layout: 12,
disabled:true,
label: '商务负责人姓名'
},
ExtBusinessPhone_SDK: {
type: 'input',
layout: 12,
disabled:true,
label: '商务负责人联系方式'
},
ExtBusinessEmail_SDK: {
type: 'input',
disabled:true,
label: '商务负责人邮箱',
layout: 12
},
}
},
{
title: '签约信息',
formDesc: {
ExtChannelType_SDK : {
type: 'select',
label: '签约渠道类型',
layout: 12,
options: async data => {
const res = await typeSearch({code:'ExtChannelType_SDK',module:'Customer'})
var result = res.map(item => {
return {
text: item.content,
value: item.keyword
}
})
return result
},
},
ExtLockRsp_SDK: {
type: 'select',
label: '锁定RSP',
layout: 12,
isOptions: true,
options: [
// async data => {
// const res = await lockRsp({
// ExtProvinceCode_SDK: data.ExtProvinceCode_SDK
// })
// var result = res.results.map(item => {
// return {
// text: item.Name,
// value: item.Code
// }
// })
// return result
// },
],
attrs: {
multiple: true
}
},
ExtLockCity_SDK: {
type: 'select',
label: '覆盖范围(城市)',
layout: 12,
isOptions: true,
optionsLinkageFields: ['ExtProvince_SDK', 'ExtCity_SDK'],
options: async data => {
if (!data.ExtCity_SDK) {
return []
}
const res = await districtSearch({
cityCode: data.ExtCity_SDK
})
var result = res.results.map(item => {
return {
text: item.Name,
value: item.Code
}
})
return result
},
},
}
},
{
title: '合作日期',
formDesc: {
extStartDate_SDK: {
type: 'date',
label: '初始合作开始时间',
layout: 12
},
extAuthenticationDate_SDK: {
type: 'date',
label: '高级认证日期',
layout: 12
},
extEndDate_SDK: {
type: 'date',
label: '合作终止日期',
layout: 12
},
}
},
],
// 同 vue-ele-form
rules: {
Name: {required: true, message: '名称必填'},
ExtSocialUnifiedCreditCode_SDK: { required: true, message: '名称必填' },
ExtSocialUnifiedCreditCode_SDK: { required: true, message: '名称必填' },
ExtRegisteredCapital_SDK: {required: true, message: '名称必填' },
ExtCorporateName_SDK: { required: true, message: '名称必填' },
}
}
},
watch:{
},
created(){
this.id=this.$route.query.id
this.getList()
// this.selectList()
},
methods: {
getList(){
getCustomer({objectID:this.id}).then((resp)=>{
this.formData=resp.results[0]
})
},
selectList(){
lockRsp({ExtProvince_SDK: this.formData.ExtProvince_SDK}).then((resp)=>{
console.log('ddddd',resp)
})
},
handleSuccess () {
// this.$message.success('创建成功')
},
approveClick(){
ProcessApproval(this.formData).then((resp)=>{
})
},
// 对象格式转化为键值对
paramsToFormData(obj) {
const formData = new FormData();
Object.keys(obj).forEach((key) => {
if (obj[key] instanceof Array) {
obj[key].forEach((item) => {
formData.append(key, item);
});
return;
}
formData.append(key, obj[key]);
});
return formData;
},
}
}
</script>
<style lang="scss" scoped>
::v-deep .el-row--flex {
display: -webkit-box;
.el-col-14 {
width: 90%;
}
}
.basic-info {
::v-deep .ele-form-btns{
.el-form-item__content {
display: none;
}
}
}
.btn {
margin-left: 45%;
}
</style>
...@@ -100,10 +100,10 @@ ...@@ -100,10 +100,10 @@
:offset="1" :offset="1"
class="padding-bottom"> class="padding-bottom">
<el-form-item label="省份:" <el-form-item label="省份:"
prop="extProvinceCode_SDK" prop="extProvince_SDK"
label-width="80px" label-width="80px"
> >
<el-select v-model="formData.extProvinceCode_SDK" style="width: 91%" filterable placeholder="请选择省份" no-match-text="无匹配数据" @change="handleSelect"> <el-select v-model="formData.extProvince_SDK" style="width: 91%" filterable placeholder="请选择省份" no-match-text="无匹配数据" @change="handleSelect">
<el-option <el-option
v-for="item in countryOptions" v-for="item in countryOptions"
:key="item.Code" :key="item.Code"
...@@ -116,10 +116,10 @@ ...@@ -116,10 +116,10 @@
<el-col :span="7" <el-col :span="7"
class="padding-bottom"> class="padding-bottom">
<el-form-item label="市:" <el-form-item label="市:"
prop="extCityCode_SDK" prop="extCity_SDK"
label-width="80px" label-width="80px"
required> required>
<el-select v-model="formData.extCityCode_SDK" style="width: 91%" filterable placeholder="请选择市" @change="handleSelectCity" > <el-select v-model="formData.extCity_SDK" style="width: 91%" filterable placeholder="请选择市" @change="handleSelectCity" >
<el-option <el-option
v-for="item in cityOptions" v-for="item in cityOptions"
:key="item.Code" :key="item.Code"
...@@ -132,10 +132,10 @@ ...@@ -132,10 +132,10 @@
<el-col :span="7" <el-col :span="7"
class="padding-bottom"> class="padding-bottom">
<el-form-item label="区:" <el-form-item label="区:"
prop="extDistrictCode_SDK" prop="extDistrict_SDK"
label-width="80px" label-width="80px"
required> required>
<el-select v-model="formData.extDistrictCode_SDK" style="width: 91%" filterable placeholder="请选择区" no-match-text="无匹配数据"> <el-select v-model="formData.extDistrict_SDK" style="width: 91%" filterable placeholder="请选择区" no-match-text="无匹配数据">
<el-option <el-option
v-for="item in disOptions" v-for="item in disOptions"
:key="item.Code" :key="item.Code"
...@@ -365,9 +365,9 @@ export default { ...@@ -365,9 +365,9 @@ export default {
extSocialUnifiedCreditCode_SDK: [{ required: true, message: '请输入统一社会信用代码', trigger: 'blur' }], extSocialUnifiedCreditCode_SDK: [{ required: true, message: '请输入统一社会信用代码', trigger: 'blur' }],
extRegisteredCapital_SDK: [{ required: true, message: '请输入注册资本(万元)', trigger: 'blur' }], extRegisteredCapital_SDK: [{ required: true, message: '请输入注册资本(万元)', trigger: 'blur' }],
extCorporateName_SDK: [{ required: true, message: '请输入法人', trigger: 'blur' }], extCorporateName_SDK: [{ required: true, message: '请输入法人', trigger: 'blur' }],
extProvinceCode_SDK: [{ required: true, message: '请选择省份', trigger: 'blur' }], extProvince_SDK: [{ required: true, message: '请选择省份', trigger: 'blur' }],
extCityCode_SDK: [{ required: true, message: '请选择市', trigger: 'blur' }], extCity_SDK: [{ required: true, message: '请选择市', trigger: 'blur' }],
extDistrictCode_SDK: [{ required: true, message: '请选择区', trigger: 'blur' }], extDistrict_SDK: [{ required: true, message: '请选择区', trigger: 'blur' }],
extAddressDetail_SDK: [{ required: true, message: '请输入详细经营地址', trigger: 'blur' }], extAddressDetail_SDK: [{ required: true, message: '请输入详细经营地址', trigger: 'blur' }],
extLeader_SDK: [{ required: true, message: '请输入公司负责人姓名', trigger: 'blur' }], extLeader_SDK: [{ required: true, message: '请输入公司负责人姓名', trigger: 'blur' }],
extLeaderPhone_SDK: [{ required: true, message: '请输入公司负责人联系电话', trigger: 'blur' }], extLeaderPhone_SDK: [{ required: true, message: '请输入公司负责人联系电话', trigger: 'blur' }],
......
...@@ -104,7 +104,7 @@ ...@@ -104,7 +104,7 @@
prop="extProvinceName_SDK" prop="extProvinceName_SDK"
label-width="80px" label-width="80px"
> >
<el-select v-model="formData.extProvinceCode_SDK" style="width: 91%" filterable placeholder="请选择省份" no-match-text="无匹配数据" @change="handleSelect"> <el-select v-model="formData.extProvince_SDK" style="width: 91%" filterable placeholder="请选择省份" no-match-text="无匹配数据" @change="handleSelect">
<el-option <el-option
v-for="item in countryOptions" v-for="item in countryOptions"
:key="item.Code" :key="item.Code"
...@@ -120,7 +120,7 @@ ...@@ -120,7 +120,7 @@
prop="extCityName_SDK" prop="extCityName_SDK"
label-width="80px" label-width="80px"
> >
<el-select v-model="formData.extCityCode_SDK" style="width: 91%" filterable placeholder="请选择市" @change="handleSelectCity" > <el-select v-model="formData.extCity_SDK" style="width: 91%" filterable placeholder="请选择市" @change="handleSelectCity" >
<el-option <el-option
v-for="item in cityOptions" v-for="item in cityOptions"
:key="item.Code" :key="item.Code"
...@@ -136,7 +136,7 @@ ...@@ -136,7 +136,7 @@
prop="extDistrictName_SDK" prop="extDistrictName_SDK"
label-width="80px" label-width="80px"
> >
<el-select v-model="formData.extDistrictCode_SDK" style="width: 91%" filterable placeholder="请选择区" no-match-text="无匹配数据"> <el-select v-model="formData.extDistrict_SDK" style="width: 91%" filterable placeholder="请选择区" no-match-text="无匹配数据">
<el-option <el-option
v-for="item in disOptions" v-for="item in disOptions"
:key="item.Code" :key="item.Code"
......
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