Selaa lähdekoodia

提交达沃特

caojunjie 2 vuotta sitten
vanhempi
commit
07015b7db3

+ 7 - 0
src/api/accountBalance/index.js

@@ -14,3 +14,10 @@ export const getListDetailed = (params) => {
         params: params
     })
 }
+export const itemList = (params) => {
+    return request({
+        url: '/api/blade-mocha-item/businessoverpaymentitem/itemList',
+        method: 'get',
+        params: params
+    })
+}

+ 8 - 0
src/api/maintenance/salesPolicy.js

@@ -8,6 +8,14 @@ export function customerList(data) {
         params: data
     })
 }
+//政策列表查询
+export function selCnameList(data) {
+    return request({
+        url: '/api/blade-mocha-item/salespolicyitem/selCnameList',
+        method: 'get',
+        params: data
+    })
+}
 //政策列表查看明细
 export function detail(data) {
     return request({

+ 6 - 0
src/page/index/tags.vue

@@ -357,6 +357,12 @@ export default {
         if(tag.label == "海运出口"){
           this.$store.commit("DOMXS_CLOSE_EXPORT_DETAIL");
         }
+        if(tag.label == "海运出口"){
+          this.$store.commit("DOMXS_CLOSE_EXPORT_DETAIL");
+        }
+        if(tag.label == "收款结算"){
+          this.$store.commit("COLL_CLOSE_EXPORT_DETAIL");
+        }
         this.$store.commit("DEL_TAG", tag);
         if (tag.value === this.tag.value) {
           tag = this.tagList[key === 0 ? key : key - 1]; //如果关闭本标签让前推一个

+ 26 - 0
src/router/views/index.js

@@ -2354,5 +2354,31 @@ export default [{
     },
     component: () => import( /* webpackChunkName: "views" */ '@/views/oceanShipping/maritimeExport/index')
   }]
+}, {
+  path: '/maintenance/overpayment/index',
+  component: Layout,
+  hidden: true,
+  children: [{
+    path: '/maintenance/overpayment/index',
+    name: '溢付款',
+    meta: {
+      i18n: '/maintenance/overpayment/index',
+      keepAlive: true,
+    },
+    component: () => import( /* webpackChunkName: "views" */ '@/views/maintenance/overpayment/index')
+  }]
+}, {
+  path: '/maintenance/rebate/index',
+  component: Layout,
+  hidden: true,
+  children: [{
+    path: '/maintenance/rebate/index',
+    name: '返利',
+    meta: {
+      i18n: '/maintenance/rebate/index',
+      keepAlive: true,
+    },
+    component: () => import( /* webpackChunkName: "views" */ '@/views/maintenance/rebate/index')
+  }]
 }
 ]

+ 2 - 1
src/store/getters.js

@@ -55,6 +55,7 @@ const getters = {
   ckglStatus:state => state.ifdetail.ckglStatus,
   pjxsStatus:state => state.ifdetail.pjxsStatus,
   pjcgStatus:state => state.ifdetail.pjcgStatus,
-  maritimeExport:state => state.ifdetail.maritimeExport
+  maritimeExport:state => state.ifdetail.maritimeExport,
+  collectionSettlement:state => state.ifdetail.collectionSettlement
 }
 export default getters

+ 13 - 1
src/store/modules/ifdetail.js

@@ -30,7 +30,8 @@ const ifdetail = {
     pjxsStatus:false,
     pjxsStatusTwo:false,
     pjcgStatus:false,
-    maritimeExport:false
+    maritimeExport:false,
+    collectionSettlement:false
   },
   actions: {},
   mutations: {
@@ -42,6 +43,14 @@ const ifdetail = {
     DOMXS_CLOSE_EXPORT_DETAIL(state){
       state.maritimeExport = false;
     },
+    // 收款结算打开
+    COLL_OPEN_EXPORT_DETAIL(state){
+      state.collectionSettlement = true;
+    },
+    // 收款结算关闭
+    COLL_CLOSE_EXPORT_DETAIL(state){
+      state.collectionSettlement = false;
+    },
     //国内状态发货单
     // 进入详情页
     IN_IN_DETAIL(state) {
@@ -370,6 +379,9 @@ const ifdetail = {
       if (tag.label == '海运出口') {
         state.maritimeExport = true
       }
+      if (tag.label == '收款结算') {
+        state.collectionSettlement = true
+      }
     }
   }
 

+ 36 - 17
src/views/businessManagement/deliveryNotice/configuration/mainList.json

@@ -31,6 +31,16 @@
       "name": "totalQuantity",
       "type": "sum",
       "decimals": 0
+    },
+    {
+      "name": "actualArrivalQuantity",
+      "type": "sum",
+      "decimals": 0
+    },
+    {
+      "name": "actualArrivalAmount",
+      "type": "sum",
+      "decimals": 2
     }
   ],
   "column": [
@@ -57,43 +67,52 @@
       "index": 3,
       "width": 100,
       "overHidden": true
-    },
-    {
+    },{
       "type": "date",
       "unlinkPanels": true,
       "searchRange": true,
+      "label": "到货时间",
       "format": "yyyy-MM-dd",
       "valueFormat": "yyyy-MM-dd",
-      "label": "出库日期",
-      "prop": "businessDate",
+      "prop": "arrivalTime",
       "search": true,
       "index": 4,
       "width": 100,
       "pickerOptions": {},
       "overHidden": true
     },{
+      "label": "实际到货数",
+      "prop": "actualArrivalQuantity",
+      "index": 4.1,
+      "width": 100,
+      "overHidden": true
+    },{
+      "label": "到货金额",
+      "prop": "actualArrivalAmount",
+      "index": 4.2,
+      "width": 100,
+      "overHidden": true
+    },{
+      "label": "仓库",
+      "prop": "storageId",
+      "search": true,
+      "index": 5,
+      "width": 100,
+      "overHidden": true
+    },{
       "type": "date",
       "unlinkPanels": true,
       "searchRange": true,
-      "label": "到货时间",
       "format": "yyyy-MM-dd",
       "valueFormat": "yyyy-MM-dd",
-      "prop": "arrivalTime",
-      "search": true,
-      "index": 5,
-      "width": 100,
-      "pickerOptions": {},
-      "overHidden": true
-    },
-    {
-      "label": "仓库",
-      "prop": "storageId",
+      "label": "出库日期",
+      "prop": "businessDate",
       "search": true,
       "index": 6,
       "width": 100,
+      "pickerOptions": {},
       "overHidden": true
-    },
-    {
+    },{
       "label": "出库数量",
       "prop": "totalQuantity",
       "search": false,

+ 11 - 0
src/views/businessManagement/deliveryNotice/detailsPageEdit.vue

@@ -759,6 +759,17 @@ export default {
                 trigger: 'blur'
               }
             ]
+          },{
+            label: '使用返利',
+            prop: 'thisUsedProfit',
+            disabled: true,
+            rules: [
+              {
+                required: false,
+                message: ' ',
+                trigger: 'blur'
+              }
+            ]
           },
           {
             label: "备注",

+ 4 - 0
src/views/businessManagement/purchaseOrder/index.vue

@@ -201,6 +201,10 @@ export default {
       this.isShow = false;
       this.$store.commit("DOMCG_IN_DETAIL");
     }
+    if (this.$route.query.id){
+      this.isShow = true;
+      this.beforeOpenPage({ id: this.$route.query.id });
+    }
     if (this.$route.query.params) {
       this.beforeOpenPage({ id: this.$route.query.params })
     }

+ 17 - 2
src/views/businessManagement/receipt/detailsPageEdit.vue

@@ -196,7 +196,7 @@
                          :disabled="detailData.seeDisabled || receiveDisabled"
               >录入明细
               </el-button>
-              <el-button type="info" :size="size" icon="el-icon-printer">报表打印</el-button>
+              <el-button type="info" :size="size" icon="el-icon-printer" @click.stop="openReport()">报表打印</el-button>
             </template>
           </avue-crud>
         </basic-container>
@@ -308,6 +308,12 @@
       ref="messagePost"
       @closeDialog="closeDialog"
     ></messagePost>
+    <report-dialog
+        :switchDialog="switchDialog"
+        :reportId="form.id"
+        reportName="国内贸易-发货明细"
+        @onClose="onClose()"
+    />
   </div>
 </template>
 
@@ -344,6 +350,7 @@ import {
 import {detail as GYSDetail} from "@/api/basicData/customerInformation";
 import { getMarketPrice, getPurchasePrice } from "@/api/basicData/fees";
 import { dateFormat } from "@/util/date";
+import reportDialog from "@/components/report-dialog/main";
 export default {
   name: "detailsPage",
   props: {
@@ -352,7 +359,7 @@ export default {
     }
   },
   components: {
-    feeInfo,
+    feeInfo,reportDialog
   },
   data() {
     return {
@@ -725,6 +732,7 @@ export default {
       // 发货禁用
       receiveDisabled: false,
       messageVisble:false,
+      switchDialog: false,
       GYSInfo: [], //供应商发货方信息
       crudIndex: 0,
     }
@@ -985,6 +993,10 @@ export default {
       this.dialogCost = !this.dialogCost
       this.choiceData = false
     },
+    // 报表
+    openReport() {
+      this.switchDialog =! this.switchDialog;
+    },
     //商品新增触发
     commoditySelection() {
       this.dialogVisible = !this.dialogVisible
@@ -1489,6 +1501,9 @@ export default {
     closeDialog() {
       this.messageVisble = false
     },
+    onClose(val) {
+      this.switchDialog = val;
+    },
     editHandle() {
       const data = {
         moduleName: 'sh',

+ 4 - 2
src/views/businessManagement/salesOrder/detailsPageEdit.vue

@@ -37,7 +37,7 @@
                    style="margin-right: 8px;"
                    @click="chargeback"
                    v-if="!roleName.includes('admin')||!roleName.includes('助理')"
-                   :disabled="form.status != 3"
+                   :disabled="form.status != 3 || (form.specialCheckStatus == 1 || form.specialCheckStatus == 2)"
                    :loading="saveLoading">申请退单</el-button>
         <el-dropdown style="margin-right: 8px;">
           <el-button
@@ -1919,7 +1919,9 @@ export default {
         delete this.form.createPurchase
         delete this.form.specialCheckTime
         delete this.form.specialCheckUser
-        delete this.form.specialCheckStatus
+        if (this.detailData.copyId){
+          delete this.form.specialCheckStatus
+        }
         delete this.form.specialCheck
         // delete this.form.corpName
         delete this.form.belongToCorpList

+ 2 - 4
src/views/businessManagement/salesOrder/index.vue

@@ -332,8 +332,7 @@ export default {
         billId: row.id,
         no: localStorage.getItem("browserID")
       };
-      this.checkLock(data)
-        .then(res => {
+      this.checkLock(data).then(res => {
           if (res.data.code == 200) {
             this.detailData = {
               seeDisabled: true,
@@ -342,8 +341,7 @@ export default {
             this.isShow = false;
             this.$store.commit("DOMXS_IN_DETAIL");
           }
-        })
-        .catch(err => {
+        }).catch(err => {
           this.detailData = {
             id: row.id,
             seeDisabled: true,

+ 1 - 3
src/views/exportTrade/invoice/detailsPage.vue

@@ -948,7 +948,6 @@ export default {
           this.data.forEach((e, index) => {
             e.sort = Number(index) + 1
           })
-          const orderFilesList = this.$refs.uploadFile.submitData();
           if (status == "submit") {
             this.subLoading = true;
             submit({
@@ -956,8 +955,7 @@ export default {
               deliveryItemsList: this.data,
               deliveryFeesList: orderFeesList,
               deliveryFilesList: this.orderFilesList
-            })
-              .then(res => {
+            }).then(res => {
                 this.$message.success("保存成功");
                 this.form = res.data.data;
                 this.data = res.data.data.deliveryItemsList;

+ 7 - 7
src/views/exportTrade/invoice/index.vue

@@ -67,13 +67,13 @@
           <port-info v-model="search.portOfDestination" />
         </template>
         <template slot="menuLeft">
-          <el-button
-            type="primary"
-            icon="el-icon-plus"
-            size="small"
-            @click.stop="newAdd()"
-            >创建单据
-          </el-button>
+<!--          <el-button-->
+<!--            type="primary"-->
+<!--            icon="el-icon-plus"-->
+<!--            size="small"-->
+<!--            @click.stop="newAdd()"-->
+<!--            >创建单据-->
+<!--          </el-button>-->
 <!--          <el-button-->
 <!--            type="success"-->
 <!--            size="small"-->

+ 5 - 0
src/views/financialManagement/paymentSettle/paymentSettle.vue

@@ -92,6 +92,11 @@
       }
     },
     activated() {
+      if (this.$route.query.id) {
+        this.show = true;
+        this.$store.commit("PAY_IN_DETAIL");
+        this.editOpen({ id: this.$route.query.id });
+      }
       if(!this.show && !this.$store.getters.paySettle){
         this.show = true;
       }

+ 7 - 0
src/views/financialManagement/receiptSettle/receiptSettle.vue

@@ -109,6 +109,13 @@
         this.option.searchMenuPosition = "right";
       }
     },
+    activated() {
+      if (this.$route.query.id) {
+        this.show = true;
+        this.$store.commit("COLL_OPEN_EXPORT_DETAIL");
+        this.editOpen({ id: this.$route.query.id });
+      }
+    },
     mounted() {
       // this.option.height = window.innerHeight - 200;
     },

+ 130 - 113
src/views/maintenance/salesPolicy/detailsPageEdit.vue

@@ -113,73 +113,81 @@
         <containerTitle title="特价促销"></containerTitle>
         <basic-container style="margin-bottom: 10px">
           <avue-crud
-            :table-loading="contactLoading"
-            :page.sync="contactPage"
-            :option="customerContact"
-            v-model="contactsForm"
-            :data="contactsData"
-            ref="crudContact"
-            @current-change="currentChange"
-            @size-change="sizeChange"
-            @row-save="rowSave"
-            @row-click="handleRowClick"
-            @row-update="rowUpdate"
-            @row-del="rowDel"
-          >
+              :table-loading="contactLoading"
+              :page.sync="contactPage"
+              :option="customerContact"
+              v-model="contactsForm"
+              :data="contactsData"
+              ref="crudContact"
+              @current-change="currentChange"
+              @size-change="sizeChange"
+              @row-save="rowSave"
+              @row-click="handleRowClick"
+              @row-update="rowUpdate"
+              @row-del="rowDel">
             <template slot="code" slot-scope="{ row, index }">
               <el-button
-                size="small"
-                type="text"
-                @click="rePick(row, index, 1)"
-                :disabled="disabled"
-                class="picker"
-                style="padding:4px 10px;float:left"
-                >选择</el-button
-              >
+                  size="small"
+                  type="text"
+                  @click="rePick(row, index, 1)"
+                  :disabled="disabled"
+                  class="picker"
+                  style="padding:4px 10px;float:left"
+              >选择
+              </el-button>
               <span> {{ row.code }}</span>
             </template>
             <template slot="corpId" slot-scope="{ row, index }">
               <crop-select
-                v-if="row.$cellEdit"
-                v-model="row.corpId"
-                :cropIndex="index"
-                corpType="GYS"
-                @getCorpData="getcorpId"
-                :disabled="detailData.seeDisabled"
-              ></crop-select>
+                  v-if="row.$cellEdit"
+                  v-model="row.corpId"
+                  :cropIndex="index"
+                  corpType="GYS"
+                  @getCorpData="getcorpId"
+                  :disabled="detailData.seeDisabled"></crop-select>
               <span v-else>{{ row.corpName }}</span>
             </template>
             <template slot="menuLeft">
               <el-button
-                type="primary"
-                icon="el-icon-plus"
-                size="small"
-                @click.stop="newSpecial"
-                >新增明细</el-button
-              >
+                  type="primary"
+                  icon="el-icon-plus"
+                  size="small"
+                  @click.stop="newSpecial"
+              >新增明细
+              </el-button>
               <el-button
-                type="primary"
-                size="small"
-                icon="el-icon-download"
-                @click="downloadHandle"
-                >下载模板</el-button
-              >
-              <el-upload
-                :action="baseURL"
-                :headers="headers"
-                :disabled="detailData.seeDisabled"
-                :on-progress="uploading"
-                :show-file-list="false"
-                accept=".xls,.xlsx"
-                multiple
-                :on-success="importTemplate"
-                :on-error="uploadError"
-                style="float: right"
-              >
-                <el-button type="primary" size="small" icon="el-icon-upload"
-                  >导 入</el-button
-                >
-              </el-upload>
+                  type="primary"
+                  size="small"
+                  icon="el-icon-download"
+                  @click="downloadHandle"
+              >下载模板
+              </el-button>
+              <div style="display: flex;float: right">
+                <el-upload
+                    :action="baseURL"
+                    :headers="headers"
+                    :disabled="detailData.seeDisabled"
+                    :on-progress="uploading"
+                    :show-file-list="false"
+                    accept=".xls,.xlsx"
+                    multiple
+                    :on-success="importTemplate"
+                    :on-error="uploadError">
+                  <el-button type="primary" size="small" icon="el-icon-upload"
+                  >导 入
+                  </el-button>
+                </el-upload>
+                <el-form label-width="40px" style="display: flex;margin-left: 100px" v-if="form.id">
+                  <el-form-item>
+                    <div slot="label" style="margin-top: -3px">产品:</div>
+                    <el-input v-model="cname" size="small" placeholder="请输入产品"></el-input>
+                  </el-form-item>
+                  <el-form-item style="margin-top: -1px">
+                    <el-button type="primary" size="mini" @click="onSubmit(true)" icon="el-icon-search">搜索</el-button>
+                    <el-button size="mini" icon="el-icon-delete" @click="onSubmit(false)">清空</el-button>
+                  </el-form-item>
+                </el-form>
+              </div>
             </template>
             <template slot-scope="{ row, index }" slot="menu">
               <el-button
@@ -203,25 +211,24 @@
         <containerTitle title="买赠促销"></containerTitle>
         <basic-container style="margin-bottom: 10px">
           <avue-crud
-            :option="customerBuyFree"
-            v-model="contactsFormBuyFree"
-            :data="contactsDataBuyFree"
-            ref="crudContactE"
-            @row-save="rowSaveBuyFree"
-            @row-click="handleRowClickBuyFree"
-            @row-update="rowUpdateBuyFree"
-            @row-del="rowDelBuyFree"
-          >
+              :option="customerBuyFree"
+              v-model="contactsFormBuyFree"
+              :data="contactsDataBuyFree"
+              ref="crudContactE"
+              @row-save="rowSaveBuyFree"
+              @row-click="handleRowClickBuyFree"
+              @row-update="rowUpdateBuyFree"
+              @row-del="rowDelBuyFree">
             <template slot="code" slot-scope="{ row, index }">
               <el-button
-                size="small"
-                type="text"
-                @click="rePick(row, index, 2)"
-                :disabled="disabled"
-                class="picker"
-                style="padding:4px 10px;float:left"
-                >选择</el-button
-              >
+                  size="small"
+                  type="text"
+                  @click="rePick(row, index, 2)"
+                  :disabled="disabled"
+                  class="picker"
+                  style="padding:4px 10px;float:left"
+              >选择
+              </el-button>
               <span> {{ row.code }}</span>
             </template>
             <template slot="corpId" slot-scope="{ row, index }">
@@ -237,12 +244,12 @@
             </template>
             <template slot="menuLeft">
               <el-button
-                type="primary"
-                icon="el-icon-plus"
-                size="small"
-                @click.stop="newBuyFree"
-                >新增明细</el-button
-              >
+                  type="primary"
+                  icon="el-icon-plus"
+                  size="small"
+                  @click.stop="newBuyFree"
+              >新增明细
+              </el-button>
             </template>
             <template slot-scope="{ row, index }" slot="menu">
               <el-button
@@ -253,37 +260,36 @@
                 >{{ row.$cellEdit ? "保存" : "修改" }}
               </el-button>
               <el-button
-                size="small"
-                icon="el-icon-delete"
-                type="text"
-                @click="rowDelBuyFree(row, index)"
-                v-show="form.status == 1"
-                >删 除</el-button
-              >
+                  size="small"
+                  icon="el-icon-delete"
+                  type="text"
+                  @click="rowDelBuyFree(row, index)"
+                  v-show="form.status == 1"
+              >删 除
+              </el-button>
             </template>
           </avue-crud>
         </basic-container>
       </el-form>
       <el-dialog
-        title="导入商品"
-        append-to-body
-        class="el-dialogDeep"
-        :visible.sync="dialogVisible"
-        width="80%"
-        top="5vh"
-        :close-on-click-modal="false"
-        :destroy-on-close="true"
-        :close-on-press-escape="false"
-        @close="closeGoods"
-        v-dialogdrag
-      >
+          title="导入商品"
+          append-to-body
+          class="el-dialogDeep"
+          :visible.sync="dialogVisible"
+          width="80%"
+          top="5vh"
+          :close-on-click-modal="false"
+          :destroy-on-close="true"
+          :close-on-press-escape="false"
+          @close="closeGoods"
+          v-dialogdrag>
         <span>
           <el-row>
             <el-col :span="5">
               <div>
                 <el-scrollbar>
                   <basic-container style="margin-top:45px">
-                    <avue-tree :option="treeOption" @node-click="nodeClick" />
+                    <avue-tree :option="treeOption" @node-click="nodeClick"/>
                   </basic-container>
                 </el-scrollbar>
               </div>
@@ -305,7 +311,6 @@
             </el-col>
           </el-row>
         </span>
-
         <span slot="footer" class="dialog-footer">
           <el-button @click="dialogVisible = false">取 消</el-button>
           <el-button
@@ -325,13 +330,11 @@
         :close-on-click-modal="false"
         :destroy-on-close="true"
         :close-on-press-escape="false"
-        v-dialog-drag
-    >
+        v-dialog-drag>
       <check-schedule
           :checkId="checkId"
           :batchNo="batchNo"
-          @choceScheduleFun="choceScheduleFun"
-      >
+          @choceScheduleFun="choceScheduleFun">
       </check-schedule>
     </el-dialog>
   </div>
@@ -346,7 +349,8 @@ import {
   typeSave,
   getItemdetail,
   itemSubmit,
-  pleaseCheck
+  pleaseCheck,
+  selCnameList
 } from "@/api/maintenance/salesPolicy";
 import {
   submit,
@@ -374,6 +378,7 @@ export default {
   },
   data() {
     return {
+      cname: '',
       configuration: {
         multipleChoices: true,
         multiple: true,
@@ -381,9 +386,9 @@ export default {
         placeholder: "请点击右边按钮选择",
         dicData: []
       },
-      checkId:'',
-      batchNo:'',
-      checkScheduleDialog:false,
+      checkId: '',
+      batchNo: '',
+      checkScheduleDialog: false,
       form: {},
       disabled: false,
       customerContact: customerContact,
@@ -595,16 +600,27 @@ export default {
     }
   },
   methods: {
-    choceScheduleFun(){
+    onSubmit(type) {
+      if (!type) this.cname = ''
+      let name = this.cname
+      selCnameList({
+        pid:this.form.id,
+        cname: name
+      }).then(res => {
+        console.log(res)
+        this.contactsData = res.data.data
+      })
+    },
+    choceScheduleFun() {
       this.checkScheduleDialog = false
     },
     queryData(id) {
       this.openFullScreen(false, "正在努力的加载...");
       detail(id).then(res => {
-            this.form = res.data.data;
-            if (this.form.corpNameList) {
-              this.configuration.dicData = this.form.corpNameList;
-            }
+        this.form = res.data.data;
+        if (this.form.corpNameList) {
+          this.configuration.dicData = this.form.corpNameList;
+        }
             this.form.corps = this.form.corps.split(",");
             // if (res.data.data.specialItemList) this.contactsData = res.data.data.specialItemList
             if (res.data.data.presentItemList)
@@ -948,6 +964,7 @@ export default {
     },
     //修改提交触发
     editCustomer() {
+      this.cname = ''
       this.$refs["form"].validate(valid => {
         if (valid) {
           for (let item in this.contactsData) {

+ 59 - 0
src/views/statisticAnalysis/accountBalanceC/detailPage.vue

@@ -23,6 +23,10 @@
             @resetColumn="resetColumnTwo('crud','option','optionList',240.1)"
             @saveColumn="saveColumnTwo('crud','option','optionList',240.1)"
             :page.sync="page">
+          <template slot-scope="scope" slot="accSysNo">
+          <span style="color: #409EFF;cursor: pointer"
+                @click.stop="beforeOpenPage(scope.row, scope.index)">{{ scope.row.accSysNo }}</span>
+          </template>
           <template slot-scope="scope" slot="menuLeft">
             <el-button type="warning"
                        icon="el-icon-plus"
@@ -156,6 +160,19 @@ export default {
   },
   async created() {
     this.option = await this.getColumnData(this.getColumnName(240.1), this.optionList);
+    if (this.detailData.chargePay === "YING"){
+      this.findObject(this.option.column, "quantity").showColumn = true
+      this.findObject(this.option.column, "quantity").hide = false
+
+      this.findObject(this.optionList.column, "quantity").showColumn = true
+      this.findObject(this.optionList.column, "quantity").hide = false
+    } else if (this.detailData.chargePay === "YI") {
+      this.findObject(this.option.column, "quantity").showColumn = false
+      this.findObject(this.option.column, "quantity").hide = true
+
+      this.findObject(this.optionList.column, "quantity").showColumn = false
+      this.findObject(this.optionList.column, "quantity").hide = true
+    }
     this.key++
     let i = 0;
     this.option.column.forEach(item => {
@@ -167,7 +184,49 @@ export default {
       this.option.searchMenuPosition = "right";
     }
   },
+  activated() {
+    this.key++
+  },
   methods: {
+    beforeOpenPage(row, index) {
+      if (this.detailData.chargePay === "YING") {
+        if (this.$store.getters.domPurStatus) {
+          this.$alert("采购单存在,请保存关闭采购单再进行操作", "温馨提示", {
+            confirmButtonText: "确定",
+            type: "warning",
+            callback: action => {
+              console.log(action);
+            }
+          });
+        } else {
+          this.$router.$avueRouter.closeTag("/businessManagement/purchaseOrder/index");
+          this.$router.push({
+            path: "/businessManagement/purchaseOrder/index",
+            query: {
+              id: row.orderId
+            },
+          });
+        }
+      } else if (this.detailData.chargePay === "YI") {
+        if (this.$store.getters.paySettle) {
+          this.$alert("付款结算存在,请保存关闭付款结算再进行操作", "温馨提示", {
+            confirmButtonText: "确定",
+            type: "warning",
+            callback: action => {
+              console.log(action);
+            }
+          });
+        }else {
+          this.$router.$avueRouter.closeTag("/financialManagement/paymentSettle/paymentSettle");
+          this.$router.push({
+            path: "/financialManagement/paymentSettle/paymentSettle",
+            query: {
+              id: row.id
+            },
+          });
+        }
+      }
+    },
     //导出
     outExport() {
       this.$confirm('是否导出列表?', '提示', {

+ 47 - 10
src/views/statisticAnalysis/accountBalanceC/index.vue

@@ -24,6 +24,10 @@
         <template slot-scope="scope" slot="settlementAmount">
           <span style="color: #409EFF;cursor: pointer" @click.stop="beforeOpenPage(scope.row, scope.index,'YI')">{{scope.row.settlementAmount}}</span>
         </template>
+        <template slot-scope="scope" slot="inOverpayment">
+          <span style="color: #409EFF;cursor: pointer"
+                @click.stop="overpaymentDetails(scope.row, scope.index)">{{ scope.row.inOverpayment }}</span>
+        </template>
         <template slot-scope="scope" slot="menuLeft">
           <el-button type="warning"
                      icon="el-icon-plus"
@@ -40,12 +44,36 @@
         :detailData="detailData"
         v-if="!show"
     ></detail-page>
+    <el-dialog
+        title="溢付款明细"
+        append-to-body
+        v-if="dialogVisible"
+        :visible.sync="dialogVisible"
+        width="80%">
+      <span>
+        <el-table :data="insideList" size="mini" border>
+            <el-table-column  label="发货单号" prop="billNo" align="center" show-overflow-tooltip></el-table-column>
+            <el-table-column  label="订单号" prop="orderNo" align="center" show-overflow-tooltip></el-table-column>
+            <el-table-column  label="金额" prop="overpayment" align="center" show-overflow-tooltip></el-table-column>
+            <el-table-column  label="消费类型" prop="overpaymentType" align="center" show-overflow-tooltip>
+              <template slot-scope="scope">
+                <span>{{ scope.row.overpaymentType == 0? '增加': '消费' }}</span>
+              </template>
+            </el-table-column>
+            <el-table-column  label="创建时间" prop="createTime" align="center" show-overflow-tooltip width="150"></el-table-column>
+            <el-table-column  label="创建人" prop="createUserName" align="center" show-overflow-tooltip></el-table-column>
+          </el-table>
+      </span>
+      <span slot="footer" class="dialog-footer">
+    <el-button type="primary" @click="dialogVisible = false" size="small">关 闭</el-button>
+  </span>
+    </el-dialog>
   </div>
 </template>
 
 <script>
 
-import {getList} from "@/api/accountBalance/index.js";
+import {getList, itemList} from "@/api/accountBalance/index.js";
 import {getToken} from "@/util/auth";
 import detailPage from "./detailPage.vue";
 
@@ -56,6 +84,8 @@ export default {
   },
   data() {
     return {
+      dialogVisible:false,
+      insideList:[],
       show:true,
       loading: false,
       search: {},
@@ -128,10 +158,6 @@ export default {
           prop: 'settlementAmount',
           overHidden: true,
         },{
-          label: '余额(总)',
-          prop: 'balance',
-          overHidden: true,
-        },{
           label: '日期',
           prop: 'createDateList',
           search: true,
@@ -143,10 +169,6 @@ export default {
           format: "yyyy-MM-dd",
           valueFormat: "yyyy-MM-dd HH:mm:ss"
         },{
-          label: '使用溢付款',
-          prop: 'caseOverPayment',
-          overHidden: true,
-        },{
           label: '溢付款余额',
           prop: 'inOverpayment',
           overHidden: true,
@@ -154,6 +176,10 @@ export default {
           label: '期初金额',
           prop: 'openingAmount',
           overHidden: true,
+        },{
+          label: '余额(总)',
+          prop: 'balance',
+          overHidden: true,
         }]
       }
     }
@@ -171,6 +197,9 @@ export default {
       this.option.searchMenuPosition = "right";
     }
   },
+  activated() {
+    this.$refs.crud.doLayout()
+  },
   methods: {
     goBack(){
       this.show = true;
@@ -184,6 +213,12 @@ export default {
         createDateList:this.search.createDateList
       }
     },
+    overpaymentDetails(row, index){
+      itemList({corpId:row.corpId}).then(res=>{
+        this.insideList = res.data.data
+        this.dialogVisible = true
+      })
+    },
     //导出
     outExport() {
       this.$confirm('是否导出列表?', '提示', {
@@ -262,5 +297,7 @@ export default {
 </script>
 
 <style scoped>
-
+::v-deep .has-gutter tr{
+  color: #000000d9;
+}
 </style>

+ 82 - 7
src/views/statisticAnalysis/accountBalanceD/detailPage.vue

@@ -31,6 +31,10 @@
             >导出
             </el-button>
           </template>
+          <template slot-scope="scope" slot="accSysNo">
+          <span style="color: #409EFF;cursor: pointer"
+                @click.stop="beforeOpenPage(scope.row, scope.index)">{{ scope.row.accSysNo }}</span>
+          </template>
         </avue-crud>
       </basic-container>
     </div>
@@ -160,11 +164,40 @@ export default {
           prop: 'caseOverPayment',
           overHidden: true,
         }]
-      }
+      },
     }
   },
   async created() {
     this.option = await this.getColumnData(this.getColumnName(239.1), this.optionList);
+    if (this.detailData.chargePay === "YING"){
+      this.findObject(this.option.column, "quantity").showColumn = true
+      this.findObject(this.option.column, "quantity").hide = false
+      this.findObject(this.option.column, "actualQuantity").showColumn = true
+      this.findObject(this.option.column, "actualQuantity").hide = false
+      this.findObject(this.option.column, "arrivalAmount").showColumn = true
+      this.findObject(this.option.column, "arrivalAmount").hide = false
+
+      this.findObject(this.optionList.column, "quantity").showColumn = true
+      this.findObject(this.optionList.column, "quantity").hide = false
+      this.findObject(this.optionList.column, "actualQuantity").showColumn = true
+      this.findObject(this.optionList.column, "actualQuantity").hide = false
+      this.findObject(this.optionList.column, "arrivalAmount").showColumn = true
+      this.findObject(this.optionList.column, "arrivalAmount").hide = false
+    } else if (this.detailData.chargePay === "YI") {
+      this.findObject(this.option.column, "quantity").showColumn = false
+      this.findObject(this.option.column, "quantity").hide = true
+      this.findObject(this.option.column, "actualQuantity").showColumn = false
+      this.findObject(this.option.column, "actualQuantity").hide = true
+      this.findObject(this.option.column, "arrivalAmount").showColumn = false
+      this.findObject(this.option.column, "arrivalAmount").hide = true
+
+      this.findObject(this.optionList.column, "quantity").showColumn = false
+      this.findObject(this.optionList.column, "quantity").hide = true
+      this.findObject(this.optionList.column, "actualQuantity").showColumn = false
+      this.findObject(this.optionList.column, "actualQuantity").hide = true
+      this.findObject(this.optionList.column, "arrivalAmount").showColumn = false
+      this.findObject(this.optionList.column, "arrivalAmount").hide = true
+    }
     this.key++
     let i = 0;
     this.option.column.forEach(item => {
@@ -176,7 +209,49 @@ export default {
       this.option.searchMenuPosition = "right";
     }
   },
+  activated() {
+    this.key++
+  },
   methods: {
+    beforeOpenPage(row, index) {
+      if (this.detailData.chargePay === "YING") {
+        if (this.$store.getters.domSaleStatus) {
+          this.$alert("销售单存在,请保存关闭销售单再进行操作", "温馨提示", {
+            confirmButtonText: "确定",
+            type: "warning",
+            callback: action => {
+              console.log(action);
+            }
+          });
+        } else {
+          this.$router.$avueRouter.closeTag("/businessManagement/salesOrder/index");
+          this.$router.push({
+            path: "/businessManagement/salesOrder/index",
+            query: {
+              id: row.orderId
+            },
+          });
+        }
+      } else if (this.detailData.chargePay === "YI") {
+        if (this.$store.getters.collectionSettlement) {
+          this.$alert("收款结算存在,请保存关闭收款结算再进行操作", "温馨提示", {
+            confirmButtonText: "确定",
+            type: "warning",
+            callback: action => {
+              console.log(action);
+            }
+          });
+        }else {
+          this.$router.$avueRouter.closeTag("/financialManagement/receiptSettle/receiptSettle");
+          this.$router.push({
+            path: "/financialManagement/receiptSettle/receiptSettle",
+            query: {
+              id: row.id
+            },
+          });
+        }
+      }
+    },
     //导出
     outExport() {
       this.$confirm('是否导出列表?', '提示', {
@@ -191,9 +266,9 @@ export default {
             'Blade-Auth': getToken(),
             ...queryParams,//括号内是要传递给新窗口的参数
             billType: "收费",
-            chargePay:this.detailData.chargePay,
-            createDateList:this.detailData.createDateList,
-            corpId:this.detailData.corpId
+            chargePay: this.detailData.chargePay,
+            createDateList: this.detailData.createDateList,
+            corpId: this.detailData.corpId
           }
         })
         window.open(routeData.href.slice(1, routeData.href.length));
@@ -221,9 +296,9 @@ export default {
         current: page.currentPage,
         size: page.pageSize,
         billType: "收费",
-        corpId:this.detailData.corpId,
-        chargePay:this.detailData.chargePay,
-        createDateList:this.detailData.createDateList,
+        corpId: this.detailData.corpId,
+        chargePay: this.detailData.chargePay,
+        createDateList: this.detailData.createDateList,
       }
       this.loading = true
       getListDetailed(params).then(res => {

+ 48 - 12
src/views/statisticAnalysis/accountBalanceD/index.vue

@@ -26,13 +26,16 @@
           <span style="color: #409EFF;cursor: pointer"
                 @click.stop="beforeOpenPage(scope.row, scope.index,'YI')">{{ scope.row.settlementAmount }}</span>
         </template>
+        <template slot-scope="scope" slot="inOverpayment">
+          <span style="color: #409EFF;cursor: pointer"
+                @click.stop="overpaymentDetails(scope.row, scope.index)">{{ scope.row.inOverpayment }}</span>
+        </template>
         <template slot-scope="scope" slot="menuLeft">
           <el-button type="warning"
                      icon="el-icon-plus"
                      size="small"
                      @click="outExport"
-          >导出
-          </el-button>
+          >导出</el-button>
         </template>
       </avue-crud>
     </basic-container>
@@ -42,12 +45,36 @@
         :detailData="detailData"
         v-if="!show"
     ></detail-page>
+    <el-dialog
+        title="溢付款明细"
+        append-to-body
+        v-if="dialogVisible"
+        :visible.sync="dialogVisible"
+        width="80%">
+      <span>
+        <el-table :data="insideList" size="mini" border>
+            <el-table-column  label="发货单号" prop="billNo" align="center" show-overflow-tooltip></el-table-column>
+            <el-table-column  label="订单号" prop="orderNo" align="center" show-overflow-tooltip></el-table-column>
+            <el-table-column  label="金额" prop="overpayment" align="center" show-overflow-tooltip></el-table-column>
+            <el-table-column  label="消费类型" prop="overpaymentType" align="center" show-overflow-tooltip>
+              <template slot-scope="scope">
+                <span>{{ scope.row.overpaymentType == 0? '增加': '消费' }}</span>
+              </template>
+            </el-table-column>
+            <el-table-column  label="创建时间" prop="createTime" align="center" show-overflow-tooltip width="150"></el-table-column>
+            <el-table-column  label="创建人" prop="createUserName" align="center" show-overflow-tooltip></el-table-column>
+          </el-table>
+      </span>
+      <span slot="footer" class="dialog-footer">
+    <el-button type="primary" @click="dialogVisible = false" size="small">关 闭</el-button>
+  </span>
+    </el-dialog>
   </div>
 </template>
 
 <script>
 
-import {getList} from "@/api/accountBalance/index.js";
+import {getList,itemList} from "@/api/accountBalance/index.js";
 import detailPage from "./detailPage.vue";
 import {getToken} from "@/util/auth";
 export default {
@@ -57,6 +84,8 @@ export default {
   },
   data() {
     return {
+      insideList:[],
+      dialogVisible:false,
       loading: false,
       show:true,
       search: {},
@@ -129,10 +158,6 @@ export default {
           prop: 'settlementAmount',
           overHidden: true,
         }, {
-          label: '余额(总)',
-          prop: 'balance',
-          overHidden: true,
-        }, {
           label: '日期',
           prop: 'createDateList',
           search: true,
@@ -144,10 +169,6 @@ export default {
           format: "yyyy-MM-dd",
           valueFormat: "yyyy-MM-dd HH:mm:ss"
         },{
-          label: '使用溢付款',
-          prop: 'caseOverPayment',
-          overHidden: true,
-        },{
           label: '溢付款余额',
           prop: 'inOverpayment',
           overHidden: true,
@@ -155,6 +176,10 @@ export default {
           label: '期初金额',
           prop: 'openingAmount',
           overHidden: true,
+        }, {
+          label: '余额(总)',
+          prop: 'balance',
+          overHidden: true,
         }]
       }
     }
@@ -172,6 +197,9 @@ export default {
       this.option.searchMenuPosition = "right";
     }
   },
+  activated() {
+    this.$refs.crud.doLayout()
+  },
   methods: {
     goBack(){
       this.show = true;
@@ -209,6 +237,12 @@ export default {
         createDateList: this.search.createDateList
       }
     },
+    overpaymentDetails(row, index){
+      itemList({corpId:row.corpId}).then(res=>{
+        this.insideList = res.data.data
+        this.dialogVisible = true
+      })
+    },
     //刷新
     refreshChange() {
       this.onLoad(this.page, this.search)
@@ -263,5 +297,7 @@ export default {
 </script>
 
 <style scoped>
-
+::v-deep .has-gutter tr{
+  color: #000000d9;
+}
 </style>