王英杰 1 tahun lalu
induk
melakukan
e55d63df95

+ 9 - 2
components/dkbase/dk-form-bill/dk-form-bill.js

@@ -1428,6 +1428,10 @@ Component({
       if (this.data.readonly) {
         return;
       }
+      let item = e.currentTarget.dataset;
+      if (item.item.readonlyItem) {
+        return;
+      }
       let form = this.data.form
       delete form['address']
       delete form['addressName'];
@@ -1731,10 +1735,13 @@ Component({
       // 只读
       if (this.data.readonly) {
         return;
+      }  
+      let item = e.currentTarget.dataset;
+      if (item.item.readonlyItem) {
+        return;
       }
       // 跳转新建地图实例
-      common.onClickWxchartAddress();
-      let item = e.currentTarget.dataset;
+      common.onClickWxchartAddress(); 
       this.setData({
         index: item.index,
         card: item.card

+ 1 - 1
components/dkbase/dk-form-bill/dk-form-bill.wxml

@@ -245,7 +245,7 @@
             <!--客户地址-->
             <van-field wx:if="{{item.type=='address'  && (item.show || item.show == undefined)}}" input-width="200rpx" input-class="dk-cell-value-class" required="{{item.required?true:false }}" input-align="left" data-key="address" type="textarea" value="{{ wxmlUtil.addressToIndexOf(form.address.address) }}" label="{{item.title?item.title:$t[item.code]}}" placeholder="{{wxmlUtil.setPlaceholder($t,item.title?item.title:item.code)}}" autosize border="{{ false }}" data-type='address' catchtap="onClickWxchartAddress" readonly="{{true}}" label-class="{{(!!readonly || !!item.readonly)?'readonly-label':'nomal-label'}}" data-item="{{item}}" data-index="{{index}}" data-card="{{card.name}}" errorMessage="{{item.errMsg}}">
               <view style="display: flex;" slot="right-icon">
-                <van-icon wx:if="{{ form.address.address}}" slot="right-icon" name="clear" color="#c8c9cc;" data-key="{{item.code}}" catchtap="clearAddress"></van-icon>
+                <van-icon wx:if="{{ form.address.address}}" slot="right-icon" name="clear" color="#c8c9cc;"data-item="{{item}}" data-key="{{item.code}}" catchtap="clearAddress"></van-icon>
                 <van-icon custom-style="padding-left:10rpx" name="location"></van-icon>
               </view>
             </van-field>

+ 1 - 1
components/dkbase/dk-list-report/dk-list-report.wxml

@@ -111,7 +111,7 @@
        <!--销售金额-->
        <dk-cell  titleWid="200rpx" contentColor="#A5814A" titleColor="#95A8CB;" title="销售金额" contentRight="{{true}}"  content="{{item.factAmt}}"></dk-cell>
         <!--销售数量-->
-        <dk-cell  titleWid="200rpx" contentColor="#1B365D" titleColor="#95A8CB;" title="销售数量" contentRight="{{true}}" amount="{{false}}"content="{{item.itemQty}}" ></dk-cell>  
+        <!-- <dk-cell  titleWid="200rpx" contentColor="#1B365D" titleColor="#95A8CB;" title="销售数量" contentRight="{{true}}" amount="{{false}}"content="{{item.itemQty}}" ></dk-cell>   -->
     </view>
     <!-- 内容 -->
     <view style="width:100%;display: flex;flex-wrap: wrap;justify-content: center;" catchtap="toDetail" data-item="{{item}}" data-index="{{index}}">

+ 1 - 0
i18n/zh-CN.js

@@ -397,6 +397,7 @@ const saleOrder = {
   delivery_Time: '送货日期',
   deliveryDate: '送货日期',
   viewVoidedDocuments: '包含作废单据',
+  sumNonStdCode: '合并色号',
   viewNoCostDocuments: '仅查询未核对',
   docClass: '单据类型',
   openingNumberZero: '期初数量是0',

+ 11 - 3
package-sales/pages/order-billing/add/add.js

@@ -9,6 +9,7 @@ Page({
    * 页面的初始数据
    */
   data: {
+    satffAndOrgReadonly:false,
     // 路由
     routeObjName: 'order',
     gradeCode: app.globalData.company.gradeCode,
@@ -1451,6 +1452,7 @@ Page({
       })
       this.setStdAndPro()
       this.setData({
+        satffAndOrgReadonly:true,
         buttonSaveList: [{
           code: 'save',
           title: mixins.$t("save")
@@ -1659,14 +1661,17 @@ Page({
         type: 'selectIcon',
         urlKey: 'selectCustomers',
         required: true,
-        readonly: false,
+        readonly: this.data.formMode =='edit'?true:false,
+        readonlyItem: this.data.formMode =='edit'?true:false, 
         title: mixins.$t('customerName')
       },
       {
         code: 'cusPhone',
         type: 'phone',
         title: mixins.$t('cusPhone'),
-        required: true
+        required: true,
+        readonly: this.data.formMode =='edit'?true:false,
+        readonlyItem: this.data.formMode =='edit'?true:false,  
       },
       {
         code: 'addressFull',
@@ -1686,7 +1691,10 @@ Page({
         required: true,
         title: mixins.$t('saleChannel'),
         type: 'choose',
-        urlKey: 'chooseChannel'
+        urlKey: 'chooseChannel',
+        readonly: this.data.formMode =='edit'?true:false,
+        readonlyItem: this.data.formMode =='edit'?true:false, 
+
       },
       {
         code: 'contactName',

+ 1 - 1
package-sales/pages/order-billing/add/add.wxml

@@ -3,7 +3,7 @@
 <loading wx:if="{{loading}}"></loading>
 
 <!-- 除了编辑显示的 -->
-<dk-form-bill    type="sale" id="{{formName}}" routeObjName="{{routeObjName}}" cardList="{{cardList}}" titleTagCol="brandName"  titleCol="skuModel" iconCol="imagesUrl" descCol="skuName"  subCol="calculationFormula" pupPriceCol="factAmt" priceCol="factPrice"  quantityCol="itemQty" sumAmountCol="sumAmount" sumQuantityCol="sumQuantity" discountStandardCol="saleDiscount" contentObj="{{contentObj}}" model:value="{{formData}}" popContent="{{popContent}}" bind:chooseData="chooseData" bind:setGoods="setGoods" table="{{table}}" swipeDisabled ="cannotModifyFlag" bind:editItems="editItems"  bind:openChoosedItemInfo="openChoosedItemInfo" deleteName="deleteItemList" bind:onCloseDel="deleteItemList" bind:customersChoose="customersChoose"  bind:changePhoneblur="changePhoneblur" 
+<dk-form-bill    type="sale" id="{{formName}}" routeObjName="{{routeObjName}}" cardList="{{cardList}}" titleTagCol="brandName"  titleCol="skuModel" iconCol="imagesUrl" descCol="skuName"  subCol="calculationFormula" pupPriceCol="factAmt" priceCol="factPrice"  quantityCol="itemQty" sumAmountCol="sumAmount" sumQuantityCol="sumQuantity" discountStandardCol="saleDiscount" contentObj="{{contentObj}}" model:value="{{formData}}" popContent="{{popContent}}" bind:chooseData="chooseData" bind:setGoods="setGoods" table="{{table}}" swipeDisabled ="cannotModifyFlag" bind:editItems="editItems"  bind:openChoosedItemInfo="openChoosedItemInfo" deleteName="deleteItemList" bind:onCloseDel="deleteItemList" bind:customersChoose="customersChoose"  bind:changePhoneblur="changePhoneblur" satffAndOrgReadonly="{{satffAndOrgReadonly}}"
 bind:clickAttach="clickAttach"  bind:uploadSucess="uploadSucess" bind:uploadError="uploadError" popType="sale" priceTitle="" staff="staff" org="org"  wholeOrderDiscountCol="discount" discountAmountCol="discAmt" dataTime="{{dataTime}}" minDate="{{minDate}}" ></dk-form-bill>
 <!-- 编辑时候显示的 -->
 <!-- <dk-form-bill wx:else  type="sale" id="{{formName}}" routeObjName="{{routeObjName}}" cardList="{{cardList}}" titleTagCol="brandName"  titleCol="skuModel" iconCol="imagesUrl" descCol="skuName"  subCol="calculationFormula" pupPriceCol="factAmt" priceCol="factPrice"  quantityCol="itemQtyShowEdit" sumAmountCol="sumAmountShowEdit" sumQuantityCol="sumQuantityShowEdit" discountStandardCol="saleDiscount" contentObj="{{contentObj}}" model:value="{{formData}}" popContent="{{popContent}}" bind:chooseData="chooseData" bind:setGoods="setGoods" table="{{table}}" swipeDisabled ="cannotModifyFlag" bind:editItems="editItems"  bind:openChoosedItemInfo="openChoosedItemInfo" deleteName="deleteItemList" bind:onCloseDel="deleteItemList" bind:customersChoose="customersChoose"  bind:changePhoneblur="changePhoneblur" 

+ 17 - 5
package-sales/pages/order-return/add/add.js

@@ -1462,26 +1462,33 @@ Page({
         type: 'selectIcon',
         urlKey: 'selectCustomers',
         required: true,
-        readonly: false,
+        readonly: this.data.formType =='edit'?true:false,
+        readonlyItem: this.data.formType =='edit'?true:false, 
         title: mixins.$t('customerName')
       },
       {
         code: 'cusPhone',
         type: 'phone',
         title: mixins.$t('cusPhone'),
+        readonly: this.data.formType =='edit'?true:false,
+        readonlyItem: this.data.formType =='edit'?true:false, 
         required: true
       },
       {
         code: 'addressFull',
         type: 'address',
         title: mixins.$t('addressFull'),
-        required: true
+        required: true,
+        readonly: this.data.formType =='edit'?true:false,
+        readonlyItem: this.data.formType =='edit'?true:false, 
       },
       {
         code: 'addressNo',
         type: 'str',
         required: true,
-        title: mixins.$t('addressNo')
+        title: mixins.$t('addressNo'),
+        readonly: this.data.formType =='edit'?true:false,
+        readonlyItem: this.data.formType =='edit'?true:false, 
       },
       {
         code: 'channelId',
@@ -1489,7 +1496,9 @@ Page({
         type: 'drop',
         required: true,
         dropType: 'saleChannel',
-        title: mixins.$t('saleChannel')
+        title: mixins.$t('saleChannel'),  
+        readonly: this.data.formType =='edit'?true:false,
+        readonlyItem: this.data.formType =='edit'?true:false, 
       },
       {
         code: 'cusFrom',
@@ -1497,10 +1506,13 @@ Page({
         type: 'drop',
         required: false,
         dropType: 'customerFrom',
-        title: mixins.$t('customerSource')
+        title: mixins.$t('customerSource'),
+        readonly: this.data.formType =='edit'?true:false,
+        readonlyItem: this.data.formType =='edit'?true:false, 
       },
       ]
       this.setData({
+        satffAndOrgReadonly: true,
         contentObj: contentObj,
       })
       if (this.data.formMode == Constants.formMode.other) {

+ 108 - 90
package-sales/pages/order-sum-report/detail/detail.js

@@ -18,7 +18,7 @@ Page({
    * 页面的初始数据
    */
   data: {
-    firstFlag:true,
+    firstFlag: true,
     active: 0,
     // 查询条件
     searchContent: [{
@@ -51,33 +51,38 @@ Page({
 
     // 查询条件-筛选
     pullMenuList: [{
-      code: 'skuModel',
-      title: mixins.$t('skuModel')
-    }, {
-      code: 'skuName',
-      title: mixins.$t('skuName')
-    }, {
-      code: 'brandName',
-      title: mixins.$t('goodsBrand')
-    }, {
-      code: 'sukSpec',
-      title: mixins.$t('sukSpec')
-    }, {
-      code: 'nonStdCode',
-      title: mixins.$t('colorNumber')
-    }, {
-      code: 'seriesName',
-      title: mixins.$t('goodsSeries')
-    }, {
-      code: 'cusName',
-      title: mixins.$t('cusName')
-    }, {
-      code: 'cusPhone',
-      title: mixins.$t('cusPhone')
-    }, ],
-   
+        code: 'skuModel',
+        title: mixins.$t('skuModel')
+      }, {
+        code: 'skuName',
+        title: mixins.$t('skuName')
+      }, {
+        code: 'brandName',
+        title: mixins.$t('goodsBrand')
+      }, {
+        code: 'sukSpec',
+        title: mixins.$t('sukSpec')
+      }, {
+        code: 'nonStdCode',
+        title: mixins.$t('colorNumber')
+      }, {
+        code: 'seriesName',
+        title: mixins.$t('goodsSeries')
+      }, {
+        code: 'cusName',
+        title: mixins.$t('cusName')
+      }, {
+        code: 'cusPhone',
+        title: mixins.$t('cusPhone')
+      },
+      // {
+      //   code: 'sumNonStdCode',
+      //   dataType: 'checkbox'
+      // },  
+    ],
+
     tableData: [],
-    pageFlag:false,
+    pageFlag: false,
     // 路由
     routeObjName: 'report',
   },
@@ -86,26 +91,29 @@ Page({
    * @date : 2024年3月8日
    * @author : 王英杰
    */
-  setSearchParams(params) { 
+  setSearchParams(params) {
     let searchParams = this.data.item
-    if (this.data.firstFlag) { 
+    if (this.data.firstFlag) {
       let item = this.data.item
       let querys = JSON.parse(item.querys)
-      let searchForm = JSON.stringify(item) 
+      let searchForm = JSON.stringify(item)
       let itemInfo = item.itemInfo
       let searchContent = this.data.searchContent
-      let makeTime_index = searchContent.findIndex(it=>it.code == "makeTime") 
-      if(item.dateDefault){
+      let makeTime_index = searchContent.findIndex(it => it.code == "makeTime")
+      if (item.dateDefault) {
         searchContent[makeTime_index].title = item.dateDefault.text
         this.selectComponent('#dk-dropdown-menu').setDkDropdownDate(item.dateDefault.value)
       }
-   
+      if (querys.type == 1) {
+        let choose_index = searchContent.findIndex(it => it.code == "choose")
+        searchContent.splice(choose_index, 1)
+      }
       this.setData({
         firstFlag: false,
         searchForm: searchForm,
-        active:querys.type==1?0:1,
-        itemInfo:itemInfo,
-        searchContent:searchContent
+        active: querys.type == 1 ? 0 : 1,
+        itemInfo: itemInfo,
+        searchContent: searchContent
       })
       params.makeTimeStart = querys.accDateStart
       params.makeTimeEnd = querys.accDateEnd
@@ -113,16 +121,17 @@ Page({
       params.skuName = querys.skuName
       params.brandName = querys.brandName
       params.skuSpec = querys.skuSpec
-      params.nonStdCode = querys.nonStdCode
+      params.nonStdCode = querys.type == 1 ? itemInfo.nonStdCode : querys.nonStdCode
       params.seriesName = querys.seriesName
       params.cusName = querys.cusName
       params.cusPhone = querys.cusPhone
+      params.sumNonStdCode = querys.sumNonStdCode
     }
     let querys = {
       accDatestart: params.makeTimeStart,
       accDateEnd: params.makeTimeEnd,
       type: this.data.active == 0 ? 1 : 2,
-      sortAmt: params.sort ? params.sort : '1', 
+      sortAmt: params.sort ? params.sort : '1',
       skuModel: params.skuModel,
       skuName: params.skuName,
       brandName: params.brandName,
@@ -130,17 +139,18 @@ Page({
       nonStdCode: params.nonStdCode,
       seriesName: params.seriesName,
       cusName: params.cusName,
-      cusPhone: params.cusPhone, 
+      cusPhone: params.cusPhone,
+      sumNonStdCode: params.sumNonStdCode,
     }
-    if(querys.type==1){
+    if (querys.type == 1) {
       // 外协
-      if(searchParams.itemInfo && !searchParams.itemInfo.skuId){
-        querys.skuModel =  searchParams.id
-      }else{
-        querys.skuId =  searchParams.id
+      if (searchParams.itemInfo && !searchParams.itemInfo.skuId) {
+        querys.skuModel = searchParams.id
+      } else {
+        querys.skuId = searchParams.id
       }
-    }else{
-      querys.cusId =  searchParams.id
+    } else {
+      querys.cusId = searchParams.id
     }
     params.querys = JSON.stringify(querys)
     return params;
@@ -152,20 +162,20 @@ Page({
    */
   getData(params) {
     return this.excute(this.data.service, this.data.service.getOrderSummaryItem, params).then(res => {
-      if (res.data.code === Constants.SUCESS_CODE) { 
-        let tableData = [] 
+      if (res.data.code === Constants.SUCESS_CODE) {
+        let tableData = []
         if (res.data && res.data.data && res.data.data.detail) { //头部数据
           tableData = res.data.data.detail
-          tableData.forEach(element => { 
+          tableData.forEach(element => {
             if (element.skuImages && element.skuImages.length > 0) {
               element.skuImages.forEach(item => {
                 item.url = config.image_url + item.path
               });
-              element.imagesUrl =   element.skuImages[0].url
-            } 
+              element.imagesUrl = element.skuImages[0].url
+            }
           });
         }
-        this.setData({ 
+        this.setData({
           tableData: tableData
         })
       }
@@ -176,50 +186,58 @@ Page({
    * @date : 2024/6/6 08:59
    * @author : 王英杰
    */
-  toCusDetail(e){
-   let  itemInfo = this.data.itemInfo
-   wx.navigateTo({
-    url: this.data.route.toCusDetail.url,
-    success: function (res) {
-      // 通过eventChannel向被打开页面传送数据 TODO 测试例子url是写死的,实际中,需要从route中读取
-      res.eventChannel.emit('params',  { item: itemInfo })
-    }
-  })
+  toCusDetail(e) {
+    let itemInfo = this.data.itemInfo
+    wx.navigateTo({
+      url: this.data.route.toCusDetail.url,
+      success: function (res) {
+        // 通过eventChannel向被打开页面传送数据 TODO 测试例子url是写死的,实际中,需要从route中读取
+        res.eventChannel.emit('params', {
+          item: itemInfo
+        })
+      }
+    })
   },
-   /**
-  * @desc : 跳转销售详情
-  * @date : 2024/6/6 08:59
-  * @author : 王英杰
-  */
- toSaleDetail(e){
-  let  item = e.currentTarget.dataset.item
-  let url = null
-  let  params = {}
-   if(item.orderType == "order"){ //跳转销售明细
-    item.orderId = item.orderId
-    url =  this.data.route.toSaleDetail.url
-    params = { item: item }
-   }
-   if(item.orderType == "outbound"){ //跳转销售回库明细
-    item.outId = item.orderId
-    url =  this.data.route.toRturnDetail.url
-    params = {  id:item.outId,  item: item , formMode: Constants.formMode.detail }
-   }  
-  wx.navigateTo({
-    url: url,
-    success: function (res) {
-      // 通过eventChannel向被打开页面传送数据 TODO 测试例子url是写死的,实际中,需要从route中读取
-      res.eventChannel.emit('params', params)
+  /**
+   * @desc : 跳转销售详情
+   * @date : 2024/6/6 08:59
+   * @author : 王英杰
+   */
+  toSaleDetail(e) {
+    let item = e.currentTarget.dataset.item
+    let url = null
+    let params = {}
+    if (item.orderType == "order") { //跳转销售明细
+      item.orderId = item.orderId
+      url = this.data.route.toSaleDetail.url
+      params = {
+        item: item
+      }
     }
-  })
- },
+    if (item.orderType == "outbound") { //跳转销售回库明细
+      item.outId = item.orderId
+      url = this.data.route.toRturnDetail.url
+      params = {
+        id: item.outId,
+        item: item,
+        formMode: Constants.formMode.detail
+      }
+    }
+    wx.navigateTo({
+      url: url,
+      success: function (res) {
+        // 通过eventChannel向被打开页面传送数据 TODO 测试例子url是写死的,实际中,需要从route中读取
+        res.eventChannel.emit('params', params)
+      }
+    })
+  },
   /**
    * @desc : 初始化数据
    * @date : 2024/2/1 15:49
    * @author : 王英杰
    */
   loadInit() {
- 
+
   },
   /**
    * @desc : 切换 商品 客户
@@ -244,8 +262,8 @@ Page({
    * @date : 2024年3月8日
    * @author : 王英杰
    */
-  toDetail(e) { 
-    let skuId = e.detail.item.skuId 
+  toDetail(e) {
+    let skuId = e.detail.item.skuId
     wx.navigateTo({
       url: this.data.route.orderSumReportDetail.url,
       success: function (res) {

+ 5 - 0
package-sales/pages/order-sum-report/order-sum-report.js

@@ -73,6 +73,10 @@ Page({
     }, {
       code: 'cusPhone',
       title: mixins.$t('cusPhone')
+    },
+    {
+      code: 'sumNonStdCode',
+      dataType: 'checkbox'
     }, ],
     tagList: [{
         title: mixins.$t("goods"),
@@ -117,6 +121,7 @@ Page({
       seriesName: params.seriesName,
       cusName: params.cusName,
       cusPhone: params.cusPhone,
+      sumNonStdCode:params.sumNonStdCode,
     }
     params.querys = JSON.stringify(querys)
     params.dateDefault = searchParams.dateDefault