Browse Source

Merge branch 'dev' of http://www.baoxianzhanggui.com:8090/sxzgd/vue-insagent-pc into dev

lihongxiao 2 years ago
parent
commit
975ce357c8

+ 2 - 2
src/http/moudules/expense.js

@@ -248,8 +248,8 @@ export const addInvAccountIncoice = (data) => {
 //修改开票
 //修改开票
 export const putInvAccountIncoice = (data) => {
 export const putInvAccountIncoice = (data) => {
     return axios({
     return axios({
-        url: '/invAccountIncoice',
-        method: "put",
+        url: '/invAccountIncoice/update',
+        method: "post",
         data
         data
     })
     })
 }
 }

+ 35 - 0
src/http/moudules/report.js

@@ -51,3 +51,38 @@ export const exportOrderAndCostListData = (data) => {
     data
     data
   })
   })
 }
 }
+
+// 保险公司树
+export const findLeftInsTree = (data) => {
+  return axios({
+    url: '/esmInsCompany/findTree',
+    method: 'post',
+    data
+  })
+}
+
+
+//报表-应收统计-查询
+export const getInsPlySettleReport = (data) => {
+  return axios({
+    url: "/report/getInsPlySettleReport",
+    method: "post",
+    data
+  })
+}
+//报表-应收统计-导出
+export const exportInsPlySettleReport = (data) => {
+  return axios({
+    url: "/report/exportInsPlySettleReport",
+    method: "post",
+    data
+  })
+}
+//报表-应收统计-清单导出
+export const exportInsPlySettleListData = (data) => {
+  return axios({
+    url: "/report/exportInsPlySettleListData",
+    method: "post",
+    data
+  })
+}

+ 40 - 0
src/http/moudules/task.js

@@ -706,3 +706,43 @@ export const receivableAndSettlement = (data) => {
     data
     data
   })
   })
 }
 }
+//应收表导出
+export const sourceExport = (data) => {
+  return axios({
+    url: "/InsReceivable/exportReceivable",
+    method: "post",
+    data
+  })
+}
+//应收表批量删除
+export const sourcedeletes = (data) => {
+  return axios({
+    url: "/InsReceivable/deleteReceivable",
+    method: "post",
+    data
+  })
+}
+//应收表批量修改
+export const sourceUpdates = (data) => {
+  return axios({
+    url: "/InsReceivable/receivableUpdateBatch",
+    method: "post",
+    data
+  })
+}
+//结算导出
+export const SettlementExport = (data) => {
+  return axios({
+    url: "/InsReceivable/exportSettlement",
+    method: "post",
+    data
+  })
+}
+//导出应收应付表
+export const excelReceivableAndSettlementExport = (data) => {
+  return axios({
+    url: "/InsReceivable/excelReceivableAndSettlement",
+    method: "post",
+    data
+  })
+}

+ 8 - 10
src/views/Core/KtCommonTable.vue

@@ -73,8 +73,10 @@
         v-if="showBatchDelete & showOperation" />
         v-if="showBatchDelete & showOperation" />
       <kt-button :label="settledName" :perms="permsDelete" :size="size" type="danger" @click="handleBatchSettled()"
       <kt-button :label="settledName" :perms="permsDelete" :size="size" type="danger" @click="handleBatchSettled()"
         :disabled="selections.length === 0" style="float: left" v-if="showBatchSettled" />
         :disabled="selections.length === 0" style="float: left" v-if="showBatchSettled" />
-      <kt-button label="导出Excel" :perms="permsDelete" :size="size" type="danger" @click="handleBatchPrint()"
-        :disabled="selections.length === 0" style="float: left" v-if="showBatchPrint" />
+      <!-- <kt-button label="导出Excel" :perms="permsDelete" :size="size" type="danger" @click="handleBatchPrint()"
+        :disabled="selections.length === 0" style="float: left" v-if="showBatchPrint" /> -->
+        <kt-button label="导出Excel" :perms="permsDelete" :size="size" type="danger" @click="handleBatchPrint()"
+        style="float: left" v-if="showBatchPrint" />
       <el-pagination @size-change="handleSizeChange" layout="total, sizes, prev, pager, next, jumper"
       <el-pagination @size-change="handleSizeChange" layout="total, sizes, prev, pager, next, jumper"
         @current-change="refreshPageRequest" :current-page="data.pageNum" :page-size="data.pageSize"
         @current-change="refreshPageRequest" :current-page="data.pageNum" :page-size="data.pageSize"
         :page-sizes="[10, 20, 50, 100, 200, 300, 400, 500]" :total="data.totalSize" style="float: left; margin-left: 20px"
         :page-sizes="[10, 20, 50, 100, 200, 300, 400, 500]" :total="data.totalSize" style="float: left; margin-left: 20px"
@@ -400,13 +402,9 @@ export default {
     },
     },
     // 批量删除
     // 批量删除
     handleBatchDelete: function () {
     handleBatchDelete: function () {
-      let _keyName = "id";
-      if (!!this.keyName) {
-        _keyName = this.keyName;
-      }
-      //let ids = this.selections.map(item => item.id).toString()
-      let ids = this.selections.map((item) => item[_keyName]).toString();
-      this.delete(ids);
+      let idlist=[];
+      this.selections.map((item) => idlist.push(item.id));
+      this.$emit("handleDelete", idlist);
     },
     },
     // 删除操作
     // 删除操作
     delete: function (ids) {
     delete: function (ids) {
@@ -456,7 +454,7 @@ export default {
         _keyName = this.keyName;
         _keyName = this.keyName;
       }
       }
       let idlist=[];
       let idlist=[];
-      this.selections.map((item) => idlist.push(item.policyno));
+      this.selections.map((item) => idlist.push(item[_keyName]));
       this.$emit("handleSettled", idlist);
       this.$emit("handleSettled", idlist);
     },
     },
     //批量打印
     //批量打印

+ 3 - 33
src/views/FinancialManagement/ExpenseManagement/ExpenseApplyFor.vue

@@ -18,20 +18,6 @@
             <el-option label="未转账" value="1"></el-option>
             <el-option label="未转账" value="1"></el-option>
           </el-select>
           </el-select>
         </el-form-item>
         </el-form-item>
-        <el-form-item label="账户性质" label-width="95px" prop="accountQuality">
-          <el-select
-            v-model="queryFrom.accountQuality"
-            placeholder="请选择账户性质"
-            clearable
-          >
-            <el-option
-              v-for="item in account_qualityData"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            ></el-option>
-          </el-select>
-        </el-form-item>
         <el-form-item label="申请人" label-width="95px" prop="applicant">
         <el-form-item label="申请人" label-width="95px" prop="applicant">
           <el-input
           <el-input
             v-model="queryFrom.applicant"
             v-model="queryFrom.applicant"
@@ -110,7 +96,7 @@
               <el-form-item
               <el-form-item
                 label="单位:"
                 label="单位:"
                 label-width="50px"
                 label-width="50px"
-                prop="accountQuality"
+                prop="company"
               >
               >
                 <el-select
                 <el-select
                   v-model="tableForm.company"
                   v-model="tableForm.company"
@@ -249,12 +235,12 @@
               </td>
               </td>
               <td class="td-title" colspan="1">备注</td>
               <td class="td-title" colspan="1">备注</td>
               <td class="td-content" colspan="1">
               <td class="td-content" colspan="1">
-                <el-select v-model="tableForm.remark" placeholder="">
+                <el-select v-model="tableForm.remark" placeholder="" allow-create filterable>
                   <el-option
                   <el-option
                     v-for="item in use_fundsData"
                     v-for="item in use_fundsData"
                     :key="item.value"
                     :key="item.value"
                     :label="item.label"
                     :label="item.label"
-                    :value="item.value"
+                    :value="item.label"
                   >
                   >
                   </el-option>
                   </el-option>
                 </el-select>
                 </el-select>
@@ -542,7 +528,6 @@ export default {
         applyAmount: "", //申请金额
         applyAmount: "", //申请金额
         bigApplyAmount: "", //大写金额
         bigApplyAmount: "", //大写金额
         payMethod: [], //支付方式
         payMethod: [], //支付方式
-        remark: "", //备注
       },
       },
       payment_methodsData: [], //支付方式字典数据
       payment_methodsData: [], //支付方式字典数据
       use_fundsData: [], //备注字典数据
       use_fundsData: [], //备注字典数据
@@ -608,7 +593,6 @@ export default {
           applyAmount: "", //申请金额
           applyAmount: "", //申请金额
           bigApplyAmount: "", //大写金额
           bigApplyAmount: "", //大写金额
           payMethod: [], //支付方式
           payMethod: [], //支付方式
-          remark: "", //备注
         };
         };
         this.tableForm.payMethod = [
         this.tableForm.payMethod = [
           this.payment_methodsData.find((item) => item.value == 2).label,
           this.payment_methodsData.find((item) => item.value == 2).label,
@@ -671,15 +655,11 @@ export default {
       this.$api.expense
       this.$api.expense
         .getAccountExcelById(row.excelAccountOperateId)
         .getAccountExcelById(row.excelAccountOperateId)
         .then((res) => {
         .then((res) => {
-          console.log(res);
           if (res.code == 200) {
           if (res.code == 200) {
             this.tableForm = JSON.parse(JSON.stringify(res.data));
             this.tableForm = JSON.parse(JSON.stringify(res.data));
             this.tableForm.payMethod = this.tableForm.payMethod.split(",");
             this.tableForm.payMethod = this.tableForm.payMethod.split(",");
             this.tableForm.collectionMessage = res.data.enterCardNum;
             this.tableForm.collectionMessage = res.data.enterCardNum;
             this.tableForm.company = res.data.outCardNum;
             this.tableForm.company = res.data.outCardNum;
-            this.tableForm.remark = this.use_fundsData.find(
-              (item) => item.label == res.data.remark
-            ).value;
             let obj = this.fundFlowData.find((item) =>
             let obj = this.fundFlowData.find((item) =>
               item.child.find(
               item.child.find(
                 (chidlItem) => chidlItem.category == this.tableForm.fundUse
                 (chidlItem) => chidlItem.category == this.tableForm.fundUse
@@ -725,11 +705,6 @@ export default {
     //获取资金用途树数据
     //获取资金用途树数据
     getTreeList() {
     getTreeList() {
       this.$api.expense.getAccountExpensesTreeList().then((res) => {
       this.$api.expense.getAccountExpensesTreeList().then((res) => {
-        // res.data.forEach((item) => {
-        //   item.child.forEach((childItem) => {
-
-        //   });
-        // });
         this.fundFlowData = res.data;
         this.fundFlowData = res.data;
       });
       });
     },
     },
@@ -750,11 +725,6 @@ export default {
           res.data.records.forEach((element) => {
           res.data.records.forEach((element) => {
             element.transferFlagName =
             element.transferFlagName =
               element.transferFlag == 0 ? "已转账" : "未转账";
               element.transferFlag == 0 ? "已转账" : "未转账";
-            this.use_fundsData.forEach((item) => {
-              if (element.remark == item.value) {
-                element.remarkName = item.label;
-              }
-            });
           });
           });
           this.pageResult = {
           this.pageResult = {
             content: res.data.records,
             content: res.data.records,

+ 6 - 61
src/views/FinancialManagement/ExpenseManagement/ExpenseComponent.vue

@@ -110,63 +110,23 @@
               ></el-input-number>
               ></el-input-number>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
-        </el-row>
-        <el-row v-if="formData.outerFlag == 0 && type == 1">
-          <div
-            v-for="(zgItem, index) in formData.tentativeEstimates"
-            :key="'zg' + index"
-          >
-            <el-col :span="12">
-              <el-form-item
-                label="暂估年"
-                :prop="'tentativeEstimates.' + index + '.year'"
-                :rules="{
-                  required: true,
-                  message: '请选择暂估年',
-                  trigger: 'change',
-                }"
-              >
-                <el-date-picker
-                  v-model="zgItem.year"
-                  type="year"
-                  value-format="yyyy"
-                  placeholder="选择年"
-                >
-                </el-date-picker>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="暂估值" :prop="'tentativeEstimates.' + index + '.value'"
+          <el-col :span="12">
+              <el-form-item label="暂估值" prop="tentativeEstimates"
                 :rules="[{
                 :rules="[{
                   required: true,
                   required: true,
                   message: '暂估值不能为空',
                   message: '暂估值不能为空',
                   trigger: 'blur',
                   trigger: 'blur',
                 },
                 },
-                { pattern: /^[1-9]\d*$/ , message: '暂估值不能小于等于0', trigger: 'blur'}]">
+               ]">
+                <!-- { pattern: /^[1-9]\d*$/ , message: '暂估值不能小于等于0', trigger: 'blur'} -->
                 <el-input-number
                 <el-input-number
-                  v-model="zgItem.value"
+                  v-model="formData.tentativeEstimates"
                   :min="0"
                   :min="0"
                   :max="99999999999999999"
                   :max="99999999999999999"
                   label=""
                   label=""
                 ></el-input-number>
                 ></el-input-number>
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
-          </div>
-        </el-row>
-        <el-row v-if="formData.outerFlag == 0 && type == 1">
-          <el-col :span="24" style="text-align: center; margin-top: 20px"
-            ><i
-              @click="addYear"
-              class="el-icon-circle-plus"
-              style="font-size: 25px"
-            ></i>
-            <i
-              v-show="formData.tentativeEstimates.length>1"
-              @click="removeYear"
-              class="el-icon-remove"
-              style="margin-left: 30px; font-size: 25px"
-            ></i>
-          </el-col>
         </el-row>
         </el-row>
         <el-row v-if="type == 2">
         <el-row v-if="type == 2">
           <el-col :span="12">
           <el-col :span="12">
@@ -575,20 +535,6 @@ export default {
             trigger: "blur",
             trigger: "blur",
           },
           },
         ],
         ],
-        // year: [
-        //   {
-        //     required: true,
-        //     message: "请选择暂估年",
-        //     trigger: "change",
-        //   },
-        // ],
-        // value: [
-        //   {
-        //     required: true,
-        //     message: "暂估值不能为空",
-        //     trigger: "blur",
-        //   },
-        // ],
       },
       },
       interiorRules: {
       interiorRules: {
         //卡表单规则
         //卡表单规则
@@ -629,7 +575,6 @@ export default {
   },
   },
   created() {
   created() {
     this.business("account_quality");
     this.business("account_quality");
-    // this.business("nature_business");
   },
   },
   mounted() {},
   mounted() {},
   methods: {
   methods: {
@@ -682,6 +627,6 @@ export default {
 }
 }
 .el-input-number,
 .el-input-number,
 .el-date-editor {
 .el-date-editor {
-  width: 100%;
+  width: 100% !important;
 }
 }
 </style>
 </style>

+ 81 - 66
src/views/FinancialManagement/ExpenseManagement/ExpenseManagement.vue

@@ -121,15 +121,15 @@
                 >
                 >
                 <el-button
                 <el-button
                   size="mini"
                   size="mini"
-                  type="danger"
-                  @click="handleTableExpend(scopes.row)"
-                  >支出</el-button
+                  type="success"
+                  @click="handleTableIncome(scope.row, scopes.row)"
+                  >收入</el-button
                 >
                 >
                 <el-button
                 <el-button
                   size="mini"
                   size="mini"
-                  type="danger"
-                  @click="handleTableIncome(scope.row, scopes.row)"
-                  >收入</el-button
+                  type="warning"
+                  @click="handleTableExpend(scopes.row)"
+                  >支出</el-button
                 >
                 >
               </template>
               </template>
             </el-table-column>
             </el-table-column>
@@ -147,10 +147,9 @@
       </el-table-column>
       </el-table-column>
       <el-table-column fixed="right" label="操作" align="center" width="240">
       <el-table-column fixed="right" label="操作" align="center" width="240">
         <template slot-scope="scope">
         <template slot-scope="scope">
-          <!-- @click.native.prevent="deleteRow(scope.$index, tableData)" -->
           <el-button
           <el-button
             size="mini"
             size="mini"
-            @click.native.prevent="handleTableEdit(scope.row)"
+            @click.native.prevent="handleTableEdit(scope.row, scope)"
             >编辑</el-button
             >编辑</el-button
           >
           >
           <el-button
           <el-button
@@ -198,8 +197,6 @@
       @resetForm="resetForm"
       @resetForm="resetForm"
       @submitForm="submitForm"
       @submitForm="submitForm"
       @setDateInterval="setDateInterval"
       @setDateInterval="setDateInterval"
-      @addYear="addYear"
-      @removeYear="removeYear"
     ></expense-component>
     ></expense-component>
     <!-- 支出弹框 -->
     <!-- 支出弹框 -->
     <el-dialog
     <el-dialog
@@ -335,18 +332,40 @@
           </el-col>
           </el-col>
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="备注" prop="remark">
             <el-form-item label="备注" prop="remark">
-              <el-select v-model="inComeFormData.remark" placeholder="">
+              <el-select v-model="inComeFormData.remark" allow-create filterable placeholder="">
                 <el-option
                 <el-option
                   v-for="item in use_fundsData"
                   v-for="item in use_fundsData"
                   :key="item.value"
                   :key="item.value"
                   :label="item.label"
                   :label="item.label"
-                  :value="item.value"
+                  :value="item.label"
                 >
                 >
                 </el-option>
                 </el-option>
               </el-select>
               </el-select>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
         </el-row>
         </el-row>
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="资金用途" prop="fundUse">
+              <el-cascader
+                v-model="inComeFormData.fundUse"
+                :show-all-levels="false"
+                :clearable="true"
+                :checkStrictly="true"
+                :emitPath="false"
+                placeholder=""
+                :options="fundFlowData"
+                filterable
+                :props="{
+                  children: 'child',
+                  label: 'category',
+                  value: 'category',
+                  checkStrictly: true,
+                }"
+              ></el-cascader>
+            </el-form-item>
+          </el-col>
+        </el-row>
       </el-form>
       </el-form>
       <div slot="footer" class="dialog-footer">
       <div slot="footer" class="dialog-footer">
         <el-button @click="incomeResetForm()" size="small">取 消</el-button>
         <el-button @click="incomeResetForm()" size="small">取 消</el-button>
@@ -371,6 +390,7 @@ export default {
     this.business("use_funds"); //备注字典
     this.business("use_funds"); //备注字典
     this.business("payment_methods"); //支付方式字典
     this.business("payment_methods"); //支付方式字典
     this.business("nature_business"); //营业性质字典
     this.business("nature_business"); //营业性质字典
+    this.getTreeList();//获取资金用途字典
   },
   },
   mounted() {},
   mounted() {},
   data() {
   data() {
@@ -381,6 +401,7 @@ export default {
        */
        */
       incomeDialogVisible: false, //收入 弹出框状态
       incomeDialogVisible: false, //收入 弹出框状态
       collectionData: [], //收入  转账方下拉菜单数组
       collectionData: [], //收入  转账方下拉菜单数组
+      fundFlowData: [], //资金用途字典数据
       use_fundsData: [], //收入  备注字典数据
       use_fundsData: [], //收入  备注字典数据
       payment_methodsData: [], //收入  支付方式字典数据
       payment_methodsData: [], //收入  支付方式字典数据
       inComeFormData: {
       inComeFormData: {
@@ -392,6 +413,7 @@ export default {
         remark: "", //备注
         remark: "", //备注
         company: "", //转账方
         company: "", //转账方
         payMethod: [], //转账方
         payMethod: [], //转账方
+        fundUse:'',//资金用途
       },
       },
       inComeFormRules: {
       inComeFormRules: {
         //收入规则
         //收入规则
@@ -446,7 +468,7 @@ export default {
         {
         {
           prop: "accountName",
           prop: "accountName",
           label: "户名",
           label: "户名",
-          minWidth: 160,
+          minWidth: 240,
           sortable: false,
           sortable: false,
         },
         },
         {
         {
@@ -476,7 +498,7 @@ export default {
         {
         {
           prop: "invoicingAmountExcess",
           prop: "invoicingAmountExcess",
           label: "剩余开票额度",
           label: "剩余开票额度",
-          minWidth: 80,
+          minWidth: 90,
           sortable: false,
           sortable: false,
         },
         },
         {
         {
@@ -485,6 +507,24 @@ export default {
           minWidth: 80,
           minWidth: 80,
           sortable: false,
           sortable: false,
         },
         },
+        {
+          prop: "quarterAmountExcess",
+          label: "季度开票额度",
+          minWidth: 120,
+          sortable: false,
+        },
+        {
+          prop: "sumInvoicingAmount",
+          label: "总开票额度",
+          minWidth: 120,
+          sortable: false,
+        },
+        {
+          prop: "tentativeEstimates",
+          label: "暂估",
+          minWidth: 120,
+          sortable: false,
+        },
       ],
       ],
       //子部数据列
       //子部数据列
       childColums: [
       childColums: [
@@ -622,18 +662,6 @@ export default {
           minWidth: 120,
           minWidth: 120,
           sortable: false,
           sortable: false,
         },
         },
-        {
-          prop: "quarterAmountExcess",
-          label: "季度开票额度",
-          minWidth: 120,
-          sortable: false,
-        },
-        {
-          prop: "sumInvoicingAmount",
-          label: "总开票额度",
-          minWidth: 120,
-          sortable: false,
-        },
       ],
       ],
       //账户信息form
       //账户信息form
       accountFormData: {
       accountFormData: {
@@ -646,7 +674,7 @@ export default {
         juridicalPerson: "", //法人
         juridicalPerson: "", //法人
         owned: "", //所属地
         owned: "", //所属地
         biller: "", //开票员
         biller: "", //开票员
-        tentativeEstimates: [{ year: "", value: 0 }], //暂估值
+        tentativeEstimates: '', //暂估值
       },
       },
       //账户卡信息form
       //账户卡信息form
       accountCardFormData: {
       accountCardFormData: {
@@ -750,13 +778,11 @@ export default {
     },
     },
   },
   },
   methods: {
   methods: {
-    //暂估新增
-    addYear() {
-      this.accountFormData.tentativeEstimates.push({ year: "", value: 0 });
-    },
-    //暂估删除
-    removeYear() {
-      this.accountFormData.tentativeEstimates.pop();
+    //获取资金用途树数据
+    getTreeList() {
+      this.$api.expense.getAccountExpensesTreeList().then((res) => {
+        this.fundFlowData = res.data;
+      });
     },
     },
     //展开事件
     //展开事件
     handleRowChange(e, row) {
     handleRowChange(e, row) {
@@ -832,6 +858,7 @@ export default {
       obj.fundFlow = obj.company + "→" + obj.collectionMessage;
       obj.fundFlow = obj.company + "→" + obj.collectionMessage;
       obj.payMethod = obj.payMethod.join(",");
       obj.payMethod = obj.payMethod.join(",");
       obj.revenueOutlay = "0";
       obj.revenueOutlay = "0";
+      obj.fundUse = obj.fundUse[obj.fundUse.length - 1]; //资金用途
       this.$refs.inComeFormData.validate((valid) => {
       this.$refs.inComeFormData.validate((valid) => {
         if (valid) {
         if (valid) {
           this.$api.expense.insertAccountOperate(obj).then((res) => {
           this.$api.expense.insertAccountOperate(obj).then((res) => {
@@ -887,11 +914,6 @@ export default {
           res.data.records.forEach((element) => {
           res.data.records.forEach((element) => {
             element.transferFlagName =
             element.transferFlagName =
               element.transferFlag == 0 ? "已转账" : "未转账";
               element.transferFlag == 0 ? "已转账" : "未转账";
-            this.use_fundsData.forEach((item) => {
-              if (element.remark == item.value) {
-                element.remarkName = item.label;
-              }
-            });
           });
           });
           this.expendPageResult = {
           this.expendPageResult = {
             content: res.data.records,
             content: res.data.records,
@@ -946,22 +968,24 @@ export default {
         .then((res) => {
         .then((res) => {
           if (res.code == 200) {
           if (res.code == 200) {
             res.data.records.forEach((element) => {
             res.data.records.forEach((element) => {
-              //转化营业性质
-              let quality = this.nature_businessData.find(
-                (item) => item.value == element.businessQuality
-              );
-              if (quality != null && quality != "" && quality != undefined) {
-                element.businessQualityName = quality.label;
-              } else {
-                element.businessQualityName = "";
-              }
-              element.outerFlagName =
-                element.outerFlag == 0 ? "内部账户" : "外部账户";
-              if (element.invAccountCardList != null) {
-                element.invAccountCardList.forEach((inv) => {
-                  inv.outerFlag = element.outerFlag;
-                  inv.accountQualityName = this.dictFn(inv, 1); //转化账户性质
-                });
+              if (element != null && element != "" && element != undefined) {
+                //转化营业性质
+                let quality = this.nature_businessData.find(
+                  (item) => item.value == element.businessQuality
+                );
+                if (quality != null && quality != "" && quality != undefined) {
+                  element.businessQualityName = quality.label;
+                } else {
+                  element.businessQualityName = "";
+                }
+                element.outerFlagName =
+                  element.outerFlag == 0 ? "内部账户" : "外部账户";
+                if (element.invAccountCardList != null) {
+                  element.invAccountCardList.forEach((inv) => {
+                    inv.outerFlag = element.outerFlag;
+                    inv.accountQualityName = this.dictFn(inv, 1); //转化账户性质
+                  });
+                }
               }
               }
             });
             });
             this.accountData = res.data.records;
             this.accountData = res.data.records;
@@ -1064,7 +1088,7 @@ export default {
           // invoicingAmountExcess:0,//剩余开票额度
           // invoicingAmountExcess:0,//剩余开票额度
           juridicalPerson: "", //法人
           juridicalPerson: "", //法人
           owned: "", //所属地
           owned: "", //所属地
-          tentativeEstimates: [{ year: "", value: 0 }], //暂估值
+          tentativeEstimates: '', //暂估值
         };
         };
       } else {
       } else {
         this.accountCardFormData = {
         this.accountCardFormData = {
@@ -1132,25 +1156,16 @@ export default {
       this.accountCardFormData.outerFlag = row.outerFlag;
       this.accountCardFormData.outerFlag = row.outerFlag;
     },
     },
     //账户信息修改
     //账户信息修改
-    handleTableEdit(row) {
+    handleTableEdit(row, scope) {
       this.type = 1; //账户类型
       this.type = 1; //账户类型
       this.formDataId = row.accountId;
       this.formDataId = row.accountId;
       this.$api.expense
       this.$api.expense
         .getAccount({ accountId: this.formDataId })
         .getAccount({ accountId: this.formDataId })
         .then((res) => {
         .then((res) => {
-          console.log(res);
           if (res.code == 200) {
           if (res.code == 200) {
-            if (
-              res.data.records[0].tentativeEstimates == null ||
-              res.data.records[0].tentativeEstimates == "" ||
-              res.data.records[0].tentativeEstimates == undefined
-            ) {
-              res.data.records[0].tentativeEstimates = [{ year: "", value: 0 }];
-            }
             this.accountFormData = JSON.parse(
             this.accountFormData = JSON.parse(
               JSON.stringify(res.data.records[0])
               JSON.stringify(res.data.records[0])
             );
             );
-            console.log(this.accountFormData);
           } else {
           } else {
             this.$message.error(res.msg);
             this.$message.error(res.msg);
           }
           }

+ 349 - 236
src/views/FinancialManagement/ExpenseManagement/PaymentManagement.vue

@@ -9,7 +9,7 @@
         label-width="95px"
         label-width="95px"
         class="form"
         class="form"
       >
       >
-        <el-form-item label="发票类型" label-width="95px" prop="invoiceType">
+        <el-form-item label="发票类型" label-width="80px" prop="invoiceType">
           <el-select
           <el-select
             v-model="pageRequest.invoiceType"
             v-model="pageRequest.invoiceType"
             placeholder="请选择发票类型"
             placeholder="请选择发票类型"
@@ -23,7 +23,7 @@
             ></el-option>
             ></el-option>
           </el-select>
           </el-select>
         </el-form-item>
         </el-form-item>
-        <el-form-item label="开票员" label-width="95px" prop="biller">
+        <el-form-item label="开票员" label-width="80px" prop="biller">
           <el-input
           <el-input
             v-model="pageRequest.biller"
             v-model="pageRequest.biller"
             placeholder="请输入开票员"
             placeholder="请输入开票员"
@@ -31,7 +31,7 @@
             clearable
             clearable
           ></el-input>
           ></el-input>
         </el-form-item>
         </el-form-item>
-        <el-form-item label="开票方" label-width="95px" prop="invoiceBy">
+        <el-form-item label="开票方" label-width="80px" prop="invoiceBy">
           <el-input
           <el-input
             v-model="pageRequest.invoiceBy"
             v-model="pageRequest.invoiceBy"
             placeholder="请输入开票方"
             placeholder="请输入开票方"
@@ -39,6 +39,14 @@
             clearable
             clearable
           ></el-input>
           ></el-input>
         </el-form-item>
         </el-form-item>
+        <el-form-item label="对方单位名称" label-width="110px" prop="otherUnit">
+          <el-input
+            v-model="pageRequest.otherUnit"
+            placeholder="请输入对方单位名称"
+            class=""
+            clearable
+          ></el-input>
+        </el-form-item>
         <el-form-item label="开票日期" label-width="95px" prop="invoiceTime">
         <el-form-item label="开票日期" label-width="95px" prop="invoiceTime">
           <el-date-picker
           <el-date-picker
             v-model="pageRequest.invoiceTime"
             v-model="pageRequest.invoiceTime"
@@ -53,15 +61,40 @@
           >
           >
         </el-form-item>
         </el-form-item>
       </el-form>
       </el-form>
+      <el-button
+        class="operation"
+        type="primary"
+        plain
+        size="medium"
+        @click="addPayment"
+        >开票新增</el-button
+      >
+      <!-- <el-button  size="medium" @click="look=!look">查看合计</el-button> -->
+      <!-- 合计 -->
+      <div v-show="look" style="margin-top: 20px">
+        <el-descriptions title="" size="mini" border>
+          <el-descriptions-item label="开票金额总和">{{
+            allNumObj.invoiceMoneySum
+          }}</el-descriptions-item>
+          <el-descriptions-item label="进账金额总和">{{
+            allNumObj.payoutMoneySum
+          }}</el-descriptions-item>
+          <el-descriptions-item label="未进账金额总和">{{
+            allNumObj.notPayoutMoneySum
+          }}</el-descriptions-item>
+          <el-descriptions-item label="开票数总和">{{
+            allNumObj.invoiceNumSum
+          }}</el-descriptions-item>
+          <el-descriptions-item label="税额总和">{{
+            allNumObj.taxSum
+          }}</el-descriptions-item>
+          <el-descriptions-item label="不含税金额总和">{{
+            allNumObj.noHasTaxSum
+          }}</el-descriptions-item>
+        </el-descriptions>
+      </div>
     </el-row>
     </el-row>
-    <el-button
-      class="operation"
-      type="primary"
-      plain
-      size="medium"
-      @click="addPayment"
-      >开票新增</el-button
-    >
+
     <!-- 表格 -->
     <!-- 表格 -->
     <kt-common-table
     <kt-common-table
       v-loading="loading"
       v-loading="loading"
@@ -75,15 +108,15 @@
       :columns="columns"
       :columns="columns"
       :showBatchDelete="false"
       :showBatchDelete="false"
       :showOperation="true"
       :showOperation="true"
+      editButtonName="编辑"
       button3Name="撤销"
       button3Name="撤销"
       button3Icon="fa fa-trash"
       button3Icon="fa fa-trash"
       button3Background="#f56c6c"
       button3Background="#f56c6c"
       @handleButton3="handleTableDelete"
       @handleButton3="handleTableDelete"
+      @handleEdit="handleDetail"
       @findPage="findPage"
       @findPage="findPage"
       :isshowpagination="true"
       :isshowpagination="true"
     ></kt-common-table>
     ></kt-common-table>
-    <!-- editButtonName="编辑"
-    @handleEdit="handleDetail" -->
     <!-- 新增编辑弹框 -->
     <!-- 新增编辑弹框 -->
     <el-dialog
     <el-dialog
       class="dialog detailtTable"
       class="dialog detailtTable"
@@ -100,78 +133,83 @@
           ref="formData"
           ref="formData"
           label-width="130px"
           label-width="130px"
           size="small"
           size="small"
-          class="frame"
+          :class="formDataId ? 'data_form' : 'frame data_form'"
         >
         >
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="开票方" prop="invoiceBy">
-                <el-select
-                  v-model="formData.invoiceBy"
-                  filterable
-                  placeholder=""
-                  clearable
-                  value-key="bankCardNum"
-                  @change="companyChange"
-                >
-                  <el-option
-                    v-for="(item, index) in collectionData"
-                    :key="index + 'kpf'"
-                    :label="item.name"
-                    :value="item"
+          <div v-if="!formDataId">
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="开票方" prop="invoiceBy">
+                  <el-select
+                    v-model="formData.invoiceBy"
+                    filterable
+                    placeholder=""
+                    clearable
+                    value-key="bankCardNum"
+                    @change="companyChange"
                   >
                   >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="卡号" prop="bankCardNum">
-                <el-input
-                  disabled
-                  v-model="formData.bankCardNum"
-                  autocomplete="off"
-                ></el-input>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="开票员" prop="biller">
-                <el-input
-                  disabled
-                  v-model="formData.biller"
-                  autocomplete="off"
-                ></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="开票金额" prop="invoiceMoney">
-                <el-input-number
-                  v-model="formData.invoiceMoney"
-                  :min="0"
-                  :max="99999999999999999"
-                  label=""
-                ></el-input-number>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="发票数" prop="invoiceNum">
-                <el-input-number
-                  v-model="formData.invoiceNum"
-                  :min="0"
-                  :max="99999999999999999"
-                  label=""
-                ></el-input-number>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="开票科目" prop="invoiceSubjects">
-                <el-input
-                  v-model="formData.invoiceSubjects"
-                  autocomplete="off"
-                ></el-input>
-                <!-- <el-select
+                    <el-option
+                      v-for="(item, index) in collectionData"
+                      :key="index + 'kpf'"
+                      :label="item.name"
+                      :value="item"
+                    >
+                    </el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="卡号" prop="bankCardNum">
+                  <el-input
+                    disabled
+                    v-model="formData.bankCardNum"
+                    autocomplete="off"
+                  ></el-input>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="开票员" prop="biller">
+                  <el-input
+                    disabled
+                    v-model="formData.biller"
+                    autocomplete="off"
+                  ></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="开票金额" prop="invoiceMoney">
+                  <el-input-number
+                    v-model="formData.invoiceMoney"
+                    :min="0"
+                    :max="99999999999999999"
+                    label=""
+                  ></el-input-number>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="发票数" prop="invoiceNum">
+                  <el-input-number
+                    v-model="formData.invoiceNum"
+                    :min="0"
+                    :max="99999999999999999"
+                    label=""
+                  ></el-input-number>
+                </el-form-item>
+              </el-col>
+              <el-col class="invoic" :span="12">
+                <el-form-item label="开票科目" prop="invoiceSubjects">
+                  <el-input
+                    v-model="formData.invoiceSubjects1"
+                    autocomplete="off"
+                  ></el-input>
+                  <el-input
+                    v-model="formData.invoiceSubjects2"
+                    autocomplete="off"
+                  ></el-input>
+                  <!-- <el-select
                   v-model="formData.invoiceSubjects"
                   v-model="formData.invoiceSubjects"
                   placeholder="请选择开票科目"
                   placeholder="请选择开票科目"
                 >
                 >
@@ -182,124 +220,154 @@
                     :value="item.value"
                     :value="item.value"
                   ></el-option>
                   ></el-option>
                 </el-select> -->
                 </el-select> -->
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="发票类型" prop="invoiceType">
-                <el-select
-                  v-model="formData.invoiceType"
-                  placeholder="请选择发票类型"
-                  clearable
-                >
-                  <el-option
-                    v-for="item in invoice_typeData"
-                    :key="item.value + 'km'"
-                    :label="item.label"
-                    :value="item.value"
-                  ></el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="开票日期" prop="invoiceTime">
-                <el-date-picker
-                  v-model="formData.invoiceTime"
-                  value-format="yyyy-MM-dd"
-                  type="date"
-                  placeholder="选择日期"
-                >
-                </el-date-picker>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="未进账金额" prop="notPayoutMoney">
-                <el-input-number
-                  v-model="formData.notPayoutMoney"
-                  :min="0"
-                  :max="99999999999999999"
-                  label=""
-                ></el-input-number>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="对方单位" prop="otherUnit">
-                <el-input
-                  v-model="formData.otherUnit"
-                  autocomplete="off"
-                ></el-input>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="进账金额" prop="payoutMoney">
-                <el-input-number
-                  v-model="formData.payoutMoney"
-                  :min="0"
-                  :max="99999999999999999"
-                  label=""
-                ></el-input-number>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="进账日期" prop="payoutTime">
-                <el-date-picker
-                  v-model="formData.payoutTime"
-                  type="date"
-                  value-format="yyyy-MM-dd"
-                  placeholder="选择日期"
-                >
-                </el-date-picker>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="税率(%)" prop="rate">
-                <el-input-number
-                  v-model="formData.rate"
-                  :min="0"
-                  :max="99999999999999999"
-                  label=""
-                ></el-input-number>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="备注" prop="remark">
-                <el-select
-                  v-model="formData.remark"
-                  placeholder="请选择备注"
-                  clearable
-                >
-                  <el-option
-                    v-for="item in use_fundsData"
-                    :key="item.value + 'km'"
-                    :label="item.label"
-                    :value="item.label"
-                  ></el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="支付方式" prop="payMethod">
-                <el-select v-model="formData.payMethod" multiple placeholder="">
-                  <el-option
-                    v-for="item in payment_methodsData"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="发票类型" prop="invoiceType">
+                  <el-select
+                    v-model="formData.invoiceType"
+                    placeholder="请选择发票类型"
+                    clearable
+                  >
+                    <el-option
+                      v-for="item in invoice_typeData"
+                      :key="item.value + 'km'"
+                      :label="item.label"
+                      :value="item.value"
+                    ></el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="开票日期" prop="invoiceTime">
+                  <el-date-picker
+                    v-model="formData.invoiceTime"
+                    value-format="yyyy-MM-dd"
+                    type="date"
+                    placeholder="选择日期"
+                  >
+                  </el-date-picker>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="对方单位" prop="otherUnit">
+                  <el-select
+                    v-model="formData.otherUnit"
+                    filterable
+                    placeholder=""
+                    clearable
+                    value-key="bankCardNum"
+                  >
+                    <el-option
+                      v-for="(item, index) in allCollectionData"
+                      :key="index + 'kpf'"
+                      :label="item.name"
+                      :value="item"
+                    >
+                    </el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="进账日期" prop="payoutTime">
+                  <el-date-picker
+                    v-model="formData.payoutTime"
+                    type="date"
+                    value-format="yyyy-MM-dd"
+                    placeholder="选择日期"
+                  >
+                  </el-date-picker>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="税率(%)" prop="rate">
+                  <el-input-number
+                    v-model="formData.rate"
+                    :min="0"
+                    :max="99999999999999999"
+                    label=""
+                  ></el-input-number>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="备注" prop="remark">
+                  <el-select
+                    v-model="formData.remark"
+                    placeholder="请选择备注"
+                    clearable
+                    allow-create
+                    filterable
                   >
                   >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-          </el-row>
+                    <el-option
+                      v-for="item in use_fundsData"
+                      :key="item.value + 'km'"
+                      :label="item.label"
+                      :value="item.label"
+                    ></el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+            </el-row>
+          </div>
+          <div v-else>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="进账金额" prop="payoutMoney">
+                  <el-input-number
+                    v-model="formData.payoutMoney"
+                    :min="0"
+                    :max="99999999999999999"
+                    label=""
+                  ></el-input-number>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="支付方式" prop="payMethod">
+                  <el-select
+                    v-model="formData.payMethod"
+                    multiple
+                    placeholder=""
+                  >
+                    <el-option
+                      v-for="item in payment_methodsData"
+                      :key="item.value"
+                      :label="item.label"
+                      :value="item.value"
+                    >
+                    </el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="资金用途" prop="fundUse">
+                  <el-cascader
+                    v-model="formData.fundUse"
+                    :show-all-levels="false"
+                    :clearable="true"
+                    :checkStrictly="true"
+                    :emitPath="false"
+                    placeholder=""
+                    :options="fundFlowData"
+                    filterable
+                    :props="{
+                      children: 'child',
+                      label: 'category',
+                      value: 'category',
+                      checkStrictly: true,
+                    }"
+                  ></el-cascader>
+                </el-form-item>
+              </el-col>
+            </el-row>
+          </div>
         </el-form>
         </el-form>
       </div>
       </div>
       <div slot="footer" class="dialog-footer">
       <div slot="footer" class="dialog-footer">
@@ -324,20 +392,24 @@ export default {
     this.business("invoice_type"); //开票类型
     this.business("invoice_type"); //开票类型
     this.business("use_funds"); //备注
     this.business("use_funds"); //备注
     this.business("payment_methods"); //支付方式字典
     this.business("payment_methods"); //支付方式字典
+    this.getTreeList(); //资金用途字典数据
   },
   },
   mounted() {
   mounted() {
     this.getAllUser();
     this.getAllUser();
   },
   },
   data() {
   data() {
     return {
     return {
+      look:true,
+      allNumObj: {}, //合计对象
       subjectsData: [], //开票科目数据
       subjectsData: [], //开票科目数据
       invoice_typeData: [], //发票类型数据
       invoice_typeData: [], //发票类型数据
+      fundFlowData: [], //资金用途字典数据
       use_fundsData: [], //备注数据
       use_fundsData: [], //备注数据
       payment_methodsData: [], //支付方式数据
       payment_methodsData: [], //支付方式数据
       title: "开票新增",
       title: "开票新增",
       loading: true,
       loading: true,
       detailDialog: false,
       detailDialog: false,
-      operationWidth: 100, //操作列宽度
+      operationWidth: 200, //操作列宽度
       queryFrom: {
       queryFrom: {
         //查询条件
         //查询条件
       },
       },
@@ -357,57 +429,67 @@ export default {
         { prop: "invoiceId", label: "发票号码", type: "text", minWidth: 160 },
         { prop: "invoiceId", label: "发票号码", type: "text", minWidth: 160 },
         { prop: "invoiceNum", label: "发票数", type: "text", minWidth: 60 },
         { prop: "invoiceNum", label: "发票数", type: "text", minWidth: 60 },
         { prop: "invoiceBy", label: "开票方", type: "text", minWidth: 180 },
         { prop: "invoiceBy", label: "开票方", type: "text", minWidth: 180 },
-        { prop: "otherUnit", label: "对方单位名称", type: "text", minWidth: 180 },
+        {
+          prop: "otherUnit",
+          label: "对方单位名称",
+          type: "text",
+          minWidth: 180,
+        },
         {
         {
           prop: "invoiceTypeName",
           prop: "invoiceTypeName",
           label: "发票类型",
           label: "发票类型",
           type: "text",
           type: "text",
-          minWidth: 80
+          minWidth: 80,
         },
         },
         {
         {
           prop: "invoiceMoney",
           prop: "invoiceMoney",
           label: "开票金额",
           label: "开票金额",
           type: "text",
           type: "text",
-          minWidth: 100
+          minWidth: 100,
         },
         },
-        { prop: "invoiceTime", label: "开票日期", type: "text",minWidth: 100 },
+        { prop: "invoiceTime", label: "开票日期", type: "text", minWidth: 100 },
         {
         {
           prop: "payoutTime",
           prop: "payoutTime",
           label: "进账日期",
           label: "进账日期",
           type: "text",
           type: "text",
-          minWidth: 100
+          minWidth: 100,
+        },
+        { prop: "biller", label: "开票员", type: "text", minWidth: 70 },
+        {
+          prop: "invoiceSubjects",
+          label: "开票科目",
+          type: "text",
+          minWidth: 120,
         },
         },
-        { prop: "biller", label: "开票员", type: "text",minWidth: 70 },
-        { prop: "invoiceSubjects", label: "开票科目", type: "text",minWidth: 120 },
         {
         {
           prop: "payoutMoney",
           prop: "payoutMoney",
           label: "进账金额",
           label: "进账金额",
           type: "text",
           type: "text",
-          minWidth: 100
+          minWidth: 100,
         },
         },
         {
         {
           prop: "notPayoutMoney",
           prop: "notPayoutMoney",
           label: "未进账金额",
           label: "未进账金额",
           type: "text",
           type: "text",
-          minWidth: 100
+          minWidth: 100,
         },
         },
         {
         {
           prop: "rate",
           prop: "rate",
           label: "税率(%)",
           label: "税率(%)",
           type: "text",
           type: "text",
-          minWidth: 70
+          minWidth: 70,
         },
         },
         {
         {
           prop: "tax",
           prop: "tax",
           label: "税额",
           label: "税额",
           type: "text",
           type: "text",
-          minWidth: 100
+          minWidth: 100,
         },
         },
         {
         {
           prop: "noHasTax",
           prop: "noHasTax",
           label: "不含税金额",
           label: "不含税金额",
           type: "text",
           type: "text",
-          minWidth: 100
+          minWidth: 100,
         },
         },
       ],
       ],
       detailData: [],
       detailData: [],
@@ -424,15 +506,17 @@ export default {
         invoiceMoney: "", //开票金额
         invoiceMoney: "", //开票金额
         invoiceNum: 1, //发票数
         invoiceNum: 1, //发票数
         invoiceSubjects: "", //开票科目
         invoiceSubjects: "", //开票科目
+        invoiceSubjects1: "", //开票科目
+        invoiceSubjects2: "", //开票科目
         invoiceTime: "", //开票日期
         invoiceTime: "", //开票日期
         invoiceType: "", //发票类型
         invoiceType: "", //发票类型
-        notPayoutMoney: 0, //未进账金额
         otherUnit: "", //对方单位
         otherUnit: "", //对方单位
         payoutMoney: 0, //进账金额
         payoutMoney: 0, //进账金额
         payoutTime: "", //进账日期
         payoutTime: "", //进账日期
         rate: 0, //税率
         rate: 0, //税率
         remark: "", //备注
         remark: "", //备注
         payMethod: [], //支付方式
         payMethod: [], //支付方式
+        fundUse: "", //资金用途
       },
       },
       rules: {
       rules: {
         //内部表单规则
         //内部表单规则
@@ -445,15 +529,15 @@ export default {
         invoiceNum: [
         invoiceNum: [
           { required: true, message: "发票数不能为空", trigger: "blur" },
           { required: true, message: "发票数不能为空", trigger: "blur" },
         ],
         ],
-        invoiceSubjects: [
+        invoiceSubjects1: [
+          { required: true, message: "开票科目不能为空", trigger: "change" },
+        ],
+        invoiceSubjects2: [
           { required: true, message: "开票科目不能为空", trigger: "change" },
           { required: true, message: "开票科目不能为空", trigger: "change" },
         ],
         ],
         invoiceType: [
         invoiceType: [
           { required: true, message: "请选择发票类型", trigger: "blur" },
           { required: true, message: "请选择发票类型", trigger: "blur" },
         ],
         ],
-        notPayoutMoney: [
-          { required: true, message: "未进账金额不能为空", trigger: "blur" },
-        ],
         otherUnit: [
         otherUnit: [
           { required: true, message: "对方单位不能为空", trigger: "blur" },
           { required: true, message: "对方单位不能为空", trigger: "blur" },
         ],
         ],
@@ -465,6 +549,9 @@ export default {
         payMethod: [
         payMethod: [
           { required: true, message: "请选择支付方式", trigger: "change" },
           { required: true, message: "请选择支付方式", trigger: "change" },
         ],
         ],
+        fundUse: [
+          { required: true, message: "请选择资金用途", trigger: "change" },
+        ],
         payoutTime: [
         payoutTime: [
           {
           {
             required: true,
             required: true,
@@ -480,7 +567,8 @@ export default {
           },
           },
         ],
         ],
       },
       },
-      collectionData: [], //所以内部账户信息列表
+      collectionData: [], //所有内部账户信息列表
+      allCollectionData: [], //所有账户信息列表
       formDataId: "", //编辑数据id
       formDataId: "", //编辑数据id
     };
     };
   },
   },
@@ -496,7 +584,6 @@ export default {
           invoiceSubjects: "", //开票科目
           invoiceSubjects: "", //开票科目
           invoiceTime: "", //开票日期
           invoiceTime: "", //开票日期
           invoiceType: "", //发票类型
           invoiceType: "", //发票类型
-          notPayoutMoney: 0, //未进账金额
           otherUnit: "", //对方单位
           otherUnit: "", //对方单位
           payoutMoney: 0, //进账金额
           payoutMoney: 0, //进账金额
           payoutTime: "", //进账日期
           payoutTime: "", //进账日期
@@ -512,6 +599,12 @@ export default {
     },
     },
   },
   },
   methods: {
   methods: {
+    //获取资金用途树数据
+    getTreeList() {
+      this.$api.expense.getAccountExpensesTreeList().then((res) => {
+        this.fundFlowData = res.data;
+      });
+    },
     //撤销开票数据
     //撤销开票数据
     handleTableDelete(index) {
     handleTableDelete(index) {
       let row = index.row;
       let row = index.row;
@@ -543,8 +636,8 @@ export default {
       this.$api.expense.getAccountByAccountName().then((res) => {
       this.$api.expense.getAccountByAccountName().then((res) => {
         if (res.code == 200) {
         if (res.code == 200) {
           let arr = [];
           let arr = [];
-          let outArr = res.data.filter((item) => item.outerFlag == 0);
-          outArr.forEach((item, index) => {
+
+          res.data.forEach((item, index) => {
             if (item.invAccountCardList != null) {
             if (item.invAccountCardList != null) {
               item.invAccountCardList.forEach((it) => {
               item.invAccountCardList.forEach((it) => {
                 it = { ...it, ...item };
                 it = { ...it, ...item };
@@ -564,7 +657,9 @@ export default {
               });
               });
             }
             }
           });
           });
-          this.collectionData = arr;
+          let outArr = arr.filter((item) => item.outerFlag == 0);
+          this.allCollectionData = arr;
+          this.collectionData = outArr;
         }
         }
       });
       });
     },
     },
@@ -592,17 +687,18 @@ export default {
     //新增编辑开票信息
     //新增编辑开票信息
     submitInfo() {
     submitInfo() {
       let params = JSON.parse(JSON.stringify(this.formData));
       let params = JSON.parse(JSON.stringify(this.formData));
-      params.invoiceBy = this.formData.invoiceBy.accountName; //开票方
-      params.payMethod = params.payMethod.join(","); //支付方式
-      params.bigApplyAmount = toChies(params.invoiceMoney); //大写金额
-      params.company = params.otherUnit; //单位
-      params.fundFlow =
-        params.otherUnit + "→" + this.formData.invoiceBy.nameValue; //资金流向
       this.$refs.formData.validate((valid) => {
       this.$refs.formData.validate((valid) => {
         if (valid) {
         if (valid) {
           if (this.formDataId) {
           if (this.formDataId) {
-            params.invoiceId = this.formDataId;
-            this.$api.expense.putInvAccountIncoice(params).then((res) => {
+            let obj = {
+              invoiceId: this.formDataId, //id
+              payoutMoney: this.formData.payoutMoney, //进账金额
+              fundFlow:
+                params.otherUnit + "→" + this.formData.invoiceBy.nameValue, //资金流向
+              payMethod: params.payMethod.join(","), //支付方式
+              fundUse: params.fundUse[params.fundUse.length - 1], //资金用途
+            };
+            this.$api.expense.putInvAccountIncoice(obj).then((res) => {
               if (res.code == 200) {
               if (res.code == 200) {
                 this.detailDialog = false;
                 this.detailDialog = false;
                 this.findPage();
                 this.findPage();
@@ -611,6 +707,12 @@ export default {
               }
               }
             });
             });
           } else {
           } else {
+            params.invoiceBy = this.formData.invoiceBy.accountName; //开票方
+            params.bigApplyAmount = toChies(params.invoiceMoney); //大写金额
+            params.invoiceSubjects =
+              params.invoiceSubjects1 + "*" + params.invoiceSubjects2; //开票科目
+            params.otherUnit = params.otherUnit.nameValue; //对方单位名称
+            params.company = params.otherUnit; //单位
             this.$api.expense.addInvAccountIncoice(params).then((res) => {
             this.$api.expense.addInvAccountIncoice(params).then((res) => {
               if (res.code == 200) {
               if (res.code == 200) {
                 this.detailDialog = false;
                 this.detailDialog = false;
@@ -706,6 +808,14 @@ export default {
               totalPages: res.data.pages,
               totalPages: res.data.pages,
               totalSize: res.data.total,
               totalSize: res.data.total,
             };
             };
+            this.allNumObj = {
+              invoiceMoneySum: res.data.invoiceMoneySum,
+              invoiceNumSum: res.data.invoiceNumSum,
+              noHasTaxSum: res.data.noHasTaxSum,
+              notPayoutMoneySum: res.data.notPayoutMoneySum,
+              payoutMoneySum: res.data.payoutMoneySum,
+              taxSum: res.data.taxSum,
+            };
             this.loading = false;
             this.loading = false;
           } else {
           } else {
             this.$message.error(res.msg);
             this.$message.error(res.msg);
@@ -766,7 +876,8 @@ export default {
 .el-date-editor--daterange.el-input__inner {
 .el-date-editor--daterange.el-input__inner {
   width: 300px;
   width: 300px;
 }
 }
-/deep/ .el-select--small {
+.data_form >>> .el-select--small,
+.data_form >>> .el-cascader--small {
   width: 100%;
   width: 100%;
 }
 }
 .frame {
 .frame {
@@ -783,9 +894,8 @@ export default {
   -webkit-box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
   -webkit-box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
   box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
   box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
 }
 }
-/deep/ .el-dialog__body {
+.dialog__body {
   height: 450px;
   height: 450px;
-  /* overflow-y: auto; */
 }
 }
 .addremove-box {
 .addremove-box {
   width: 100%;
   width: 100%;
@@ -798,7 +908,7 @@ export default {
 .addremove-box > i {
 .addremove-box > i {
   cursor: pointer;
   cursor: pointer;
 }
 }
-.frame >>> .el-date-editor {
+.data_form >>> .el-date-editor {
   width: 100%;
   width: 100%;
 }
 }
 .detailtTable >>> .bottomFixed {
 .detailtTable >>> .bottomFixed {
@@ -811,8 +921,11 @@ export default {
 .detailtTable >>> .el-dialog {
 .detailtTable >>> .el-dialog {
   margin-top: 10vh !important;
   margin-top: 10vh !important;
 }
 }
-.frame >>> .el-input-number--small {
+.data_form >>> .el-input-number--small {
   width: 100%;
   width: 100%;
 }
 }
+.invoic >>> .el-input {
+  width: auto;
+}
 </style>
 </style>
         
         

+ 24 - 2
src/views/FinancialManagement/ExpenseManagement/TransferRecord.vue

@@ -14,6 +14,22 @@
             <el-option label="支出" value="1"></el-option>
             <el-option label="支出" value="1"></el-option>
           </el-select>
           </el-select>
         </el-form-item>
         </el-form-item>
+        <el-form-item label="资金用途" label-width="95px" prop="fundUse">
+          <el-input
+            v-model="pageRequest.fundUse"
+            placeholder="请输入资金用途"
+            class=""
+            clearable
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="支出单位" label-width="95px" prop="company">
+          <el-input
+            v-model="pageRequest.company"
+            placeholder="请输入支出单位"
+            class=""
+            clearable
+          ></el-input>
+        </el-form-item>
         <el-form-item>
         <el-form-item>
           <el-button type="primary" size="small" @click="queryStaffInfo"
           <el-button type="primary" size="small" @click="queryStaffInfo"
             >查询</el-button
             >查询</el-button
@@ -84,8 +100,14 @@ export default {
         },
         },
         { prop: "applyAmount", label: "金额", minWidth: 150, sortable: false },
         { prop: "applyAmount", label: "金额", minWidth: 150, sortable: false },
         {
         {
-          prop: "bigApplyAmount",
-          label: "大写金额",
+          prop: "fundUse",
+          label: "资金用途",
+          minWidth: 150,
+          sortable: false,
+        },
+        {
+          prop: "remark",
+          label: "备注",
           minWidth: 150,
           minWidth: 150,
           sortable: false,
           sortable: false,
         },
         },

+ 4 - 1
src/views/FinancialManagement/InsuranceData/InsuranceDataExport.vue

@@ -55,7 +55,6 @@
     methods: {
     methods: {
         // 导出excel
         // 导出excel
 	  handlePrint(){
 	  handlePrint(){
-        console.log(this.queryForm.date)
         if(this.queryForm.date!=null){
         if(this.queryForm.date!=null){
             this.queryForm.startDate=this.queryForm.date[0]
             this.queryForm.startDate=this.queryForm.date[0]
             this.queryForm.endDate=this.queryForm.date[1]
             this.queryForm.endDate=this.queryForm.date[1]
@@ -69,6 +68,7 @@
             startDate:this.queryForm.startDate
             startDate:this.queryForm.startDate
         }
         }
         this.$api.letter.orderExportExcel(params).then(res=>{
         this.$api.letter.orderExportExcel(params).then(res=>{
+          if(res.code==200){
             let url = process.env.BASE_URL+'/upload/'+res.data // 3.创建一个临时的url指向blob对象
             let url = process.env.BASE_URL+'/upload/'+res.data // 3.创建一个临时的url指向blob对象
             // 4.创建url之后可以模拟对此文件对象的一系列操作,例如:预览、下载
             // 4.创建url之后可以模拟对此文件对象的一系列操作,例如:预览、下载
             let a = document.createElement("a");
             let a = document.createElement("a");
@@ -77,6 +77,9 @@
             a.click();
             a.click();
             // 5.释放这个临时的对象url
             // 5.释放这个临时的对象url
             window.URL.revokeObjectURL(url);					
             window.URL.revokeObjectURL(url);					
+          }else{
+            this.$message.error(res.msg)
+          }
 	  	})
 	  	})
 	  },
 	  },
     },
     },

+ 38 - 40
src/views/FinancialManagement/ReconciliationSystem/ReceivablePayableCollection/ReceivablePayableCollection.vue

@@ -67,6 +67,14 @@
               </el-select>
               </el-select>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
+          <el-col :span="6">
+            <el-form-item label="保司结算状态">
+              <el-select v-model="pageRequest.insuranceClearingState" placeholder="请选择状态" class="widths">
+                <el-option label="未结算" value="0"></el-option>
+                <el-option label="已结算" value="1"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
           <el-col :span="6">
           <el-col :span="6">
             <el-form-item label="保险公司">
             <el-form-item label="保险公司">
               <el-select
               <el-select
@@ -126,15 +134,6 @@
           style="margin-right: 20px"
           style="margin-right: 20px"
           >查询</el-button
           >查询</el-button
         >
         >
-        <el-upload
-          class="upload-demo"
-          :auto-upload="false"
-          :on-change="writeOffUpload"
-          action="###"
-          :show-file-list="false"
-        >
-          <el-button size="small" type="primary">数据导入</el-button>
-        </el-upload>
       </div>
       </div>
     </div>
     </div>
     <el-main ref="elMain" style="padding: 0px">
     <el-main ref="elMain" style="padding: 0px">
@@ -145,7 +144,7 @@
         permsDelete="sys:user:delete"
         permsDelete="sys:user:delete"
         :showBatchDelete="false"
         :showBatchDelete="false"
         :showBatchSettled="false"
         :showBatchSettled="false"
-        :showBatchPrint="false"
+        :showBatchPrint="true"
         permsButton1="sys:user:edit"
         permsButton1="sys:user:edit"
         permsButton2="sys:user:edit"
         permsButton2="sys:user:edit"
         permsButton3="sys:user:edit"
         permsButton3="sys:user:edit"
@@ -183,6 +182,7 @@ export default {
         channel: "", //渠道
         channel: "", //渠道
         channelClassification: "", //渠道分类
         channelClassification: "", //渠道分类
         clearingState: "", //结算状态
         clearingState: "", //结算状态
+        insuranceClearingState:"",//保司结算状态
         insuranceDeptId:"",//
         insuranceDeptId:"",//
         insuranceId: "", //保险公司
         insuranceId: "", //保险公司
         insuredName: "",
         insuredName: "",
@@ -199,38 +199,38 @@ export default {
         { prop: "channel", label: "渠道", minWidth: 100 },
         { prop: "channel", label: "渠道", minWidth: 100 },
         { prop: "licenseNo", label: "车牌号", minWidth: 160 },
         { prop: "licenseNo", label: "车牌号", minWidth: 160 },
         { prop: "insuredName", label: "被保险人", minWidth: 160 },
         { prop: "insuredName", label: "被保险人", minWidth: 160 },
-        { prop: "insuranceId", label: "保险id", minWidth: 160 },
-        { prop: "insuranceCompany", label: "保险公司", minWidth: 160 },
-        { prop: "insuranceDeptId", label: "部门id", minWidth: 160 },
-        { prop: "insuranceDept", label: "保险部门", minWidth: 160 },
+        { prop: "insuranceId", label: "保司编码", minWidth: 160 },
+        { prop: "insuranceCompany", label: "保司名称", minWidth: 160 },
+        { prop: "insuranceDeptId", label: "保司机构代码", minWidth: 160 },
+        { prop: "insuranceDept", label: "保司机构", minWidth: 160 },
         { prop: "insuranceType", label: "险种", minWidth: 160 },
         { prop: "insuranceType", label: "险种", minWidth: 160 },
-        { prop: "businessOwner", label: "业务所有者", minWidth: 160 },
+        { prop: "businessOwner", label: "业务归属", minWidth: 160 },
         { prop: "jqPolicyId", label: "交强保单号", minWidth: 160 },
         { prop: "jqPolicyId", label: "交强保单号", minWidth: 160 },
-        { prop: "jqPremiumTax", label: "交强险税额", minWidth: 160 },
-        { prop: "jqPremium", label: "交强险保费", minWidth: 160 },
+        { prop: "jqPremiumTax", label: "交强险保费", minWidth: 160 },
+        { prop: "jqPremium", label: "交强险不含税保费", minWidth: 160 },
         { prop: "syPolicyId", label: "商业保单号", minWidth: 160 },
         { prop: "syPolicyId", label: "商业保单号", minWidth: 160 },
-        { prop: "syPremiumTax", label: "商业险税额", minWidth: 160 },
-        { prop: "syPremium", label: "商业险保费", minWidth: 160 },
+        { prop: "syPremiumTax", label: "商业险保费", minWidth: 160 },
+        { prop: "syPremium", label: "商业险不含税保费", minWidth: 160 },
         { prop: "nonCarPolicyId", label: "非车保单号", minWidth: 160 },
         { prop: "nonCarPolicyId", label: "非车保单号", minWidth: 160 },
-        { prop: "nonCarPremiumTax", label: "非车险税额", minWidth: 160 },
-        { prop: "nonCarPremium", label: "非车险保费", minWidth: 160 },
+        { prop: "nonCarPremiumTax", label: "非车险保费", minWidth: 160 },
+        { prop: "nonCarPremium", label: "非车险不含税保费", minWidth: 160 },
         { prop: "agencySettlementTime", label: "代理结算时间", minWidth: 160 },
         { prop: "agencySettlementTime", label: "代理结算时间", minWidth: 160 },
-        { prop: "taxAmount", label: "税", minWidth: 160 },
+        { prop: "taxAmount", label: "车船税", minWidth: 160 },
         { prop: "jqReceivableRatio", label: "交强险应收比例", minWidth: 160 },
         { prop: "jqReceivableRatio", label: "交强险应收比例", minWidth: 160 },
-        { prop: "jqPremiumRatio", label: "交强险费比例", minWidth: 160 },
-        { prop: "jqNonCopyingRatio", label: "交强险非复制比例", minWidth: 160 },
+        { prop: "jqPremiumRatio", label: "交强险手续费比例", minWidth: 160 },
+        { prop: "jqNonCopyingRatio", label: "交强险非跟单比例", minWidth: 160 },
         { prop: "syReceivableRatio", label: "商业险应收比例", minWidth: 160 },
         { prop: "syReceivableRatio", label: "商业险应收比例", minWidth: 160 },
-        { prop: "syPremiumRatio", label: "商业险费比例", minWidth: 160 },
-        { prop: "syNonCopyingRatio", label: "商业险非复制比例", minWidth: 160 },
+        { prop: "syPremiumRatio", label: "商业险手续费比例", minWidth: 160 },
+        { prop: "syNonCopyingRatio", label: "商业险非跟单比例", minWidth: 160 },
         {
         {
           prop: "nonCarReceivableRatio",
           prop: "nonCarReceivableRatio",
           label: "非车险应收比例",
           label: "非车险应收比例",
           minWidth: 160,
           minWidth: 160,
         },
         },
-        { prop: "nonCarPremiumRatio", label: "非车险费比例", minWidth: 160 },
+        { prop: "nonCarPremiumRatio", label: "非车险手续费比例", minWidth: 160 },
         {
         {
           prop: "nonCarNonCopyingRatio",
           prop: "nonCarNonCopyingRatio",
-          label: "非车险非复制比例",
+          label: "非车险非跟单比例",
           minWidth: 160,
           minWidth: 160,
         },
         },
         { prop: "premium", label: "手续费金额", minWidth: 160 },
         { prop: "premium", label: "手续费金额", minWidth: 160 },
@@ -240,20 +240,24 @@ export default {
         { prop: "subsidyAmount", label: "补贴金额", minWidth: 160 },
         { prop: "subsidyAmount", label: "补贴金额", minWidth: 160 },
         {
         {
           prop: "maxJqReceivableRatio",
           prop: "maxJqReceivableRatio",
-          label: "最大交强险应比例",
+          label: "最大交强险应比例",
           minWidth: 160,
           minWidth: 160,
         },
         },
         {
         {
           prop: "maxSyReceivableRatio",
           prop: "maxSyReceivableRatio",
-          label: "最大商业险应比例",
+          label: "最大商业险应比例",
           minWidth: 160,
           minWidth: 160,
         },
         },
         {
         {
           prop: "maxNonCarReceivableRatio",
           prop: "maxNonCarReceivableRatio",
-          label: "最大非车险应比例",
+          label: "最大非车险应比例",
           minWidth: 160,
           minWidth: 160,
         },
         },
+        { prop: "maxReceivable", label: "最大应付金额", minWidth: 160 },
+        { prop: "totalReceivableAmount", label: "总应收金额", minWidth: 160 },
+        { prop: "settlementAmount", label: "结算金额", minWidth: 160 },
         { prop: "clearingState", label: "结算状态", minWidth: 160 },
         { prop: "clearingState", label: "结算状态", minWidth: 160 },
+        { prop: "insuranceClearingState", label: "保司结算状态", minWidth: 160 },
       ],
       ],
       row: {},
       row: {},
       companyList: [],
       companyList: [],
@@ -332,16 +336,12 @@ export default {
       });
       });
     },
     },
     handlePrint() {
     handlePrint() {
-      this.$api.task.excelExport(this.pageRequest).then((res) => {
-        console.log(res);
-        let blob = new Blob([res], {
-          type: "application/vnd.ms-excel",
-        }); // 2.获取请求返回的response对象中的blob 设置文件类型,这里以excel为例
-        let url = window.URL.createObjectURL(blob); // 3.创建一个临时的url指向blob对象
+      this.$api.task.excelReceivableAndSettlementExport(this.pageRequest).then((res) => {
+        let url = process.env.BASE_URL + res.msg;
         // 4.创建url之后可以模拟对此文件对象的一系列操作,例如:预览、下载
         // 4.创建url之后可以模拟对此文件对象的一系列操作,例如:预览、下载
         let a = document.createElement("a");
         let a = document.createElement("a");
         a.href = url;
         a.href = url;
-        a.download = "手续费管理清单.xlsx";
+        a.download = "应收应付表.xlsx";
         a.click();
         a.click();
         // 5.释放这个临时的对象url
         // 5.释放这个临时的对象url
         window.URL.revokeObjectURL(url);
         window.URL.revokeObjectURL(url);
@@ -349,7 +349,6 @@ export default {
     },
     },
     //联级选择器触发事件
     //联级选择器触发事件
     handleChange(val) {
     handleChange(val) {
-      console.log(val);
       if (val.length !== 0) {
       if (val.length !== 0) {
         this.pageRequest.deptId = val.at(-1);
         this.pageRequest.deptId = val.at(-1);
       } else {
       } else {
@@ -364,7 +363,6 @@ export default {
       that.$api.dict
       that.$api.dict
         .findByLableName(typeName)
         .findByLableName(typeName)
         .then(function (res) {
         .then(function (res) {
-          console.log(res);
           that[typeName + "options"] = res.data; // 把获取到的数据赋给this.data
           that[typeName + "options"] = res.data; // 把获取到的数据赋给this.data
         })
         })
         .catch(function (error) {
         .catch(function (error) {

+ 35 - 27
src/views/FinancialManagement/ReconciliationSystem/ReceivablePayableCollection/SettlementSource.vue

@@ -45,22 +45,7 @@
               </el-select>
               </el-select>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
-          <el-col :span="6">
-            <el-form-item label="签单日期">
-              <el-date-picker
-                v-model="signDateTime"
-                type="daterange"
-                @change="signDateChange"
-                start-placeholder="开始日期"
-                end-placeholder="结束日期"
-                class="widths"
-                value-format="yyyy-MM-dd"
-                style="width: 220px"
-                clearable
-              >
-              </el-date-picker>
-            </el-form-item>
-          </el-col>
+
           <el-col :span="6">
           <el-col :span="6">
             <el-form-item label="交强保单号:">
             <el-form-item label="交强保单号:">
               <el-input
               <el-input
@@ -91,6 +76,22 @@
               ></el-input>
               ></el-input>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
+          <el-col :span="6">
+            <el-form-item label="签单日期">
+              <el-date-picker
+                v-model="signDateTime"
+                type="daterange"
+                @change="signDateChange"
+                start-placeholder="开始日期"
+                end-placeholder="结束日期"
+                class="widths"
+                value-format="yyyy-MM-dd"
+                style="width: 220px"
+                clearable
+              >
+              </el-date-picker>
+            </el-form-item>
+          </el-col>
         </el-row>
         </el-row>
       </el-form>
       </el-form>
       <div class="flex j-end" style="margin-right: 100px">
       <div class="flex j-end" style="margin-right: 100px">
@@ -120,7 +121,7 @@
         permsDelete="sys:user:delete"
         permsDelete="sys:user:delete"
         :showBatchDelete="false"
         :showBatchDelete="false"
         :showBatchSettled="false"
         :showBatchSettled="false"
-        :showBatchPrint="false"
+        :showBatchPrint="true"
         permsButton1="sys:user:edit"
         permsButton1="sys:user:edit"
         permsButton2="sys:user:edit"
         permsButton2="sys:user:edit"
         permsButton3="sys:user:edit"
         permsButton3="sys:user:edit"
@@ -330,7 +331,20 @@ export default {
       this.$api.letter.uploadFile(params).then((res) => {
       this.$api.letter.uploadFile(params).then((res) => {
         if (res.code == "200") {
         if (res.code == "200") {
           let url = process.env.BASE_URL + res.data.url;
           let url = process.env.BASE_URL + res.data.url;
-          this.$api.task.settlementExcel(url).then((res) => {});
+          this.$api.task.settlementExcel(url).then((res) => {
+            if (res.code == "200") {
+              this.$message({
+                type: "success",
+                message: res.msg,
+              });
+              this.findPage();
+            } else {
+              this.$message({
+                type: "error",
+                message: res.msg,
+              });
+            }
+          });
         }
         }
       });
       });
     },
     },
@@ -364,16 +378,12 @@ export default {
     },
     },
 
 
     handlePrint() {
     handlePrint() {
-      this.$api.task.excelExport(this.pageRequest).then((res) => {
-        console.log(res);
-        let blob = new Blob([res], {
-          type: "application/vnd.ms-excel",
-        }); // 2.获取请求返回的response对象中的blob 设置文件类型,这里以excel为例
-        let url = window.URL.createObjectURL(blob); // 3.创建一个临时的url指向blob对象
+      this.$api.task.SettlementExport(this.pageRequest).then((res) => {
+        let url = process.env.BASE_URL + res.msg;
         // 4.创建url之后可以模拟对此文件对象的一系列操作,例如:预览、下载
         // 4.创建url之后可以模拟对此文件对象的一系列操作,例如:预览、下载
         let a = document.createElement("a");
         let a = document.createElement("a");
         a.href = url;
         a.href = url;
-        a.download = "手续费管理清单.xlsx";
+        a.download = "结算来源表.xlsx";
         a.click();
         a.click();
         // 5.释放这个临时的对象url
         // 5.释放这个临时的对象url
         window.URL.revokeObjectURL(url);
         window.URL.revokeObjectURL(url);
@@ -381,7 +391,6 @@ export default {
     },
     },
     //联级选择器触发事件
     //联级选择器触发事件
     handleChange(val) {
     handleChange(val) {
-      console.log(val);
       if (val.length !== 0) {
       if (val.length !== 0) {
         this.pageRequest.deptId = val.at(-1);
         this.pageRequest.deptId = val.at(-1);
       } else {
       } else {
@@ -425,7 +434,6 @@ export default {
       that.$api.dict
       that.$api.dict
         .findByLableName(typeName)
         .findByLableName(typeName)
         .then(function (res) {
         .then(function (res) {
-          console.log(res);
           that[typeName + "options"] = res.data; // 把获取到的数据赋给this.data
           that[typeName + "options"] = res.data; // 把获取到的数据赋给this.data
         })
         })
         .catch(function (error) {
         .catch(function (error) {

+ 161 - 58
src/views/FinancialManagement/ReconciliationSystem/ReceivablePayableCollection/Source.vue

@@ -55,6 +55,37 @@
               ></el-input>
               ></el-input>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
+
+          <el-col :span="6">
+            <el-form-item label="结算日期">
+              <el-date-picker
+                v-model="clearingTime"
+                type="daterange"
+                @change="clearingTimeChange"
+                start-placeholder="开始日期"
+                end-placeholder="结束日期"
+                value-format="yyyy-MM-dd"
+                clearable
+                style="width: 250px"
+              >
+              </el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :span="6">
+            <el-form-item label="出单日期">
+              <el-date-picker
+                v-model="signingTime"
+                type="daterange"
+                @change="signingTimeChange"
+                start-placeholder="开始日期"
+                end-placeholder="结束日期"
+                value-format="yyyy-MM-dd"
+                style="width: 250px"
+                clearable
+              >
+              </el-date-picker>
+            </el-form-item>
+          </el-col>
           <el-col :span="6">
           <el-col :span="6">
             <el-form-item label="交强保单号">
             <el-form-item label="交强保单号">
               <el-input
               <el-input
@@ -86,35 +117,15 @@
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
           <el-col :span="6">
           <el-col :span="6">
-            <el-form-item label="结算日期">
-              <el-date-picker
-                v-model="clearingTime"
-                type="daterange"
-                @change="clearingTimeChange"
-                start-placeholder="开始日期"
-                end-placeholder="结束日期"
-                class="widths"
-                value-format="yyyy-MM-dd"
-                style="width: 220px"
-                clearable
-              >
-              </el-date-picker>
-            </el-form-item>
-          </el-col>
-          <el-col :span="6">
-            <el-form-item label="出单日期">
-              <el-date-picker
-                v-model="signingTime"
-                type="daterange"
-                @change="signingTimeChange"
-                start-placeholder="开始日期"
-                end-placeholder="结束日期"
+            <el-form-item label="保司结算状态">
+              <el-select
+                v-model="pageRequest.insuranceClearingState"
+                placeholder="请选择状态"
                 class="widths"
                 class="widths"
-                value-format="yyyy-MM-dd"
-                style="width: 220px"
-                clearable
               >
               >
-              </el-date-picker>
+                <el-option label="未结算" value="0"></el-option>
+                <el-option label="已结算" value="1"></el-option>
+              </el-select>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
         </el-row>
         </el-row>
@@ -144,19 +155,20 @@
         :operationWidth="150"
         :operationWidth="150"
         :showOperation="true"
         :showOperation="true"
         permsDelete="sys:user:delete"
         permsDelete="sys:user:delete"
-        :showBatchDelete="false"
-        :showBatchSettled="false"
-        :showBatchPrint="false"
+        :showBatchDelete="true"
+        :showBatchSettled="true"
+        :showBatchPrint="true"
         permsButton1="sys:user:edit"
         permsButton1="sys:user:edit"
         permsButton2="sys:user:edit"
         permsButton2="sys:user:edit"
         permsButton3="sys:user:edit"
         permsButton3="sys:user:edit"
         :data="pageResult"
         :data="pageResult"
         :columns="columns"
         :columns="columns"
         @findPage="findPage"
         @findPage="findPage"
-        keyName="policyno"
-        settledName="批量生成"
+        keyName="id"
+        settledName="批量修改"
         @handleSettled="handleTableSettled"
         @handleSettled="handleTableSettled"
         @handlePrint="handlePrint"
         @handlePrint="handlePrint"
+        @handleDelete="handleDelete"
         button1Name="修改"
         button1Name="修改"
         button1Background="#E6A23C"
         button1Background="#E6A23C"
         @handleButton1="sourceUpdate"
         @handleButton1="sourceUpdate"
@@ -234,6 +246,16 @@
             class="widths"
             class="widths"
           ></el-input>
           ></el-input>
         </el-form-item>
         </el-form-item>
+        <el-form-item label="保司结算状态:">
+          <el-select
+            v-model="updateform.insuranceClearingState"
+            placeholder="请选择状态"
+            class="widths"
+          >
+            <el-option label="未结算" value="0"></el-option>
+            <el-option label="已结算" value="1"></el-option>
+          </el-select>
+        </el-form-item>
       </el-form>
       </el-form>
       <div slot="footer" class="dialog-footer">
       <div slot="footer" class="dialog-footer">
         <el-button size="small" @click="dialogFormVisible = false"
         <el-button size="small" @click="dialogFormVisible = false"
@@ -244,6 +266,25 @@
         >
         >
       </div>
       </div>
     </el-dialog>
     </el-dialog>
+    <el-dialog title="批量修改" :visible.sync="dialogUpdateVisible" width="20%">
+      <el-select
+        v-model="insuranceClearingState"
+        placeholder="请选择"
+        class="widths"
+        size="small"
+      >
+        <el-option label="未结算" value="0"></el-option>
+        <el-option label="已结算" value="1"></el-option>
+      </el-select>
+      <div slot="footer" class="dialog-footer">
+        <el-button size="small" @click="dialogUpdateVisible = false"
+          >取 消</el-button
+        >
+        <el-button size="small" type="primary" @click="BulkUpdate"
+          >确 定</el-button
+        >
+      </div>
+    </el-dialog>
   </div>
   </div>
 </template>
 </template>
 <script>
 <script>
@@ -255,8 +296,9 @@ export default {
   },
   },
   data() {
   data() {
     return {
     return {
-      clearingTime:[],
-      signingTime:[],
+      insuranceClearingState: "",
+      clearingTime: [],
+      signingTime: [],
       pageRequest: {
       pageRequest: {
         //查询的默认条件
         //查询的默认条件
         pageNum: 1,
         pageNum: 1,
@@ -270,7 +312,9 @@ export default {
         jqPolicyId: "", //交强保单号
         jqPolicyId: "", //交强保单号
         syPolicyId: "", //商业保单号
         syPolicyId: "", //商业保单号
         nonCarPolicyId: "", //非车保单号
         nonCarPolicyId: "", //非车保单号
+        insuranceClearingState: "",
       },
       },
+      dialogUpdateVisible: false,
       dialogFormVisible: false,
       dialogFormVisible: false,
       // 右侧列表查询数据Start
       // 右侧列表查询数据Start
       pageResult: [],
       pageResult: [],
@@ -284,7 +328,11 @@ export default {
         jqReceivableRatio: "",
         jqReceivableRatio: "",
         syReceivableRatio: "",
         syReceivableRatio: "",
         nonCarReceivableRatio: "",
         nonCarReceivableRatio: "",
+        insuranceClearingState: "",
       },
       },
+      row: {},
+      companyList: [],
+      UpdateList: [],
       columns: [
       columns: [
         //数据列
         //数据列
         { prop: "id", label: " 编号", minWidth: 160 },
         { prop: "id", label: " 编号", minWidth: 160 },
@@ -297,15 +345,15 @@ export default {
         { prop: "jqPremiumTax", label: "交强险保费", minWidth: 160 },
         { prop: "jqPremiumTax", label: "交强险保费", minWidth: 160 },
         {
         {
           prop: "jqPremium",
           prop: "jqPremium",
-          label: "交强险保费不含税",
+          label: "交强险不含税保费",
           minWidth: 160,
           minWidth: 160,
         },
         },
         { prop: "syPolicyId", label: "商业保单号", minWidth: 160 },
         { prop: "syPolicyId", label: "商业保单号", minWidth: 160 },
         { prop: "syPremiumTax", label: "商业险保费", minWidth: 160 },
         { prop: "syPremiumTax", label: "商业险保费", minWidth: 160 },
-        { prop: "syPremium", label: "商业险保费不含税", minWidth: 160 },
+        { prop: "syPremium", label: "商业险不含税保费", minWidth: 160 },
         { prop: "nonCarPolicyId", label: "非车保单号", minWidth: 160 },
         { prop: "nonCarPolicyId", label: "非车保单号", minWidth: 160 },
         { prop: "nonCarPremiumTax", label: "非车保费", minWidth: 160 },
         { prop: "nonCarPremiumTax", label: "非车保费", minWidth: 160 },
-        { prop: "nonCarPremium", label: "非车险保费不含税", minWidth: 160 },
+        { prop: "nonCarPremium", label: "非车险不含税保费", minWidth: 160 },
         { prop: "insuredName", label: "被保险人", minWidth: 160 },
         { prop: "insuredName", label: "被保险人", minWidth: 160 },
         { prop: "licenseno", label: "车牌号", minWidth: 160 },
         { prop: "licenseno", label: "车牌号", minWidth: 160 },
         { prop: "signingTime", label: "出单日期", minWidth: 160 },
         { prop: "signingTime", label: "出单日期", minWidth: 160 },
@@ -343,10 +391,20 @@ export default {
           minWidth: 160,
           minWidth: 160,
         },
         },
         { prop: "maxReceivable", label: "最大应付金额", minWidth: 160 },
         { prop: "maxReceivable", label: "最大应付金额", minWidth: 160 },
-        { prop: "clearingState", label: "结算状态", minWidth: 160 },
+        { prop: "subsidyRatio", label: "补贴比例", minWidth: 160 },
+        { prop: "subsidyAmount", label: "补贴金额", minWidth: 160 },
+        { prop: "totalReceivableAmount", label: "总应收金额", minWidth: 160 },
+        {
+          prop: "clearingState",
+          label: "结算状态",
+          minWidth: 160,
+        },
+        {
+          prop: "insuranceClearingState",
+          label: "保司结算状态",
+          minWidth: 160,
+        },
       ],
       ],
-      row: {},
-      companyList:[],
     };
     };
   },
   },
   created() {
   created() {
@@ -354,13 +412,11 @@ export default {
   },
   },
   mounted() {},
   mounted() {},
   methods: {
   methods: {
-    clearingTimeChange(e){
-      console.log(e)
-      this.pageRequest.clearingTime=e.toString();
+    clearingTimeChange(e) {
+      this.pageRequest.clearingTime = e.toString();
     },
     },
-    signingTimeChange(e){
-      this.pageRequest.signingTime=e.toString();
-
+    signingTimeChange(e) {
+      this.pageRequest.signingTime = e.toString();
     },
     },
     //保险公司查询
     //保险公司查询
     companyInt() {
     companyInt() {
@@ -383,6 +439,7 @@ export default {
                 type: "success",
                 type: "success",
                 message: res.msg,
                 message: res.msg,
               });
               });
+              this.findPage();
             } else {
             } else {
               this.$message({
               this.$message({
                 type: "error",
                 type: "error",
@@ -393,9 +450,61 @@ export default {
         }
         }
       });
       });
     },
     },
+    handleDelete(ids) {
+      this.$confirm("此操作将永久删除, 是否继续?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          this.$api.task.sourcedeletes(ids).then((res) => {
+            if (res.code == "200") {
+              this.$message({
+                type: "success",
+                message: "删除成功!",
+              });
+              this.findPage();
+            } else {
+              this.$message({
+                type: "error",
+                message: res.msg,
+              });
+            }
+          });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "已取消删除",
+          });
+        });
+    },
+    //批量修改
     handleTableSettled(ids) {
     handleTableSettled(ids) {
-      this.plyNoList = ids;
-      this.dialogVisible11 = true;
+      console.log(ids)
+      this.UpdateList = ids;
+      this.dialogUpdateVisible = true;
+    },
+    BulkUpdate() {
+      let params={
+        ids:this.UpdateList,
+        insuranceClearingState:this.insuranceClearingState,
+      }
+      this.$api.task.sourceUpdates(params).then((res) => {
+        if (res.code == "200") {
+          this.$message({
+            type: "success",
+            message: "修改成功!",
+          });
+          this.dialogUpdateVisible = false;
+          this.findPage();
+        } else {
+          this.$message({
+            type: "error",
+            message: res.msg,
+          });
+        }
+      });
     },
     },
     Search() {
     Search() {
       this.findPage();
       this.findPage();
@@ -422,16 +531,12 @@ export default {
       });
       });
     },
     },
     handlePrint() {
     handlePrint() {
-      this.$api.task.excelExport(this.pageRequest).then((res) => {
-        console.log(res);
-        let blob = new Blob([res], {
-          type: "application/vnd.ms-excel",
-        }); // 2.获取请求返回的response对象中的blob 设置文件类型,这里以excel为例
-        let url = window.URL.createObjectURL(blob); // 3.创建一个临时的url指向blob对象
+      this.$api.task.sourceExport(this.pageRequest).then((res) => {
+        let url = process.env.BASE_URL + res.msg;
         // 4.创建url之后可以模拟对此文件对象的一系列操作,例如:预览、下载
         // 4.创建url之后可以模拟对此文件对象的一系列操作,例如:预览、下载
         let a = document.createElement("a");
         let a = document.createElement("a");
         a.href = url;
         a.href = url;
-        a.download = "手续费管理清单.xlsx";
+        a.download = "应收来源表.xlsx";
         a.click();
         a.click();
         // 5.释放这个临时的对象url
         // 5.释放这个临时的对象url
         window.URL.revokeObjectURL(url);
         window.URL.revokeObjectURL(url);
@@ -439,7 +544,6 @@ export default {
     },
     },
     //联级选择器触发事件
     //联级选择器触发事件
     handleChange(val) {
     handleChange(val) {
-      console.log(val);
       if (val.length !== 0) {
       if (val.length !== 0) {
         this.pageRequest.deptId = val.at(-1);
         this.pageRequest.deptId = val.at(-1);
       } else {
       } else {
@@ -454,7 +558,6 @@ export default {
       that.$api.dict
       that.$api.dict
         .findByLableName(typeName)
         .findByLableName(typeName)
         .then(function (res) {
         .then(function (res) {
-          console.log(res);
           that[typeName + "options"] = res.data; // 把获取到的数据赋给this.data
           that[typeName + "options"] = res.data; // 把获取到的数据赋给this.data
         })
         })
         .catch(function (error) {
         .catch(function (error) {
@@ -482,7 +585,7 @@ export default {
 </script>
 </script>
 <style lang="scss" scoped>
 <style lang="scss" scoped>
 .widths {
 .widths {
-  width: 220px;
+  width: 250px;
 }
 }
 </style>
 </style>
 
 

File diff suppressed because it is too large
+ 591 - 214
src/views/Letter/Orderlist.vue


+ 291 - 0
src/views/Report/StatisticalReport/AccountsReceivableStatistics.vue

@@ -0,0 +1,291 @@
+<template>
+  <div class="page-container">
+    <div class="queryForm"  style="padding-top:10px;padding-left:15px;">
+      <el-form size="mini" ref="queryForm" :model="queryForm" label-width="120px">
+        <el-row>
+          <el-col :span="6" style="height: 40px;">
+              <el-form-item label="保险公司">
+                <el-cascader  style="width: 100%;" v-model="queryForm.companyId"
+                             :show-all-levels="false" :options="options" :props="optionProps"  clearable
+                              @change="handleChange"
+                             filterable></el-cascader>
+              </el-form-item>
+          </el-col>
+          <el-col :span="6" style="height: 40px;">
+            <el-form-item label="账单状态">
+              <el-select v-model="queryForm.status" placeholder="请选择" style="width: 100%;" clearable>
+                <el-option label="全部" value=""></el-option>
+                <el-option label="未核销" value="0"></el-option>
+                <el-option label="部分核销" value="1"></el-option>
+                <el-option label="已核销" value="2"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+
+          <el-col :span="12" style="height: 40px;">
+            <el-form-item label="结算单生成时间">
+              <el-date-picker v-model="quoteDate" style="width:100%" @change="changeQuoteDate" type="daterange" align="left" value-format="yyyy-MM-dd"
+                              range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"> </el-date-picker>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="2" class="u-f u-f-je" style="height: 40px;">
+            <el-button type="primary" icon="el-icon-arrow-left" size="mini" @click="returnUpper">返回上层</el-button>
+          </el-col>
+          <el-col :span="22" class="u-f u-f-je" style="height: 40px;">
+            <el-button type="primary" style="margin-right: 40px;" @click="queryData">查询</el-button>
+          </el-col>
+        </el-row>
+      </el-form>
+    </div>
+
+    <!-- 数据列表显示区域 -->
+    <el-table size="mini" border stripe :data="dataList" :height="clientHeight" v-loading="loading" :stripe="true"
+              :header-cell-style="{background:'#F2F7FC',fontWeight: '700',color:'#606266',textAlign: 'center'}"
+              :cell-style="{textAlign: 'center'}" style="width: 100%;margin-bottom: 60px;">
+      <el-table-column prop="companyName"   label="保险公司名称" width="180">
+        <template slot-scope="scope">
+          <i class="el-icon-paperclip"></i>
+          <span style="margin-left: 10px" @click="drillingData(scope.row)">{{ scope.row.companyName }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column prop="settleMonth"   label="账单属期" width="180"></el-table-column>
+      <el-table-column prop="commissionFeevalue"   label="手续费" width="180"></el-table-column>
+      <el-table-column prop="otherFeevalue"  label="跟单费" width="180"></el-table-column>
+      <el-table-column prop="status"  label="账单状态" width="180"></el-table-column>
+      <el-table-column prop="allFeeValue"  label="费用合计" width="180"></el-table-column>
+      <el-table-column   fixed="right" label="操作" width="180">
+        <template slot-scope="scope">
+          <el-button type="primary" size="small" @click="exportListExcel(scope.row)">本行清单导出</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    <!-- 底部分页 -->
+    <div class="bottomFixed">
+      <el-row>
+        <el-col :span="2">
+          <el-button type="primary" style="margin-right: 40px;" @click="exportExcel">全部导出</el-button>
+        </el-col>
+        <el-col :span="22">
+          <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
+                         :page-sizes="[10, 20, 50, 100]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalSum">
+          </el-pagination>
+        </el-col>
+
+      </el-row>
+
+    </div>
+
+  </div>
+</template>
+
+<script>
+  export default {
+    data() {
+      return {
+        // 右侧列表查询数据End
+        optionProps: {
+          //公司下拉列表配置
+          checkStrictly: true,
+          value: "id",
+          label: "name",
+          children: "children",
+        },
+        options: [], //保险公司下拉列表
+        loading: false,
+        clientHeight:0,//表格高度
+        currentPage: 1, //当前页面
+        pageSize: 10, //每页显示条数
+        totalSum: 0, //全部的数据条数
+        quoteDate:"",//结算单日期
+        //查询的表单
+        queryForm: {
+          companyId:"",
+          quoteStartDate: "",
+          quoteEndDate: "",
+          status:"",
+          pageNum: 1,
+          pageSize: 10,
+          isReturnBack:"0"//是否返回上层
+        },
+        dataList: [],//查询结果数据
+        //返回上层查询对象
+        returnForm:{
+          companyId: "",
+        }
+      };
+    },
+    created(){
+      // 设置表格的高度
+      this.clientHeight = (document.documentElement.clientHeight - 350)+'px';
+      //获取保险公司
+      let params = {
+        type: "1"
+      }
+      this.$api.report.findLeftInsTree(params).then(res=>{
+        this.options=res.data
+      })
+
+
+    },
+    mounted() {
+      const that = this;
+      // 设置表格的高度
+      window.onresize = function temp() {
+        that.clientHeight = (document.documentElement.clientHeight - 350)+'px';
+      };
+    },
+    methods: {
+      // 按照查询条件查询
+      drillingData(obj,type) {
+        this.queryForm.pageNum = 1;
+        this.queryForm.pageSize = 10;
+        this.queryForm.isReturnBack="0";
+        this.queryForm.companyId=obj.companyId;
+        this.findPage();
+      },
+      //返回上层
+      returnUpper(){
+        this.queryForm.isReturnBack="1";
+        this.queryForm.companyId= this.returnForm.companyId;
+        this.findPage();
+      },
+      //联级选择器触发事件
+      handleChange(val) {
+        if (val.length !== 0) {
+          this.queryForm.companyId = val.at(-1);
+        }
+        else {
+          this.queryForm.companyId = ''
+        }
+      },
+    //报价日期处理
+    changeQuoteDate(e) {
+      if (e === null) {
+        this.queryForm.quoteStartDate = e;
+        this.queryForm.quoteEndDate = e;
+      } else {
+        this.queryForm.quoteStartDate = e[0];
+        this.queryForm.quoteEndDate = e[1];
+      }
+    },
+      // 按照查询条件查询
+      queryData() {
+        if((this.quoteDate ==null || this.quoteDate=='') ){
+          this.$message.error('结算单生成日期必须录入!')
+          return
+        }
+        this.queryForm.pageNum = 1;
+        this.queryForm.pageSize = 10;
+        this.queryForm.isReturnBack="0";
+        this.findPage();
+      },
+      //数据
+      findPage() {
+        this.loading = true;
+        this.$api.report.getInsPlySettleReport(this.queryForm).then((res) => {
+          if (res.code == "200") {
+            this.loading = false;
+            this.dataList = res.data.content;
+            for(let item of this.dataList){
+              this.returnForm.companyId=item.companyId;
+            }
+            this.currentPage = res.data.pageNum;
+            this.totalSum = res.data.totalSize;
+          } else {
+            this.$message.error(res.msg)
+            this.dataList=[];
+            this.loading = false;
+          }
+        })
+      },
+      // 每页条数发生改变
+      handleSizeChange(val) {
+        this.pageSize = val;
+        this.currentPage = 1;
+        this.queryForm.pageNum = 1;
+        this.queryForm.pageSize = val;
+        this.findPage();
+      },
+      // 当前页发生改变
+      handleCurrentChange(val) {
+        this.currentPage = val;
+        this.queryForm.pageNum = val;
+        this.findPage();
+      },
+
+      //全部导出
+      exportExcel(){
+        if((this.quoteDate ==null || this.quoteDate=='') ){
+          this.$message.error('结算单生成日期必须录入!')
+          return
+        }
+        this.$api.report.exportInsPlySettleReport(this.queryForm).then(res=>{
+          let url = process.env.BASE_URL+'/upload/'+res.data // 3.创建一个临时的url指向blob对象
+          // 4.创建url之后可以模拟对此文件对象的一系列操作,例如:预览、下载
+          let a = document.createElement("a");
+          a.href = url;
+          a.download = "导出订单.xlsx";
+          a.click();
+          // 5.释放这个临时的对象url
+          window.URL.revokeObjectURL(url);
+        })
+      },
+
+      //清单导出
+      exportListExcel(obj){
+        let  queryListForm={}
+        queryListForm.quoteStartDate=this.queryForm.quoteStartDate;
+        queryListForm.quoteEndDate=this.queryForm.quoteEndDate;
+        queryListForm.companyId=this.queryForm.companyId;
+        queryListForm.status=obj.status;
+        this.$api.report.exportInsPlySettleListData(queryListForm).then(res=>{
+          let url = process.env.BASE_URL+'/upload/'+res.data // 3.创建一个临时的url指向blob对象
+          // 4.创建url之后可以模拟对此文件对象的一系列操作,例如:预览、下载
+          let a = document.createElement("a");
+          a.href = url;
+          a.download = "出单量及费用统计报表-清单.xlsx";
+          a.click();
+          // 5.释放这个临时的对象url
+          window.URL.revokeObjectURL(url);
+        })
+      }
+
+
+    }
+  }
+</script>
+
+<style scoped>
+  /* 底部固定分页 */
+  .bottomFixed {
+    height: 50px;
+    position: fixed;
+    bottom: 0;
+    width: 100%;
+    background: #fff;
+  }
+
+  /* 顶部查询条件样式Start */
+  .queryFrom .el-row {
+    margin: 10px 0px;
+  }
+
+  .queryFrom .el-form-item {
+    margin-bottom: 0px;
+  }
+
+  .queryFrom .queryButton .el-form-item__content {
+    margin-left: 40px !important;
+  }
+
+  /* 顶部查询条件样式End */
+
+  .el-form-item{
+    margin-bottom: 0px!important;
+  }
+  .el-dialog__body{
+    padding: 10px 20px!important;
+  }
+</style>

Some files were not shown because too many files changed in this diff