廖井涛
2024-07-10 cb865364d29991abf85b7694a16d359dc7af913c
提交发货计算方式修改订单右键递增功能
10个文件已修改
109 ■■■■ 已修改文件
north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet2.vue 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/lang/zh.js 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/delivery/CreateDelivery.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/delivery/SelectOrderList.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedGoodsInventoryMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue
@@ -139,12 +139,13 @@
                <th style="width: 12%;" colspan="2">加工要求</th>
              </tr>
              </thead>
              <tr>
                <td style="font-size: 15px;text-align: left" colspan="4">产品名称:<span>{{item.DeliveryDetail.orderDetail.productName}}</span></td>
                <td style="font-size: 15px;text-align: left" colspan="3">对方单号:</td>
                <td style="font-size: 15px;text-align: left" colspan="3">订单编号:<span>{{item.DeliveryDetail.orderDetail.orderId}}</span></td>
              </tr>
              </thead>
              <tr class="day-in" v-for="(items, index1) in item.DeliveryDetailList" :key="index1">
                <td>{{items.order_number}}</td>
@@ -405,9 +406,6 @@
<style scoped>
#child{
  margin-top: 20px;
}
h1,h3{
  left:0;
  right:0;
@@ -420,6 +418,7 @@
}
h3{
  font-size: 1.2rem;
  font-weight: bolder;
}
@@ -442,6 +441,13 @@
.title-s,.title-s th{
  border:0
}
.hr-border{
  height: 2px;
  width: 100%;
  background-color: black;
  color: black;
}
table {
  border-collapse: collapse;
  width: 100%;
@@ -450,13 +456,6 @@
td > table {
  margin: 0;
  padding: 0;
}
.hr-border{
  height: 2px;
  width: 100%;
  background-color: black;
  color: black;
}
@page {
  size: auto;
north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet2.vue
@@ -223,9 +223,7 @@
<style scoped>
#child{
  margin-top: 20px;
}
h1,h3{
  left:0;
  right:0;
north-glass-erp/northglass-erp/src/lang/zh.js
@@ -57,6 +57,9 @@
        print:'打印',
        export:'导出',
        empty:'清空',
        incrementalAll:'之后递增',
        incrementalChecked:'选中递增',
        msg:{
            max255:"最多输入255个字符",
            range99999Dec2:
north-glass-erp/northglass-erp/src/views/sd/delivery/CreateDelivery.vue
@@ -162,7 +162,7 @@
        titleUploadData.value.paymentTerms = titleSelectJson.value.paymentTerms[0].basicName
        titleUploadData.value.payMethod = titleSelectJson.value.payMethod[0].basicName
        const today = new Date
        today.setTime(today.getTime() + (15 * 24 * 60 * 60 * 1000))
        today.setTime(today.getTime() )
        titleUploadData.value.deliveryDate=today.getFullYear() +
            '-' + ("0" + (today.getMonth() + 1)).slice(-2)
            + '-' + ("0" + today.getDate()).slice(-2)
north-glass-erp/northglass-erp/src/views/sd/delivery/SelectOrderList.vue
@@ -254,7 +254,12 @@
          const projectArray=[];
          for (let i=0;i<selectRecords.length;i++){
            customerIdArray.push(selectRecords[i].customerId)
            if(selectRecords[i].project.trim.length===0){
              projectArray.push(selectRecords[i].project.trim)
            }else{
            projectArray.push(selectRecords[i].project)
            }
            if(i+1===selectRecords.length){
              order_id+=selectRecords[i].orderId
            }else{
@@ -267,6 +272,7 @@
            return
          }
          //判断所选项目是否相同
          console.log(projectArray)
          if(!isAllEqual(projectArray)){
            ElMessage.warning(t('delivery.pleaseSelectTheSameCustomerProject'))
            return
north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
@@ -107,6 +107,8 @@
          { code: 'copyAll', name: t('basicData.sameAfterwards'), prefixIcon: 'vxe-icon-feedback', visible: true, disabled: false },
          { code: 'clearChecked', name: t('basicData.clearSelection'), prefixIcon: 'vxe-icon-indicator', visible: true, disabled: false },
          { code: 'computedMoney', name: t('basicData.calculateAmount'), prefixIcon: 'vxe-icon-chart-bar-x', visible: true, disabled: true },
          { code: 'incrementalAll', name: t('basicData.incrementalAll'), prefixIcon: 'vxe-icon-feedback', visible: true, disabled: false },
          { code: 'incrementalChecked', name: t('basicData.incrementalChecked'), prefixIcon: 'vxe-icon-copy', visible: true, disabled: false },
          { code: 'errorArea', name: t('basicData.errorSettlementArea'), prefixIcon: 'vxe-icon-chart-bar-x', visible: true, disabled: false },
          { code: 'otherMoney', name: t('basicData.otherAmounts'), prefixIcon: 'vxe-icon-chart-bar-x', visible: true, disabled: false },
          { code: 'sizeCheck', name: t('basicData.sizeReview'), prefixIcon: 'vxe-icon-eye-fill', visible: true, disabled: false }
@@ -597,6 +599,43 @@
          sizeCheckVisible.value=true
          break
        }
        case 'incrementalAll' :{
          let result = toolbarButtonClickEvent()
          if(result){
            const dataList = xGrid.value.getTableData().visibleData
            const val = getNestedProperty(dataList[result.start],result.cell)
            let numbers = parseInt(val.match(/(\d+)$/))
            const string=val.replace(/\d+$/, '')
            dataList.forEach((item,index) =>{
              if(index>=result.start ){
                setNestedValue(item,result.cell,string+numbers)
                numbers=numbers+1
              }
            })
          }
          gridOptions.menuConfig.body.options[0][5].disabled=false
          break
        }
        case 'incrementalChecked' : {
          let result = toolbarButtonClickEvent()
          if (result) {
            const dataList = xGrid.value.getTableData().visibleData
            const val = getNestedProperty(dataList[result.start], result.cell)
            let numbers = parseInt(val.match(/(\d+)$/))
            const string=val.replace(/\d+$/, '')
            dataList.forEach((item, index) => {
              if (index >= result.start && index <= result.end) {
                setNestedValue(item, result.cell, string + numbers)
                numbers = numbers + 1
              }
            })
          }
          gridOptions.menuConfig.body.options[0][5].disabled = false
          break
        }
      }
    }
  },
@@ -1052,6 +1091,7 @@
  lastObj[lastKey] = value;
}
//行单元格修改修改触发此事件
const editClosedEvent = ({ row, column }) => {
  //判断修改相应的数值修改面积与金额
north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedGoodsInventoryMapper.java
@@ -35,6 +35,9 @@
    Integer findOrderNumberdcount(@Param("orderId") String orderId,
                                  @Param("orderNumber") Integer orderNumber);
    FinishedGoodsInventory findOrderNumberd(@Param("orderId") String orderId,
                                  @Param("orderNumber") Integer orderNumber);
    Integer finishedGoodsInventorybycount(@Param("orderId") String orderId,
                                  @Param("orderNumber") Integer orderNumber);
north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.example.erp.dto.mm.FinishedOperateLogDTO;
import com.example.erp.entity.mm.FinishedGoodsInventory;
import com.example.erp.entity.mm.FinishedOperateLog;
@@ -14,6 +15,7 @@
import com.example.erp.mapper.mm.FinishedGoodsInventoryMapper;
import com.example.erp.mapper.mm.FinishedOperateLogMapper;
import com.example.erp.mapper.sd.OrderDetailMapper;
import com.example.erp.mapper.sd.OrderMapper;
import com.example.erp.service.userInfo.SysErrorService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -21,6 +23,7 @@
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import java.sql.SQLException;
import java.sql.Wrapper;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.*;
@@ -37,6 +40,8 @@
    BasicWarehouseTypeMapper basicWarehouseTypeMapper;
    @Autowired
    OrderDetailMapper orderDetailMapper;
    @Autowired
    OrderMapper orderMapper;
    @Autowired
    SysErrorService sysErrorService;
@@ -688,11 +693,12 @@
        Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
        try {
            String oddNumber= orderNumberSetting("入库");
            Order order = orderMapper.selectOne(new QueryWrapper<Order>().eq("order_id",orderId));
            if(order.getWarehousing()==0){
            List<OrderDetail> orderDetailList=finishedGoodsInventoryMapper.getSelectOrderDetail(orderId);
            for (OrderDetail orderDetail:orderDetailList){
                Integer finishedGoodsInventoryCount = finishedGoodsInventoryMapper.findOrderNumberdcount(orderDetail.getOrderId(),orderDetail.getOrderNumber());
                System.out.println(finishedGoodsInventoryCount);
                if(finishedGoodsInventoryCount>0){
                    FinishedGoodsInventory finishedGoodsInventory = finishedGoodsInventoryMapper.findOrderNumberd(orderDetail.getOrderId(),orderDetail.getOrderNumber());
                    if(finishedGoodsInventory!=null){
                    //修改库存表入库数量
                    finishedGoodsInventoryMapper.updateOrderInventory(orderDetail);
                }else{
@@ -702,6 +708,8 @@
                finishedGoodsInventoryMapper.updateIntOrderNumberConut(orderDetail.getOrderId(),orderDetail.getOrderNumber(),Integer.parseInt(orderDetail.getQuantity().toString()));
            }
            finishedGoodsInventoryMapper.updateOrderWarehousingState(orderId,2);
            }
        } catch (Exception e) {
            TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
@@ -234,11 +234,12 @@
                    }
                    double deliveryDetailMoney = 0.0;
                    if (calculateType==1){
                        deliveryDetailMoney=Double.valueOf(String.format("%.2f",orderDetail.getComputeArea()
                                *orderDetail.getDeliveryDetail().getQuantity()*orderDetail.getPrice()));
                        deliveryDetailMoney=Double.valueOf(String.format("%.2f",Double.valueOf(
                                String.format("%.2f", orderDetail.getComputeArea()*orderDetail.getDeliveryDetail().getQuantity())
                        )*orderDetail.getPrice()));
                    }else if (calculateType==2){
                        deliveryDetailMoney=Double.valueOf(String.format("%.2f",Double.valueOf(
                                String.format("%.2f", (orderDetail.getComputeArea())*orderDetail.getDeliveryDetail().getQuantity())
                                String.format("%.2f", orderDetail.getComputeArea()*orderDetail.getDeliveryDetail().getQuantity())
                        )*orderDetail.getPrice()));
                    }else if (calculateType==3){
                        deliveryDetailMoney=Double.valueOf(String.format("%.2f",orderDetail.getPrice() * orderDetail.getDeliveryDetail().getQuantity()));
north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml
@@ -534,6 +534,13 @@
    </select>
    <select id="findOrderNumberd" >
        select *
        from  mm.`finished_goods_inventory`
        where order_number = #{orderNumber} and order_id=#{orderId};
    </select>
    <select id="finishedGoodsInventorybycount" >
        select quantity_available
        from  mm.`finished_goods_inventory`
@@ -867,7 +874,7 @@
    <update id="updateOrderInventory">
        update mm.finished_goods_inventory
        set inventory=inventory+${orderDetail.quantity},quantity_available=quantity_available+${orderDetail.quantity},
        set inventory=${orderDetail.quantity},quantity_available=${orderDetail.quantity},
        update_time=now(),area=actual_signal_area*quantity_available
        where order_number=#{orderDetail.orderNumber}  and order_id=#{orderDetail.orderId}
    </update>