|
@@ -6,9 +6,10 @@
|
|
|
import {getContractSearchList,getServiceDetail} from '@/api/crm'
|
|
|
import {registerAdd,registerEdit,contractRegisterCheck} from '@/api/financialMana'
|
|
|
|
|
|
-
|
|
|
const contractSourceArray=['非CRM合同导入','CRM合同导入']
|
|
|
+ // 合同状态数组
|
|
|
const contractStatusArray=[{id:1,label:"已审批"},{id:2,label:"单章寄出"},{id:3,label:"已签回"},{id:4,label:"已终止"},{id:5,label:"邮件备案"}]
|
|
|
+ // 合同类型数组
|
|
|
const contractTypeArray=[{value:0,label:"自付合同",
|
|
|
children:[{value:1,label:"新签",children:null},{value:2,label:"续约",children:null},{value:4,label:"补充协议",children:null}]},
|
|
|
{value:1,label:"代付合同",
|
|
@@ -20,23 +21,27 @@
|
|
|
type:String,
|
|
|
default:'compliance'
|
|
|
},
|
|
|
- // 货币列表
|
|
|
+ // 货币数据
|
|
|
currencyList:{
|
|
|
type:Array,
|
|
|
default:()=>[]
|
|
|
},
|
|
|
+ // 套餐数据
|
|
|
serviceItem:{
|
|
|
type:Object,
|
|
|
default:()=>{}
|
|
|
},
|
|
|
+ // 销售数据
|
|
|
sellerData:{
|
|
|
type:Object,
|
|
|
default:()=>{}
|
|
|
},
|
|
|
+ // 预登记数据
|
|
|
supplementaryInfo:{
|
|
|
type:Object,
|
|
|
default:()=>{}
|
|
|
},
|
|
|
+ // 详情数据
|
|
|
detailInfo:{
|
|
|
type:Object,
|
|
|
default:()=>{}
|
|
@@ -45,15 +50,14 @@
|
|
|
|
|
|
const emits=defineEmits(['submitSuccess'])
|
|
|
|
|
|
- const rmbRate=ref(1)
|
|
|
-
|
|
|
+ const contractInfoForm=ref(null)
|
|
|
// 表单相关
|
|
|
const compliance=reactive({
|
|
|
// 合规登记表单
|
|
|
form:{
|
|
|
product_ids:'1,2',
|
|
|
supplement:0, // 是否是补录合同
|
|
|
- contract_register_id:'',
|
|
|
+ contract_register_id:0,
|
|
|
crm_contract_id:0,
|
|
|
contract_source:0,
|
|
|
contract_code:'',
|
|
@@ -104,18 +108,18 @@
|
|
|
},
|
|
|
// 有效期
|
|
|
contractValidityDate:[],
|
|
|
+ // 合同类型选中
|
|
|
+ contractTypeCheck:[]
|
|
|
+ })
|
|
|
|
|
|
- // --------------套餐信息
|
|
|
+ // --------------套餐信息
|
|
|
+ const serviceData=reactive({
|
|
|
showServiceFicc:false,
|
|
|
showServiceQy:false,
|
|
|
// 选中的套餐 - ficc
|
|
|
checkedService:[],
|
|
|
// 选中的套餐 - 权益
|
|
|
checkedServiceQy:[],
|
|
|
- // 套餐列表
|
|
|
- serviceArray:[],
|
|
|
- // 套餐列表 - 权益
|
|
|
- serviceArrayQy:[],
|
|
|
// 小套餐选中的品种
|
|
|
checkedPermission:[],
|
|
|
// 权益大套餐选中的品种
|
|
@@ -129,8 +133,6 @@
|
|
|
serviceType:0,
|
|
|
// 权益套餐 1、权益大套餐 2、行业套餐
|
|
|
serviceTypeQy:0,
|
|
|
- // 合同类型选中
|
|
|
- contractTypeCheck:[],
|
|
|
// 品种选择 - Ficc
|
|
|
varietyDiaShow:false,
|
|
|
//品种选择 - Qy
|
|
@@ -142,6 +144,15 @@
|
|
|
serviceShow:false,
|
|
|
})
|
|
|
|
|
|
+ // 销售列表类型1-单Ficc 2-单权益 3-ficc和权益
|
|
|
+ const sellerListType=ref(3)
|
|
|
+ // 选中的销售数组
|
|
|
+ const cascaderSelectSeller=ref([])
|
|
|
+ // 查看套餐报价单 图片
|
|
|
+ const previewImage=ref('')
|
|
|
+ // 查看套餐报价单 标题
|
|
|
+ const previewImageTitle=ref('')
|
|
|
+
|
|
|
// 合同编号列表请求参数
|
|
|
const contractNoQuery=reactive({
|
|
|
page_size:20,
|
|
@@ -154,65 +165,49 @@
|
|
|
contractNoArray:[]
|
|
|
})
|
|
|
|
|
|
- // 合同编号--列表
|
|
|
-
|
|
|
- // 销售列表
|
|
|
- const contractInfoForm=ref(null)
|
|
|
- // 销售列表类型1-单Ficc 2-单权益 3-ficc和权益
|
|
|
- const sellerListType=ref(3)
|
|
|
- // 选中的销售数组
|
|
|
- const cascaderSelectSeller=ref([])
|
|
|
-
|
|
|
- // 查看套餐报价单 图片
|
|
|
- const previewImage=ref('')
|
|
|
- // 查看套餐报价单 标题
|
|
|
- const previewImageTitle=ref('')
|
|
|
-
|
|
|
+ // --------------------------------------方法
|
|
|
// 合同来源改变
|
|
|
const contractSourceChange=(value)=>{
|
|
|
// 切换来源,清空数据
|
|
|
- compliance.form={...compliance.form,
|
|
|
- product_ids:value==0?'1,2':'',
|
|
|
- crm_contract_id:0,
|
|
|
- contract_code:'',
|
|
|
- company_name:'',
|
|
|
- currency_unit:'CNY',
|
|
|
- new_company:0,
|
|
|
- seller_ids:'',
|
|
|
- seller_id:'',
|
|
|
- contract_status:'',
|
|
|
- start_date:'',
|
|
|
- end_date:'',
|
|
|
- contract_amount:'',
|
|
|
- contract_type:'',
|
|
|
- has_payment:'',
|
|
|
- actual_pay_companies:'',
|
|
|
- relate_contract_code:'',
|
|
|
- relate_contract_main_code:'',
|
|
|
- sign_date:'',
|
|
|
- agreed_pay_time:'',
|
|
|
- services:[],
|
|
|
- services_amount:'',
|
|
|
- services_Qy_amount:'',
|
|
|
- service_remark:'',
|
|
|
- remark:""
|
|
|
- }
|
|
|
+ compliance.form.product_ids=value==0?'1,2':'',
|
|
|
+ compliance.form.crm_contract_id=0,
|
|
|
+ compliance.form.contract_code='',
|
|
|
+ compliance.form.company_name='',
|
|
|
+ compliance.form.currency_unit='CNY',
|
|
|
+ compliance.form.new_company=0,
|
|
|
+ compliance.form.seller_ids='',
|
|
|
+ compliance.form.seller_id='',
|
|
|
+ compliance.form.contract_status='',
|
|
|
+ compliance.form.start_date='',
|
|
|
+ compliance.form.end_date='',
|
|
|
+ compliance.form.contract_amount='',
|
|
|
+ compliance.form.contract_type='',
|
|
|
+ compliance.form.has_payment='',
|
|
|
+ compliance.form.actual_pay_companies='',
|
|
|
+ compliance.form.relate_contract_code='',
|
|
|
+ compliance.form.relate_contract_main_code='',
|
|
|
+ compliance.form.sign_date='',
|
|
|
+ compliance.form.agreed_pay_time='',
|
|
|
+ compliance.form.services=[],
|
|
|
+ compliance.form.services_amount='',
|
|
|
+ compliance.form.services_Qy_amount='',
|
|
|
+ compliance.form.service_remark='',
|
|
|
+ compliance.form.remark=""
|
|
|
|
|
|
- compliance.checkedService=[]
|
|
|
- compliance.checkedServiceQy=[]
|
|
|
-
|
|
|
- compliance.checkedPermission=[]
|
|
|
- compliance.checkedPermissionQyBig=[]
|
|
|
- compliance.checkedPermissionQySmall=[]
|
|
|
+ serviceData.checkedService=[]
|
|
|
+ serviceData.checkedServiceQy=[]
|
|
|
+ serviceData.checkedPermission=[]
|
|
|
+ serviceData.checkedPermissionQyBig=[]
|
|
|
+ serviceData.checkedPermissionQySmall=[]
|
|
|
sellerListType.value = value==0?3:''
|
|
|
- compliance.contractTypeCheck=[]
|
|
|
// 1-大套餐 2-小套餐
|
|
|
- compliance.serviceType=0
|
|
|
- compliance.serviceTypeQy=0
|
|
|
+ serviceData.serviceType=0
|
|
|
+ serviceData.serviceTypeQy=0
|
|
|
// 品种选择 - Ficc
|
|
|
- compliance.serviceVarietyShow=false
|
|
|
+ serviceData.serviceVarietyShow=false
|
|
|
// 品种选择 - Qy
|
|
|
- compliance.serviceVarietyShowQy=false
|
|
|
+ serviceData.serviceVarietyShowQy=false
|
|
|
+ compliance.contractTypeCheck=[]
|
|
|
compliance.contractValidityDate=[]
|
|
|
setTimeout(()=>{
|
|
|
// 去除错误信息
|
|
@@ -222,14 +217,13 @@
|
|
|
|
|
|
// ------------------------------------------------监听
|
|
|
watch(()=>compliance.form.contract_amount,(newVal)=>{
|
|
|
- if(compliance.showServiceFicc && compliance.showServiceQy){
|
|
|
+ if(serviceData.showServiceFicc && serviceData.showServiceQy){
|
|
|
return
|
|
|
- }else if(!compliance.showServiceFicc){
|
|
|
+ }else if(!serviceData.showServiceFicc){
|
|
|
compliance.form.services_Qy_amount = newVal
|
|
|
}else{
|
|
|
compliance.form.services_amount = newVal
|
|
|
}
|
|
|
-
|
|
|
})
|
|
|
|
|
|
watch(()=>props.supplementaryInfo.supplement,(value)=>{
|
|
@@ -237,9 +231,9 @@
|
|
|
setSupplementaryData()
|
|
|
}
|
|
|
})
|
|
|
+
|
|
|
watch(()=>props.detailInfo.contract_register_id,(value)=>{
|
|
|
if(value){
|
|
|
- console.log(props.detailInfo);
|
|
|
setComplianceDetail()
|
|
|
}
|
|
|
})
|
|
@@ -248,7 +242,6 @@
|
|
|
|
|
|
// 合同类型改变
|
|
|
const contractTypeChange=(value)=>{
|
|
|
- // console.log(value);
|
|
|
if(!value) return
|
|
|
compliance.form.has_payment = value[0]
|
|
|
compliance.form.contract_type = value[1]
|
|
@@ -276,10 +269,10 @@
|
|
|
const element = value[i];
|
|
|
if(element[0]==2){
|
|
|
// ficc
|
|
|
- ficcSeller = element[2]
|
|
|
+ ficcSeller = element[element.length-1]
|
|
|
}else{
|
|
|
//权益
|
|
|
- qySeller = element[2]
|
|
|
+ qySeller = element[element.length-1]
|
|
|
}
|
|
|
}
|
|
|
// 编辑,不允许修改销售数量
|
|
@@ -290,38 +283,38 @@
|
|
|
return
|
|
|
}
|
|
|
}
|
|
|
- console.log(compliance.form.seller_ids);
|
|
|
cascaderSelectSeller.value=[ficcSeller,qySeller]
|
|
|
compliance.form.seller_ids= cascaderSelectSeller.value.join(',')
|
|
|
// 根据销售选择是否显示套餐
|
|
|
if(ficcSeller && qySeller){
|
|
|
// 都有
|
|
|
- compliance.showServiceFicc=true
|
|
|
- compliance.showServiceQy=true
|
|
|
+ serviceData.showServiceFicc=true
|
|
|
+ serviceData.showServiceQy=true
|
|
|
if(!compliance.form.contract_register_id){
|
|
|
// 新增的情况才置空
|
|
|
compliance.form.services_amount = compliance.form.services_Qy_amount = ''
|
|
|
}
|
|
|
}else if(!ficcSeller){
|
|
|
// 没有ficc销售
|
|
|
- compliance.showServiceFicc=false
|
|
|
- compliance.showServiceQy=true
|
|
|
+ serviceData.showServiceFicc=false
|
|
|
+ serviceData.showServiceQy=true
|
|
|
compliance.form.services_Qy_amount = compliance.form.contract_amount
|
|
|
compliance.form.services_amount =''
|
|
|
}else{
|
|
|
// 没有权益销售
|
|
|
- compliance.showServiceFicc=true
|
|
|
- compliance.showServiceQy=false
|
|
|
+ serviceData.showServiceFicc=true
|
|
|
+ serviceData.showServiceQy=false
|
|
|
compliance.form.services_amount = compliance.form.contract_amount
|
|
|
compliance.form.services_Qy_amount =''
|
|
|
}
|
|
|
}else{
|
|
|
if(compliance.form.contract_register_id){
|
|
|
+ // 编辑的情况下
|
|
|
ElMessage.warning('合规套餐类型已定,不允许修改销售数量')
|
|
|
cascaderSelectSeller.value = compliance.form.seller_ids.split(',').map(item => +item)
|
|
|
return
|
|
|
}
|
|
|
- compliance.showServiceFicc = compliance.showServiceQy=true
|
|
|
+ serviceData.showServiceFicc = serviceData.showServiceQy=true
|
|
|
compliance.form.services_amount = compliance.form.services_Qy_amount = ''
|
|
|
cascaderSelectSeller.value=[]
|
|
|
}
|
|
@@ -329,10 +322,8 @@
|
|
|
// 合同编号选中
|
|
|
const selectContractNo=(value)=>{
|
|
|
let selectItem=contractNoInfo.contractNoArray.find(item=>item.contract_code == value)
|
|
|
- // console.log(selectItem);
|
|
|
// 获取套餐详情
|
|
|
getServiceDetail({contract_id:selectItem.contract_id}).then(res=>{
|
|
|
- // console.log(res);
|
|
|
let servivesTemp = res.data?res.data.Service||[]:[]
|
|
|
if(selectItem.product_id==1){
|
|
|
// FICC套餐
|
|
@@ -340,10 +331,10 @@
|
|
|
let smallService = servivesTemp.find(item => item.ServiceTemplateId==2)
|
|
|
// 是否有大套餐
|
|
|
let hasBigService = servivesTemp.some(item => item.ServiceTemplateId==1)
|
|
|
- compliance.serviceVarietyShow=!!smallService
|
|
|
- compliance.serviceType = !!smallService?2:hasBigService?1:0
|
|
|
- compliance.checkedService=servivesTemp.map(item => item.ServiceTemplateId)
|
|
|
- compliance.checkedPermission=smallService?smallService.ChartPermissionIds||[]:[]
|
|
|
+ serviceData.serviceVarietyShow=!!smallService
|
|
|
+ serviceData.serviceType = !!smallService?2:hasBigService?1:0
|
|
|
+ serviceData.checkedService=servivesTemp.map(item => item.ServiceTemplateId)
|
|
|
+ serviceData.checkedPermission=smallService?smallService.ChartPermissionIds||[]:[]
|
|
|
compliance.form.services_Qy_amount = ''
|
|
|
}else{
|
|
|
//权益
|
|
@@ -352,27 +343,26 @@
|
|
|
// 行业套餐
|
|
|
let smallServiceQY = servivesTemp.filter(item => [14,15,16,17,18].includes(item.FMSServiceTemplatePId))
|
|
|
|
|
|
- compliance.serviceVarietyShowQy = (!!bigServiceQY) || (!!smallServiceQY)
|
|
|
- compliance.serviceTypeQy = compliance.qYDiaType = !!bigServiceQY?1:!!smallServiceQY?2:0
|
|
|
- compliance.checkedServiceQy=[!!bigServiceQY?10:13]
|
|
|
+ serviceData.serviceVarietyShowQy = (!!bigServiceQY) || (!!smallServiceQY)
|
|
|
+ serviceData.serviceTypeQy = serviceData.qYDiaType = !!bigServiceQY?1:!!smallServiceQY?2:0
|
|
|
+ serviceData.checkedServiceQy=[!!bigServiceQY?10:13]
|
|
|
if(!!bigServiceQY){
|
|
|
//权益大套餐
|
|
|
- compliance.checkedPermissionQyBig = [bigServiceQY.FMSServiceTemplateId]
|
|
|
- compliance.checkedPermissionQySmall = []
|
|
|
+ serviceData.checkedPermissionQyBig = [bigServiceQY.FMSServiceTemplateId]
|
|
|
+ serviceData.checkedPermissionQySmall = []
|
|
|
}else{
|
|
|
//行业套餐
|
|
|
- compliance.checkedPermissionQyBig = []
|
|
|
- compliance.checkedPermissionQySmall = smallServiceQY.map(item => item.FMSServiceTemplateId)
|
|
|
+ serviceData.checkedPermissionQyBig = []
|
|
|
+ serviceData.checkedPermissionQySmall = smallServiceQY.map(item => item.FMSServiceTemplateId)
|
|
|
}
|
|
|
compliance.form.services_amount = ''
|
|
|
}
|
|
|
- compliance.varietyDiaType='edit'
|
|
|
+ serviceData.varietyDiaType='edit'
|
|
|
|
|
|
})
|
|
|
|
|
|
compliance.form.product_ids = selectItem.product_id.toString()
|
|
|
sellerListType.value = selectItem.product_id
|
|
|
- // console.log(compliance.form);
|
|
|
compliance.form.company_name=selectItem.company_name
|
|
|
compliance.form.crm_contract_id=selectItem.contract_id
|
|
|
compliance.form.start_date=selectItem.start_date
|
|
@@ -395,37 +385,36 @@
|
|
|
'start_date','contract_amount','relate_contract_code','actual_pay_companies'
|
|
|
])
|
|
|
|
|
|
- compliance.showServiceFicc = selectItem.product_id == 1
|
|
|
- compliance.showServiceQy = selectItem.product_id == 2
|
|
|
+ serviceData.showServiceFicc = selectItem.product_id == 1
|
|
|
+ serviceData.showServiceQy = selectItem.product_id == 2
|
|
|
|
|
|
}
|
|
|
|
|
|
// 合规登记-提交
|
|
|
const complianceSubmit=()=>{
|
|
|
- // console.log(compliance.checkedService);
|
|
|
contractInfoForm.value.validate(valid=>{
|
|
|
if(valid){
|
|
|
compliance.form.services=[]
|
|
|
compliance.form.service_amount=[]
|
|
|
// FICC
|
|
|
- if(compliance.showServiceFicc){
|
|
|
- if(compliance.checkedService.length==0){
|
|
|
+ if(serviceData.showServiceFicc){
|
|
|
+ if(serviceData.checkedService.length==0){
|
|
|
ElMessage.warning('请选择FICC套餐')
|
|
|
return
|
|
|
}
|
|
|
- if((!compliance.checkedPermission || compliance.checkedPermission.length==0)
|
|
|
- && compliance.checkedService.some(serviceId =>serviceId==2)){
|
|
|
+ if((!serviceData.checkedPermission || serviceData.checkedPermission.length==0)
|
|
|
+ && serviceData.checkedService.some(serviceId =>serviceId==2)){
|
|
|
ElMessage.warning('请保存FICC小套餐品种')
|
|
|
return
|
|
|
}
|
|
|
- compliance.checkedService.map(serviceId=>{
|
|
|
+ serviceData.checkedService.map(serviceId=>{
|
|
|
let serviceSelectItem = props.serviceItem.serviceArray.find(it=> it.service_template_id==serviceId) || {}
|
|
|
// 小套餐
|
|
|
if(serviceId==2){
|
|
|
compliance.form.services.push({
|
|
|
service_template_id:serviceSelectItem.service_template_id,
|
|
|
value:'',
|
|
|
- chart_permission_ids:compliance.checkedPermission?compliance.checkedPermission.join(','):'',
|
|
|
+ chart_permission_ids:serviceData.checkedPermission?serviceData.checkedPermission.join(','):'',
|
|
|
chart_permission_id:serviceSelectItem.chart_permission_id,
|
|
|
title:serviceSelectItem.title
|
|
|
})
|
|
@@ -451,38 +440,40 @@
|
|
|
}
|
|
|
|
|
|
// 权益
|
|
|
- if(compliance.showServiceQy){
|
|
|
- if(compliance.checkedServiceQy.length==0){
|
|
|
+ if(serviceData.showServiceQy){
|
|
|
+ if(serviceData.checkedServiceQy.length==0){
|
|
|
ElMessage.warning('请选择权益套餐')
|
|
|
return
|
|
|
}
|
|
|
// 权益大套餐
|
|
|
- if((!compliance.checkedPermissionQyBig || compliance.checkedPermissionQyBig.length==0)
|
|
|
- && compliance.checkedServiceQy.some(serviceId =>serviceId==10)){
|
|
|
+ if((!serviceData.checkedPermissionQyBig || serviceData.checkedPermissionQyBig.length==0)
|
|
|
+ && serviceData.checkedServiceQy.some(serviceId =>serviceId==10)){
|
|
|
ElMessage.warning('请保存权益大套餐类型')
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// 行业套餐
|
|
|
- if((!compliance.checkedPermissionQySmall || compliance.checkedPermissionQySmall.length==0)
|
|
|
- && compliance.checkedServiceQy.some(serviceId =>serviceId==13)){
|
|
|
+ if((!serviceData.checkedPermissionQySmall || serviceData.checkedPermissionQySmall.length==0)
|
|
|
+ && serviceData.checkedServiceQy.some(serviceId =>serviceId==13)){
|
|
|
ElMessage.warning('请保存行业套餐品种')
|
|
|
return
|
|
|
}
|
|
|
- compliance.checkedServiceQy.map(serviceId=>{
|
|
|
+ serviceData.checkedServiceQy.map(serviceId=>{
|
|
|
let serviceSelectItem = props.serviceItem.serviceArrayQy.find(it=> it.service_template_id==serviceId)
|
|
|
if(serviceSelectItem)
|
|
|
compliance.form.services.push({service_template_id:serviceSelectItem.service_template_id,title:serviceSelectItem.title})
|
|
|
// 权益大套餐
|
|
|
if(serviceId==10){
|
|
|
- let subServiceItem = serviceSelectItem.children.find(it=> it.service_template_id==compliance.checkedPermissionQyBig[0])
|
|
|
+ let subServiceItem = serviceSelectItem.children.find(it=> it.service_template_id==serviceData.checkedPermissionQyBig[0])
|
|
|
compliance.form.services.push({service_template_id:subServiceItem.service_template_id,title:subServiceItem.title})
|
|
|
}else if(serviceId==13){
|
|
|
- // 行业套餐
|
|
|
+ // 行业套餐 - 每一层都要push
|
|
|
+ // 是否有子层被选中
|
|
|
const hasSubList=[0,0,0,0,0]
|
|
|
- compliance.checkedPermissionQySmall.map(serviceTemplateId=>{
|
|
|
+ serviceData.checkedPermissionQySmall.map(serviceTemplateId=>{
|
|
|
for (let i = 0; i < serviceSelectItem.children.length; i++) {
|
|
|
const element = serviceSelectItem.children[i];
|
|
|
+ // 最后一层 - 主客观
|
|
|
let subItem=element.children.find(it =>it.service_template_id == serviceTemplateId)
|
|
|
if(subItem){
|
|
|
compliance.form.services.push({service_template_id:subItem.service_template_id,title:subItem.title})
|
|
@@ -491,16 +482,15 @@
|
|
|
}
|
|
|
}
|
|
|
})
|
|
|
- hasSubList.map(serviceTemplateId =>{
|
|
|
+ // 中间层 - 医药、消费、科技、智造、策略
|
|
|
+ hasSubList.map((serviceTemplateId,ind) =>{
|
|
|
if(serviceTemplateId){
|
|
|
- let tempItem = serviceSelectItem.children.find(it => it.service_template_id==serviceTemplateId)
|
|
|
+ let tempItem = serviceSelectItem.children[ind]
|
|
|
compliance.form.services.push({service_template_id:tempItem.service_template_id,title:tempItem.title})
|
|
|
}
|
|
|
})
|
|
|
-
|
|
|
}
|
|
|
})
|
|
|
- // console.log(compliance.form.services);
|
|
|
// 套餐金额
|
|
|
if(!compliance.form.services_Qy_amount){
|
|
|
ElMessage.error('请填写权益套餐金额')
|
|
@@ -516,19 +506,16 @@
|
|
|
compliance.form.contract_amount = +parseFloat(compliance.form.contract_amount).toFixed(2)
|
|
|
compliance.form.services_amount = +parseFloat(compliance.form.services_amount).toFixed(2) || 0
|
|
|
compliance.form.services_Qy_amount = +parseFloat(compliance.form.services_Qy_amount).toFixed(2) || 0
|
|
|
- console.log(compliance.form.services_amount,compliance.form.services_Qy_amount);
|
|
|
let servicesAll = Math.round((compliance.form.services_Qy_amount+compliance.form.services_amount)*100)/100
|
|
|
if(servicesAll!=compliance.form.contract_amount){
|
|
|
ElMessage.error('套餐总金额不等于合同金额')
|
|
|
return
|
|
|
}
|
|
|
- // compliance.form.service_amount = [{product_id:1,service_amount:compliance.form.services_amount},
|
|
|
- // {product_id:2,service_amount:compliance.form.services_Qy_amount}]
|
|
|
+
|
|
|
if(!compliance.form.has_payment){
|
|
|
compliance.form.has_payment=0
|
|
|
compliance.form.actual_pay_companies=''
|
|
|
}
|
|
|
- console.log(compliance.form);
|
|
|
// 检验合同名称或者合同有效期是否重复
|
|
|
if(compliance.form.contract_register_id){
|
|
|
// 编辑
|
|
@@ -585,22 +572,22 @@
|
|
|
const viewService=(serviceTemplateId)=>{
|
|
|
if(!canServiceShow(serviceTemplateId)) return
|
|
|
if(serviceTemplateId==2){
|
|
|
- compliance.varietyDiaShow=true
|
|
|
- compliance.varietyDiaType='view'
|
|
|
+ serviceData.varietyDiaShow=true
|
|
|
+ serviceData.varietyDiaType='view'
|
|
|
return
|
|
|
}
|
|
|
let viewItem=compliance.form.services.find(item => item.service_template_id == serviceTemplateId)
|
|
|
previewImageTitle.value = viewItem.title
|
|
|
previewImage.value=viewItem.value
|
|
|
- compliance.serviceShow=true
|
|
|
+ serviceData.serviceShow=true
|
|
|
}
|
|
|
|
|
|
// 查看套餐 - 权益
|
|
|
const viewServiceQy=(serviceTemplateId,diaType)=>{
|
|
|
if(!canServiceShow(serviceTemplateId)) return
|
|
|
- compliance.varietyDiaShowQy=true
|
|
|
- compliance.qYDiaType = diaType
|
|
|
- compliance.varietyDiaType='view'
|
|
|
+ serviceData.varietyDiaShowQy=true
|
|
|
+ serviceData.qYDiaType = diaType
|
|
|
+ serviceData.varietyDiaType='view'
|
|
|
}
|
|
|
// 合同编号远程搜索
|
|
|
const contractNoSearch=(value)=>{
|
|
@@ -609,7 +596,6 @@
|
|
|
contractNoQuery.current=1
|
|
|
contractNoInfo.contractNoArray=[]
|
|
|
getContractSearchListFun()
|
|
|
- // console.log(value);
|
|
|
}
|
|
|
const loadContractNoMore=()=>{
|
|
|
if(contractNoInfo.contractNoArray.length >=contractNoInfo.contractNoTotal) return
|
|
@@ -632,26 +618,25 @@
|
|
|
compliance.form.seller_ids=value+''
|
|
|
}
|
|
|
|
|
|
- // 选择品种 - ficc
|
|
|
- const selectVariety=()=>{
|
|
|
- compliance.varietyDiaType='edit'
|
|
|
- compliance.varietyDiaShow=true
|
|
|
+ // 选择品种 - ficc
|
|
|
+ const selectVariety=()=>{
|
|
|
+ serviceData.varietyDiaType='edit'
|
|
|
+ serviceData.varietyDiaShow=true
|
|
|
}
|
|
|
// 选择品种 - 权益
|
|
|
const selectVarietyQy=(diaType)=>{
|
|
|
- compliance.varietyDiaType='edit'
|
|
|
- compliance.varietyDiaShowQy=true
|
|
|
- compliance.qYDiaType = diaType
|
|
|
+ serviceData.varietyDiaType='edit'
|
|
|
+ serviceData.varietyDiaShowQy=true
|
|
|
+ serviceData.qYDiaType = diaType
|
|
|
}
|
|
|
|
|
|
const getPermissionChecked=(list)=>{
|
|
|
- compliance.checkedPermission=list
|
|
|
+ serviceData.checkedPermission=list
|
|
|
}
|
|
|
|
|
|
const getPermissionQYChecked=(list)=>{
|
|
|
- console.log(list,'list');
|
|
|
- if(compliance.qYDiaType==1) compliance.checkedPermissionQyBig=list
|
|
|
- else if(compliance.qYDiaType==2) compliance.checkedPermissionQySmall=list
|
|
|
+ if(serviceData.qYDiaType==1) serviceData.checkedPermissionQyBig=list
|
|
|
+ else if(serviceData.qYDiaType==2) serviceData.checkedPermissionQySmall=list
|
|
|
}
|
|
|
|
|
|
// 有效期变更触发函数
|
|
@@ -667,24 +652,18 @@
|
|
|
|
|
|
// 服务改变
|
|
|
const serciveChange=(value,type,serviceType='ficc',openDia=true)=>{
|
|
|
- // console.log(value,type,serviceType);
|
|
|
if(serviceType=='ficc'){
|
|
|
- // ficc套餐修改
|
|
|
if(type==2){
|
|
|
- compliance.serviceVarietyShow=value
|
|
|
- compliance.varietyDiaType='edit'
|
|
|
- compliance.varietyDiaShow=openDia&&value
|
|
|
+ serviceData.serviceVarietyShow=value
|
|
|
+ serviceData.varietyDiaType='edit'
|
|
|
+ serviceData.varietyDiaShow=openDia&&value
|
|
|
}
|
|
|
- compliance.serviceType = value?type:0
|
|
|
+ serviceData.serviceType = value?type:0
|
|
|
}else{
|
|
|
- // 权益套餐修改
|
|
|
- // if(type==2){
|
|
|
- compliance.serviceVarietyShowQy=value
|
|
|
- compliance.varietyDiaType='edit'
|
|
|
- compliance.varietyDiaShowQy=openDia&&value
|
|
|
- // }
|
|
|
- compliance.serviceTypeQy = compliance.qYDiaType = value?type:0
|
|
|
- // console.log(compliance.qYDiaType);
|
|
|
+ serviceData.serviceVarietyShowQy=value
|
|
|
+ serviceData.varietyDiaType='edit'
|
|
|
+ serviceData.varietyDiaShowQy=openDia&&value
|
|
|
+ serviceData.serviceTypeQy = serviceData.qYDiaType = value?type:0
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -708,7 +687,7 @@
|
|
|
compliance.form.currency_unit=props.detailInfo.currency_unit
|
|
|
compliance.form.new_company=props.detailInfo.new_company
|
|
|
compliance.form.seller_ids=props.detailInfo.seller_ids
|
|
|
- compliance.form.seller_id=props.detailInfo.seller_id || props.detailInfo.rai_seller_id
|
|
|
+ compliance.form.seller_id=props.detailInfo.seller_id
|
|
|
compliance.form.contract_status=props.detailInfo.contract_status
|
|
|
compliance.form.start_date=props.detailInfo.start_date
|
|
|
compliance.form.end_date=props.detailInfo.end_date
|
|
@@ -728,29 +707,14 @@
|
|
|
// 合同类型回显
|
|
|
compliance.contractTypeCheck = [compliance.form.has_payment,compliance.form.contract_type]
|
|
|
// 销售&套餐显示
|
|
|
- if(props.detailInfo.seller_id && props.detailInfo.rai_seller_id){
|
|
|
- compliance.showServiceFicc = compliance.showServiceQy=true
|
|
|
+ sellerListType.value=props.detailInfo.sellerListType
|
|
|
+ if(sellerListType.value == 3){
|
|
|
+ serviceData.showServiceFicc = serviceData.showServiceQy=true
|
|
|
cascaderSelectSeller.value = compliance.form.seller_ids.split(',').map(item => +item)
|
|
|
- sellerListType.value = 3
|
|
|
- }else if(!props.detailInfo.seller_id){
|
|
|
- sellerListType.value = 2
|
|
|
- compliance.showServiceQy=true
|
|
|
+ }else if(sellerListType.value == 2){
|
|
|
+ serviceData.showServiceQy=true
|
|
|
}else{
|
|
|
- sellerListType.value = 1
|
|
|
- compliance.showServiceFicc=true
|
|
|
- }
|
|
|
- rmbRate.value=props.detailInfo.rmb_rate
|
|
|
- if(props.currencyList.length>0){
|
|
|
- // 拿到货币列表后才去取单位
|
|
|
- compliance.currencyUnit=props.currencyList.find(item => item.code==props.detailInfo.currency_unit)?.unit_name
|
|
|
- }else{
|
|
|
- // 轮询等拿到货币列表后去取单位,并清除轮询定时器
|
|
|
- const timer = setInterval(()=>{
|
|
|
- if(props.currencyList.length>0){
|
|
|
- compliance.currencyUnit=props.currencyList.find(item => item.code==props.detailInfo.currency_unit)?.unit_name
|
|
|
- clearInterval(timer)
|
|
|
- }
|
|
|
- },10)
|
|
|
+ serviceData.showServiceFicc=true
|
|
|
}
|
|
|
// 套餐金额
|
|
|
compliance.form.services_amount = props.detailInfo.service_amount_list.find(it => it.product_id==1)?
|
|
@@ -759,7 +723,7 @@
|
|
|
props.detailInfo.service_amount_list.find(it => it.product_id==2).service_amount:0
|
|
|
serviceDataHandle(props.detailInfo.services)
|
|
|
}
|
|
|
-
|
|
|
+ // 回显套餐数据
|
|
|
const serviceDataHandle=(services)=>{
|
|
|
services.map(item =>{
|
|
|
if(item.service_template_id==2){
|
|
@@ -771,20 +735,20 @@
|
|
|
chart_permission_id:item.chart_permission_id,
|
|
|
title:item.title
|
|
|
})
|
|
|
- compliance.checkedPermission=item.chart_permission_ids.split(',')
|
|
|
+ serviceData.checkedPermission=item.chart_permission_ids.split(',')
|
|
|
}else if(item.service_template_id==11 || item.service_template_id==12){
|
|
|
// 权益大套餐
|
|
|
- compliance.checkedPermissionQyBig = [item.service_template_id]
|
|
|
+ serviceData.checkedPermissionQyBig = [item.service_template_id]
|
|
|
compliance.form.services.push(item)
|
|
|
}else if([19,20,21,22,23,24,25,26,27].includes(item.service_template_id)){
|
|
|
// 行业套餐
|
|
|
- compliance.checkedPermissionQySmall.push(item.service_template_id)
|
|
|
+ serviceData.checkedPermissionQySmall.push(item.service_template_id)
|
|
|
compliance.form.services.push(item)
|
|
|
}else{
|
|
|
compliance.form.services.push(item)
|
|
|
}
|
|
|
})
|
|
|
- compliance.checkedService=services.map(item => {
|
|
|
+ serviceData.checkedService=services.map(item => {
|
|
|
if(item.product_id==1){
|
|
|
let serviceId=item.service_template_id
|
|
|
// 大套餐或者小套餐
|
|
@@ -792,7 +756,7 @@
|
|
|
return serviceId
|
|
|
}
|
|
|
}).filter(Boolean)
|
|
|
- compliance.checkedServiceQy=services.map(item => {
|
|
|
+ serviceData.checkedServiceQy=services.map(item => {
|
|
|
if(item.product_id==2){
|
|
|
let serviceId=item.service_template_id
|
|
|
// 权益大套餐或者行业套餐
|
|
@@ -912,18 +876,18 @@
|
|
|
</div>
|
|
|
<div class="info-row">
|
|
|
<div class="info-row-title" >套餐信息</div>
|
|
|
- <div class="info-row-services" v-if="compliance.showServiceFicc">
|
|
|
+ <div class="info-row-services" v-if="serviceData.showServiceFicc">
|
|
|
<div class="info-row-services-header" id="info-row-services-header">
|
|
|
<span>FICC套餐</span>
|
|
|
<el-input v-model="compliance.form.services_amount" :disabled="operationtype!='compliance'"
|
|
|
placeholder="请输入套餐金额" style="width: 200px;" />
|
|
|
</div>
|
|
|
<el-checkbox-group :disabled="operationtype!='compliance'"
|
|
|
- v-model="compliance.checkedService" class="info-service-box" id="service-information">
|
|
|
+ v-model="serviceData.checkedService" class="info-service-box" id="service-information">
|
|
|
<!-- 大套餐 -->
|
|
|
<el-checkbox :label="serviceItem.serviceArray[0]?.service_template_id" @change="(e) => serciveChange(e,1)"
|
|
|
:class="{'viewService':canServiceShow(serviceItem.serviceArray[0]?.service_template_id)}"
|
|
|
- :disabled="compliance.serviceType==2" @click="viewService(serviceItem.serviceArray[0]?.service_template_id)">
|
|
|
+ :disabled="serviceData.serviceType==2" @click="viewService(serviceItem.serviceArray[0]?.service_template_id)">
|
|
|
{{serviceItem.serviceArray[0]?.title}}
|
|
|
</el-checkbox>
|
|
|
<!-- 小套餐 -->
|
|
@@ -931,10 +895,10 @@
|
|
|
<el-checkbox :label="serviceItem.serviceArray[1]?.service_template_id" style="margin-right: 0;"
|
|
|
@change="(e) => serciveChange(e,2)"
|
|
|
:class="{'viewService':canServiceShow(serviceItem.serviceArray[1]?.service_template_id)}"
|
|
|
- :disabled="compliance.serviceType==1" @click="viewService(serviceItem.serviceArray[1]?.service_template_id)">
|
|
|
+ :disabled="serviceData.serviceType==1" @click="viewService(serviceItem.serviceArray[1]?.service_template_id)">
|
|
|
{{serviceItem.serviceArray[1]?.title}}
|
|
|
</el-checkbox>
|
|
|
- <span v-if="(compliance.serviceVarietyShow&&operationtype=='compliance')"
|
|
|
+ <span v-if="(serviceData.serviceVarietyShow&&operationtype=='compliance')"
|
|
|
@click="selectVariety" class="select-variety">选择品种</span>
|
|
|
</div>
|
|
|
<!-- 市场策略 -->
|
|
@@ -949,24 +913,24 @@
|
|
|
</el-checkbox>
|
|
|
</el-checkbox-group>
|
|
|
</div>
|
|
|
- <div class="info-row-services" v-if="compliance.showServiceQy">
|
|
|
+ <div class="info-row-services" v-if="serviceData.showServiceQy">
|
|
|
<div class="info-row-services-header" id="info-row-services-header">
|
|
|
<span>权益套餐</span>
|
|
|
<el-input v-model="compliance.form.services_Qy_amount" :disabled="operationtype!='compliance'"
|
|
|
placeholder="请输入套餐金额" style="width: 200px;" />
|
|
|
</div>
|
|
|
<el-checkbox-group :disabled="operationtype!='compliance'"
|
|
|
- v-model="compliance.checkedServiceQy" class="info-service-box" id="service-information">
|
|
|
+ v-model="serviceData.checkedServiceQy" class="info-service-box" id="service-information">
|
|
|
<!-- 权益大套餐、行业套餐 -->
|
|
|
<div class="service-small" v-for="(item,index) in [1,2]" :key="item">
|
|
|
<el-checkbox :label="serviceItem.serviceArrayQy[index]?.service_template_id" style="margin-right: 0;"
|
|
|
@change="(e) => serciveChange(e,item,'qy')"
|
|
|
:class="{'viewService':canServiceShow(serviceItem.serviceArrayQy[index]?.service_template_id)}"
|
|
|
- :disabled="compliance.serviceTypeQy!=0 && compliance.serviceTypeQy != item"
|
|
|
+ :disabled="serviceData.serviceTypeQy!=0 && serviceData.serviceTypeQy != item"
|
|
|
@click="viewServiceQy(serviceItem.serviceArrayQy[index]?.service_template_id,item)">
|
|
|
{{serviceItem.serviceArrayQy[index]?.title}}
|
|
|
</el-checkbox>
|
|
|
- <span v-if="(compliance.serviceVarietyShowQy&&compliance.qYDiaType==item&&operationtype=='compliance')"
|
|
|
+ <span v-if="(serviceData.serviceVarietyShowQy&&serviceData.qYDiaType==item&&operationtype=='compliance')"
|
|
|
@click="selectVarietyQy(item)" class="select-variety">选择品种</span>
|
|
|
</div>
|
|
|
<!-- 非行业套餐 -->
|
|
@@ -992,22 +956,22 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<!-- 小套餐选择品种弹窗 -->
|
|
|
- <permission-dia v-model:visible="compliance.varietyDiaShow" :type="compliance.varietyDiaType"
|
|
|
- @selectFinish="getPermissionChecked" :hasCheckedPermission="compliance.checkedPermission"></permission-dia>
|
|
|
+ <permission-dia v-model:visible="serviceData.varietyDiaShow" :type="serviceData.varietyDiaType"
|
|
|
+ @selectFinish="getPermissionChecked" :hasCheckedPermission="serviceData.checkedPermission"></permission-dia>
|
|
|
<!-- 权益大套餐、行业套餐选择品种弹窗 -->
|
|
|
- <permission-qy-dia v-model:visible="compliance.varietyDiaShowQy" :type="compliance.varietyDiaType"
|
|
|
- @selectFinish="getPermissionQYChecked" :serviceType="compliance.qYDiaType"
|
|
|
- :permissionData="compliance.qYDiaType==1?serviceItem.serviceArrayQy[0]?.children:serviceItem.serviceArrayQy[1]?.children"
|
|
|
- :hasCheckedPermission="compliance.qYDiaType==1?compliance.checkedPermissionQyBig:compliance.checkedPermissionQySmall"></permission-qy-dia>
|
|
|
+ <permission-qy-dia v-model:visible="serviceData.varietyDiaShowQy" :type="serviceData.varietyDiaType"
|
|
|
+ @selectFinish="getPermissionQYChecked" :serviceType="serviceData.qYDiaType"
|
|
|
+ :permissionData="serviceData.qYDiaType==1?serviceItem.serviceArrayQy[0]?.children:serviceItem.serviceArrayQy[1]?.children"
|
|
|
+ :hasCheckedPermission="serviceData.qYDiaType==1?serviceData.checkedPermissionQyBig:serviceData.checkedPermissionQySmall"></permission-qy-dia>
|
|
|
<!-- 查看套餐弹窗 -->
|
|
|
- <el-dialog v-model="compliance.serviceShow" style="min-width: 800px;" title="" width="70vw" top="5vh">
|
|
|
+ <el-dialog v-model="serviceData.serviceShow" style="min-width: 800px;" title="" width="70vw" top="5vh">
|
|
|
<template #header>
|
|
|
<div style="text-align: center;">{{previewImageTitle}}</div>
|
|
|
</template>
|
|
|
<img style="width: 100%; display: block; margin: 0 auto 20px auto"
|
|
|
:src="previewImage" />
|
|
|
<div style="text-align: center; margin: 30px 0 10px">
|
|
|
- <el-button type="primary" @click="compliance.serviceShow=false">知道了</el-button>
|
|
|
+ <el-button type="primary" @click="serviceData.serviceShow=false">知道了</el-button>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
</div>
|