linwenxin 1 anno fa
parent
commit
421f8a6040

+ 8 - 0
src/api/orderManagement.js

@@ -40,6 +40,14 @@ export function esOrderAdd(data) {
   })
 }
 
+export function esOrderSend(data) {
+  return request({
+    url: '/esOrder/send',
+    method: 'post',
+    data
+  })
+}
+
 export function esOrderExpress(params) {
   return request({
     url: '/esOrder/express',

+ 53 - 114
src/views/secondHandMall/orderManagement/deliverGoods.vue

@@ -18,49 +18,75 @@
 import getLbsAmapRegion from "./getLbsAmapRegion.js"
 import ImageUpload from '@/components/file-upload'
 import editTable from '@/components/template/editTable.js'
-import { getClassifyList } from '@/api/goods'
-import { esGoodsList } from '@/api/commodityManagement'
-import { esOrderAdd } from '@/api/orderManagement'
+import { esOrderSend } from '@/api/orderManagement'
 import { required, mobileRequired, mobile, httpUrl, email } from '@/components/template/rules_verify.js'
-import { esOrderDetail, esOrderRefund, esOrderPayPrice } from "@/api/orderManagement";
+import { esOrderDetail } from "@/api/orderManagement";
 import { getCompanyList } from "@/api/common";
 export default {
   components: {ImageUpload},
   mixins: [getLbsAmapRegion, editTable],
+  props:{
+    detailsId: {
+      type: [String, Number],
+      default: ""
+    },
+  },
   data(){
     return {
       formData: {
-        
+        esOrderInfos:[],
+        pickType:"",
+        logisticsCode:"",
+        logisticsName:"",
+        logisticsNo:"",
       },
+      classifyList:[]
     }
   },
+  created(){
+    getCompanyList().then(res=>{
+      this.classifyList = res.data
+      console.log(res,"bkyubhioul")
+    })
+  },
   computed: {
     formItems(){
       return [{
         name: 'el-radio',
         options: [
-          { label: '现金支付', value: "CASH" },
-          { label: '转账支付', value: "TRANSFER" },
-          { label: '微信支付', value: "WECHAT" },
+          { label: '自提', value: "YES" },
+          { label: '物流快递', value: "NO" },
         ],
-        md: 6,
+        md: 12,
         attributes: { disabled: this.disabled },
-        formItemAttributes: { label: '支付方式', prop: 'payType', rules:[{ required: true, message: '请填写', trigger: 'blur' }] }
-      },{
-        name: 'el-radio',
-        options: [
-          { label: '现金支付', value: "CASH" },
-          { label: '转账支付', value: "TRANSFER" },
-          { label: '微信支付', value: "WECHAT" },
-        ],
+        formItemAttributes: { label: '发货方式', prop: 'pickType', rules:[{ required: true, message: '请填写', trigger: 'blur' }] }
+      },
+      {
+        name: 'slot-component',
+        md: 12,
+        formItemAttributes: {
+          label: '',
+          'label-width': '0px',
+          prop: '',
+          rules: []
+        },
+        render: ()=>{
+          return null
+        }
+      },
+      {
+        isShow: this.formData.pickType==="NO",
+        name: 'el-select',
+        options: [],
         md: 6,
         attributes: { disabled: this.disabled },
-        formItemAttributes: { label: '支付方式', prop: 'payType', rules:[{ required: true, message: '请填写', trigger: 'blur' }] }
+        formItemAttributes: { label: '物流公司', prop: 'logisticsCode', rules:[{ required: true, message: '请填写', trigger: 'blur' }] }
       },{
+        isShow: this.formData.pickType==="NO",
         name: 'el-input',
-        md: 24,
+        md: 6,
         attributes: { disabled: this.disabled },
-        formItemAttributes: { label: '备注', prop: 'remark' }
+        formItemAttributes: { label: '快递单号', prop: 'logisticsNo', rules:[{ required: true, message: '请填写', trigger: 'blur' }] }
       }]
     },
     formItems2(){
@@ -81,89 +107,14 @@ export default {
                 {
                   columnAttributes: {
                     label: '商品分类',
-                    prop: 'esCategoryId'
+                    prop: 'esCategoryName'
                   },
-                  editRender: (h, { row, column, index }) => {
-                    return (
-                      <div class="redbordererr">
-                        <el-form-item
-                          label=""
-                          label-width="0px"
-                          prop={`esOrderInfos.${index}.${column.columnAttributes.prop}`}
-                          rules={[{ required: true, message: '请填写', trigger: 'blur' }]}
-                        >
-                          <el-select 
-                              disabled={true}
-                              value={row[column.columnAttributes.prop]}
-                              placeholder="请输入内容">
-                            {this.classifyList.map((item, index_) => <el-option key={index_} label={item.name} value={item.categoryId}></el-option>)}
-                          </el-select>
-                        </el-form-item>
-                      </div>
-                    )
-                  },
-                  viewRender: (h, { row, column, index }) => {
-                    return (
-                      <div class="redbordererr">
-                        <el-form-item
-                          label=""
-                          label-width="0px"
-                          prop={`esOrderInfos.${index}.${column.columnAttributes.prop}`}
-                          rules={[{ required: true, message: '请填写', trigger: 'blur' }]}
-                        >
-                          <el-select 
-                              disabled={true}
-                              value={row[column.columnAttributes.prop]}
-                              placeholder="请输入内容">
-                            {this.classifyList.map((item, index_) => <el-option key={index_} label={item.name} value={item.categoryId}></el-option>)}
-                          </el-select>
-                        </el-form-item>
-                      </div>
-                    )
-                  }
                 },
                 {
                   columnAttributes: {
                     label: '商品名称',
-                    prop: 'esGoodsId'
+                    prop: 'esGoodsName'
                   },
-                  editRender: (h, { row, column, index }) => {
-                    return (
-                      <div class="redbordererr">
-                        <el-form-item
-                          label=""
-                          label-width="0px"
-                          prop={`esOrderInfos.${index}.${column.columnAttributes.prop}`}
-                          rules={[{ required: true, message: '请填写', trigger: 'blur' }]}
-                        >
-                          <el-select 
-                              value={row[column.columnAttributes.prop]}
-                              placeholder="请输入内容">
-                            {this.esGoodsList.map((item, index_) => <el-option key={index_} label={item.goodsName} value={item.id}></el-option>)}
-                          </el-select>
-                        </el-form-item>
-                      </div>
-                    )
-                  },
-                  viewRender: (h, { row, column, index }) => {
-                    return (
-                      <div class="redbordererr">
-                        <el-form-item
-                          label=""
-                          label-width="0px"
-                          prop={`esOrderInfos.${index}.${column.columnAttributes.prop}`}
-                          rules={[{ required: true, message: '请填写', trigger: 'blur' }]}
-                        >
-                          <el-select 
-                              disabled={true}
-                              value={row[column.columnAttributes.prop]}
-                              placeholder="请输入内容">
-                            {this.esGoodsList.map((item, index_) => <el-option key={index_} label={item.goodsName} value={item.id}></el-option>)}
-                          </el-select>
-                        </el-form-item>
-                      </div>
-                    )
-                  }
                 },
                 {
                   columnAttributes: {
@@ -173,12 +124,6 @@ export default {
                 },
                 {
                   columnAttributes: {
-                    label: '上架数量',
-                    prop: 'sjNum'
-                  }
-                },
-                {
-                  columnAttributes: {
                     label: '订单数量',
                     prop: 'num'
                   },
@@ -240,30 +185,24 @@ export default {
       immediate: true,
     },
   },
-  created(){
-    getCompanyList().then(res=>{
-      console.log(res)
-    })
-  },
   methods: {
     getEsOrderDetail(){
       esOrderDetail({
         esOrderId: this.detailsId
       }).then(res=>{
-        console.log(res.data)
         this.formData = {
-          esOrderInfos:res.data.esOrderInfos
+          esOrderInfos:[{...res.data}]
         }
       })
     },
     queding(){
       this.$refs.formRef.validate((valid, invalidFields, errLabels) => {
         if(valid){
-          esOrderAdd({
-            ...this.formData,
-            fileUrl: this.formData.fileUrl.map(item=>item.url).join(",")
+          esOrderSend({
+            esOrderId: this.detailsId,
+            ...this.formData
           }).then(res=>{
-            this.$message({ type: 'success', message: `成功!` })
+            this.$message({ type: 'success', message: `发货成功!` })
             this.$emit("removeTab")
           })
         }

+ 4 - 1
src/views/secondHandMall/orderManagement/index.vue

@@ -208,7 +208,10 @@
           </div>
           <!-- 发货 -->
           <div v-if="activeKey == 'fahuo'" style="width:100%;height:100%;">
-            <deliverGoods :detailsId="detailsId"/>
+            <deliverGoods :detailsId="detailsId" @removeTab="()=>{
+              getList()
+              data.removeTab()
+            }"/>
           </div>
         </template>
       </zj-tab-page>