Bladeren bron

【发运明细】推送、提交调接口代码

liangy 3 jaren geleden
bovenliggende
commit
8eab89e3cd

+ 27 - 3
src/api/document/shipmentList.js

@@ -20,13 +20,37 @@ const deleteShipment = params => deleteAction('/shippingDetails/syShippingDetail
 // 提交
 const submitShipment = params => postAction('/shippingDetails/syShippingDetails/syShippingDetailsSubmit', params)
 
+// 取消提交
+const cancelSubmitShipment = params => postAction('/shippingDetails/syShippingDetails/syShippingDetailsSubmit', params)
+
+// 推送
+const pushShipment = params => getAction('/shippingDetails/syShippingDetails/pushSyShipping', params)
+
+// 重新推送
+const rePushShipment = params => getAction('/shippingDetails/syShippingDetails/pushSyShipping', params)
+
 // 申报要素查询
-const queryDeclarationElements = params => getAction('/shippingDetails/syShippingDetails/queryDeclarationElements', params)
+const queryDeclarationElements = params =>
+  getAction('/shippingDetails/syShippingDetails/queryDeclarationElements', params)
 
 // 新增报关要素(保存)  文档上显示 为 get
-const syDeclarationElementsAdd = params => postAction('/shippingDetails/syShippingDetails/syDeclarationElementsAdd', params)
+const syDeclarationElementsAdd = params =>
+  postAction('/shippingDetails/syShippingDetails/syDeclarationElementsAdd', params)
 
 // 参照订单数据
 const queryOrderData = params => getAction('/shippingDetails/syShippingDetails/queryOrderData', params)
 
-export { shipmentList, addShipmentList, deleteShipment, submitShipment, queryOrderData, shipmentQueryById, editById, queryDeclarationElements, syDeclarationElementsAdd }
+export {
+  shipmentList,
+  addShipmentList,
+  deleteShipment,
+  submitShipment,
+  queryOrderData,
+  shipmentQueryById,
+  editById,
+  queryDeclarationElements,
+  syDeclarationElementsAdd,
+  cancelSubmitShipment,
+  pushShipment,
+  rePushShipment
+}

+ 2 - 2
src/field/document/shipmentDetail.md

@@ -19,8 +19,8 @@ memo '备注',
 declarationName '报关品名',
 hsCode 'HScode',
 englishProductName '英文品名',
-state 单据状态    (0 保存,1 提交)
-pushState 推送状态    (0 默认未推送   1 推送,2 推送失败)
+state 单据状态    (0 默认已保存,1 提交)
+pushState 推送状态    (0 默认未推送   1 推送成功,2 推送失败)
 syShippingDetailsItemList 发运明细子表集合;
  distributionPoint 分销点,
  packId  pack_id

+ 107 - 11
src/views/shipment-details/addShipDetDrawer.vue

@@ -61,10 +61,88 @@
                 </a-form-model-item>
               </a-col>
 
-              <a-col :md="18" :sm="18">
-                <!-- 'U8 备注' -->
+              <a-col :md="6" :sm="8">
+                <a-form-model-item label="pack id" prop="packId">
+                  <a-input placeholder="请输入pack id" v-model="addShipDet.packId"></a-input>
+                </a-form-model-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-model-item label="分销点" prop="distributionPoint">
+                  <a-input placeholder="请输入分销点" v-model="addShipDet.distributionPoint"></a-input>
+                </a-form-model-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-model-item label="数量" prop="todo">
+                  <a-input placeholder="合计" v-model="addShipDet.todo"></a-input>
+                </a-form-model-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-model-item label="单价" prop="salesUnitPrice">
+                  <a-input placeholder="销售" v-model="addShipDet.salesUnitPrice"></a-input>
+                </a-form-model-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-model-item label="采购/委外订单号" prop="purOrSubOrder">
+                  <a-input placeholder="请输入采购/委外订单号" v-model="addShipDet.purOrSubOrder"></a-input>
+                </a-form-model-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-model-item label="订单类型" prop="orderType">
+                  <a-input placeholder="请输入订单类型" v-model="addShipDet.orderType"></a-input>
+                </a-form-model-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-model-item label="工厂单价" prop="factoryUnitPrice">
+                  <a-input placeholder="采购/委外单价" v-model="addShipDet.factoryUnitPrice"></a-input>
+                </a-form-model-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-model-item label="申报要素" prop="declarationElements">
+                  <a-input placeholder="单证维护" v-model="addShipDet.declarationElements"></a-input>
+                </a-form-model-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-model-item label="套装件数" prop="numberOfSets">
+                  <a-input placeholder="存货自定义项" v-model="addShipDet.numberOfSets"></a-input>
+                </a-form-model-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-model-item label="中文品名" prop="chineseName">
+                  <a-input placeholder="请输入中文品名" v-model="addShipDet.chineseName"></a-input>
+                </a-form-model-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-model-item label="英文品名" prop="englishName">
+                  <a-input placeholder="请输入英文品名" v-model="addShipDet.englishName"></a-input>
+                </a-form-model-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-model-item label="成衣工厂" prop="garmentFactory">
+                  <a-input placeholder="请输入成衣工厂" v-model="addShipDet.garmentFactory"></a-input>
+                </a-form-model-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-model-item label="报关单价" prop="customsDeclarationUnitPrice">
+                  <a-input placeholder="请输入报关单价" v-model="addShipDet.customsDeclarationUnitPrice"></a-input>
+                </a-form-model-item>
+              </a-col>
+
+              <!-- U8系统适用 -->
+              <a-col :md="12" :sm="12">
                 <a-form-model-item label="备注" prop="memo">
-                  <a-input placeholder="请输入备注" v-model="addShipDet.memo"></a-input>
+                  <a-input placeholder="U8系统适用" v-model="addShipDet.memo"></a-input>
                 </a-form-model-item>
               </a-col>
             </a-row>
@@ -131,7 +209,8 @@
                 <a-popconfirm
                   v-if="syShippingDetailsItemList.length"
                   title="确定删除吗?"
-                  @confirm="handleDelete(record)">
+                  @confirm="handleDelete(index)"
+                >
                   <a href="javascript:void(0);" style="color:red;">删除</a>
                 </a-popconfirm>
 
@@ -449,15 +528,32 @@ export default {
       console.log('点击参照订单数据')
     },
     // 新增 保存
+
     addSave() {
       var newObj = {} // 新增对象
-      newObj.documentNo = this.addShipDet.documentNo // 单据号
-      newObj.documentDate = this.addShipDet.documentDate.format('YYYY-MM-DD') // 单据日期
+      newObj.documentNo = this.addShipDet.documentNo
+      newObj.documentDate = this.addShipDet.documentDate.format('YYYY-MM-DD')
       newObj.customer = this.addShipDet.customer
       newObj.preDeliveryDate = this.addShipDet.preDeliveryDate.format('YYYY-MM-DD') // 预发货日期
       newObj.preCompletionDate = this.addShipDet.preCompletionDate.format('YYYY-MM-DD') // 预完工日期
+      // 2022-06-10 增加的字段
+      newObj.packId = this.addShipDet.packId
+      newObj.distributionPoint = this.addShipDet.distributionPoint
+      newObj.todo = this.addShipDet.todo //数量(合计)
+      newObj.salesUnitPrice = this.addShipDet.salesUnitPrice
+      newObj.purOrSubOrder = this.addShipDet.purOrSubOrder
+      newObj.orderType = this.addShipDet.orderType
+      newObj.factoryUnitPrice = this.addShipDet.factoryUnitPrice
+      newObj.declarationElements = this.addShipDet.declarationElements
+      newObj.numberOfSets = this.addShipDet.numberOfSets
+      newObj.chineseName = this.addShipDet.chineseName
+      newObj.englishName = this.addShipDet.englishName
+      newObj.garmentFactory = this.addShipDet.garmentFactory
+      newObj.customsDeclarationUnitPrice = this.addShipDet.customsDeclarationUnitPrice
+
       newObj.memo = this.addShipDet.memo // U8系统适用
       newObj.syShippingDetailsItemList = this.syShippingDetailsItemList // 子表信息赋值
+
       // 单据状态
       // newObj.state = this.state
       // newObj.pushState = this.pushState
@@ -523,12 +619,12 @@ export default {
     },
     // --------------------------------------
     // 操作 删除
-    handleDelete(record) {
-      console.log('record', record)
-      console.log('删除该项订单数据', record.orderNumber)
-      return this.syShippingDetailsItemList.splice(record)
+    handleDelete(index) {
+      console.log('index', index)
+      console.log('删除该项订单数据', index)
+      return this.syShippingDetailsItemList.splice(index, 1)
     },
-    // 操作 复制
+    // 操作 复制 复制一行已有的数据
     copy(record) {},
     // --------------------------------------
     // 抽屉 取消

+ 1 - 1
src/views/shipment-details/referOrderDataModal.vue

@@ -341,7 +341,7 @@ export default {
           if (res.success) {
             // 后台数据赋值给参照订单数据
             this.orderListData = res.result.records
-            console.log('新增参照订单数据', this.orderListData)
+            // console.log('新增参照订单数据', this.orderListData)
             this.pagination = {
               total: res.result.total,
               current: res.result.current,

+ 76 - 23
src/views/shipment-details/shipmentList.vue

@@ -160,13 +160,26 @@
               </a-menu-item>
             </a-menu>
 
-            <!-- 推送成功  已提交 -->
+            <!-- 已提交 且 推送成功   -->
             <a-menu slot="overlay" v-if="record.pushState == '1' && record.state == '1'">
               <a-menu-item>
                 <a @click="details(record)">详情</a>
               </a-menu-item>
             </a-menu>
 
+            <!-- 已提交 且 推送失败  -->
+            <a-menu slot="overlay" v-if="record.pushState == '2' && record.state == '1'">
+              <a-menu-item>
+                <a @click="details(record)">详情</a>
+              </a-menu-item>
+
+              <a-menu-item>
+                <a-popconfirm title="确定重新推送吗?" ok-text="是" cancel-text="否" @confirm="rePush(record)">
+                  <a href="javascript:void(0);" style="color:green;">重新推送</a>
+                </a-popconfirm>
+              </a-menu-item>
+            </a-menu>
+
             <!-- 已提交 -->
             <a-menu slot="overlay" v-if="record.state == '1'">
               <a-menu-item>
@@ -174,7 +187,7 @@
               </a-menu-item>
 
               <a-menu-item>
-                <a-popconfirm title="确定取消提交吗?" ok-text="是" cancel-text="否" @confirm="handleDelete(record)">
+                <a-popconfirm title="确定取消提交吗?" ok-text="是" cancel-text="否" @confirm="cancelSubmit(record)">
                   <a href="javascript:void(0);" style="color:red;">取消提交</a>
                 </a-popconfirm>
               </a-menu-item>
@@ -198,19 +211,6 @@
                 </a-popconfirm>
               </a-menu-item>
             </a-menu>
-
-            <!-- 推送失败 -->
-            <a-menu slot="overlay" v-if="record.pushState == '2'">
-              <a-menu-item>
-                <a @click="details(record)">详情</a>
-              </a-menu-item>
-
-              <a-menu-item>
-                <a-popconfirm title="确定重新推送吗?" ok-text="是" cancel-text="否" @confirm="handleDelete(record)">
-                  <a href="javascript:void(0);" style="color:green;">重新推送</a>
-                </a-popconfirm>
-              </a-menu-item>
-            </a-menu>
           </a-dropdown>
         </span>
       </a-table>
@@ -240,13 +240,26 @@ import {
   deleteShipment,
   submitShipment,
   shipmentQueryById,
-  queryDeclarationElements
+  queryDeclarationElements,
+  cancelSubmitShipment,
+  pushShipment,
+  rePushShipment
 } from '@api/document/shipmentList'
 
 export default {
   name: 'ShipmentList', // 发运明细列表
   mixins: [JeecgListMixin],
-  components: { JEllipsis, moment, addShipDetDrawer, detailsShipDetDrawer, editShipDetDrawer, declareElementsModal },
+  components: {
+    JEllipsis,
+    moment,
+    addShipDetDrawer,
+    detailsShipDetDrawer,
+    editShipDetDrawer,
+    declareElementsModal,
+    cancelSubmitShipment,
+    pushShipment,
+    rePushShipment
+  },
 
   data() {
     // let ellipsis = (v, l = 20) => <j-ellipsis value={v} length={l} />
@@ -395,7 +408,6 @@ export default {
           },
           className: 'replacecolor'
         },
-
         {
           title: 'HScode',
           dataIndex: 'hsCode',
@@ -568,20 +580,61 @@ export default {
     submit(record) {
       console.log('点击id:', record.id)
       this.$nextTick(() => {
+        //TODO: 缺少参数 提交类型
         submitShipment({ id: record.id }).then(res => {
-          if (res.success === true) {
-            // console.log('提交成功,推送状态要修改')
+          if (res.success) {
+            console.log('提交成功,单据状态改为【已提交】')
+             this.shipmentListData.state == '1'
             this.getShipmentList() // 渲染 发运明细列表
             this.$message.success('提交成功')
-          } else {
-            this.$message.error('该订单已提交,可不删除')
+          }
+        })
+      })
+    },
+    // 取消提交
+    cancelSubmit(record) {
+      console.log('取消订单id:', record.id)
+      this.$nextTick(() => {
+        cancelSubmitShipment({ id: record.id }).then(res => {
+          if (res.success) {
+            console.log('取消提交成功,单据状态改为【仅保存】')
+             this.shipmentListData.state == '0'
+            this.getShipmentList() // 渲染 发运明细列表
+            this.$message.success('取消提交成功')
           }
         })
       })
     },
 
     // 操作 推送
-    push(record) {},
+    push(record) {
+      console.log('推送id:', record.id)
+      this.$nextTick(() => {
+        pushShipment({ id: record.id }).then(res => {
+          if (res.success) {
+            console.log('推送成功,推送状态【推送成功】')
+            this.shipmentListData.pushState == '1'
+            this.getShipmentList() // 渲染 发运明细列表
+            this.$message.success('推送成功')
+          }
+        })
+      })
+    },
+
+    // 重新推送
+    rePush(record) {
+      console.log('重新推送record:', record)
+      this.$nextTick(() => {
+        rePushShipment({ id: record.id }).then(res => {
+          if (res.success) {
+            console.log('重新推送成功,推送状态【推送成功】')
+            this.shipmentListData.pushState == '1'
+            this.getShipmentList() // 渲染 发运明细列表
+            this.$message.success('重新推送成功')
+          }
+        })
+      })
+    },
 
     // 操作 删除
     handleDelete(record) {