廖井涛
2024-08-30 b76d0ee9dfa7b678eb2ba050739be70581b71e77
修改发货面积计算以及订单金额重置日志
5个文件已修改
34 ■■■■ 已修改文件
north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue
@@ -93,6 +93,7 @@
request.post(`/Delivery/getSelectShippingOrder/1/${total.pageSize}/${orderInfo.selectDeliveryDate}`,filterData.value).then((res) => {
  if(res.code==200){
    console.log(res.data.data)
    total.dataTotal = res.data.total.total*1
    total.pageTotal= res.data.total.pageTotal
@@ -133,6 +134,7 @@
  request.post(`/Delivery/getSelectShippingOrder/1/${total.pageSize}/${orderInfo.selectDeliveryDate}`,filterData.value).then((res) => {
    if(res.code==200){
      console.log(res.data.data)
      total.dataTotal = res.data.total.total*1
      total.pageTotal= res.data.total.pageTotal
      pageNum.value=1
@@ -369,7 +371,16 @@
        </template>
        <template #state="{ row,column}">
          <el-checkbox @click.native.prevent :indeterminate="row[column.field]===1" :checked="row[column.field]===2"/>
          <el-checkbox
              v-if="row[column.field] === 2"
              @click.native.prevent
              :indeterminate="row[column.field]===1"
              :checked="true"/>
          <el-checkbox
              v-else
              @click.native.prevent
              :indeterminate="row[column.field]===1"
              :checked="false"/>
        </template>
north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java
@@ -64,7 +64,7 @@
    Boolean insertDeliveryDetail(@Param("orderDetail") OrderDetail orderDetail, @Param("number") String number
            ,@Param("deliveryNumber") Integer deliveryNumber,@Param("deliveryDetailMoney") Double deliveryDetailMoney,
                                 @Param("otherMoneys") Double otherMoneys);
                                 @Param("otherMoneys") Double otherMoneys,@Param("deliveryDetailArea") Double deliveryDetailArea);
    Integer getdeliveryDetailmaximum(@Param("deliveryId") String deliveryId);
north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
@@ -254,7 +254,7 @@
                            calculateType=orderDetail.getOrder().getCalculateType();
                        }
                        double deliveryDetailMoney = 0.0;
                        double deliveryDetailArea = 0.0;
                        BigDecimal getComputeArea= BigDecimal.valueOf(orderDetail.getComputeArea());
                        BigDecimal getQuantity= BigDecimal.valueOf(orderDetail.getDeliveryDetail().getQuantity());
                        BigDecimal getPrice= BigDecimal.valueOf(orderDetail.getPrice());
@@ -265,16 +265,20 @@
                        //根据订单计算方式进行金额计算
                        if (calculateType==1){
                            deliveryDetailMoney=singlePieceArea.doubleValue();
                            deliveryDetailArea=getComputeArea.multiply(getQuantity).doubleValue();
                        }else if (calculateType==2){
                            if(Objects.equals(orderDetail.getArea(), orderDetail.getComputeArea())){
                                deliveryDetailMoney=getWidth.multiply(getHeight).multiply(getQuantity).divide(BigDecimal.valueOf(1000000), 2, RoundingMode.HALF_UP)
                                        .multiply(getPrice).setScale(2, RoundingMode.HALF_UP).doubleValue();
                                deliveryDetailArea=getWidth.multiply(getHeight).multiply(getQuantity).divide(BigDecimal.valueOf(1000000), 2, RoundingMode.HALF_UP).doubleValue();
                            }else{
                                deliveryDetailMoney=singlePieceArea.doubleValue();
                                deliveryDetailArea=getComputeArea.multiply(getQuantity).doubleValue();
                            }
                        }else if (calculateType==3){
                            deliveryDetailMoney=getQuantity.multiply(getPrice).setScale(2, RoundingMode.HALF_UP).doubleValue();
                            deliveryDetailArea=getComputeArea.multiply(getQuantity).doubleValue();
                        }
                    /*if (calculateType==1){
@@ -322,7 +326,7 @@
                        //对循环明细的数据进行累加
                        quantity += orderDetail.getDeliveryDetail().getQuantity();
                        area += orderDetail.getComputeArea() * orderDetail.getDeliveryDetail().getQuantity();
                        area += deliveryDetailArea;
                        money += deliveryDetailMoney;
                        Integer deliveryDetailmaximum = deliveryDetailMapper.getdeliveryDetailmaximum(oddNumber);
@@ -341,9 +345,8 @@
                                }
                            });
                        }
                        //新增发货明细数据
                        deliveryDetailMapper.insertDeliveryDetail(orderDetail, oddNumber, deliveryDetailmaximum + 1,deliveryDetailMoney,deliveryDetailotherMoneys);
                        deliveryDetailMapper.insertDeliveryDetail(orderDetail, oddNumber, deliveryDetailmaximum + 1,deliveryDetailMoney,deliveryDetailotherMoneys,deliveryDetailArea);
                        //修改订单明细
                        deliveryDetailMapper.updateOrderDetailDeliveryNum(orderDetail);
                        //修改库存表出库数量
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -388,6 +388,11 @@
            BigDecimal getGrossAmount= BigDecimal.valueOf(orderDetail.getGrossAmount());
            money+=getGrossAmount.doubleValue();
        }
        Log log = new Log();
        log.setOperator(order.getCreator());
        log.setOperatorId(order.getCreatorId());
        log.setContent(jsonObject.toString());
        log.setFunction("updateOrderMoney金额重置:"+order.getOrderId());
        orderOtherMoneyList.forEach(orderOtherMoney -> {
            if(orderOtherMoney.getQuantity()!=null && orderOtherMoney.getPrice()!=null){
@@ -401,6 +406,7 @@
        order.setOtherMoney(orderOtherMoneyMapper.selectGrossAmount(order.getOrderId()));
        orderMapper.updateMoney(order);
        orderDetailMapper.updateOrderMoney(OrderDetails);
        logService.saveLog(log);
        return false;
    }
north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml
@@ -160,7 +160,7 @@
        insert into sd.delivery_detail (delivery_id,delivery_number,order_number,
                                        area,order_id,quantity,money,delivery_detail_remakes,delivery_detail_state,other_columns,create_time,price,other_money)
        values (
                   #{number} ,#{deliveryNumber},#{orderDetail.orderNumber},#{orderDetail.computeArea}*#{orderDetail.deliveryDetail.quantity},
                   #{number} ,#{deliveryNumber},#{orderDetail.orderNumber},#{deliveryDetailArea},
                #{orderDetail.orderId},#{orderDetail.deliveryDetail.quantity},
                #{deliveryDetailMoney},'',1,#{orderDetail.otherColumns},now(),#{orderDetail.price},#{otherMoneys}
               )