Browse Source

佣金合同-接口调试

jingbb 2 months ago
parent
commit
d7eb34a60c

+ 20 - 20
src/views/platformBusiness/commissionContract/commissionContract.vue

@@ -17,30 +17,30 @@
             </a-form-item>
           </a-col>
           <template v-if="toggleSearchStatus">
+            <a-col :lg="8" >
+                <a-form-item label="业务员(salesman)" :label-col="{ style: 'width: 200px' }" >
+                    <j-input placeholder="请输入" v-model:value="queryParam.salesman"></j-input>
+                </a-form-item>
+            </a-col>
             <a-col :lg="16">
-              <a-form-item name="supplier">
+              <a-form-item name="supplier" :label-col="{ style: 'width: 200px' }">
                 <template #label><span title="供应商(supplier)">供应商(supplier)</span></template>
                 <JSelect   v-model:value="queryParam.supplier" :get-option-url="supplierOption" :showField="showField"></JSelect>
               </a-form-item>
             </a-col>
             <a-col :lg="8">
-              <a-form-item name="submit">
+              <a-form-item name="submit" :label-col="{ style: 'width: 200px' }">
                 <template #label><span title="提交(submit)">提交(submit)</span></template>
                 <JDictSelectTag v-model:value="queryParam.submit" placeholder="请选择" dictCode="yes_or_no" style="width: 100%" />
               </a-form-item>
             </a-col>
-            <a-col :lg="8">
-                <a-form-item label="业务员(salesman)" >
-                    <j-input placeholder="请输入" v-model:value="queryParam.salesman"></j-input>
-                </a-form-item>
-            </a-col>
-            <a-col :lg="8">
-                 <a-form-item label="销售部门(sale department)">
+            <a-col :lg="8" >
+                 <a-form-item label="销售部门(sale department)" :label-col="{ style: 'width: 200px' }">
                     <j-input placeholder="请输入" v-model:value="queryParam.saleDepartment"></j-input>
                   </a-form-item>
             </a-col>
-            <a-col :lg="8">
-              <a-form-item name="close">
+            <a-col :lg="8" >
+              <a-form-item name="close" :label-col="{ style: 'width: 200px' }">
                 <template #label><span title="关闭(close)">关闭(close)</span></template>
                 <JDictSelectTag v-model:value="queryParam.close" placeholder="请选择" dictCode="yes_or_no" style="width: 100%" />
               </a-form-item>
@@ -65,8 +65,8 @@
     <BasicTable @register="registerTable" :rowSelection="rowSelection" size="small">
       <!--插槽:table标题-->
       <template #tableTitle>
-        <a-button type="primary"  @click="handleAdd" preIcon="ant-design:plus-outlined"> 新增(add)</a-button>
-        <a-button type="primary"  preIcon="ant-design:export-outlined" @click="onExportXls">
+        <a-button type="primary"  @click="handleAdd" preIcon="ant-design:plus-outlined" v-auth="'platCode:plat_commission_contract:add'"> 新增(add)</a-button>
+        <a-button type="primary"  preIcon="ant-design:export-outlined" @click="onExportXls" v-auth="'platCode:plat_commission_contract:exportXls'">
           导出(export)</a-button
         >
         <a-button type="primary" @click="submit"> 提交(submit)</a-button>
@@ -74,7 +74,7 @@
         <a-dropdown v-if="selectedRowKeys.length > 0">
           <template #overlay>
             <a-menu>
-              <a-menu-item key="1" @click="batchHandleDelete" >
+              <a-menu-item key="1" @click="batchHandleDelete"  v-auth="'platCode:plat_commission_contract:deleteBatch'">
                 <Icon icon="ant-design:delete-outlined" />
                 删除(delete)
               </a-menu-item>
@@ -82,7 +82,7 @@
           </template>
           <a-button 
             >批量操作
-            <Icon icon="mdi:chevron-down" />
+            <Icon icon="mdi:chevron-down"  v-auth="'platCode:plat_commission_contract:deleteBatch'"/>
           </a-button>
         </a-dropdown>
       </template>
@@ -133,7 +133,7 @@
       canResize: false,
       useSearchForm: false,
       actionColumn: {
-        width: 240,
+        width: 300,
         fixed: 'right',
       },
       scroll: {
@@ -218,8 +218,8 @@
       {
         label: '编辑(edit)',
         onClick: handleEdit.bind(null, record),
-        // auth: 'saleCode:sale_quotation:edit',
-        ifShow: record.status == '0',
+        auth: 'platCode:plat_commission_contract:edit',
+        ifShow: record.submit == '0',
       },
       {
         label: '删除(delete)',
@@ -228,8 +228,8 @@
           confirm: handleDelete.bind(null, record),
           placement: 'topLeft',
         },
-        ifShow: record.status == '0',
-        // auth: 'saleCode:sale_quotation:delete',
+        ifShow: record.submit == '0',
+        auth: 'platCode:plat_commission_contract:delete',
       },
     ];
   }

+ 11 - 11
src/views/platformBusiness/commissionContract/commissionContractForm.api.ts

@@ -4,17 +4,17 @@ import { useMessage } from "/@/hooks/web/useMessage";
 const { createConfirm } = useMessage();
 
 enum Api {
-  list = '/saleCode/saleQuotation/list',
-  save='/saleCode/saleQuotation/add',
-  edit='/saleCode/saleQuotation/edit',
-  deleteOne = '/saleCode/saleQuotation/delete',
-  deleteBatch = '/saleCode/saleQuotation/deleteBatch',
-  importExcel = '/saleCode/saleQuotation/importExcel',
-  exportXls = '/saleCode/saleQuotation/exportXls',
-  queryDataById = '/saleCode/saleQuotation/queryById',
-  productList = '/saleCode/saleQuotation/queryProductByMainId',
-  submitBatch='/saleCode/saleQuotation/submitBatch',
-  cancelSubmitBatch='/saleCode/saleQuotation/returnSubmitBatch',
+  list = '/platCode/platCommissionContract/list',
+  save='/platCode/platCommissionContract/add',
+  edit='/platCode/platCommissionContract/edit',
+  deleteOne = '/platCode/platCommissionContract/delete',
+  deleteBatch = '/platCode/platCommissionContract/deleteBatch',
+  importExcel = '/platCode/platCommissionContract/importExcel',
+  exportXls = '/platCode/platCommissionContract/exportXls',
+  queryDataById = '/platCode/platCommissionContract/queryById',
+  productList = '/platCode/platCommissionContract/queryPlatCommissionContractProductByMainId',
+  submitBatch='/platCode/platCommissionContract/submitBatch',
+  cancelSubmitBatch='/platCode/platCommissionContract/returnSubmitBatch',
   supplierList='/cuspCode/cuspSupplierProfile/list?pageSize=-1',
 }
 /**

+ 10 - 8
src/views/platformBusiness/commissionContract/commissionContractForm.data.ts

@@ -30,28 +30,28 @@ export const columns: BasicColumn[] = [
     title: '币种(curentcy)',
     align:"center",
     width:250,
-    dataIndex: 'curentcy'
+    dataIndex: 'currency'
    },
    {
     title: '销售部门(saleDepartment)',
     align:"center",
-    dataIndex: 'saleDepartment'
+    dataIndex: 'saleDepartmenName'
    },
    {
     title: '业务员(salesman)',
     align:"center",
-    dataIndex: 'salesman',
+    dataIndex: 'salesmanName',
     width:250,
    },
    {
     title: '提交(submit)',
     align:"center",
-    dataIndex: 'submit'
+    dataIndex: 'submit_dictText'
    },
    {
     title: '关闭(close)',
     align:"center",
-    dataIndex: 'close'
+    dataIndex: 'close_dictText'
    },
 ];
 
@@ -125,14 +125,16 @@ export const ProductColumns: JVxeColumn[] = [
     {
       title: '质量等级(quality grade)',
       key: 'qualityGrade',
-      type: JVxeTypes.normal,
+      type: JVxeTypes.select,
+      options: [],
+      dictCode: 'quality_grade',
       placeholder: '请输入${title}',
       width:"200px",
       defaultValue:'',
     },
     {
       title: '佣金比例(commission rate)',
-      key: 'commissionRate',
+      key: 'commissionRateChild',
       type: JVxeTypes.inputNumber,
       validateRules: [{ required: true, message: '' }],
       placeholder: '请输入${title}',
@@ -142,7 +144,7 @@ export const ProductColumns: JVxeColumn[] = [
     
     {
       title: '备注(note)',
-      key: 'notes',
+      key: 'notesChild',
       width:"200px",
       type: JVxeTypes.input,
       placeholder: '请输入${title}',

+ 27 - 21
src/views/platformBusiness/commissionContract/components/commissionContractFormForm.vue

@@ -22,30 +22,22 @@
             </a-col>
             <a-col :span="12">
               <a-form-item label="供应商(supplier)" v-bind="validateInfos.supplier" id="commissionContractForm-supplier" name="supplier">
-                <ApiSelect
-                  :api="supplierOption"
-                  showSearch
-                  v-model:value="formData.supplier"
-                  optionFilterProp="label"
-                  resultField="records"
-                  labelField="name"
-                  :params="{ pageSize: -1 }"
-                />
+                <JSelect   v-model:value="formData.supplierId" :get-option-url="supplierOption" :showField="showField"  @change="handleSupplierChange"></JSelect>
               </a-form-item>
             </a-col>
             <a-col :span="12">
               <a-form-item label="币种(currency)" v-bind="validateInfos.currency" id="commissionContractForm-currency" name="currency">
-                <JDictSelectTag v-model:value="formData.currency" placeholder="请选择" dictCode="currency" disabled />
+                <JDictSelectTag v-model:value="formData.currency" placeholder="请选择" dictCode="currency"  />
               </a-form-item>
             </a-col>
             <a-col :span="12">
               <a-form-item
                 label="销售部门(sale department)"
-                v-bind="validateInfos.saleDepartment"
-                id="commissionContractForm-saleDepartment"
-                name="saleDepartment"
+                v-bind="validateInfos.saleDepartmen"
+                id="commissionContractForm-saleDepartmen"
+                name="saleDepartmen"
               >
-                <a-input v-model:value="formData.saleDepartmentName" placeholder="请输入" allow-clear disabled />
+                <a-input v-model:value="formData.saleDepartmenName" placeholder="请输入" allow-clear disabled />
               </a-form-item>
             </a-col>
             <a-col :span="12">
@@ -106,7 +98,7 @@
   import SelectPrpductModal from '../../../publicComponents/SelectPrpductModal.vue';
   import JFormContainer from '/@/components/Form/src/container/JFormContainer.vue';
   import JUpload from '/@/components/Form/src/jeecg/components/JUpload/JUpload.vue';
-  import { JDictSelectTag, ApiSelect } from '/@/components/Form';
+  import { JDictSelectTag, ApiSelect,JSelect} from '/@/components/Form';
   import { Form, message } from 'ant-design-vue';
   import { useUserStore } from '/@/store/modules/user';
   import moment from 'moment';
@@ -120,6 +112,7 @@
       JUpload,
       JDictSelectTag,
       ApiSelect,
+      JSelect
     },
     props: {
       formDisabled: {
@@ -131,6 +124,7 @@
     },
     emits: ['success'],
     setup(props, { emit }) {
+      var showField = ref('currency+name');
       const userStore = useUserStore();
       const loading = ref(false);
       const formRef = ref();
@@ -149,13 +143,13 @@
         submit: undefined,
         billCode: '',
         billDate: moment(new Date()).format('YYYY-MM-DD'),
-        supplier: '',
+        supplierId: '',
         supplierName: '',
         currency: '',
         salesman:'',
         salesmanName:'',
-        saleDepartment:'',
-        saleDepartmentName:'',
+        saleDepartmen:'',
+        saleDepartmenName:'',
         notes: '',
         attachs: '',
       });
@@ -190,8 +184,8 @@
         activeKey.value = 'commissionContractFormProduct';
         formData.salesman = userStore.getUserInfo.username;
         formData.salesmanName = userStore.getUserInfo.realname;
-        formData.saleDepartment = userStore.getUserInfo.orgCode;
-        formData.saleDepartmentName = userStore.getUserInfo.orgName;
+        formData.saleDepartmen = userStore.getUserInfo.orgCode;
+        formData.saleDepartmenName = userStore.getUserInfo.orgName;
       }
       async function edit(row) {
         //主表数据
@@ -214,7 +208,7 @@
       }
 
       const { getSubFormAndTableData, transformData } = useValidateAntFormAndTable(activeKey, {
-        purOrderProduct: commissionContractFormProductTableRef,
+        platCommissionContractProduct: commissionContractFormProductTableRef,
       });
 
       async function getFormData() {
@@ -290,6 +284,16 @@
       function handleFormChange(key, value) {
         formData[key] = value;
       }
+      async function handleSupplierChange(prop){
+        if (prop) {
+          var params = { id: prop };
+          var obj = await supplierOption(params);
+          formData.supplierName = obj.records[0].name;
+        } else {
+          formData.supplierId = '';
+          formData.supplierName = '';
+        }
+      }
       return {
         commissionContractFormProductTableRef,
         commissionContractFormProductTable,
@@ -312,6 +316,8 @@
         addProduct,
         handleDelete,
         supplierOption,
+        handleSupplierChange,
+        showField
       };
     },
   });