Selaa lähdekoodia

采购单 新增编辑可修改收货地址

chenrui 3 vuotta sitten
vanhempi
commit
688457c8a9
2 muutettua tiedostoa jossa 35 lisäystä ja 4 poistoa
  1. 8 0
      src/api/purchase.js
  2. 27 4
      src/views/purchasingManagement/purchaseOrder/edit.vue

+ 8 - 0
src/api/purchase.js

@@ -179,3 +179,11 @@ export const purchaseExportDetail = params => {
     responseType: 'blob'
   })
 }
+// 采购管理  修改收货地址
+export const purchaseDetailAddress = params => {
+  return axios({
+    url: '/purchase/updateAddress',
+    data: params,
+    method: 'post'
+  })
+}

+ 27 - 4
src/views/purchasingManagement/purchaseOrder/edit.vue

@@ -29,8 +29,9 @@
                   {{ detail&&detail.shippingAddressCityName || '' }}
                   {{ detail&&detail.shippingAddressCountyName || '' }}
                   {{ detail&&detail.shippingAddress || '' }}
+                  <a-button type="link" @click="openAddrModal=true">更换地址 >></a-button>
                 </div>
-                <span v-else>--</span>
+                <p v-else><a-button type="link" @click="openAddrModal=true">选择地址 >></a-button></p>
               </a-descriptions-item>
             </a-descriptions>
           </a-collapse-panel>
@@ -232,6 +233,8 @@
     <importGuideModal :openModal="openGuideModal" :params="{purchaseBillSn: $route.params.sn}" @close="openGuideModal=false" @ok="hanldeOk" />
     <!-- 上次缺货 -->
     <outStockModal :openModal="openOutStockModal" :paramsData="paramsData" @close="openOutStockModal=false" @ok="hanldeOkOutStock" />
+    <!-- 选择地址 -->
+    <choose-address-modal :openModal="openAddrModal" @ok="handleAddrOk" @close="openAddrModal=false" />
   </div>
 </template>
 
@@ -239,16 +242,17 @@
 import { STable, VSelect } from '@/components'
 import ImportGuideModal from './importGuideModal.vue'
 import outStockModal from './outStockModal.vue'
+import chooseAddressModal from './receivingAddress/chooseAddressModal.vue'
 import ProductType from '../../common/productType.js'
 import ProductBrand from '../../common/productBrand.js'
-import { purchaseDetailBySn, purchaseWriteSubmit, purchaseDetailPrint, purchaseDetailBatchInsert, purchaseDetailExport } from '@/api/purchase'
+import { purchaseDetailBySn, purchaseWriteSubmit, purchaseDetailPrint, purchaseDetailBatchInsert, purchaseDetailExport, purchaseDetailAddress } from '@/api/purchase'
 import { purchaseDetailList, purchaseDetailSave, purchaseDetailDel, purchaseDetailCount, purchaseDetailCancelList } from '@/api/purchaseDetail'
 import { productListPurchase } from '@/api/product'
 import defImg from '@/assets/def_img@2x.png'
 import Print from '@/views/common/print.vue'
 import { hdPrint } from '@/libs/JGPrint'
 export default {
-  components: { STable, VSelect, ProductType, ProductBrand, ImportGuideModal, outStockModal, Print },
+  components: { STable, VSelect, ProductType, ProductBrand, ImportGuideModal, outStockModal, Print, chooseAddressModal },
   data () {
     return {
       spinning: false,
@@ -336,7 +340,8 @@ export default {
       localDataSource: [],
       openGuideModal: false, //  导入产品引导
       openOutStockModal: false,
-      paramsData: null
+      paramsData: null,
+      openAddrModal: false // 选择地址弹框是否显示
     }
   },
   methods: {
@@ -493,6 +498,24 @@ export default {
         }
       })
     },
+    //  地址保存
+    handleAddrOk (data) {
+      const params = {
+        purchaseBillSn: this.$route.params.sn,
+        shippingAddressProvinceName: data.provinceName,
+        shippingAddressCityName: data.cityName,
+        shippingAddressCountyName: data.countyName,
+        shippingAddress: data.addr,
+        consigneeName: data.consigneeName,
+        consigneeTel: data.consigneeTel
+      }
+      purchaseDetailAddress(params).then(res => {
+        if (res.status == 200) {
+          this.openAddrModal = false
+          this.getOrderDetail()
+        }
+      })
+    },
     // 查看产品
     handlePicDetail (row) {
       this.$router.push({ name: 'viewProduct', params: { sn: row.productSn } })