Parcourir la source

销售订单 选品

王英杰 il y a 1 an
Parent
commit
f570c4582d

+ 1 - 0
i18n/zh-CN.js

@@ -397,6 +397,7 @@ const saleOrder = {
   adddress: '地址',
   contractNumber: '合同号',
   priceSale: '销售单价',
+  pricez: '单价',
   saleReturn: '销售退货',
   flgGift: '赠品标识',
   makeOrder: '成交订单',

+ 114 - 3
package-base-select/pages/select-goods/select-goods.js

@@ -43,7 +43,8 @@ Page({
         code: 'itemQty',
         type: 'negativeStep',
         title: '数量',
-        required: true
+        required: true,
+        readonly: true,
       },
       {
         code: 'whId',
@@ -71,6 +72,7 @@ Page({
         type: 'str',
       },
     ],
+ 
     popContentBox: [],
     popupTopObj: [{
       leftTitle: '库存量',
@@ -201,6 +203,7 @@ Page({
             code: 'itemQty',
             type: 'step',
             title: mixins.$t("count"),
+            readonly: true,
             required: true
           },
           {
@@ -259,10 +262,23 @@ Page({
     //库存
     if (this.data.item == Constants.billType.inventory) {
       this.setData({
+        contentList: [{
+          code: 'amount',
+          content: 0,
+          type: 'number',
+          title: mixins.$t("totalAmount")
+        },
+        {
+          type: 'count',
+          code: 'count',
+          quantity: 0
+        }
+      ],
         popContent: [{
             code: 'itemQty',
             type: 'step',
             title: mixins.$t("count"),
+            readonly: true,
             required: true
           },
           {
@@ -321,6 +337,7 @@ Page({
             code: 'itemQty',
             type: 'step',
             title: mixins.$t("count"),
+            readonly: true,
             required: true
           },
           {
@@ -388,6 +405,7 @@ Page({
             code: 'itemQty',
             type: 'step',
             title: mixins.$t("count"),
+            readonly: true,
             required: true
           },
           {
@@ -432,6 +450,7 @@ Page({
             code: 'itemQty',
             type: 'step',
             title: mixins.$t("count"),
+            readonly: true,
             required: true
           },
           {
@@ -488,6 +507,98 @@ Page({
 
   },
   /**
+    * @desc : 数量改变事件
+    * @date : 2024/2/1 15:49
+    * @author : 于继渤
+    */
+   changePriceStep(e) {
+    let key = e.detail.key
+    let value = e.detail.value
+    let dataItem = JSON.parse(this.data.dataItemChangePrice)
+    console.log('value', value);
+    dataItem[key] = value
+    this.setData({
+      dataItemChangePrice: JSON.stringify(dataItem)
+    })
+  },
+  /**
+    * @desc   : 修改数值离开框的值
+    * @author : 周兴
+    * @date   : 2024/2/2 11:46
+    */
+   blurNumPriceberField(e) {
+    console.log("blurNumberField", e);
+    let dataItem = JSON.parse(this.data.dataItemChangePrice)
+    let key = e.detail.key
+    dataItem[key] = e.detail.value
+    this.setData({
+      dataItemChangePrice: JSON.stringify(dataItem)
+    })
+  },
+  /**
+    * @desc : 已选商品修改单价 金额pop 确定事件
+    * @date : 2024/2/1 15:49
+    * @author : 于继渤
+    */
+   editItemsChangePrice(e) {
+    let dataItem = JSON.parse(this.data.dataItemChangePrice)
+    let index = this.data.changePriceIndex
+    let choosedGoodsList = this.data.choosedGoodsList
+    choosedGoodsList[index] = dataItem
+    let sum = Number(0)
+    let contentList = this.data.contentList
+    let amount_index = contentList.findIndex(it => it.code == 'amount');
+    let count_index = contentList.findIndex(it => it.code == 'count');
+    choosedGoodsList.forEach(element => {
+      element.sumPrice = Number(element.itemQty) * Number(element.priceSale)
+      sum = sum + (Number(element.itemQty) * Number(element.priceSale))
+    });
+    contentList[amount_index].content = sum
+    contentList[count_index].quantity = choosedGoodsList.sum('itemQty')
+    this.setData({
+      choosedGoodsList: choosedGoodsList,
+      contentList: contentList
+    })
+  },
+  /**
+   * @desc : 打开商品
+   * @date : 2024/2/1 15:49
+   * @author : 于继渤
+   */
+  openChooseItemInfo(e) {
+    console.log(e)
+    let item = e.currentTarget.dataset.item
+    let index = e.currentTarget.dataset.index
+    let popChangePrice =  [{
+      code: 'itemQty',
+      type: 'step',
+      title: '数量',
+      required: true
+    }, {
+      code: 'priceSale',
+      type: 'number',
+      title: mixins.$t("pricez"),
+      center: 'right',
+    },
+    ]
+   let popChangePriceindex =   popChangePrice.findIndex(it => it.type == 'number') 
+    if(this.data.billType == Constants.billType.sale){ //销售订单的时候 改价格pop
+      popChangePrice[popChangePriceindex].code = 'priceSale'
+    }
+    if(this.data.item == Constants.billType.saleOutReturn ||
+      this.data.item == Constants.billType.out ||
+      this.data.item == Constants.billType.saleOut ||
+      this.data.item == Constants.billType.inventory){ //销售的时候 改价格pop
+      popChangePrice[popChangePriceindex].code = 'priceOut'
+    }
+    this.setData({
+      popChangePrice:popChangePrice,
+      showChangePrice: true,
+      dataItemChangePrice: JSON.stringify(item),
+      changePriceIndex: index,
+    })
+  },
+  /**
    * @desc : 顶部切换
    * @date : 2024/2/1 15:49
    * @author : 于继渤
@@ -1115,7 +1226,7 @@ Page({
     })
     console.log("choosedGoodsList", choosedGoodsList);
     //销售订单需要计算底部按钮
-    if (this.data.item == Constants.billType.sale || this.data.item == Constants.billType.saleOut || this.data.item == Constants.billType.saleOutReturn) {
+    if (this.data.item == Constants.billType.sale || this.data.item == Constants.billType.saleOut || this.data.item == Constants.billType.saleOutReturn|| this.data.item == Constants.billType.inventory ) {
       this.calculateParameters()
     }
   },
@@ -1149,7 +1260,7 @@ Page({
     let sumPrice = Number(0)
     let sumQty = Number(0)
     choosedGoodsList.forEach(res => {
-      if (this.data.billType == 'saleOut') {
+      if (this.data.billType == 'saleOut'||this.data.billType == 'inventory') {
         sumPrice += (Number(res.priceOut) * Number(res.itemQty))
       } else if (this.data.billType == 'sale') {
         sumPrice += (Number(res.priceSale) * Number(res.itemQty))

+ 21 - 18
package-base-select/pages/select-goods/select-goods.wxml

@@ -21,13 +21,13 @@
 
   <view style="display: flex;">
     <view style="width: 85%;">
-      <!-- 查询条件 --> 
-      <dk-dropdown-menu model:value="{{searchForm}}" menuList="{{searchContent}}"  bind:search="searchData" searchTextPlaceholder="{{wxmlUtil.setSearchPlaceholder($t,['skuName','skuModel'])}}">
+      <!-- 查询条件 -->
+      <dk-dropdown-menu model:value="{{searchForm}}" menuList="{{searchContent}}" bind:search="searchData" searchTextPlaceholder="{{wxmlUtil.setSearchPlaceholder($t,['skuName','skuModel'])}}">
       </dk-dropdown-menu>
     </view>
-    <view bind:tap="toAddGoods"  class="scan-class" style="width: 15%;display: flex;align-items: center;">
-    <image class="scan-image" fit="fill" src="{{imageUrl+'/goods_add_icon.png'}}"></image>
-  </view>
+    <view bind:tap="toAddGoods" class="scan-class" style="width: 15%;display: flex;align-items: center;">
+      <image class="scan-image" fit="fill" src="{{imageUrl+'/goods_add_icon.png'}}"></image>
+    </view>
   </view>
 
 
@@ -210,7 +210,7 @@
     </van-cell>
     <van-cell custom-class="goods-cell-class" wx:for="{{choosedGoodsList}}" wx:key="index" data-index="{{index}}" border="{{ false }}">
       <van-swipe-cell right-width="{{ 65 }}" data-index="{{index}}" async-close bind:close="delChoosedGoodsItem">
-        <view class="goods-item-class">
+        <view class="goods-item-class" data-item="{{item}}" data-index="{{index}}" catch:tap="openChooseItemInfo">
           <view>
             <van-image radius="15rpx" custom-class="goods-item-image" fit="fill" src="{{item.imagesUrl }}" />
           </view>
@@ -224,7 +224,7 @@
               <view style="display: flex; ">
                 <dk-text value="{{item.skuName}}"></dk-text>
               </view>
-              <view style="display: flex;margin-top:20rpx;" wx:if="{{billType == 'pur'||billType == 'purInto'}}">
+              <view style="display: flex;margin-top:20rpx;" wx:if="{{billType == 'pur'||billType == 'purInto'||billType == 'inventory'}}">
                 <!-- 标准价/标价-->
                 <view style="width: 85%;">
                   <dk-cell height="46rpx" spaceWidth="1rpx" left="0" fontSize="13" contentColor="#CAA977" fontWeight="bold" title=" " content="{{item.sumPrice?item.sumPrice:0}}"></dk-cell>
@@ -257,7 +257,7 @@
                   <dk-text value="数量:"></dk-text>
               
                 </view> -->
-              <van-stepper value="{{item.itemQty}}" data-index="{{index}}" min="0" integer="{{true}}" max="999999999" bind:change="changeAllreadyChooseQuantity" />
+              <van-stepper value="{{item.itemQty}}" data-index="{{index}}" min="0" integer="{{true}}" max="999999999" bind:change="changeAllreadyChooseQuantity" disabled="true" />
             </view>
           </view>
         </view>
@@ -275,7 +275,7 @@
   <scroll-view scroll-y='{{true}}' bindscrolltolower='scrollToLower' lower-threshold='100'>
     <view wx:for="{{choosedGoodsList}}" wx:key="index" catch:tap="openAddItemInfo" data-item="{{item}}" class="main-class">
       <van-swipe-cell right-width="{{ 65 }}" data-index="{{index}}" async-close bind:close="delChoosedGoodsItem">
-        <view class="main-foot" style="border-radius:15rpx;">
+        <view class="main-foot" style="border-radius:15rpx;" data-item="{{item}}" data-index="{{index}}" catch:tap="openChooseItemInfo">
           <view>
             <view class="table-content-row">
               <view style="display:flex;width:100%;">
@@ -296,7 +296,7 @@
                   </view>
                 </view>
               </view>
-            </view>
+            </view> 
             <!-- 库存盘点显示的 -->
             <view wx:if="{{controlFlags&&controlFlags.sourcePage =='inventory-check'}}">
               <!-- 库存量  可售量 -->
@@ -327,7 +327,7 @@
                     <dk-text layoutFlag="{{true}}" fontSize="14px" color="#95A8CB" fontWeight="nomal" value="盘点数量"></dk-text>
                   </view>
                   <view class="table-content-class">
-                    <van-stepper value="{{item.itemQty}}" integer="{{true}}" data-index="{{index}}" data-item="{{item}}" data-key="{{item.code}}" bind:change="changeStep" />
+                    <van-stepper value="{{item.itemQty}}" integer="{{true}}" data-index="{{index}}" data-item="{{item}}" data-key="{{item.code}}" bind:change="changeStep" disabled="true" />
                   </view>
                 </view>
               </view>
@@ -399,27 +399,30 @@
 </van-sidebar>
 
 
-<!--  采购入库 采购订单 其它入库  --> 
-<dk-popup wx:if="{{ billType != 'sale' && billType != 'saleOut' && billType !== 'inventory'  }}" stepperDecimal ="decimalPlaces" type="sale" descCol="skuName" titleTagCol="" titleCol="skuModel" iconCol="imagesUrl"  subCol="calculationFormula"  value="{{dataItem}}" show="{{showPop}}" routeObjName="{{routeObjName}}" priceTitle="" priceCol="sumPrice"  contentObj="{{popContent}}"bind:changeStep="changeStep" bind:changeField= "changeField" bind:blurNumberField="blurNumberField" bind:openPackageBox="openPackageBox" bind:commit="editItems"> 
+<!--  采购入库 采购订单 其它入库  -->
+<dk-popup wx:if="{{ billType != 'sale' && billType != 'saleOut' && billType !== 'inventory'  }}" stepperDecimal="decimalPlaces" type="sale" descCol="skuName" titleTagCol="" titleCol="skuModel" iconCol="imagesUrl" subCol="calculationFormula" value="{{dataItem}}" show="{{showPop}}" routeObjName="{{routeObjName}}" priceTitle="" priceCol="sumPrice" contentObj="{{popContent}}" bind:changeStep="changeStep" bind:changeField="changeField" bind:blurNumberField="blurNumberField" bind:openPackageBox="openPackageBox" bind:commit="editItems">
 </dk-popup>
 
 <!-- 库存 -->
-<dk-popup id="dkPopup" wx:if="{{ billType == 'inventory' }}" type="sale" descCol="skuName"stepperDecimal ="decimalPlaces"  subCol="calculationFormula" titleTagCol="" titleCol="skuModel" iconCol="imagesUrl" value="{{dataItem}}" show="{{showPop}}" routeObjName="{{routeObjName}}" priceTitle="" priceCol="sumPrice" contentObj="{{popContent}}" bind:commit="editItems" bind:openPackageBox="openPackageBox"bind:changeStep="changeStep" bind:blurNumberField="blurNumberField" bind:changeField= "changeField" bind:changeCheckBox="popupChangeCheckBox" >
+<dk-popup id="dkPopup" wx:if="{{ billType == 'inventory' }}" type="sale" descCol="skuName" stepperDecimal="decimalPlaces" subCol="calculationFormula" titleTagCol="" titleCol="skuModel" iconCol="imagesUrl" value="{{dataItem}}" show="{{showPop}}" routeObjName="{{routeObjName}}" priceTitle="" priceCol="sumPrice" contentObj="{{popContent}}" bind:commit="editItems" bind:openPackageBox="openPackageBox" bind:changeStep="changeStep" bind:blurNumberField="blurNumberField" bind:changeField="changeField" bind:changeCheckBox="popupChangeCheckBox">
 </dk-popup>
 
 
 <!-- 销售开单 -->
-<dk-popup id="dkPopup"  wx:if="{{ billType == 'sale' }}" type="sale" titleTagCol="" subCol="calculationFormula" descCol="skuName" stepperDecimal ="decimalPlaces" titleCol="skuModel"  priceCol="sumPrice"  iconCol="imagesUrl"   value="{{dataItem}}" show="{{showPop}}" routeObjName="{{routeObjName}}" bind:changeStep="changeStep" bind:openPackageBox="openPackageBox" contentObj="{{popContent}}" bind:commit="editItems" bind:blurNumberField="blurNumberField"  bind:changeField= "changeField" bind:changeCheckBox="popupChangeCheckBox">
+<dk-popup id="dkPopup" wx:if="{{ billType == 'sale' }}" type="sale" titleTagCol="" subCol="calculationFormula" descCol="skuName" stepperDecimal="decimalPlaces" titleCol="skuModel" priceCol="sumPrice" iconCol="imagesUrl" value="{{dataItem}}" show="{{showPop}}" routeObjName="{{routeObjName}}" bind:changeStep="changeStep" bind:openPackageBox="openPackageBox" contentObj="{{popContent}}" bind:commit="editItems" bind:blurNumberField="blurNumberField" bind:changeField="changeField" bind:changeCheckBox="popupChangeCheckBox">
 </dk-popup>
 <!-- 销售出库 -->
-<dk-popup wx:if="{{ billType == 'saleOut'}}" type="sale" titleTagCol="" subCol="calculationFormula" descCol="skuName" stepperDecimal ="decimalPlaces" titleCol="skuModel"  priceCol="sumPrice"  iconCol="imagesUrl"   value="{{dataItem}}" show="{{showPop}}" routeObjName="{{routeObjName}}" contentObj="{{popContent}}" bind:changeStep="changeStep"  bind:commit="editItems" popupTopObj="{{popupTopObj}}" bind:openPackageBox="openPackageBox" bind:blurNumberField="blurNumberField" bind:changeField= "changeField">
+<dk-popup wx:if="{{ billType == 'saleOut'}}" type="sale" titleTagCol="" subCol="calculationFormula" descCol="skuName" stepperDecimal="decimalPlaces" titleCol="skuModel" priceCol="sumPrice" iconCol="imagesUrl" value="{{dataItem}}" show="{{showPop}}" routeObjName="{{routeObjName}}" contentObj="{{popContent}}" bind:changeStep="changeStep" bind:commit="editItems" popupTopObj="{{popupTopObj}}" bind:openPackageBox="openPackageBox" bind:blurNumberField="blurNumberField" bind:changeField="changeField">
 </dk-popup>
 
 <!-- 箱片 -->
-<dk-popup   type="basic"  title="修改包装数量"    titleCol="skuModel"  iconCol="imagesUrl"   value="{{dataItem}}" show="{{showPopBox}}" routeObjName="{{routeObjName}}"   contentObj="{{popContentBox}}" bind:changeStep="changeStep" bind:commit="editItemsBox" stepperDecimal ="decimalPlaces" ></dk-popup>
+<dk-popup type="basic" title="修改包装数量" titleCol="skuModel" iconCol="imagesUrl" value="{{dataItem}}" show="{{showPopBox}}" routeObjName="{{routeObjName}}" contentObj="{{popContentBox}}" bind:changeStep="changeStep" bind:commit="editItemsBox" stepperDecimal="decimalPlaces"></dk-popup>
 
 <dk-save-button cssType="sale" model:value="{{btnFormData}}" btnAutoWidthFlag="{{false}}" btnRightFlag="{{true}}" buttonList="{{buttonList}}" contentList="{{contentList}}" bind:open="submit"></dk-save-button>
 
 <!-- 仓库 -->
 <dk-single-dropdown-item show="{{whFlag}}" content="{{form.whName}}" id='warehouse' typeName='warehouse' bind:commit='mutiSearch' bind:close='muticlose'>
-</dk-single-dropdown-item>
+</dk-single-dropdown-item>
+
+<!-- 修改已选商品金额 和单价 -->
+<dk-popup type="basic" title="修改价格" value="{{dataItemChangePrice}}" show="{{showChangePrice}}" routeObjName="{{routeObjName}}" contentObj="{{popChangePrice}}" validFlag="{{true}}" bind:commit="editItemsChangePrice" bind:changeStep="changePriceStep" bind:blurNumberField="blurNumPriceberField"></dk-popup>

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

@@ -870,6 +870,7 @@ Page({
       cardList[index].discount = 100
       cardList[index].factAmt = 0
       cardList[index].sumAmount = 0
+      cardList[index].sumQuantity = 0
       this.setData({
         cardList: cardList
       })
@@ -877,7 +878,9 @@ Page({
     if (this.data.gradeCode == Constants.gradeCode.STD) { //标准版 不显示需收款
       let contentSaveList = this.data.contentSaveList
       let index_receivable = contentSaveList.findIndex(it => it.code == 'receivable');
-      contentSaveList.splice(index_receivable, 1);
+      if(index_receivable>=0){
+        contentSaveList.splice(index_receivable, 1);
+      }
       this.setData({
         contentSaveList: contentSaveList
       })
@@ -971,7 +974,9 @@ Page({
     if (this.data.gradeCode == Constants.gradeCode.STD) { //标准版 不显示需收款
       let contentSaveList = this.data.contentSaveList
       let index_receivable = contentSaveList.findIndex(it => it.code == 'receivable');
-      contentSaveList.splice(index_receivable, 1);
+      if(index_receivable>=0){
+        contentSaveList.splice(index_receivable, 1);
+      } 
       this.setData({
         contentSaveList: contentSaveList
       })
@@ -1288,7 +1293,9 @@ Page({
       let contentSaveList = this.data.contentSaveList
       let index_receivable = contentSaveList.findIndex(it => it.code == 'receivable');
       if(index_receivable >= 0){
-        contentSaveList.splice(index_receivable, 1);
+        if(index_receivable>=0){
+          contentSaveList.splice(index_receivable, 1);
+        }
         this.setData({
           contentSaveList: contentSaveList
         })

+ 1 - 1
pages/shopping/shopping.js

@@ -107,7 +107,7 @@ Page({
     }, {
       code: 'priceSale',
       type: 'number',
-      title: mixins.$t("priceSale"),
+      title: mixins.$t("pricez"),
       center: 'right',
     },
     ],

+ 1 - 1
pages/shopping/shopping.wxml

@@ -189,4 +189,4 @@
 <dk-save-button  countName="商品数量" countEnd="" cssType="sale" model:value="{{btnFormData}}" btnAutoWidthFlag="{{false}}" btnRightFlag="{{true}}" buttonList="{{buttonList}}" contentList="{{contentList}}" bind:open="submit"></dk-save-button>
 
 <!-- 修改已选商品金额 和单价 -->
-<dk-popup type="basic" title="修改价格"   value="{{dataItemChangePrice}}" show="{{showChangePrice}}" routeObjName="{{routeObjName}}" contentObj="{{popChangePrice}}" validFlag="{{true}}"  bind:commit="editItemsChangePrice" bind:changeStep="changePriceStep"bind:blurNumberField="blurNumPriceberField"  ></dk-popup>
+<dk-popup type="basic" title="修改价格"   value="{{dataItemChangePrice}}" show="{{showChangePrice}}" routeObjName="{{routeObjName}}" contentObj="{{popChangePrice}}" validFlag="{{true}}"  bind:commit="editItemsChangePrice" bind:changeStep="changePriceStep" bind:blurNumberField="blurNumPriceberField"  ></dk-popup>