Browse Source

配件商城和箱管

caojunjie 2 years ago
parent
commit
9f66f8f05a

+ 6 - 2
src/components/bill/billDetailList.vue

@@ -118,7 +118,8 @@
     },
     methods: {
       importStagList(row, index) {
-        this.goodsListSave.push(row);
+        // this.goodsListSave.push(row);
+        this.$refs.crud.toggleSelection([row]);
       },
       removeStagList(row, index) {
         this.goodsListSave.splice(row.$index, 1);
@@ -128,9 +129,11 @@
         if (data.name == "searchList") {
           this.goodsListSave = this.data;
           this.data = this.goodsListShow;
+          this.page.total = this.page.totalTwo
         } else if (data.name == "importStaging") {
           this.goodsListShow = this.data;
           this.data = this.goodsListSave;
+          this.page.totalTwo = this.page.total;
           this.page.total = 0;
         }
       },
@@ -146,7 +149,8 @@
         done()
       },
       selectionChange(row){
-        this.selectList = row
+        // this.selectList = row
+        this.goodsListSave = row
       },
       onLoad(page, params){
         this.loading = true;

+ 3 - 2
src/components/bill/config/mainList.json

@@ -1,8 +1,9 @@
 {
   "lazy": true,
-  "tip": false,
+  "tip": true,
   "simplePage": false,
   "searchShow": true,
+  "reserveSelection": true,
   "addBtn":false,
   "editBtn":false,
   "addRowBtn":false,
@@ -19,7 +20,7 @@
   "tree": true,
   "border": true,
   "index": true,
-  "selection": false,
+  "selection": true,
   "menu": true,
   "searchIcon": true,
   "searchIndex": 2,

+ 91 - 14
src/components/boxCost/index.vue

@@ -133,7 +133,12 @@ export default {
           label: '收款对象',
           prop: 'corpName',
           overHidden: true,
-          width: 160
+          width: 160,
+          rules: [{
+            required: true,
+            message: "请选择收款对象",
+            trigger: "blur"
+          }]
         }, {
           label: '箱号',
           prop: 'code',
@@ -237,9 +242,18 @@ export default {
         }, {
           label: '业务类型',
           prop: 'billType',
-          display:false,
+          display: false,
           width: 100
         }, {
+          label: '生成账单日期',
+          prop: 'expenseGenerationTime',
+          width: 100,
+          overHidden: true,
+          type: "date",
+          display: false,
+          format: "yyyy-MM-dd",
+          valueFormat: "yyyy-MM-dd HH:mm:ss"
+        }, {
           label: '备注',
           prop: 'remarks',
           type: 'textarea',
@@ -281,10 +295,29 @@ export default {
           decimals: 2
         }],
         column: [{
+          label: '账单状态',
+          prop: 'submitPay',
+          width: 100,
+          overHidden: true,
+          filterable: true,
+          display: false,
+          dataType: 'number',
+          type: "select",
+          dicUrl: "/api/blade-system/dict-biz/dictionary?code=billing_status",
+          props: {
+            label: "dictValue",
+            value: "dictKey"
+          }
+        }, {
           label: '收款对象',
           prop: 'corpName',
           overHidden: true,
-          width: 160
+          width: 160,
+          rules: [{
+            required: true,
+            message: "请选择收款对象",
+            trigger: "blur"
+          }]
         }, {
           label: '箱号',
         prop: 'code',
@@ -388,17 +421,26 @@ export default {
         }, {
           label: '业务类型',
           prop: 'billType',
-          display:false,
+          display: false,
           width: 100
         }, {
-        label: '备注',
-        prop: 'remarks',
-        type: 'textarea',
-        overHidden: true,
-        minRows: 3,
-        span: 24,
-        width: 200
-      }]
+          label: '生成账单日期',
+          prop: 'expenseGenerationTime',
+          width: 100,
+          overHidden: true,
+          type: "date",
+          display: false,
+          format: "yyyy-MM-dd",
+          valueFormat: "yyyy-MM-dd HH:mm:ss"
+        }, {
+          label: '备注',
+          prop: 'remarks',
+          type: 'textarea',
+          overHidden: true,
+          minRows: 3,
+          span: 24,
+          width: 200
+        }]
     },
       customsList: {
         align: 'center',
@@ -432,10 +474,29 @@ export default {
           decimals: 2
         }],
         column: [{
+          label: '账单状态',
+          prop: 'submitPay',
+          width: 100,
+          overHidden: true,
+          filterable: true,
+          display: false,
+          dataType: 'number',
+          type: "select",
+          dicUrl: "/api/blade-system/dict-biz/dictionary?code=billing_status",
+          props: {
+            label: "dictValue",
+            value: "dictKey"
+          }
+        }, {
           label: '收款对象',
           prop: 'corpName',
           overHidden: true,
-          width: 160
+          width: 160,
+          rules: [{
+            required: true,
+            message: "请选择收款对象",
+            trigger: "blur"
+          }]
         }, {
           label: '费用名称',
           prop: 'itemName',
@@ -514,6 +575,16 @@ export default {
           //   width: 100
           // },
           {
+            label: '生成账单日期',
+            prop: 'expenseGenerationTime',
+            width: 100,
+            overHidden: true,
+            type: "date",
+            display: false,
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd HH:mm:ss"
+          },
+          {
             label: '备注',
             prop: 'remark',
             type: 'textarea',
@@ -685,6 +756,7 @@ export default {
         generateBill(data).then(rest => {
           loading.close();
           this.$message.success('生成成功')
+          this.$parent.refresh(this.id)
           this.$emit("generateBill")
         }).catch(() => {
           loading.close();
@@ -713,6 +785,7 @@ export default {
         revokeBill(data).then(rest => {
           loading.close();
           this.$message.success('撤销成功')
+          this.$parent.refresh(this.id)
           this.$emit("generateBill")
         }).catch(() => {
           loading.close();
@@ -853,7 +926,6 @@ export default {
       const inSave = await this.delColumnData(this.getColumnName(code), this[optionBack]);
       this.$emit("resetTrigger")
       if (inSave) {
-
         this.findObject(this.option.column, "price").change = ({value, column}) => {
           if (value && this.form.quantity) {
             if (this.form.exchangeRate) {
@@ -887,6 +959,11 @@ export default {
             }
           }
         }
+        if (this.activeNameTwo === "first") {
+          this.findObject(this.option.column, "corpName").label = "收款对象"
+        } else {
+          this.findObject(this.option.column, "corpName").label = "付款对象"
+        }
         this.$message.success("重置成功");
         this.$refs[ref].$refs.dialogColumn.columnBox = false;
       }

+ 30 - 12
src/views/boxManagement/buyContainer/detailsPage.vue

@@ -64,6 +64,9 @@
         <template slot="addressForm" slot-scope="scope">
           <port-info v-model="formTwo.addressId" type="id" :disabled="scope.disabled" @balabalaTow="balabala"/>
         </template>
+        <template slot-scope="{ row }" slot="status">
+          <span v-for="item in $refs.crud.DIC.status" :style="{color: item.colour}" v-if="item.dictKey == row.status">{{item.dictValue}}</span>
+        </template>
         <!--        <template slot="boxMakingCompanyForm" slot-scope="scope">-->
         <!--          <crop-select v-model="formTwo.boxMakingCompanyId" :disabled="scope.disabled" :refresh="false"-->
         <!--                       @getCorpData="(row)=>{getGSData(row,['formTwo','boxMakingCompany'])}" corpType="GS"/>-->
@@ -388,6 +391,18 @@ export default {
             trigger: "blur"
           }]
         }, {
+          label: '状态',
+          prop: 'status',
+          width: 100,
+          overHidden: true,
+          filterable: true,
+          type: 'select',
+          dicUrl: "/api/blade-system/dict-biz/dictionary?code=box_archives_status",
+          props: {
+            label: "dictValue",
+            value: "dictKey"
+          }
+        }, {
           label: '币别',
           prop: 'currency',
           width: 100,
@@ -487,6 +502,21 @@ export default {
             trigger: "blur"
           }]
         }, {
+          label: '堆存状态',
+          prop: 'stackingStatus',
+          display:false,
+          overHidden: true,
+          width: 100
+        }, {
+          label: '堆存时间',
+          prop: 'stackingDate',
+          width: 100,
+          overHidden: true,
+          type: "date",
+          display:false,
+          format: "yyyy-MM-dd",
+          valueFormat: "yyyy-MM-dd HH:mm:ss"
+        }, {
           label: '空重(kg)',
           prop: 'emptyWeight',
           type: 'number',
@@ -532,18 +562,6 @@ export default {
           controls: false,
           width: 100
         }, {
-          label: '状态',
-          prop: 'status',
-          width: 100,
-          overHidden: true,
-          filterable: true,
-          type: 'select',
-          dicUrl: "/api/blade-system/dict-biz/dictionary?code=box_archives_status",
-          props: {
-            label: "dictValue",
-            value: "dictKey"
-          }
-        }, {
           label: '造箱公司',
           prop: 'boxMakingCompany',
           overHidden: true,

+ 31 - 10
src/views/boxManagement/exportShipment/detailsPage.vue

@@ -77,6 +77,9 @@
                      @click="rowDel(row,index,'MX')">删除
           </el-button>
         </template>
+        <template slot-scope="{ row }" slot="status">
+          <span v-for="item in $refs.crud.DIC.status" :style="{color: item.colour}" v-if="item.dictKey == row.status">{{item.dictValue}}</span>
+        </template>
         <template slot="menuLeft" slot-scope="scope">
           <el-button type="success" size="small" :disabled="option.disabled" @click="importBox">提取</el-button>
           <el-button :disabled="option.disabled" type="success" size="small" icon="el-icon-bottom" @click="importBoxTwo">导入</el-button>
@@ -702,6 +705,19 @@ export default {
             trigger: "blur"
           }]
         }, {
+          label: '状态',
+          prop: 'status',
+          width: 100,
+          overHidden: true,
+          filterable: true,
+          type: 'select',
+          dicUrl: "/api/blade-system/dict-biz/dictionary?code=box_access_status",
+          props: {
+            label: "dictValue",
+            value: "dictKey"
+          },
+          disabled: true
+        }, {
           label: '地点',
           prop: 'address',
           overHidden: true,
@@ -788,18 +804,20 @@ export default {
           overHidden: true,
           disabled: true
         }, {
-          label: '状态',
-          prop: 'status',
+          label: '堆存状态',
+          prop: 'stackingStatus',
+          display:false,
+          overHidden: true,
+          width: 100
+        }, {
+          label: '堆存时间',
+          prop: 'stackingDate',
           width: 100,
           overHidden: true,
-          filterable: true,
-          type: 'select',
-          dicUrl: "/api/blade-system/dict-biz/dictionary?code=box_access_status",
-          props: {
-            label: "dictValue",
-            value: "dictKey"
-          },
-          disabled: true
+          type: "date",
+          display:false,
+          format: "yyyy-MM-dd",
+          valueFormat: "yyyy-MM-dd HH:mm:ss"
         }]
       },
       dataList: [],
@@ -1483,6 +1501,9 @@ export default {
       }
     },
     resetTrigger() {
+      this.$nextTick(() => {
+        this.$refs.crud.doLayout()
+      })
       if (this.optionForm.disabled == true) {
         if (this.form.status > 0) {
           //基础资料

+ 28 - 10
src/views/boxManagement/importReturnTrip/detailsPage.vue

@@ -76,6 +76,9 @@
                      @click="rowDel(row,index,'MX')">删除
           </el-button>
         </template>
+        <template slot-scope="{ row }" slot="status">
+          <span v-for="item in $refs.crud.DIC.status" :style="{color: item.colour}" v-if="item.dictKey == row.status">{{item.dictValue}}</span>
+        </template>
         <template slot="menuLeft" slot-scope="scope">
           <el-button type="success" size="small" :disabled="option.disabled" @click="importBox">提取</el-button>
           <el-button :disabled="option.disabled" type="success" size="small" icon="el-icon-bottom" @click="importBoxTwo">导入</el-button>
@@ -705,6 +708,19 @@ export default {
             trigger: "blur"
           }]
         }, {
+          label: '状态',
+          prop: 'status',
+          width: 100,
+          overHidden: true,
+          filterable: true,
+          type: 'select',
+          dicUrl: "/api/blade-system/dict-biz/dictionary?code=box_access_status",
+          props: {
+            label: "dictValue",
+            value: "dictKey"
+          },
+          disabled: true
+        }, {
           label: '地点',
           prop: 'address',
           overHidden: true,
@@ -791,18 +807,20 @@ export default {
           overHidden: true,
           disabled: true
         }, {
-          label: '状态',
-          prop: 'status',
+          label: '堆存状态',
+          prop: 'stackingStatus',
+          display:false,
+          overHidden: true,
+          width: 100
+        }, {
+          label: '堆存时间',
+          prop: 'stackingDate',
           width: 100,
           overHidden: true,
-          filterable: true,
-          type: 'select',
-          dicUrl: "/api/blade-system/dict-biz/dictionary?code=box_access_status",
-          props: {
-            label: "dictValue",
-            value: "dictKey"
-          },
-          disabled: true
+          type: "date",
+          display:false,
+          format: "yyyy-MM-dd",
+          valueFormat: "yyyy-MM-dd HH:mm:ss"
         }]
       },
       dataList: [],

+ 38 - 14
src/views/boxManagement/leaseIn/detailsPage.vue

@@ -65,6 +65,9 @@
                      @click="rowDel(row,index,'MX')">删除
           </el-button>
         </template>
+        <template slot-scope="{ row }" slot="status">
+          <span v-for="item in $refs.crud.DIC.status" :style="{color: item.colour}" v-if="item.dictKey == row.status">{{item.dictValue}}</span>
+        </template>
         <template slot="addressForm" slot-scope="scope">
           <port-info v-model="formTwo.addressId" type="id" :disabled="scope.disabled" @balabalaTow="(val)=>{balabala(val,['formTwo','address'])}"/>
         </template>
@@ -526,6 +529,20 @@ export default {
             trigger: "blur"
           }]
         }, {
+          label: '状态',
+          prop: 'status',
+          width: 100,
+          overHidden: true,
+          filterable: true,
+          disabled: true,
+          search: true,
+          type: 'select',
+          dicUrl: "/api/blade-system/dict-biz/dictionary?code=box_archives_status",
+          props: {
+            label: "dictValue",
+            value: "dictKey"
+          }
+        }, {
           label: '币别',
           prop: 'currency',
           width: 100,
@@ -663,6 +680,21 @@ export default {
             trigger: "blur"
           }]
         }, {
+          label: '堆存状态',
+          prop: 'stackingStatus',
+          display:false,
+          overHidden: true,
+          width: 100
+        }, {
+          label: '堆存时间',
+          prop: 'stackingDate',
+          width: 100,
+          overHidden: true,
+          type: "date",
+          display:false,
+          format: "yyyy-MM-dd",
+          valueFormat: "yyyy-MM-dd HH:mm:ss"
+        }, {
           label: '箱来源',
           prop: 'boxSource',
           width: 100,
@@ -742,20 +774,6 @@ export default {
           controls: false,
           width: 100
         }, {
-          label: '状态',
-          prop: 'status',
-          width: 100,
-          overHidden: true,
-          filterable: true,
-          disabled: true,
-          search: true,
-          type: 'select',
-          dicUrl: "/api/blade-system/dict-biz/dictionary?code=box_archives_status",
-          props: {
-            label: "dictValue",
-            value: "dictKey"
-          }
-        }, {
           label: '造箱公司',
           prop: 'boxMakingCompany',
           overHidden: true,
@@ -1472,6 +1490,9 @@ export default {
       const inSave = await this.saveColumnData(this.getColumnName(code), this[option]);
       if (inSave) {
         this.$message.success("保存成功");
+        this.$nextTick(() => {
+          this.$refs.crud.doLayout()
+        })
         //关闭窗口
         this.$refs[ref].$refs.dialogColumn.columnBox = false;
       }
@@ -1519,6 +1540,9 @@ export default {
         //附件和顶部按钮
         this.disabled = false
       }
+      this.$nextTick(() => {
+        this.$refs.crud.doLayout()
+      })
       this.key++
     },
     //自定义列重置

+ 37 - 13
src/views/boxManagement/leaseOut/detailsPage.vue

@@ -65,6 +65,9 @@
                      @click="rowDel(row,index,'MX')">删除
           </el-button>
         </template>
+        <template slot-scope="{ row }" slot="status">
+          <span v-for="item in $refs.crud.DIC.status" :style="{color: item.colour}" v-if="item.dictKey == row.status">{{item.dictValue}}</span>
+        </template>
         <template slot="addressForm" slot-scope="scope">
           <port-info v-model="formTwo.addressId" type="id" :disabled="scope.disabled" @balabalaTow="(val)=>{balabala(val,['formTwo','address'])}"/>
         </template>
@@ -520,6 +523,19 @@ export default {
             trigger: "blur"
           }]
         }, {
+          label: '状态',
+          prop: 'status',
+          width: 100,
+          overHidden: true,
+          filterable: true,
+          disabled: true,
+          type: 'select',
+          dicUrl: "/api/blade-system/dict-biz/dictionary?code=box_archives_status",
+          props: {
+            label: "dictValue",
+            value: "dictKey"
+          }
+        }, {
           label: '币别',
           prop: 'currency',
           width: 100,
@@ -625,6 +641,21 @@ export default {
             trigger: "blur"
           }]
         }, {
+          label: '堆存状态',
+          prop: 'stackingStatus',
+          display:false,
+          overHidden: true,
+          width: 100
+        }, {
+          label: '堆存时间',
+          prop: 'stackingDate',
+          width: 100,
+          overHidden: true,
+          type: "date",
+          display:false,
+          format: "yyyy-MM-dd",
+          valueFormat: "yyyy-MM-dd HH:mm:ss"
+        }, {
           label: '箱来源',
           prop: 'boxSource',
           width: 100,
@@ -705,19 +736,6 @@ export default {
           controls: false,
           width: 100
         }, {
-          label: '状态',
-          prop: 'status',
-          width: 100,
-          overHidden: true,
-          filterable: true,
-          disabled: true,
-          type: 'select',
-          dicUrl: "/api/blade-system/dict-biz/dictionary?code=box_archives_status",
-          props: {
-            label: "dictValue",
-            value: "dictKey"
-          }
-        }, {
           label: '造箱公司',
           prop: 'boxMakingCompany',
           overHidden: true,
@@ -1444,6 +1462,9 @@ export default {
       const inSave = await this.saveColumnData(this.getColumnName(code), this[option]);
       if (inSave) {
         this.$message.success("保存成功");
+        this.$nextTick(() => {
+          this.$refs.crud.doLayout()
+        })
         //关闭窗口
         this.$refs[ref].$refs.dialogColumn.columnBox = false;
       }
@@ -1491,6 +1512,9 @@ export default {
         //附件和顶部按钮
         this.disabled = false
       }
+      this.$nextTick(() => {
+        this.$refs.crud.doLayout()
+      })
       this.key++
     },
     //自定义列重置

+ 30 - 12
src/views/boxManagement/sellingContainers/detailsPage.vue

@@ -63,6 +63,9 @@
                      @click="rowDel(row,index,'MX')">删除
           </el-button>
         </template>
+        <template slot-scope="{ row }" slot="status">
+          <span v-for="item in $refs.crud.DIC.status" :style="{color: item.colour}" v-if="item.dictKey == row.status">{{item.dictValue}}</span>
+        </template>
         <template slot="addressForm" slot-scope="scope">
           <port-info v-model="formTwo.addressId" type="id" :disabled="scope.disabled" @balabalaTow="balabala"/>
         </template>
@@ -389,6 +392,18 @@ export default {
             trigger: "blur"
           }]
         }, {
+          label: '状态',
+          prop: 'status',
+          width: 100,
+          overHidden: true,
+          filterable: true,
+          type: 'select',
+          dicUrl: "/api/blade-system/dict-biz/dictionary?code=box_archives_status",
+          props: {
+            label: "dictValue",
+            value: "dictKey"
+          }
+        }, {
           label: '币别',
           prop: 'currency',
           width: 100,
@@ -488,6 +503,21 @@ export default {
             trigger: "blur"
           }]
         }, {
+          label: '堆存状态',
+          prop: 'stackingStatus',
+          display:false,
+          overHidden: true,
+          width: 100
+        }, {
+          label: '堆存时间',
+          prop: 'stackingDate',
+          width: 100,
+          overHidden: true,
+          type: "date",
+          display:false,
+          format: "yyyy-MM-dd",
+          valueFormat: "yyyy-MM-dd HH:mm:ss"
+        }, {
           label: '空重(kg)',
           prop: 'emptyWeight',
           type: 'number',
@@ -533,18 +563,6 @@ export default {
           controls: false,
           width: 100
         }, {
-          label: '状态',
-          prop: 'status',
-          width: 100,
-          overHidden: true,
-          filterable: true,
-          type: 'select',
-          dicUrl: "/api/blade-system/dict-biz/dictionary?code=box_archives_status",
-          props: {
-            label: "dictValue",
-            value: "dictKey"
-          }
-        }, {
           label: '造箱公司',
           prop: 'boxMakingCompany',
           overHidden: true,

+ 12 - 9
src/views/boxManagement/stockpilingManage/detailsPage.vue

@@ -64,6 +64,9 @@
                      @click="rowDel(row,index,'MX')">删除
           </el-button>
         </template>
+        <template slot-scope="{ row }" slot="status">
+          <span v-for="item in $refs.crud.DIC.status" :style="{color: item.colour}" v-if="item.dictKey == row.status">{{item.dictValue}}</span>
+        </template>
         <template slot="addressForm" slot-scope="scope">
           <port-info v-model="formTwo.addressId" type="id" :disabled="scope.disabled" @balabalaTow="(val)=>{balabala(val,['formTwo','address'])}"/>
         </template>
@@ -946,9 +949,9 @@ export default {
         // this.$set(this.option, "addBtn", true)
         this.$set(this.option, "menu", true)
         //费用信息
-        this.$set(this.$refs.boxCost.option,"disabled",true)
-        this.$set(this.$refs.boxCost.option,"addBtn",false)
-        this.$set(this.$refs.boxCost.option,"menu",false)
+        this.$set(this.$refs.boxCost.option,"disabled",false)
+        this.$set(this.$refs.boxCost.option,"addBtn",true)
+        this.$set(this.$refs.boxCost.option,"menu",true)
         //附件和顶部按钮
         this.disabled = false
       }
@@ -1148,9 +1151,9 @@ export default {
             // this.$set(this.option, "addBtn", true)
             this.$set(this.option, "menu", true)
             //费用信息
-            this.$set(this.$refs.boxCost.option,"disabled",true)
-            this.$set(this.$refs.boxCost.option,"addBtn",false)
-            this.$set(this.$refs.boxCost.option,"menu",false)
+            this.$set(this.$refs.boxCost.option,"disabled",false)
+            this.$set(this.$refs.boxCost.option,"addBtn",true)
+            this.$set(this.$refs.boxCost.option,"menu",true)
             //附件和顶部按钮
             this.disabled = false
           }
@@ -1312,9 +1315,9 @@ export default {
           // this.$set(this.option, "addBtn", true)
           this.$set(this.option, "menu", true)
           //费用信息
-          this.$set(this.$refs.boxCost.option,"disabled",true)
-          this.$set(this.$refs.boxCost.option,"addBtn",false)
-          this.$set(this.$refs.boxCost.option,"menu",false)
+          this.$set(this.$refs.boxCost.option,"disabled",false)
+          this.$set(this.$refs.boxCost.option,"addBtn",true)
+          this.$set(this.$refs.boxCost.option,"menu",true)
           //附件和顶部按钮
           this.disabled = false
         }

+ 7 - 1
src/views/boxManagement/stockpilingManage/index.vue

@@ -117,6 +117,12 @@ export default {
           search: true,
           searchOrder:1,
         }, {
+          label: '来源单号',
+          prop: 'orgSysNo',
+          width: 120,
+          search: true,
+          searchOrder:1,
+        }, {
           label: '箱数',
           prop: 'boxNumber',
           width: 100
@@ -127,7 +133,7 @@ export default {
           width: 170
         }, {
           label: '起始日期',
-          prop: 'rentStartDate',
+          prop: 'startDate',
           overHidden: true,
           width: 120
         }, {

+ 32 - 20
src/views/exportTrade/purchaseContract/index.vue

@@ -156,20 +156,22 @@
         <el-row>
           <el-col :span="6" style="padding: 0 10px">
             <el-scrollbar>
-                <avue-tree :option="treeOption" :data="treeData" @node-click="nodeClick" />
+                <avue-tree :option="treeOption" :key="avueTree" :data="treeData" @node-click="nodeClick"/>
             </el-scrollbar>
           </el-col>
           <el-col :span="18">
 <!--            :page.sync="dialogPage"-->
-            <avue-crud :data="dialogData"
-                   :option="dialogOption"
-                   :search.sync="params"
-                   ref="dialogCrud"
-                   @resetColumn="resetColumnTwo('dialogCrud','dialogOption','dialogOptionList',2.1)"
-                   @saveColumn="saveColumnTwo('dialogCrud','dialogOption','dialogOptionList',2.1)"
-                   @refresh-change="refreshChangeTwo"
-                   @search-change="searchChangeTwo"
-                   @on-load="dialogOnLoad">
+            <avue-crud
+                :data="dialogData"
+                :option="dialogOption"
+                :search.sync="params"
+                ref="dialogCrud"
+                @resetColumn="resetColumnTwo('dialogCrud','dialogOption','dialogOptionList',2.1)"
+                @saveColumn="saveColumnTwo('dialogCrud','dialogOption','dialogOptionList',2.1)"
+                @refresh-change="refreshChangeTwo"
+                @search-change="searchChangeTwo"
+                @search-reset="searchReset"
+                @on-load="dialogOnLoad">
           <template slot="menuLeft">
                 <el-tabs v-model="activeName" @tab-click="tabHandle">
                   <el-tab-pane label="查询结果" name="searchList"/>
@@ -224,13 +226,13 @@ export default {
       search: {
         businesDate: defaultDate()
       },
-      treeData:[],
+      treeData: [],
+      avueTree: false,
       treeOption: {
         nodeKey: "id",
         lazy: true,
         treeLoad: function (node, resolve) {
-          listBYStatus({
-          }).then(res => {
+          listBYStatus({}).then(res => {
             resolve(
                 res.data.data.map(item => {
                   return {
@@ -498,9 +500,17 @@ export default {
     refreshChangeTwo(){
       this.dialogOnLoad(this.page);
     },
-    searchChangeTwo(params,done){
+    searchChangeTwo(params, done) {
       done()
-      this.dialogOnLoad(this.page);
+      if (!this.params.pid && !this.params.billNo) {
+        return this.$message.error("请选择左边单号或输入销售单号")
+      } else {
+        this.dialogOnLoad(this.page);
+      }
+    },
+    searchReset() {
+      this.avueTree = !this.avueTree
+      this.dialogData = []
     },
     //自定义列保存
     async saveColumnTwo(ref, option, optionBack, code) {
@@ -555,11 +565,13 @@ export default {
         current: page.currentPage,
         ...this.params
       }
-      listXS(params).then(res => {
-        this.dialogLoading = false
-        this.dialogData = res.data.data
-        this.dialogPage.total = res.data.data.total
-      })
+      if (this.params.pid || this.params.billNo) {
+        listXS(params).then(res => {
+          this.dialogLoading = false
+          this.dialogData = res.data.data
+          // this.dialogPage.total = res.data.data.total
+        })
+      }
     },
     onLoad(page, params) {
       if (this.search.businesDate && this.search.businesDate.length > 0) {

+ 7 - 0
src/views/exportTrade/salesContract/index.vue

@@ -277,6 +277,13 @@ export default {
       this.show = false;
       this.$store.commit("IN_XS_STATUS");
     }
+    if (this.$route.query.params){
+      this.detailData = {
+        id: this.$route.query.params
+      };
+      this.show = false;
+      this.$store.commit("IN_XS_STATUS");
+    }
   },
   methods: {
     searchCriteriaSwitch(type) {

+ 2 - 0
src/views/financialManagement/paymentSettle/paymentSettleDetailsPage.vue

@@ -117,6 +117,7 @@ import _ from "lodash";
 import { getUserInfo } from "@/api/system/user";
 import { getCorpDetail } from "@/api/maintenance/overpayment";
 import reportDialog from "@/components/report-dialog/main.vue";
+import {dateFormat} from "@/util/date";
 
 export default {
   name: "paymentDetailsPage",
@@ -405,6 +406,7 @@ export default {
     } else {
       this.form.financeStatus = "待结算"
       this.oldForm.financeStatus = "待结算"
+      this.form.settlementDate = dateFormat(new Date(), "yyyy-MM-dd") + " 00:00:00"
     }
 
     if (this.detailData.params) {

+ 2 - 0
src/views/financialManagement/receiptSettle/receiptSettleDetailsPage.vue

@@ -217,6 +217,7 @@
   import {getCorpDetail} from "@/api/maintenance/overpayment";
   import { getlistBankBy as GYSGetBank } from "@/api/basicData/configuration"
   import reportDialog from "@/components/report-dialog/main";
+  import {dateFormat} from "@/util/date";
 
   export default {
     name: "receiptDetailsPage",
@@ -510,6 +511,7 @@
       }else{
         this.form.financeStatus = "待结算"
         this.oldForm.financeStatus = "待结算"
+        this.form.settlementDate = dateFormat(new Date(), "yyyy-MM-dd") + " 00:00:00"
       }
     },
     mounted() {

+ 14 - 10
src/views/product/detailsPage.vue

@@ -40,15 +40,17 @@
       </trade-card>
       <trade-card title="库存管理" v-loading="loadingBtn">
         <avue-crud ref="crud" :option="optionList" :data="data" :table-loading="loading" @saveColumn="saveColumn"
-          @resetColumn="resetColumn" :cell-style="cellStyle">
+                   @resetColumn="resetColumn" :cell-style="cellStyle" @row-update="rowUpdate"  @row-save="rowSave">
           <template slot="headerSerial">
-            <el-button type="primary" icon="el-icon-plus" size="mini" @click.stop="addRow" :disabled="detailData.status == 1" circle></el-button>
+            <el-button type="primary" icon="el-icon-plus" size="mini" @click.stop="addRow"
+                       :disabled="detailData.status == 1" circle></el-button>
           </template>
           <template slot="storageIdHeader" slot-scope="{column}">
             <span style="color: #409EFF;cursor: pointer" @click.stop="storageVisible = true">仓库</span>
           </template>
           <template slot="menu" slot-scope="{ row, index }">
-            <el-button size="small" type="text" @click="rowCell(row, index)">{{row.$cellEdit ? "保存" : "修改"}}</el-button>
+            <el-button size="small" type="text" @click="rowCell(row, index)">{{ row.$cellEdit ? "保存" : "修改" }}
+            </el-button>
             <el-button size="small" type="text" @click="rowDel(row, index)">删除</el-button>
           </template>
         </avue-crud>
@@ -399,14 +401,16 @@ export default {
       return "padding:0;height:40px;";
     },
     addRow() {
-      this.data.push({ $cellEdit: true })
+      this.data.push({$cellEdit: true})
     },
     rowCell(row, index) {
-      if (row.$cellEdit == true) {
-        this.$set(row, "$cellEdit", false);
-      } else {
-        this.$set(row, "$cellEdit", true);
-      }
+      this.$refs.crud.rowCell(row, index)
+    },
+    rowSave(form, done) {
+      done()
+    },
+    rowUpdate(form, index, done) {
+      done()
     },
     rowDel(row, index) {
       this.$confirm("确定删除数据?", {
@@ -415,7 +419,7 @@ export default {
         type: "warning"
       }).then(() => {
         if (row.id) {
-          itemRemove({ ids: row.id }).then(res => {
+          itemRemove({ids: row.id}).then(res => {
             this.$message({
               type: "success",
               message: "删除成功!"

+ 16 - 2
src/views/product/js/optionList.js

@@ -144,7 +144,14 @@ export const optionList = {
       dicData:[],
       filterable:true,
       cell: true,
-      overHidden: true
+      // overHidden: true,
+      rules: [
+        {
+          required: true,
+          message: "",
+          trigger: "blur"
+        }
+      ],
     },
     {
       label: "库存数量",
@@ -152,7 +159,14 @@ export const optionList = {
       type: 'number',
       controls: false,
       cell: true,
-      overHidden: true
+      // overHidden: true,
+      rules: [
+        {
+          required: true,
+          message: "",
+          trigger: "blur"
+        }
+      ],
     },
     {
       label: "批次号",

+ 3 - 3
src/views/salesOrder/detailsPage.vue

@@ -249,15 +249,15 @@ export default {
             label: "销售日期",
             prop: "businesDate",
             type: "datetime",
-            format: "yyyy-MM-dd hh:mm:ss",
-            valueFormat: "yyyy-MM-dd hh:mm:ss",
+            format: "yyyy-MM-dd HH:mm:ss",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
             span: 8,
           }, {
             label: "计划收款日期",
             prop: "advanceCollectionDate",
             type: "date",
             format: "yyyy-MM-dd",
-            valueFormat: "yyyy-MM-dd hh:mm:ss",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
             span: 8,
           }, {
             label: "送货日期",

+ 40 - 1
src/views/wel/home/equipmentControl/components/sales-reached.vue

@@ -27,7 +27,10 @@
       <span>
         <avue-crud :page.sync="page" :search.sync="search" :loading="loadingTwo" :data="dataList" :option="option"
                    @on-load="onLoad">
-</avue-crud>
+          <template slot="menuLeft">
+              <el-button type="primary" size="mini" @click.stop="outExport()">导出</el-button>
+            </template>
+        </avue-crud>
       </span>
       <span slot="footer" class="dialog-footer">
     <el-button @click="dialogVisible = false">取 消</el-button>
@@ -39,6 +42,7 @@
 
 <script>
 import {distribution, boxDataAnalysisDetails} from "@/api/wel";
+import {getToken} from "@/util/auth";
 
 export default {
   name: "basicContainer",
@@ -136,6 +140,41 @@ export default {
     clearInterval(this.entrustTimer); //关闭
   },
   methods: {
+    outExport() {
+      let config = {params: {...this.search}}
+      if (config.params) {
+        for (const propName of Object.keys(config.params)) {
+          const value = config.params[propName];
+          if (value !== null && typeof (value) !== "undefined") {
+            if (value instanceof Array) {
+              for (const key of Object.keys(value)) {
+                let params = propName + '[' + key + ']';
+                config.params[params] = value[key]
+              }
+              delete config.params[propName]
+            }
+          }
+        }
+      }
+      const routeData = this.$router.resolve({
+        path: '/api/blade-box-tube/boxDataAnalysis/detailsExport',      //跳转目标窗口的地址
+        query: {
+          ...config.params,    //括号内是要传递给新窗口的参数
+        }
+      })
+      this.$confirm('是否导出数据?', '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+      }).then(() => {
+        window.open(routeData.href.slice(1, routeData.href.length) + '&' + `${this.website.tokenHeader}=${getToken()}`);
+      }).catch(() => {
+        this.$message({
+          type: 'info',
+          message: '已取消'
+        });
+      })
+    },
     //点击获取图表数据
     handleMousedown(params) {
       this.search.address = this.listData.address[params.dataIndex]