Ver Fonte

Merge branch 'develop_yh22' of http://git.chelingzhu.com/jianguan-web/jg-ocs-html into develop_yh22

chenrui há 1 ano atrás
pai
commit
e5b7dad7c8

BIN
public/templ/收货产品(不良品)模板.xlsx


BIN
public/templ/收货产品(良品)模板.xlsx


BIN
public/templ/销售退货(不良品)产品明细模板.xlsx


+ 30 - 12
src/views/salesReturnManagement/custConfirm/list.vue

@@ -7,7 +7,7 @@
           <a id="custConfirm-back-btn" href="javascript:;" @click="handleBack"><a-icon type="left" /> 返回列表</a>
           <span style="margin: 0 15px;color: #666;">客户名称:{{ ordeDetail&&ordeDetail.buyerName || '--' }}</span>
           <span style="margin: 0 10px;color: #666;">
-            退货类别:{{ordeDetail&&ordeDetail.goodFlagDictValue}}
+            退货类别:{{ ordeDetail&&ordeDetail.goodFlagDictValue }}
           </span>
         </template>
       </a-page-header>
@@ -30,7 +30,7 @@
           <a-button style="margin-left:5px;" :loading="loading" @click="openPlSetReason">批量设置退货原因</a-button>
           <span style="margin-left:10px;" v-if="selNums">已选{{ selNums }}项</span>
           <a-button type="primary" :loading="loading" class="button-info" @click="setNewSalesRetrunOrder">生成新销退单</a-button>
-          <div style="float:right;color:#999;margin-top:8px;">说明:红色行表示收货时新增的产品;黄色表示客服确认时新增的产品;退货原因文字显示红色表示退货原因和退货类别不一致;</div>
+          <div style="float:right;color:#999;margin-top:8px;">说明:红色行表示收货时新增的产品;黄色表示客服确认时新增的产品;退货原因文字显示红色表示退货原因和退货类别不一致;</div>
         </div>
         <!-- 已选配件列表 -->
         <s-table
@@ -120,11 +120,17 @@
           <!-- 退货原因 -->
           <template slot="returnReason" slot-scope="text, record">
             <returnReason v-if="record.isEdit" v-model="record.returnReasonCode"></returnReason>
-            <span v-else>{{ record.returnReason||'--' }}</span>
+            <span v-else title="退货原因和退货类别不一致" :style="{color:record.needHandleFlag==1?'red':''}">{{ record.returnReason||'--' }}</span>
           </template>
           <!-- 备注 -->
           <template slot="remarks" slot-scope="text, record">
-            <a-input v-if="record.isEdit" size="small" :maxlength="50" v-model.trim="record.returnReasonRemarks" allowClear placeholder="请输入备注信息(最多50字符)"/>
+            <a-input
+              v-if="record.isEdit"
+              size="small"
+              :maxlength="50"
+              v-model.trim="record.returnReasonRemarks"
+              allowClear
+              placeholder="请输入备注信息(最多50字符)"/>
             <span v-else>{{ record.returnReasonRemarks||'--' }}</span>
           </template>
           <!-- 操作 -->
@@ -203,6 +209,9 @@
           <div><returnReason size="large" v-model="plReturnReason"></returnReason></div>
         </div>
         <div style="line-height: 24px;margin-top:10px;">
+          <a-checkbox :checked="showEditRemarks" @change="e => showEditRemarks=!showEditRemarks">是否设置备注</a-checkbox>
+        </div>
+        <div style="line-height: 24px;margin-top:10px;" v-if="showEditRemarks">
           <div>备注</div>
           <div><a-input size="large" :maxlength="50" placeholder="请输入备注(最多50字符)" v-model="plReturnRemark"></a-input></div>
         </div>
@@ -237,6 +246,7 @@ export default {
       tableHeight: 0, // 表格高度
       orderSn: null,
       disabled: false,
+      showEditRemarks: false,
       ordeDetail: null,
       loading: false,
       queryParam: {
@@ -269,7 +279,7 @@ export default {
       returnReasonList: [],
       openProductModal: false,
       plReturnReason: undefined,
-      plReturnRemark: '',
+      plReturnRemark: undefined,
       showPlModal: false,
       labelCol: { span: 8 },
       wrapperCol: { span: 14 }
@@ -279,12 +289,13 @@ export default {
     showPlModal (newValue, oldValue) {
       if (!newValue) {
         this.plReturnReason = undefined
-        this.plReturnRemark = ''
+        this.plReturnRemark = undefined
+        this.showEditRemarks = false
       }
     }
   },
   computed: {
-    goodFlag() {
+    goodFlag () {
       return this.ordeDetail && this.ordeDetail.goodFlag || ''
     },
     selNums () {
@@ -336,7 +347,7 @@ export default {
           arr.map(item => {
             snList.push(item.salesReturnDetailSn)
           })
-          salesReturnAgainCreate({ sourceBillSn: _this.orderSn,salesReturnBillDetailSnList: snList }).then(res => {
+          salesReturnAgainCreate({ sourceBillSn: _this.orderSn, salesReturnBillDetailSnList: snList }).then(res => {
             if (res.status == 200) {
               _this.resetSearchForm(false)
             }
@@ -357,9 +368,14 @@ export default {
     },
     // 添加产品
     addProduct (data) {
+      const a = this.$store.state.app.goodReturnReason.find(item => item.code == data.returnReasonCode)
+      const b = this.$store.state.app.defectiveReturnReason.find(item => item.code == data.returnReasonCode)
+      const goodFlag = a ? a.lookupCode : b.lookupCode
+      
       const params = {
         'salesReturnBillSn': this.orderSn,
         'salesReturnBillNo': this.ordeDetail.salesReturnBillNo,
+        'goodFlag': goodFlag,
         ...data
       }
       insertByCustomerService(params).then(res => {
@@ -411,10 +427,11 @@ export default {
         })
         salesReturnDetailSetReason({
           salesReturnBillDetailSnList: snList,
-          salesReturnBillSn : this.orderSn,
+          salesReturnBillSn: this.orderSn,
           returnReason: rows ? rows.dispName : '',
           returnReasonCode: this.plReturnReason,
-          returnReasonRemarks: this.plReturnRemark
+          returnReasonRemarks: this.plReturnRemark,
+          goodFlag: rows.lookupCode
         }).then(res => {
           if (res.status == 200) {
             this.showPlModal = false
@@ -437,6 +454,7 @@ export default {
       }
       const rows = this.returnReasonlist.find(item => item.code == record.returnReasonCode)
       record.returnReason = rows ? rows.dispName : ''
+      record.goodFlag = rows.lookupCode
       this.spinning = true
       updateByCustomerService(record).then(res => {
         if (res.status == 200) {
@@ -481,8 +499,8 @@ export default {
     getOrderDetail () {
       salesReturnDetail({ sn: this.orderSn }).then(res => {
         this.ordeDetail = res.data || null
-        if(res.data){
-          this.returnReasonlist = [...this.$store.state.app.goodReturnReason,...this.$store.state.app.defectiveReturnReason]
+        if (res.data) {
+          this.returnReasonlist = [...this.$store.state.app.goodReturnReason, ...this.$store.state.app.defectiveReturnReason]
         }
       })
     },

+ 6 - 2
src/views/salesReturnManagement/custConfirm/setPriceModal.vue

@@ -64,7 +64,7 @@
               <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="setPrice-reset">重置</a-button>
             </a-form-item>
           </a-form>
-          <div style="float:right;color:#999;margin-top:10px;">说明:红色行表示收货时新增的产品;黄色表示客服确认时新增的产品;退货原因文字显示红色表示退货原因和退货类别不一致;</div>
+          <div style="float:right;color:#999;margin-top:10px;">说明:红色行表示收货时新增的产品;黄色表示客服确认时新增的产品;退货原因文字显示红色表示退货原因和退货类别不一致;</div>
         </div>
         <!-- 表格数据 -->
         <s-table
@@ -78,6 +78,10 @@
           :scroll="{ y: 400 }"
           :showPagination="false"
           bordered>
+          <!-- 退货原因 -->
+          <template slot="returnReason" slot-scope="text, record">
+            <span title="退货原因和退货类别不一致" :style="{color:record.needHandleFlag==1?'red':''}">{{ record.returnReason||'--' }}</span>
+          </template>
         </s-table>
       </div>
     </a-spin>
@@ -138,7 +142,7 @@ export default {
         { title: '返库数量', dataIndex: 'backStockQty', align: 'center', width: '10%', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
         { title: '退货单价', dataIndex: 'price', align: 'right', width: '10%', customRender: text => ((text || text == 0) ? this.toThousands(text) : '--') },
         { title: '退货单价说明', dataIndex: 'priceRemark', width: '10%', align: 'center', customRender: function (text) { return text || '--' } },
-        { title: '退货原因', dataIndex: 'returnReason', width: '15%', align: 'center', customRender: function (text) { return text || '--' } }
+        { title: '退货原因', dataIndex: 'returnReason', width: '15%', align: 'center', scopedSlots: { customRender: 'returnReason' } },
       ],
       // 加载数据方法 必须为 Promise 对象
       loadData: parameter => {

+ 11 - 5
src/views/salesReturnManagement/receiveCheck/checking.vue

@@ -102,6 +102,9 @@
            <div><returnReason size="large" v-model="plReturnReason"></returnReason></div>
          </div>
          <div style="line-height: 24px;margin-top:10px;">
+           <a-checkbox :checked="showEditRemarks" @change="e => showEditRemarks=!showEditRemarks">是否设置备注</a-checkbox>
+         </div>
+         <div style="line-height: 24px;margin-top:10px;" v-if="showEditRemarks">
            <div>备注</div>
            <div><a-input size="large" :maxlength="50" placeholder="请输入备注(最多50字符)" v-model="plReturnRemark"></a-input></div>
          </div>
@@ -177,8 +180,9 @@ export default {
       },
       rowSelectionInfo: null,
       plReturnReason: undefined,
-      plReturnRemark: '',
+      plReturnRemark: undefined,
       showPlModal: false,
+      showEditRemarks: false,
       returnReasonlist: []
     }
   },
@@ -186,7 +190,8 @@ export default {
     showPlModal (newValue, oldValue) {
       if (!newValue) {
         this.plReturnReason = undefined
-        this.plReturnRemark = ''
+        this.plReturnRemark = undefined
+        this.showEditRemarks = false
       }
     }
   },
@@ -311,7 +316,8 @@ export default {
           salesReturnBillSn : this.orderSn,
           returnReason: rows ? rows.dispName : '',
           returnReasonCode: this.plReturnReason,
-          returnReasonRemarks: this.plReturnRemark
+          returnReasonRemarks: this.plReturnRemark,
+          goodFlag: rows.lookupCode
         }).then(res => {
           if (res.status == 200) {
             this.showPlModal = false
@@ -325,14 +331,14 @@ export default {
     // 修改退货原因
     updateReason (val, record, type) {
       const params = {
-        salesReturnDetailSn: record.salesReturnDetailSn,
-        goodFlag: this.goodFlag
+        salesReturnDetailSn: record.salesReturnDetailSn
       }
       // 退货原因
       if(type == 0){
         const rows = this.returnReasonlist.find(item => item.code == val)
         params.returnReasonCode = val||''
         params.returnReason = rows ? rows.dispName : ''
+        params.goodFlag = rows.lookupCode
       }else{
         // 备注
         params.returnReasonRemarks = val.target.value

+ 4 - 4
src/views/salesReturnManagement/receiveCheck/chooseProductsModal.vue

@@ -105,16 +105,16 @@ export default {
       if (!newValue) {
         this.$emit('close')
       } else {
-        if(this.goodFlag == 'DEFECTIVE_PRODUCT_RETURN'){
+        if (this.goodFlag == 'DEFECTIVE_PRODUCT_RETURN') {
           this.returnReasonlist = this.$store.state.app.defectiveReturnReason
         }
         // 良品
-        if(this.goodFlag == 'GOOD_PRODUCT_RETURN'){
+        if (this.goodFlag == 'GOOD_PRODUCT_RETURN') {
           this.returnReasonlist = this.$store.state.app.goodReturnReason
         }
         // 全部
-        if(!this.goodFlag){
-          this.returnReasonlist = [...this.$store.state.app.goodReturnReason,...this.$store.state.app.defectiveReturnReason]
+        if (!this.goodFlag) {
+          this.returnReasonlist = [...this.$store.state.app.goodReturnReason, ...this.$store.state.app.defectiveReturnReason]
         }
         this.$nextTick(() => {
           this.$refs.partQuery.pageInit(this.buyerSn, 0, this.goodFlag)

+ 4 - 3
src/views/salesReturnManagement/receiveCheck/receiving.vue

@@ -25,16 +25,16 @@
           </a-form-item>
         </a-form>
         <div style="border-top:1px solid #eee;padding-top:10px;">
+          <a-button type="primary" :loading="loading" class="button-error" @click="handlePlss">批量实收</a-button>
+          <span v-if="rowSelectionInfo&&rowSelectionInfo.selectedRowKeys&&rowSelectionInfo.selectedRowKeys.length">已选{{ rowSelectionInfo.selectedRowKeys.length }}项</span>
           <a-button
             type="primary"
             ghost
             :loading="loading"
             @click="openGuideModal=true"
-            style="margin-right:5px;"
+            style="margin:0 5px 0 10px;"
           >导入产品</a-button>
           <a-button type="primary" :loading="loading" class="button-info" @click="openModal = true">新增产品</a-button>
-          <a-button type="primary" :loading="loading" class="button-error" @click="handlePlss">批量实收</a-button>
-          <span v-if="rowSelectionInfo&&rowSelectionInfo.selectedRowKeys&&rowSelectionInfo.selectedRowKeys.length">已选{{ rowSelectionInfo.selectedRowKeys.length }}项</span>
           <div style="float:right;color:#999;margin-top:8px;">说明:红色行表示收货时新增的产品</div>
         </div>
         <!-- 已选配件列表 -->
@@ -243,6 +243,7 @@ export default {
       const params = {
         'salesReturnBillSn': this.orderSn,
         'salesReturnBillNo': this.ordeDetail.salesReturnBillNo,
+        'goodFlag': this.goodFlag,
         ...data
       }
       insertByReceive(params).then(res => {

+ 7 - 2
src/views/salesReturnManagement/salesReturn/salesReturnEdit.vue

@@ -151,6 +151,9 @@
           <div><returnReason size="large" :goodFlag="goodFlag" v-model="plReturnReason"></returnReason></div>
         </div>
         <div style="line-height: 24px;margin-top:10px;">
+          <a-checkbox :checked="showEditRemarks" @change="e => showEditRemarks=!showEditRemarks">是否设置备注</a-checkbox>
+        </div>
+        <div style="line-height: 24px;margin-top:10px;" v-if="showEditRemarks">
           <div>备注</div>
           <div><a-input size="large" :maxlength="50" placeholder="请输入备注(最多50字符)" v-model="plReturnRemark"></a-input></div>
         </div>
@@ -246,7 +249,8 @@ export default {
       total: 0,
       rowSelectionInfo: null,
       plReturnReason: undefined,
-      plReturnRemark: '',
+      plReturnRemark: undefined,
+      showEditRemarks: false,
       showPlModal: false,
       returnReasonlist: [],
     }
@@ -255,7 +259,8 @@ export default {
     showPlModal (newValue, oldValue) {
       if (!newValue) {
         this.plReturnReason = undefined
-        this.plReturnRemark = ''
+        this.plReturnRemark = undefined
+        this.showEditRemarks = false
       }
     }
   },

+ 2 - 2
vue.config.js

@@ -108,9 +108,9 @@ const vueConfig = {
     // If you want to turn on the proxy, please remosve the mockjs /src/main.jsL11
     proxy: {
       '/api': {
-        target: 'http://192.168.2.111/ocs-admin',
+        // target: 'http://192.168.2.111/ocs-admin',
         // target: 'https://t.ocs.360arrow.com/ocs-admin', //  练习
-        // target: 'https://p.ocs.360arrow.com/ocs-admin', //  预发布
+        target: 'https://p.ocs.360arrow.com/ocs-admin', //  预发布
         ws: false,
         changeOrigin: true,
         pathRewrite: {