廖井涛
2024-07-07 ec4d06c37f948a24f5313b60b4d27327d6975bdc
修改工程打印以及发货单创建的运费功能添加
10个文件已修改
95 ■■■■ 已修改文件
north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/lang/zh.js 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintLabel.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/delivery/CreateDelivery.vue 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/delivery/SelectOrderList.vue 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/entity/sd/Delivery.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/DeliveryMapper.xml 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue
@@ -160,7 +160,7 @@
        <td>{{delivery.quantity}}</td>
        <td>{{delivery.area}}</td>
        <td></td>
        <td>{{delivery.money-otherMoneys}}</td>
        <td>{{delivery.money-otherMoneys-delivery.freight}}</td>
        <td></td>
      </tr>
      <tr class="day-in">
@@ -182,6 +182,12 @@
            <div  style="width: 25%">{{item.DeliveryDetailOtherMoney.count}}</div>
            <div  style="width: 25%">{{item.DeliveryDetailOtherMoney.monery}}</div>
          </div>
          <div style="display: flex;font-size: 10px;text-align: center" v-if="delivery.freight>0">
            <div style="width: 25%">运费</div>
            <div  style="width: 25%">{{delivery.freightPrice}}</div>
            <div  style="width: 25%">{{delivery.freightQuantity}}</div>
            <div  style="width: 25%">{{delivery.freight}}</div>
          </div>
        </td>
        <td style="text-align: left;border:none;font-size: 15px;" colspan="5">大写金额:&nbsp;&nbsp;&nbsp;&nbsp;{{money}}</td>
      </tr>
north-glass-erp/northglass-erp/src/lang/zh.js
@@ -654,6 +654,8 @@
        salesman:'销售员',
        money:'金额',
        pleaseSelectTheSameCustomerProject:'请选择相同客户的项目',
    },
    replenish:{
        patchManagement:'补片管理',
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintLabel.vue
@@ -24,19 +24,19 @@
const {currentRoute} = useRouter()
const route = currentRoute.value
projectNo.value = route.query.projectNo
data.value.printList = JSON.parse(route.query.printList)
onMounted(() => {
  if(projectNo.value!=null){
    request.post(`/processCard/getSelectPrintLabel/${projectNo.value}`).then((res) => {
      if (res.code == 200) {
        labelList.value = deepClone(res.data.data)
        console.log(labelList.value)
      } else {
        ElMessage.warning(res.msg)
        router.push("/login")
      }
    })
  }else{
    data.value.printList = JSON.parse(route.query.printList)
    request.post(`/processCard/getSelectPrintLabel1`,data.value).then((res) => {
      if (res.code == 200) {
        produceList.value = deepClone(res.data.data)
north-glass-erp/northglass-erp/src/views/sd/delivery/CreateDelivery.vue
@@ -71,6 +71,9 @@
  deliveryDate:'',
  salesmanId:'',
  salesman:'',
  freight:'',
  freightPrice:'',
  freightQuantity:'',
  creatorId:userStore.user.userid,
  creator:userStore.user.userName
})
@@ -100,7 +103,10 @@
    remarks:'',
    createTime:'',
    deliveryDate:'',
    creator:''
    creator:'',
    freight:'',
    freightPrice:'',
    freightQuantity:'',
  },
  finishedGoodsInventory:{
    quantityAvailable:'',
@@ -266,7 +272,7 @@
      options: [
        [
          { code: 'copyChecked', name: t('basicData.selectSame'), prefixIcon: 'vxe-icon-copy', visible: true, disabled: false },
          { code: 'otherMoney', name: t('basicData.otherAmounts'), 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 }
        ]
      ]
    }
@@ -385,8 +391,14 @@
            ElMessage.error(t('delivery.pleaseEnterThePaymentMethod'))
            return
          }
          const freightPrice = titleUploadData.value.freightPrice
          if(freightPrice=== null || freightPrice === undefined || freightPrice === ''){
            titleUploadData.value.freightPrice=0
          }
          const freightQuantity = titleUploadData.value.freightQuantity
          if(freightQuantity=== null || freightQuantity === undefined || freightQuantity === ''){
            titleUploadData.value.freightQuantity=0
          }
          let flowData = ref({
@@ -622,6 +634,12 @@
        <el-col  :span="3"><el-input v-model="titleUploadData.salesman" :readonly="true"/></el-col>
        <el-col  :span="2"><el-text>{{$t('delivery.shipper')}}:</el-text></el-col>
        <el-col  :span="5"><el-input v-model="titleUploadData.creator" :readonly="true"/></el-col>
        <el-col  :span="1"><el-text>运费单价:</el-text></el-col>
        <el-col  :span="1"><el-input v-model="titleUploadData.freightPrice" /></el-col>
        <el-col  :span="1"><el-text>运费数量:</el-text></el-col>
        <el-col  :span="1"><el-input v-model="titleUploadData.freightQuantity" /></el-col>
        <el-col  :span="1"><el-text>运费金额:</el-text></el-col>
        <el-col  :span="2"><el-input v-model="titleUploadData.freight" :readonly="true"/></el-col>
      </el-row>
    </div>
    <div class="order-detail">
north-glass-erp/northglass-erp/src/views/sd/delivery/SelectOrderList.vue
@@ -250,9 +250,11 @@
            return
          }
          let order_id=""
          const array=[];
          const customerIdArray=[];
          const projectArray=[];
          for (let i=0;i<selectRecords.length;i++){
            array.push(selectRecords[i].customerId)
            customerIdArray.push(selectRecords[i].customerId)
            projectArray.push(selectRecords[i].project)
            if(i+1===selectRecords.length){
              order_id+=selectRecords[i].orderId
            }else{
@@ -260,10 +262,15 @@
            }
          }
          //判断所选客户是否相同
          if(!isAllEqual(array)){
          if(!isAllEqual(customerIdArray)){
            ElMessage.warning(t('delivery.pleaseSelectTheSameCustomerOrder'))
            return
          }
          //判断所选项目是否相同
          if(!isAllEqual(projectArray)){
            ElMessage.warning(t('delivery.pleaseSelectTheSameCustomerProject'))
            return
          }
          router.push({path: '/main/delivery/createDelivery', query: { orderId: order_id }})
          break
north-glass-erp/src/main/java/com/example/erp/entity/sd/Delivery.java
@@ -34,6 +34,9 @@
    private Integer quantity;
    private Double money;
    private Double otherMoney;
    private Double freight;
    private Integer freightQuantity;
    private Double freightPrice;
    private String remarks;
    private LocalDate createTime;
    private LocalDate updateTime;
north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryMapper.java
@@ -42,6 +42,8 @@
    Boolean insertDelivery(@Param("delivery") Delivery delivery,@Param("number") String number,@Param("orderId") String orderId);
    Boolean updateDelivery(@Param("delivery") Delivery delivery,@Param("number") String number,@Param("orderId") String orderId);
    Integer getDeliveryConut(@Param("deliveryId") String deliveryId);
    Boolean updateDeliveryToExamine(@Param("deliveryId") String deliveryId,@Param("deliveryState") int deliveryState);
north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
@@ -203,6 +203,7 @@
                //删除订单额外金额的数据
                deliveryOtherMoneyMapper.deleteDeliveryOtherMoney(deliveryId);
                oddNumber = deliveryId;
                deliveryMapper.updateDelivery(delivery, oddNumber, orderDetaillist.get(0).getOrderId());
            } else {
                //获取单号
                oddNumber = orderNumberSetting("发货");
@@ -247,7 +248,6 @@
                    if(orderDetail.getOtherColumns()!="{}"&&orderDetail.getOtherColumns()!=null){
                        System.out.println(orderDetail.getOtherColumns());
                        JSONObject jsonObject = JSON.parseObject(orderDetail.getOtherColumns());
                        for(String key : jsonObject.keySet()){
                            boolean isnull = key.contains("M");
@@ -270,13 +270,14 @@
                    Integer deliveryDetailmaximum = deliveryDetailMapper.getdeliveryDetailmaximum(oddNumber);
                    //额外金额修改
                    Map<String,Double> otherColumns = JSON.parseObject(orderDetail.getOtherColumns(), new TypeReference<Map<String, Double>>(){});
                    Map<String,String> otherColumns = JSON.parseObject(orderDetail.getOtherColumns(), new TypeReference<Map<String, String>>(){});
                    if(otherColumns!=null){
                        otherColumns.forEach((key, value) ->{
                            if(value!=null) {
                            boolean isnull = key.contains("M");
                            if(isnull){
                                deliveryOtherMoneyList.forEach(deliveryOtherMoney ->{
                                    if(deliveryOtherMoney.getColumn().equals(key)){
                                        deliveryOtherMoney.setQuantity(deliveryOtherMoney.getQuantity()+(value * orderDetail.getDeliveryDetail().getQuantity()));
                                        deliveryOtherMoney.setQuantity(deliveryOtherMoney.getQuantity()+( Double.valueOf(value)* orderDetail.getDeliveryDetail().getQuantity()));
                                    }
                                });
@@ -302,7 +303,11 @@
                        deliveryOtherMoneyMapper.insertDeliveryOtherMoney(deliveryOtherMoney);
                    }
                });
                int intMoney= (int) Math.floor(money+otherMoneys);
                double freight=0.0;
                if (delivery.getFreightPrice()!=null&&delivery.getFreightQuantity()!=null){
                    freight=delivery.getFreightPrice()*delivery.getFreightQuantity();
                }
                int intMoney= (int) Math.floor(money+freight+otherMoneys);
                //修改发货明细累加面积数量金额
                deliveryMapper.updatedelivery(Double.valueOf(String.format("%.2f", area)), quantity, Double.valueOf(intMoney), otherMoney.get(), oddNumber);
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -564,7 +564,7 @@
                 left join sd.order_detail od
                           on SUBSTR(opd.process_id, 1, 10) = od.order_id and opd.order_sort = od.order_number
                 left join sd.order_glass_detail ogd
                           on SUBSTR(opd.process_id, 1, 10) = ogd.order_id and opd.order_sort = ogd.order_number
                           on SUBSTR(opd.process_id, 1, 10) = ogd.order_id and opd.order_sort = ogd.order_number and opd.layer=ogd.technology_number
                 left join sd.product p on od.product_id = p.id
                 left join sd.basic_glass_type e on e.type_id = p.type_id
        where opd.project_no = #{projectNo}
north-glass-erp/src/main/resources/mapper/sd/DeliveryMapper.xml
@@ -53,13 +53,25 @@
    <insert id="insertDelivery"  useGeneratedKeys="true" >
        insert into sd.delivery(delivery_state,stock_state,payment_terms,delivery_id,order_id,project,customer_id,customer_name,
            delivery_date,pay_method,pay_date,salesman_id,salesman,creator_id,creator,contacts,contact_number,delivery_address,
                                area,quantity,money,remarks,create_time)
                                area,quantity,money,remarks,create_time,freight,freight_price,freight_quantity)
        values (
                   0,0,#{delivery.paymentTerms},#{number} ,#{orderId},#{delivery.project},#{delivery.customerId},#{delivery.customerName},#{delivery.deliveryDate},#{delivery.payMethod},
                #{delivery.payDate},#{delivery.salesmanId},#{delivery.salesman},#{delivery.creatorId},#{delivery.creator},#{delivery.contacts},#{delivery.contactNumber},#{delivery.deliveryAddress},
                   0,0,0,#{delivery.remarks},now()
                   0,0,0,#{delivery.remarks},now(),#{delivery.freightPrice}*#{delivery.freightQuantity},#{delivery.freightPrice},#{delivery.freightQuantity}
               )
    </insert>
    <update id="updateDelivery" >
        update  sd.delivery set payment_terms=#{delivery.paymentTerms},
                                delivery_date=#{delivery.deliveryDate},
                                pay_method=#{delivery.payMethod},
                                pay_date=#{delivery.payDate},contacts=#{delivery.creator},contact_number=#{delivery.contactNumber},
                                delivery_address=#{delivery.deliveryAddress},
                                freight=#{delivery.freightPrice}*#{delivery.freightQuantity},
                                freight_price=#{delivery.freightPrice},
                                freight_quantity=#{delivery.freightQuantity}
                                where delivery_id=#{number}
    </update>
    <select id="getSelectOrderInventory" resultMap="selectOrderInventory">
        select o.create_order,
@@ -195,7 +207,7 @@
        select
        d.delivery_state,d.stock_state,d.payment_terms,
        d.customer_id,d.customer_name,d.project,d.pay_method,d.pay_date,d.contacts,d.contact_number,
        d.delivery_address,d.remarks,d.create_time,d.delivery_date,d.creator,d.salesman,d.salesman_id
        d.delivery_address,d.remarks,d.create_time,d.delivery_date,d.creator,d.salesman,d.salesman_id,d.freight,d.freight_price,d.freight_quantity
        from sd.delivery d
        <where>
            <if test="orderDetail.deliveryDetail.deliveryId != null and orderDetail.deliveryDetail.deliveryId != ''">
@@ -210,7 +222,7 @@
        select
        d.delivery_id,d.quantity,d.money,d.area,d.project,
        d.customer_id,d.customer_name,d.project,d.pay_method,d.pay_date,d.contacts,d.contact_number,
        d.delivery_address,d.remarks,d.create_time,d.delivery_date,d.creator,d.salesman,d.salesman_id
        d.delivery_address,d.remarks,d.create_time,d.delivery_date,d.creator,d.salesman,d.salesman_id,d.freight,d.freight_price,d.freight_quantity
        from sd.delivery d
        <where>
            <if test="deliveryDetail.deliveryId != null and deliveryDetail.deliveryId != ''">