Browse Source

联调中-1

hbchen-home 2 years ago
parent
commit
452f0680dc

+ 21 - 0
src/api/financialMana.js

@@ -362,6 +362,27 @@ export function preRegistrationDetail(data) {
      method:'post',
      data
  })
+}
+ // 编辑预登记
+ /**
+  * 
+  * @param {
+ * contract_register_id - 到登记ID
+ * company_name - 客户名称
+ * register_type - 预登记类型 3-开票预登记 4-到款预登记 
+ * start_date - 约定开始日期
+ * end_date - 约定结束日期
+ * lists - 开票/到款列表 
+ * services - 套餐列表
+ * } data 
+ * @returns 
+ */
+export function preRegistrationEdit(data) {
+ return request({
+     url:'/contract/pre_register/edit',
+     method:'post',
+     data
+ })
 }
  // 删除预登记
  /**

+ 59 - 17
src/views/financialManagement/contractProgress.vue

@@ -7,7 +7,7 @@
   import {ElMessage} from 'element-plus'
   import {getSellerList,getContractSearchList,getServiceDetail} from '@/api/crm'
   import {getServiceList,registerAdd,registerDetail,registerEdit,registerInvoice,
-    registerPayment,contractRegisterCheck} from '@/api/financialMana'
+    registerPayment,contractRegisterCheck,preRegistrationDetail} from '@/api/financialMana'
   import {getCurrencyList} from '@/api/common'
   import scrollableSelect from '@/components/scrollable-select/index.vue'
 
@@ -334,9 +334,8 @@
   // ------------------ 到款预登记
   const supplementary_item=reactive({
     id:0,
-    placement_amount:"",
-    placement_origin_amount:"",
-    create_time:""
+    contract_register_id:0,
+    invoice_type:0
   })
 
 
@@ -1182,7 +1181,9 @@
   // 合规登记Id
   contractInfo.form.contract_register_id = parseInt(route.query.complianceId) || ''
   // 到款预登记Id
-  supplementary_item.id = parseInt(route.query.supplementaryId) || ''
+  supplementary_item.id = parseInt(route.query.supplementaryId) || 0
+  supplementary_item.contract_register_id = parseInt(route.query.contract_register_id) || 0
+  supplementary_item.invoice_type = parseInt(route.query.invoice_type) || 0
   // complianceId没有,认为是合规登记
   contractInfo.operationtype=contractInfo.form.contract_register_id?(route.query.type || 'view'):'compliance'
   
@@ -1428,18 +1429,59 @@
   }else if(supplementary_item.id){
     // 拿到预登记详情信息
     // console.log(supplementary_item.id);
-    contractInfo.form.pre_pay_id=supplementary_item.id
-    contractInfo.form.supplement =1
-    contractInfo.form.company_name = route.query.company_name
-    contractInfo.form.currency_unit = route.query.amount_unit
-    contractInfo.form.contract_amount = route.query.placement_amount
-    contractInfo.form.new_company = parseInt(route.query.new_company)
-    contractInfo.form.start_date = route.query.start_date
-    contractInfo.form.end_date = route.query.end_date
-    contractInfo.form.seller_ids = route.query.seller_id
-    contractInfo.form.seller_id = +route.query.seller_id
-    contractInfo.contractValidityDate = [contractInfo.form.start_date,contractInfo.form.end_date]
-    cascaderSelectSeller.value = [parseInt(route.query.seller_id)]
+    preRegistrationDetail({contract_register_id:supplementary_item.contract_register_id,
+    invoice_type:supplementary_item.invoice_type}).then(res=>{
+      if(!res.data) return
+      console.log(res.data);
+      contractInfo.form.pre_pay_id=supplementary_item.id
+      contractInfo.form.supplement =1
+      contractInfo.form.company_name = res.data.company_name
+      contractInfo.form.currency_unit = res.data.list[0]?.currency_unit
+      contractInfo.form.new_company = parseInt(res.data.new_company)
+      contractInfo.form.start_date = res.data.start_date
+      contractInfo.form.end_date = res.data.end_date
+      contractInfo.contractValidityDate = [contractInfo.form.start_date,contractInfo.form.end_date]
+      res.data.services.map(item =>{
+        if(item.service_template_id==2){
+          // ficc小套餐
+          contractInfo.form.services.push({
+            service_template_id:item.service_template_id,
+            value:item.value,
+            chart_permission_ids:item.chart_permission_ids,
+            chart_permission_id:item.chart_permission_id,
+            title:item.title
+          })
+          contractInfo.checkedPermission=item.chart_permission_ids.split(',')
+        }else if(item.service_template_id==11 || item.service_template_id==12){
+          // 权益大套餐
+          contractInfo.checkedPermissionQyBig = [item.service_template_id]
+          contractInfo.form.services.push(item)
+        }else if([19,20,21,22,23,24,25,26,27].includes(item.service_template_id)){
+          // 行业套餐
+          contractInfo.checkedPermissionQySmall.push(item.service_template_id)
+          contractInfo.form.services.push(item)
+        }else{
+          contractInfo.form.services.push(item)
+        }
+      })
+      // console.log(contractInfo.form.services);
+      contractInfo.checkedService=res.data.services.map(item => {
+        if(item.product_id==1){
+          let serviceId=item.service_template_id
+          // 大套餐或者小套餐
+          if(serviceId==1 || serviceId==2) serciveChange(true,serviceId,'ficc',false)
+          return serviceId
+        }
+      }).filter(Boolean)
+      contractInfo.checkedServiceQy=res.data.services.map(item => {
+        if(item.product_id==2){
+          let serviceId=item.service_template_id
+          // 权益大套餐或者行业套餐
+          if(serviceId==10 || serviceId==13) serciveChange(true,serviceId==10?1:2,'qy',false)
+          return serviceId
+        }
+      }).filter(Boolean)
+    })
   }
 </script>
 

+ 6 - 7
src/views/financialManagement/financialList.vue

@@ -117,10 +117,9 @@ const statusArray=[{id:1,label:"进行中"},{id:2,label:"已完成"}]
   }
   // 导出数据
   const exportData=({value,text})=>{
-    console.log({value,text});
-    // registerListExport(financial.searchParams).then(res=>{
-    //   downloadByFlow(res,'xlsx',`财务列表-${text}`)
-    // })
+    registerListExport({...financial.searchParams,list_param:value}).then(res=>{
+      downloadByFlow(res,'xlsx',`财务列表-${text}`)
+    })
   }
 
   // 导入数据
@@ -278,9 +277,9 @@ const statusArray=[{id:1,label:"进行中"},{id:2,label:"已完成"}]
                   <el-button size="large" class="element-common-button" style="margin-right: 0;" >导出</el-button>
                   <template #dropdown>
                     <el-dropdown-menu>
-                      <el-dropdown-item :command="{value:1,text:'FICC&权益'}">FICC&权益</el-dropdown-item>
-                      <el-dropdown-item :command="{value:2,text:'FICC'}">FICC</el-dropdown-item>
-                      <el-dropdown-item :command="{value:3,text:'权益'}">权益</el-dropdown-item>
+                      <el-dropdown-item :command="{value:0,text:'FICC&权益'}">FICC&权益</el-dropdown-item>
+                      <el-dropdown-item :command="{value:1,text:'FICC'}">FICC</el-dropdown-item>
+                      <el-dropdown-item :command="{value:2,text:'权益'}">权益</el-dropdown-item>
                     </el-dropdown-menu>
                   </template>
                 </el-dropdown>

+ 31 - 16
src/views/financialManagement/registrationPre.vue

@@ -4,7 +4,7 @@ import {useRouter} from 'vue-router'
 import {getSellerList} from '@/api/crm'
 import {getCurrencyList} from '@/api/common'
 import {getServiceList,getPreRegistrationList,preRegistrationAdd,
-  preRegistrationDetail,prePlacementEdit,preRegistrationDelete} from '@/api/financialMana'
+  preRegistrationDetail,preRegistrationEdit,preRegistrationDelete} from '@/api/financialMana'
 
 const router = useRouter()
 
@@ -188,13 +188,17 @@ const editRegistrationPre=(row)=>{
     if(!res.data) return
     dialog.registrationPreForm.contract_register_id = res.data.contract_register_id
     dialog.registrationPreForm.company_name = res.data.company_name
+    dialog.registrationPreForm.invoice_type = row.invoice_type
     dialog.registrationPreForm.IorPInfo=res.data.list
     dialog.registrationPreForm.services=res.data.services || []
     dialog.validityDate=[res.data.start_date,res.data.end_date]
-    dialog.selectServices = res.data.services || []
-    dialog.registrationType=res.data.register_type==3?'开票':'到款'
+    dialog.selectServices = [...res.data.services.map(item => item.service_template_id),...res.data.serviceTemplateIds]
+    dialog.registrationType=row.invoice_type==3?'开票':'到款'
     dialog.title=`编辑${dialog.registrationType}预登记`
     dialog.registrationPreShow=true
+    nextTick(()=>{
+      servicesChange(dialog.selectServices,1)
+    })
   })
 }
 
@@ -267,13 +271,14 @@ const submitForm=()=>{
   params.list.forEach(item =>{
     item.amount = parseFloat(item.amount)
     item.seller_id=item.seller_id||0
+    item.service_product_id=item.service_product_id||0
   })
   registrationPreForm.value.validate((valid)=>{
     if(valid){
       let prePlacementProp=preRegistrationAdd
       if(params.contract_register_id){
         // 编辑
-        prePlacementProp=prePlacementEdit
+        prePlacementProp=preRegistrationEdit
       }
       prePlacementProp(params).then(res=>{
         dialog.registrationPreShow=false
@@ -295,6 +300,7 @@ const preDialog=reactive({
     amount:'',
     currency_unit:'CNY',
     seller_id:'',
+    invoice_type:'',
     register_date:''
   },
   validityDate:[],
@@ -329,9 +335,24 @@ watch(()=>preDialog.validityDate,(newVal)=>{
   }
 })
 // 预开票/到款
-const preIorP=()=>{
-  preDialog.title='预到款'
-  preDialog.show=true
+const preIorP=(row)=>{
+  preDialog.title=row.invoice_typ==3?'预到款':'预开票'
+  preRegistrationDetail({contract_register_id:row.contract_register_id,
+  invoice_type:row.invoice_type}).then(res=>{
+    if(!res.data) return
+    preDialog.preForm.contract_register_id = res.data.contract_register_id
+    // preDialog.preForm.invoice_type = row.invoice_type==3?4:3
+    // dialog.registrationPreForm.IorPInfo=res.data.list
+    // dialog.registrationPreForm.services=res.data.services || []
+    // preDialog.validityDate=[res.data.start_date,res.data.end_date]
+    // dialog.selectServices = [...res.data.services.map(item => item.service_template_id),...res.data.serviceTemplateIds]
+    // dialog.registrationType=row.invoice_type==3?'开票':'到款'
+    // dialog.title=`编辑${dialog.registrationType}预登记`
+    // preDialog.show=true
+    // nextTick(()=>{
+    //   servicesChange(dialog.selectServices,1)
+    // })
+  })
 }
 
 const submitPreForm=()=>{
@@ -567,15 +588,9 @@ const searchPlacementPre=()=>{
 const supplementaryContract=(row)=>{  
   // console.log(id);
   router.push({path:'/financial/list/contractProgress',query:{
-    supplementaryId:row.pre_pay_id,
-    company_name:row.company_name,
-    seller_id:row.seller_id,
-    seller_name:row.seller_name,
-    amount_unit:row.currency_unit,
-    placement_amount:row.origin_amount,
-    new_company:row.new_company,
-    start_date:row.start_date,
-    end_date:row.end_date
+    supplementaryId:row.pre_register_id,
+    contract_register_id:row.contract_register_id,
+    invoice_type:row.invoice_type
   }})
 }
 // 查看备注

+ 4 - 5
src/views/financialStatistics/commodityPayment.vue

@@ -122,8 +122,7 @@ const moment = inject('$moment')
   }
 
   const dataExport=({value,text})=>{
-    console.log({value,text});
-    getInvoicePaymentList({...searchParams,is_export:1}).then(res=>{
+    getInvoicePaymentList({...searchParams,is_export:1,list_param:value}).then(res=>{
       downloadByFlow(res,'xlsx',`商品到款统计列表-`+text)
     })
   }
@@ -384,9 +383,9 @@ const moment = inject('$moment')
           <el-button style="margin-bottom: 10px;" size="large" class="element-common-button">导出</el-button>
           <template #dropdown>
             <el-dropdown-menu>
-              <el-dropdown-item :command="{value:1,text:'FICC&权益'}">FICC&权益</el-dropdown-item>
-              <el-dropdown-item :command="{value:2,text:'FICC'}">FICC</el-dropdown-item>
-              <el-dropdown-item :command="{value:3,text:'权益'}">权益</el-dropdown-item>
+              <el-dropdown-item :command="{value:0,text:'FICC&权益'}">FICC&权益</el-dropdown-item>
+              <el-dropdown-item :command="{value:1,text:'FICC'}">FICC</el-dropdown-item>
+              <el-dropdown-item :command="{value:2,text:'权益'}">权益</el-dropdown-item>
             </el-dropdown-menu>
           </template>
         </el-dropdown>