浏览代码

Merge branch 'master' of http://git.zthymaoyi.com/gdc/yiliangyiyun-pc

gjy 4 年之前
父节点
当前提交
7464c10160

+ 8 - 2
src/api/V2/warehouse/index.js

@@ -18,13 +18,19 @@ export const API_GET_WAREHOUSE_DELETE = '/warehouseBaseInfo/api/deleteWarehouse'
 //仓库编辑
 export const API_POST_WAREHOUSE_EDIT = '/warehouseBaseInfo/api/editWarehouse'
 //盘损
-export const API_POST_WAREHOUSE_IOSS = '/warehouseInventoryCountInfo/getInfo'
+export const API_GET_WAREHOUSE_IOSS = '/warehouseInventoryCountInfo/getInfo'
 //货名下拉
-export const API_POST_WAREHOUSE_NAME = '/warehousePositionStorageInfo/selectGoodsName'
+export const API_GET_WAREHOUSE_NAME = '/warehousePositionStorageInfo/selectGoodsName'
 
 // 货名等下拉
 export const API_GET_CUSTOMDROPDOWN_CUSTOMDROPDOWN = `/commonSysParameter/getInfo`
 // 入库添加
 export const API_POST_STORAGE_PUT = `/warehouseInOutInfo/InOutWarehouse `
+
+//盘损提交
+export const API_POST_STORAGE_IOSS = '/warehouseInventoryCountInfo/addInventory'
+
+
 //待完善记录
 export const API_GET_WAREHOUSE_COMPLETE = '/warehouseInOutInfo/selectWarehouseInOutInfo'
+

+ 2 - 1
src/lang/zh.js

@@ -501,7 +501,7 @@
     warehouseManagementRecord:'记录',
     warehouseManagementNoComplete:'待完成',
     warehouseManagementPerfectput:'编辑',
-  
+    warehouseManagementPerfectDelivery:'编辑',
 
 
     // 采购模块
@@ -4696,6 +4696,7 @@
     warehouseManagementRecord:'记录',
     warehouseManagementNoComplete:'待完成',
     warehouseManagementPerfectput:'编辑',
+    warehouseManagementPerfectDelivery:'编辑',
 
   },
   // 年度培训

+ 10 - 5
src/model/warehouse/index.js

@@ -10,11 +10,13 @@ import {
     API_POST_WAREHOUSE_HIDE,
     // API_GET_WAREHOUSE_DELETE,
     API_POST_WAREHOUSE_EDIT,
-    API_POST_WAREHOUSE_IOSS,
-    API_POST_WAREHOUSE_NAME,
+    API_GET_WAREHOUSE_IOSS,
+    API_GET_WAREHOUSE_NAME,
     API_GET_CUSTOMDROPDOWN_CUSTOMDROPDOWN,
     API_POST_STORAGE_PUT,
-    API_GET_WAREHOUSE_COMPLETE,
+    API_POST_STORAGE_IOSS,
+     API_GET_WAREHOUSE_COMPLETE,
+
 } from '@/api/V2/warehouse'
 // 列表
 export const getList = appRx.get(API_GET_WAREHOUSE_BASEINFO, errorCatcher, errorHandle, filter)
@@ -35,13 +37,16 @@ export const hide = appRx.post(API_POST_WAREHOUSE_HIDE, errorCatcher, errorHandl
 //仓库编辑
 export const edit = appRx.post(API_POST_WAREHOUSE_EDIT, errorCatcher, errorHandle, filter)
 //盘损
-export const ioss = appRx.post(API_POST_WAREHOUSE_IOSS, errorCatcher, errorHandle, filter)
+export const ioss = appRx.get(API_GET_WAREHOUSE_IOSS, errorCatcher, errorHandle, filter)
 //货名下拉
-export const goodsname = appRx.get(API_POST_WAREHOUSE_NAME, errorCatcher, errorHandle, filter)
+export const goodsname = appRx.get(API_GET_WAREHOUSE_NAME, errorCatcher, errorHandle, filter)
 // 货名等下拉
 export const pullDown = appRx.get(API_GET_CUSTOMDROPDOWN_CUSTOMDROPDOWN, errorCatcher, errorHandle, filter)
 // 入库添加
 export const addstorageputList = appRx.post(API_POST_STORAGE_PUT, errorCatcher, errorHandle, filter)
+//盘损提交
+export const submitioss = appRx.post(API_POST_STORAGE_IOSS, errorCatcher, errorHandle, filter)
 //待完善记录
 export const complete = appRx.get(API_GET_WAREHOUSE_COMPLETE, errorCatcher, errorHandle, filter)
 
+

+ 19 - 0
src/views/warehouse/component/router/index.js

@@ -198,6 +198,25 @@ const warehouseManagementRouter = {
       },
       hidden: true
     },
+    {
+      path: 'warehouseManagementPerfectDelivery',
+      component: () =>
+        import(/* webpackChunkName: "applDetail" */ '@/views/warehouse/warehouseManagementPerfectDelivery'),
+      name: 'warehouseManagementPerfectDelivery',
+      meta: {
+        title: 'warehouseManagementPerfectDelivery',
+        shortcutEntrance: 'warehouseManagementPerfectDelivery',
+        module: 'warehouse.warehouseManagementPerfectDelivery',
+        permissicon: [],
+        keepAlive: true
+        // module: 'procurement.sparepart.applDetail'
+      },
+      hidden: true
+    },
+
+
+
+    
   ],
 };
 export default warehouseManagementRouter;

+ 50 - 3
src/views/warehouse/warehouseManagementAdd.vue

@@ -169,7 +169,7 @@ npm install vue-amap --save// 仓库添加
       />
     </ws-form>
     <!-- <ws-button @click="exportlist()"></ws-button> -->
-    <map-drag @marker="marker" @selectedAddress="selectedAddress"></map-drag>
+    <map-drag @marker="marker" @selectedAddress="selectedAddress" class="position"></map-drag>
     <!-- 提交 -->
     <div style="text-align: right; padding: 10px" class="center">
       <el-button
@@ -187,9 +187,7 @@ npm install vue-amap --save// 仓库添加
 //  import { dayjs } from 'base-core-lib'
 import { regionData, CodeToText, TextToCode } from 'element-china-area-data'
 import {
-  packList,
   addList,
-  xiala,
   addxiala,
   editxiala,
   delxiala,
@@ -714,4 +712,53 @@ export default {
 .ws-info-table .el-form-item {
   width: 33.33%;
 }
+//去边框
+/deep/.el-form-item{
+    border-right:0px; 
+   border-bottom: 0px;
+}
+/deep/.ws-info-table{
+border-left: 0px; 
+     border-top: 0px;
+}
+.ws-info-table .el-form-item .el-form-item__content{
+   border-right:0px; 
+   border-bottom: 0px;
+   border-left: 0px; 
+     border-top: 0px;
+}
+/deep/.ws-info-table .el-form-item {
+  border-right:0px; 
+   border-bottom: 0px;
+   border-left: 0px; 
+     border-top: 0px;
+}
+/deep/.ws-info-table .el-form-item .el-form-item__content{
+background: #F5F7FA;
+border-radius: 4px;
+border: 1px solid #D8DCE6;
+font-family: PingFangSC-Regular, PingFang SC;
+margin-bottom: 5px;
+ background-color: #fff;
+ font-size: 14px;
+ font-weight: 400;
+color: #8890B1;
+line-height: 16px;
+}
+/deep/.ws-info-table .el-form-item .el-form-item__label{
+  background-color: #fff;
+  font-size: 14px;
+  font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #8890B1;
+ line-height: 16px;
+}
+
+/deep/.ws-info-table .el-form-item .el-form-item__content {
+  border: 0px;
+}
+//地图
+// .position{
+//   margin: 0 auto;
+// }
 </style>

+ 14 - 4
src/views/warehouse/warehouseManagementDelete.vue

@@ -6,13 +6,18 @@
         <h2 class="bg-left title">删除仓库</h2>
       </el-col>
       <el-col :span="4" class="bg-right">
-        <el-button
+         <el-button
           class="bg-bottom"
           type="primary"
           size="small"
           @click="returnWarehouse()"
-          >返回</el-button
-        >
+          ><img
+            width="6"
+            height="10"
+            style="vertical-align: bottom; margin-right: 3px"
+            src="../../../public/img/lujing.png"
+            alt=""
+          />返回</el-button>
       </el-col>
     </el-row>
    <div class="connert">
@@ -176,7 +181,6 @@ export default {
     },
     //隐藏
     handleHide(row) { 
-      console.log(row.showFlag)
       if(row.showFlag==1){
         this.$confirm(`隐藏后将对其他用户不可见,是否确认隐藏`, {
         cancelButtonText: '取消',
@@ -264,4 +268,10 @@ export default {
   width: 62px;
   text-align: right;
 }
+.bg-right{
+  float: right;
+}
+.bg-bottom{
+  margin-right: 20px;
+}
 </style>

+ 96 - 92
src/views/warehouse/warehouseManagementIoss.vue

@@ -14,15 +14,19 @@
         >
       </el-col>
     </el-row>
-    <div class="center">
-      <h2>鲅鱼圈一号库  102仓位</h2>
-      <ws-form ref="deptBudgetList" :model="deptBudgetList">
+    <div class="center">  
+      <ws-form ref="deptBudgetList" :model="deptBudgetList" :rules="rules">
+        <h2>                      
+          {{deptBudgetList1.warehouseName }}库
+          {{deptBudgetList1.binNumber }}仓位
+      </h2>
         <!-- 货名 -->
-        <ws-form-item label="货名" span="1"  class="readonly">
+        <ws-form-item label="货名" span="1"  class="readonly" prop="goodsName">
           <ws-select
+            v-model="deptBudgetList.goodsName"
             placeholder=""
             class="typeselect"
-            @change="selectpackingMethod"
+            @change="changeioss"
           >
             <ws-option
               v-for="item in goodnameList"
@@ -33,73 +37,34 @@
           </ws-select>
         </ws-form-item>
         <!--当期累计入库量-->
-        <ws-form-item label="当期累计入库量(吨)" span="1" prop="shippingType">
-          <ws-input
-            v-model="deptBudgetList.shippingType"
-            placeholder="当期累计入库量(吨)"
-            maxlength="20"
-            size="small"
-          />
+        <ws-form-item label="当期累计入库量(吨)" span="1" prop="cumulativeStockIn">
+          {{deptBudgetList.cumulativeStockIn}}
         </ws-form-item>
-
         <!--当期累计出库量(吨)-->
-        <ws-form-item
-          label="当期累计出库量(吨)"
-          span="1"
-          prop="buyer"
-          class="readonly"
-        >
-          <ws-input
-            v-model="deptBudgetList.buyer"
-            placeholder="当期累计出库量(吨)"
-            maxlength="100"
-            size="small"
-          />
+        <ws-form-item label="当期累计出库量(吨)" span="1" prop="cumulativeStockOut" class="readonly">
+          {{deptBudgetList.cumulativeStockOut}}
         </ws-form-item>
-
         <!--应余库存(吨)-->
-        <ws-form-item label="应余库存(吨)" span="1" prop="settlementMethod">
-          <ws-input
-            v-model="deptBudgetList.settlementMethod"
-            placeholder="应余库存(吨)"
-            maxlength="120"
-            size="small"
-          />
+        <ws-form-item label="应余库存(吨)" span="1" prop="surplusInventory">
+         {{deptBudgetList.cumulativeStockIn-deptBudgetList.cumulativeStockOut > 0 ? deptBudgetList.cumulativeStockIn-deptBudgetList.cumulativeStockOut : 0}}
         </ws-form-item>
-
         <!--实际库存(吨)-->
-        <ws-form-item
-          label="实际库存(吨)"
-          span="1"
-          prop="seller"
-          class="readonly"
-        >
+        <ws-form-item label="实际库存(吨)" span="1" prop="physicalInventory" class="readonly">
           <ws-input
-            v-model="deptBudgetList.seller"
-            placeholder="实际库存(吨)"
+            v-model="deptBudgetList.physicalInventory"
+            placeholder="请输入实际库存(吨)"
             maxlength="100"
             size="small"
           />
         </ws-form-item>
-
         <!--损耗量(吨)-->
-        <ws-form-item label="损耗量(吨)" span="1" prop="sourceGoods">
-          <ws-input
-            v-model="deptBudgetList.sourceGoods"
-            placeholder="损耗量(吨)"
-            maxlength="20"
-            size="small"
-          />
+        <ws-form-item label="损耗量(吨)" span="1" prop="ioss">
+          {{(deptBudgetList.cumulativeStockIn-deptBudgetList.cumulativeStockOut)-deptBudgetList.physicalInventory > 0 ? (deptBudgetList.cumulativeStockIn-deptBudgetList.cumulativeStockOut)-deptBudgetList.physicalInventory : 0}}
         </ws-form-item>
-
         <!--库损比例-->
-        <ws-form-item label="库损比例" span="1" prop="contractNo">
-          <ws-input
-            v-model.number="deptBudgetList.buyerPhone"
-            placeholder="库损比例"
-            maxlength="100"
-            size="small"
-          />
+        <ws-form-item label="库损比例" span="1" prop="inventoryRatio">
+          <!-- .占比=损耗量÷(累计入库-实际库存) -->
+          {{((deptBudgetList.cumulativeStockIn-deptBudgetList.cumulativeStockOut)-deptBudgetList.physicalInventory)/(deptBudgetList.cumulativeStockIn-deptBudgetList.physicalInventory) > 0 ? ((deptBudgetList.cumulativeStockIn-deptBudgetList.cumulativeStockOut)-deptBudgetList.physicalInventory)/(deptBudgetList.cumulativeStockIn-deptBudgetList.physicalInventory) : 0 }} {{'‰'}}
         </ws-form-item>
         <p>注:提交成功后,当期实际库存将作为下一期的初始库存。</p>
       </ws-form>
@@ -119,6 +84,8 @@
 <script>
 import {
   goodsname,
+  ioss,
+  submitioss,
 } from '@/model/warehouse/index'
 
 import { downloadFile } from '@/utils/batchDown'
@@ -169,14 +136,25 @@ export default {
       compId: sessionStorage.getItem('ws-pf_compId'),
       deptCircularPage: {},
       packtypeList: {},
+      deptBudgetList1:[],
       date: {
         year: dayjs().format('YYYY'),
         month: dayjs().format('MM'),
       },
+
       contractList: [],
-      deptBudgetList: {},
+      deptBudgetList:{},
       historyList: [],
-
+       rules: {
+        netWeight: [
+          {
+            required: true,
+            type: 'number',
+            message: '请输入活动名称',
+            trigger: 'blur',
+          },
+        ],
+      },
       pickerBeginDateBefore: {
         disabledDate: (time) => {
           return time.getTime() > Date.now()
@@ -191,6 +169,18 @@ export default {
     // this.getVesselData();
     this.loaddata()
     this.showType = this.isShow
+  },
+   mounted() {
+    this.deptBudgetList.baseId = this.$route.query.baseId
+    this.deptBudgetList.positionId = this.$route.query.positionId
+    this.deptBudgetList.warehouseName = this.$route.query.warehouseName
+    this.deptBudgetList.binNumber = this.$route.query.binNumber
+    this.deptBudgetList1.warehouseName = this.$route.query.warehouseName
+    this.deptBudgetList1.binNumber = this.$route.query.binNumber
+   this.deptBudgetList1.baseId=this.$route.query.baseId
+    this.deptBudgetList1.positionId=this.$route.query.positionId
+    // this.deptBudgetList1.goodsNameKey=this.deptBudgetList.goodsNameKey
+    // this.getList()
   },
   methods: {
     //返回按钮
@@ -199,7 +189,34 @@ export default {
     },
     //提交按钮
     submit(){
-      this.$router.push({ path: 'warehouseManagementList' })
+       this.$refs.deptBudgetList.validate((valid) => {
+        if (valid) {
+          this.deptBudgetList.surplusInventory=this.deptBudgetList.cumulativeStockIn-this.deptBudgetList.cumulativeStockOut
+          this.deptBudgetList.loss=(this.deptBudgetList.cumulativeStockIn-this.deptBudgetList.cumulativeStockOut)-this.deptBudgetList.physicalInventory
+         this.deptBudgetList.inventoryRatio=((this.deptBudgetList.cumulativeStockIn-this.deptBudgetList.cumulativeStockOut)-this.deptBudgetList.physicalInventory)/(this.deptBudgetList.cumulativeStockIn-this.deptBudgetList.physicalInventory)
+         this.deptBudgetList.baseId=this.deptBudgetList1.baseId
+          this.deptBudgetList.positionId=this.deptBudgetList1.positionId
+          this.deptBudgetList.binNumber=this.deptBudgetList1.binNumber
+          this.deptBudgetList.warehouseName=this.deptBudgetList1.warehouseName
+       for (var i = 0; i < this.goodnameList.length; i++) {
+        if (this.goodnameList[i].goodsName == this.deptBudgetList.goodsName) {
+          this.deptBudgetList.goodsNameKey = this.goodnameList[i].goodsNameKey
+        }
+      }
+         this.deptBudgetList.compId = this.compId
+          this.deptBudgetList.contractType = 1
+          console.log(this.deptBudgetList)
+         submitioss(this.deptBudgetList)
+            .toPromise()
+            .then((response) => {
+              this.$message.success('提交成功')
+              this.$router.push({ path: 'warehouseManagementList' })
+            })
+        } else {
+          //EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
+          return false
+        }
+      })
     },
     dateFormat(fmt, date) {
       let ret
@@ -235,44 +252,32 @@ export default {
       this.currentPage = val
       console.log(`当前页: ${val}`)
       this.getList()
+    },
+    changeioss(e){
+        for (var i = 0; i < this.goodnameList.length; i++) {
+        if (this.goodnameList[i].goodsName == e) {
+          this.deptBudgetList.goodsNameKey = this.goodnameList[i].goodsNameKey
+        }
+      }  
+      this.ioss()
+    },
+     ioss(){
+      ioss(
+        this.deptBudgetList
+      )
+        .toPromise()
+        .then((response) => {
+         this.deptBudgetList=response     
+        })
     },
      loaddata() {
       // 货名
-      goodsname({ constId: 'CON2' })
+      goodsname({positionId : this.$route.query.positionId})
         .toPromise()
         .then((response) => {
           this.goodnameList = response
         })
     },
-    // getList() {
-    //   getList({
-    //     compId: sessionStorage.getItem('ws-pf_compId'),
-    //     contractType: this.contractType,
-    //     currentPage: this.currentPage,
-    //     pageSize: this.pageSize,
-    //     searchType: this.searchType,
-    //     searchKeyWord: this.searchKeyWord,
-    //     startDate: this.startDate,
-    //     endDate: this.endDate,
-    //     contrPage: this.contrPage,
-    //   })
-    //     .toPromise()
-    //     .then((response) => {
-    //       for (var i = 0; i < response.records.length; i++) {
-    //         if (response.records[i].addressUrl != null) {
-    //           response.records[i].addressUrlArray = response.records[
-    //             i
-    //           ].addressUrl.split(',')
-    //         } else {
-    //           response.records[i].addressUrlArray = []
-    //         }
-    //       }
-    //       this.deptCircularPage.currentPage = response.current
-    //       this.deptCircularPage.pageSize = response.size
-    //       this.deptBudgetTotal = response.total
-    //       this.contractList = response
-    //     })
-    // },
     selecttaskType(e) {
       for (var i = 0; i < this.taskTypeList.length; i++) {
         if (this.taskTypeList[i].value == e) {
@@ -292,7 +297,6 @@ export default {
           this.historyList = response
         })
     },
-   
     // deletecontract(){},
     //删除
     approve() {},

+ 14 - 11
src/views/warehouse/warehouseManagementList.vue

@@ -146,8 +146,8 @@
             </ws-button>
           </template>
         </el-table-column>
-        <el-table-column prop="address" label="操作" width="200">
-          <!-- <template slot-scope="scope"> -->
+        <el-table-column prop="address" label="操作" width="200" >
+         <template slot-scope="scope"> 
           <ws-button
             type="primary"
             @click="record()"
@@ -159,13 +159,13 @@
 
           <ws-button
             type="primary"
-            @click="loss()"
+            @click="loss(scope.row)"
             v-hasPermission="
               `${$permission('PERMISSIONS.PURSPAPPLINFO_CREATEINSTORE')}`
             "
             >盘损</ws-button
           >
-          <!-- </template> -->
+          </template> 
         </el-table-column>
       </el-table>
     </div>
@@ -322,13 +322,16 @@ export default {
       this.$router.push({ path: 'warehouseManagementRecord' })
     },
     //盘损
-    loss() {
-      // console.log(row.positionId)
-      // this.$router.push({
-      //   name: 'warehouseManagementIoss',
-      //   params: {positionId: row.positionId },
-      // })
-       this.$router.push({ path: 'warehouseManagementIoss' })
+    loss(item) {
+     this.$router.push({
+        path: 'warehouseManagementIoss',
+        query: {
+          baseId: item.warehouseId,
+          positionId: item.binNumberId,
+          warehouseName: item.warehouseName,
+          binNumber: item.binNumber,
+        },
+      })
     },
     //查看
     handleLook() {

+ 64 - 7
src/views/warehouse/warehouseManagementLook.vue

@@ -10,14 +10,20 @@
           type="primary"
           size="small"
           @click="returnWarehouse()"
-          >返回</el-button
-        >
+          ><img
+            width="6"
+            height="10"
+            style="vertical-align: bottom; margin-right: 3px"
+            src="../../../public/img/lujing.png"
+            alt=""
+          />返回</el-button>
       </el-col>
     </el-row>
     <div class="center">
       <ws-form ref="deptBudgetList" :model="deptBudgetList">
+        <h3>基本信息</h3>
         <!--基本信息-->
-        <ws-info-table>
+        <ws-info-table> 
           <!--仓库名称-->
           <ws-form-item
             label="仓库名称"
@@ -27,7 +33,7 @@
           >
             <ws-select
               v-model="deptBudgetList.warehouseName"
-              placeholder=""
+              placeholder="请输入仓库名称"
               class="typeselect"
               @change="selectpackingMethod"
             >
@@ -64,10 +70,10 @@
           <ws-form-item label="总储量(吨)" span="1" prop="totalStorage">      
             {{deptBudgetList.totalStorage}}
           </ws-form-item>
-          </ws-info-table>
+           </ws-info-table> 
           
           <div v-for='item in deptBudgetList.warehousePositionInfoList'>
-            <ws-info-table>
+             <ws-info-table> 
           <!--仓位编号-->
           <ws-form-item label="仓位编号" span="1" prop="binNumber" class="forlist">
             <!-- <ws-input
@@ -108,7 +114,7 @@
             /> -->
             {{item.remark}}
           </ws-form-item>
-          </ws-info-table>
+         </ws-info-table> 
           </div>
       </ws-form>
     </div>
@@ -307,4 +313,55 @@ export default {
 .forlist{
   width: 16.67%;
 }
+//文字基本信息
+.center h3{
+  margin-left: 42px;
+}
+//去边框
+/deep/.el-form-item{
+    border-right:0px; 
+   border-bottom: 0px;
+}
+/deep/.ws-info-table{
+border-left: 0px; 
+     border-top: 0px;
+}
+.ws-info-table .el-form-item .el-form-item__content{
+   border-right:0px; 
+   border-bottom: 0px;
+   border-left: 0px; 
+     border-top: 0px;
+}
+/deep/.ws-info-table .el-form-item {
+  border-right:0px; 
+   border-bottom: 0px;
+   border-left: 0px; 
+     border-top: 0px;
+}
+//背景
+/deep/.ws-info-table .el-form-item .el-form-item__content{
+background: #F5F7FA;
+border-radius: 4px;
+border: 1px solid #D8DCE6;
+font-family: PingFangSC-Regular, PingFang SC;
+margin-bottom: 5px;
+ background-color: #eee;
+ font-size: 14px;
+ font-weight: 400;
+color: #8890B1;
+line-height: 16px;
+}
+/deep/.ws-info-table .el-form-item .el-form-item__label{
+  background-color: #fff;
+  font-size: 14px;
+  font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #8890B1;
+ line-height: 16px;
+}
+//多选框
+/deep/.el-input__inner{
+  display: inline-block;
+  background-color: #eee;
+}
 </style>

+ 505 - 0
src/views/warehouse/warehouseManagementPerfectDelivery.vue

@@ -0,0 +1,505 @@
+// 完善入库信息
+<template>
+  <div class="container">
+    <el-row>
+      <el-col :span="20">
+        <h2 class="bg-left title">完善出库信息</h2>
+      </el-col>
+      <el-col :span="4" class="bg-right">
+        <el-button
+          class="bg-bottom"
+          type="primary"
+          size="small"
+          @click="returnNoComplete()"
+          >返回</el-button
+        >
+      </el-col>
+    </el-row>
+    <div class="center">
+      <h2>鲅鱼圈一号库 102仓位</h2>
+      <ws-form ref="deptBudgetList" :model="deptBudgetList">
+        
+        <!--毛重(吨)-->
+        <ws-form-item label="毛重(吨)" span="1" prop="shippingType">
+          <ws-input
+            v-model="deptBudgetList.shippingType"
+            placeholder="请输入毛重"
+            maxlength="20"
+            size="small"
+          />
+        </ws-form-item>
+
+        <!--皮重(吨)-->
+        <ws-form-item label="皮重(吨)" span="1" prop="buyer" class="readonly">
+          <ws-input
+            v-model="deptBudgetList.buyer"
+            placeholder="请输入皮重"
+            maxlength="100"
+            size="small"
+          />
+        </ws-form-item>
+
+        <!--净重(吨)-->
+        <ws-form-item label="净重(吨)" span="1" prop="settlementMethod">
+          <ws-input
+            v-model="deptBudgetList.settlementMethod"
+            placeholder="不可编辑,自动计算"
+            maxlength="120"
+            size="small"
+          />
+        </ws-form-item>
+        <!-- 品级 -->
+        <ws-form-item label="品级" span="1" class="readonly">
+          <ws-select
+            placeholder=""
+            class="typeselect"
+            @change="selectpackingMethod"
+          >
+            <ws-option
+              v-for="item in goodnameList"
+              :key="item.constKey"
+              :label="item.constValue"
+              :value="item.constValue"
+            />
+          </ws-select>
+        </ws-form-item>
+
+        <!--经办人-->
+        <ws-form-item label="经办人" span="1" prop="seller" class="readonly">
+          <ws-input
+            v-model="deptBudgetList.seller"
+            placeholder="请输入出库经办人姓名"
+            maxlength="100"
+            size="small"
+          />
+        </ws-form-item>
+        <!--出库日期-->
+        <ws-form-item
+          label="出库日期"
+          span="1"
+          prop="signingDate"
+          class="deliverydate"
+        >
+          <ws-date-picker
+            v-model="deptBudgetList.signingDate"
+            type="date"
+            placeholder="请选择出库日期"
+            value-format="yyyy-MM-dd"
+          />
+        </ws-form-item>
+        <!-- 出库类型 -->
+        <ws-form-item label="出库类型" span="1" class="readonly">
+          <ws-select
+            placeholder=""
+            class="typeselect"
+            @change="selectpackingMethod"
+          >
+            <ws-option
+              v-for="item in goodnameList"
+              :key="item.constKey"
+              :label="item.constValue"
+              :value="item.constValue"
+            />
+          </ws-select>
+        </ws-form-item>
+
+        <!--车牌号-->
+        <ws-form-item label="车牌号" span="1" prop="sourceGoods">
+          <ws-input
+            v-model="deptBudgetList.sourceGoods"
+            placeholder="请输入车牌号"
+            maxlength="20"
+            size="small"
+          />
+        </ws-form-item>
+
+        <!--合同编号-->
+        <ws-form-item label="合同编号" span="1" prop="contractNo">
+          <ws-input
+            v-model.number="deptBudgetList.buyerPhone"
+            placeholder="请输入合同编号"
+            maxlength="100"
+            size="small"
+          />
+        </ws-form-item>
+
+        <ws-upload
+          ref="upload"
+          table-name="maintain_work_order"
+          oss-key="mainPlan"
+          :comp-id="compId"
+          :appendix-ids="appendixIdsAdd"
+          :vesselId="deptBudgetList.addressUrl"
+          :size-limit="size"
+          @uploadSuccess="uploadSuccess"
+          @onChange="onChange"
+          accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar"
+        />
+
+        <div class="choice">
+          <h2>化验数据(选填)</h2>
+          <ws-info-table>
+            <!--自检员-->
+            <ws-form-item label="自检员" span="1" prop="settlementMethod">
+              <ws-input
+                v-model="deptBudgetList.settlementMethod"
+                placeholder="请输入自检员姓名"
+                maxlength="120"
+                size="small"
+              />
+            </ws-form-item>
+
+            <!--水分(%)<=-->
+            <ws-form-item label="水分(%)<=" span="1" prop="settlementMethod">
+              <ws-input
+                v-model="deptBudgetList.settlementMethod"
+                placeholder="请输入水分占比"
+                maxlength="120"
+                size="small"
+              />
+            </ws-form-item>
+            <!--杂质(%)<=-->
+            <ws-form-item label="杂质(%)<=" span="1" prop="settlementMethod">
+              <ws-input
+                v-model="deptBudgetList.settlementMethod"
+                placeholder="请输入杂质占比"
+                maxlength="120"
+                size="small"
+              />
+            </ws-form-item>
+            <!--容重(克/升)>=-->
+            <ws-form-item
+              label="容重(克/升)>="
+              span="1"
+              prop="settlementMethod"
+            >
+              <ws-input
+                v-model="deptBudgetList.settlementMethod"
+                placeholder="请输入容重"
+                maxlength="120"
+                size="small"
+              />
+            </ws-form-item>
+            <!--霉变粒(%)<=-->
+            <ws-form-item
+              label="霉变粒(%)<="
+              span="1"
+              prop="settlementMethod"
+            >
+              <ws-input
+                v-model="deptBudgetList.settlementMethod"
+                placeholder="请输入霉变粒占比"
+                maxlength="120"
+                size="small"
+              />
+            </ws-form-item>
+            <!--热损伤(%)<=-->
+            <ws-form-item
+              label="热损伤(%)<="
+              span="1"
+              prop="settlementMethod"
+            >
+              <ws-input
+                v-model="deptBudgetList.settlementMethod"
+                placeholder="请输入热损伤占比"
+                maxlength="120"
+                size="small"
+              />
+            </ws-form-item>
+            <!--不完整粒(%)<=-->
+            <ws-form-item
+              label="不完整粒(%)<="
+              span="1"
+              prop="settlementMethod"
+            >
+              <ws-input
+                v-model="deptBudgetList.settlementMethod"
+                placeholder="请输入不完整粒占比"
+                maxlength="120"
+                size="small"
+              />
+            </ws-form-item>
+          </ws-info-table>
+        </div>
+
+        <div style="text-align: right; padding: 10px">
+          <el-button
+            class="bg-bottom-up"
+            type="primary"
+            size="small"
+            @click="submit()"
+            >提交</el-button
+          >
+        </div>
+      </ws-form>
+    </div>
+  </div>
+</template>
+<script>
+import { getList, export1, billoperatehis } from '@/model/contarct/index'
+import { downloadFile } from '@/utils/batchDown'
+import Pagination from '@/components/Pagination'
+import WsUpload from '@/components/WsUpload'
+// import { dayjs, fmoney, EventBus } from 'base-core-lib'
+import { dayjs, EventBus } from 'base-core-lib'
+export default {
+  name: 'viewSpareMoney',
+  components: {
+    WsUpload,
+    Pagination,
+  },
+  watch: {
+    vesselId(val) {
+      this.getList()
+    },
+    isShow(val) {
+      this.showType = val
+    },
+  },
+  data() {
+    return {
+      //弹出框
+      dialogViewSpareMoney: false,
+      dialogApproveFormVisible: false,
+      // 船舶类型
+      monetaryKey: null,
+      // 表格显示数据
+      tableDate: [],
+      // 是否显示
+      showType: true,
+      // 年
+      year: '',
+      deptBudgetTotal: 0,
+      currentPage: 1,
+      pageSize: 10,
+      searchType: 1,
+      searchKeyWord: '',
+      contractType: 2,
+      startDate: null,
+      endDate: null,
+      goodnameList: {},
+      // 提交类型
+      submitType: true,
+      selectpackingMethod: {},
+
+      appendixIdsAdd: {},
+      uploadSuccess: {},
+      onChange: {},
+
+      size: 10,
+      compId: sessionStorage.getItem('ws-pf_compId'),
+      deptCircularPage: {},
+      packtypeList: {},
+      date: {
+        year: dayjs().format('YYYY'),
+        month: dayjs().format('MM'),
+      },
+      contractList: [],
+      deptBudgetList: {},
+      historyList: [],
+
+      pickerBeginDateBefore: {
+        disabledDate: (time) => {
+          return time.getTime() > Date.now()
+        },
+      },
+      accessoryTFs: false,
+    }
+  },
+  activated() {
+    //cg.viewBudget
+    //cg.viewSpareMoney
+    // this.getVesselData();
+    this.getList()
+    this.showType = this.isShow
+  },
+  methods: {
+    //返回按钮
+    returnNoComplete() {
+      this.$router.push({ path: 'warehouseManagementNoComplete' })
+    },
+    //提交按钮
+    submit() {
+      this.$router.push({ path: 'warehouseManagementList' })
+    },
+    dateFormat(fmt, date) {
+      let ret
+      const opt = {
+        'Y+': date.getFullYear().toString(), // 年
+        'm+': (date.getMonth() + 1).toString(), // 月
+        'd+': date.getDate().toString(), // 日
+        'H+': date.getHours().toString(), // 时
+        // "M+": date.getMinutes().toString(),         // 分
+        // "S+": date.getSeconds().toString()          // 秒
+        // 有其他格式化字符需求可以继续添加,必须转化成字符串
+      }
+      for (let k in opt) {
+        ret = new RegExp('(' + k + ')').exec(fmt)
+        if (ret) {
+          fmt = fmt.replace(
+            ret[1],
+            ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, '0')
+          )
+        }
+      }
+      return fmt
+    },
+    handleClose() {
+      this.accessoryTFs = false
+    },
+    handleSizeChange(val) {
+      console.log(`每页 ${val} 条`)
+      this.pageSize = val
+      this.getList()
+    },
+    handleCurrentChange(val) {
+      this.currentPage = val
+      console.log(`当前页: ${val}`)
+      this.getList()
+    },
+    getList() {
+      getList({
+        compId: sessionStorage.getItem('ws-pf_compId'),
+        contractType: this.contractType,
+        currentPage: this.currentPage,
+        pageSize: this.pageSize,
+        searchType: this.searchType,
+        searchKeyWord: this.searchKeyWord,
+        startDate: this.startDate,
+        endDate: this.endDate,
+        contrPage: this.contrPage,
+      })
+        .toPromise()
+        .then((response) => {
+          for (var i = 0; i < response.records.length; i++) {
+            if (response.records[i].addressUrl != null) {
+              response.records[i].addressUrlArray = response.records[
+                i
+              ].addressUrl.split(',')
+            } else {
+              response.records[i].addressUrlArray = []
+            }
+          }
+          this.deptCircularPage.currentPage = response.current
+          this.deptCircularPage.pageSize = response.size
+          this.deptBudgetTotal = response.total
+          this.contractList = response
+        })
+    },
+    selecttaskType(e) {
+      for (var i = 0; i < this.taskTypeList.length; i++) {
+        if (this.taskTypeList[i].value == e) {
+          this.searchType = this.taskTypeList[i].type
+        }
+      }
+    },
+    fujian(row) {
+      if (
+        row.receiveAttachmentPath === null ||
+        row.receiveAttachmentPath === ''
+      ) {
+        EventBus.$emit(
+          'warning',
+          this.$t('system.noticeCircular.NoInformation')
+        )
+      } else {
+        this.accessoryTFs = true
+      }
+      this.appendixIdss = row.receiveAttachmentPath
+    },
+    handleExamine(row) {
+      this.$router.push({
+        name: 'salesContractExamine',
+        query: { id: row.id },
+      })
+    },
+
+    // 关闭 dialog时 处理文件url 初始化upload组件
+    handleCloe() {
+      this.dialogViewSpareMoney = false
+    },
+    history(row) {
+      console.log(row)
+      billoperatehis({ id: row.id })
+        .toPromise()
+        .then((response) => {
+          this.historyList = response
+        })
+    },
+    find() {
+      this.startDate = this.dateFormat('YYYY-mm-dd', this.value2[0])
+      this.endDate = this.dateFormat('YYYY-mm-dd', this.value2[1])
+      this.currentPage = 1
+      this.getList()
+    },
+    async exportlist() {
+      const { data } = await export1(
+        {
+          compId: sessionStorage.getItem('ws-pf_compId'),
+          contractType: this.contractType,
+          currentPage: this.currentPage,
+          pageSize: this.pageSize,
+          searchType: this.searchType,
+          searchKeyWord: this.searchKeyWord,
+          startDate: this.startDate,
+          endDate: this.endDate,
+        },
+        {},
+        { responseType: 'blob' }
+      ).toPromise()
+      downloadFile({
+        res: data,
+        fileName: `${
+          this.date.year + (this.date.month ? `-${this.date.month}` : '')
+        }_采购合同`,
+        type: 'xls',
+      })
+    },
+    // deletecontract(){},
+    //删除
+    approve() {},
+    listQuery() {},
+    total() {},
+    clearfiltQuery() {},
+    selectCrtDuty() {},
+  },
+}
+</script>
+<style lang="scss" scoped>
+.center {
+  position: relative;
+  top: 50px;
+  width: 40%;
+  height: 2000px;
+  margin: 0 auto;
+}
+/deep/.el-form-item__label {
+  width: 160px;
+}
+/deep/.el-input--small {
+  width: 70%;
+}
+.container .bg-bottom {
+  position: absolute;
+  float: right;
+  top: 15px;
+  right: 20px;
+}
+//选填
+/deep/.el-form-item {
+  width: 50%;
+}
+.container {
+  overflow: scroll;
+  height: 120vh;
+}
+/deep/.ws-info-table[data-v-850a44a6] .el-form-item .el-form-item__label {
+  text-align: center;
+}
+.deliverydate {
+  width: 35%;
+}
+.center[data-v-32a9842f] {
+  margin-top: -60px;
+}
+</style>

+ 1 - 1
vue.config.js

@@ -144,7 +144,7 @@ module.exports = {
         // target: 'http://standard-dev.winsea.com/', //目标地址
         // target: 'http://localhost:8090/',
         // target: 'http://192.168.1.124:8090/',
-        target: 'http://192.168.1.115:8090/',
+        target: 'http://192.168.1.119:8090/',
         // target: 'http://192.168.24.5:8098',//目标地址
         // target: 'http://product-server.winsea.com/',
         // target: 'http://192.168.24.5:8098',//目标地址