廖井涛
2025-07-18 eee2b5794252cd67c839eb5a53c49f42ec114335
订单添加dxf文件
9个文件已修改
103 ■■■■ 已修改文件
north-glass-erp/northglass-erp/src/components/sd/order/UploadPicture.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/controller/sd/OrderController.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/entity/sd/OrderDetail.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderDetailMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/components/sd/order/UploadPicture.vue
@@ -14,7 +14,7 @@
  console.log(file)
}
const handleChange = (uploadFile, uploadFiles) => {
  emits('getUploadPicture', uploadFile.name)
  emits('getUploadPicture', uploadFile.name,uploadFile)
  upload.value.clearFiles()
}
north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
@@ -129,7 +129,7 @@
          { code: 'sizeCheck', name: t('basicData.sizeReview'), prefixIcon: 'vxe-icon-eye-fill', visible: true, disabled: false },
          { code: 'updateOrderId', name: t('searchOrder.updateOrderId'), prefixIcon: 'vxe-icon-eye-fill', visible: true, disabled: false },
          { code: 'reportingTransfer', name: t('searchOrder.reportingTransfer'), prefixIcon: 'vxe-icon-send', visible: true, disabled: true },
          /*{ code: 'uploadPicture', name: 'Upload Picture',  visible: true, }*/
          { code: 'uploadPicture', name: 'Upload Picture',  visible: true, }
        ]
      ]
    }
@@ -182,6 +182,7 @@
    {field: 'bendRadius',width:160,  title: t('order.bendRadius'),editRender: { name: 'input'},filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
    {field: 'edgingType',width:160,  title: t('order.edgingType'),editRender: { name: 'input'},filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
    {field: 'processingNote',width:200,  title: t('order.processingNote'),editRender: { name: 'input'},filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
    {field: 'fileName',width:200,  title: t('文件名称'),editRender: { name: 'input'},filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
    {field: 'remarks',width:140,  title: t('basicData.remarks'),editRender: { name: 'input'},filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
@@ -1631,15 +1632,24 @@
}
//图片上传名称
const getUploadPicture = (name) => {
const getUploadPicture = async (name, file) => {
  uploadPictureVisible.value = false
  const row = xGrid.value.getCurrentRecord()
  if(!row.otherColumns){
    row.otherColumns = {}
  }
  row.otherColumns.S02 = name
  row.fileName = name
  const base64 = await fileToBase64(file.raw);
  row.fileData = base64.replace(/^data:.+;base64,/, "");
}
const fileToBase64 = (file) => {
  return new Promise((resolve, reject) => {
    const reader = new FileReader();
    reader.onload = () => resolve(reader.result);
    reader.onerror = reject;
    reader.readAsDataURL(file);
  });
};
</script>
<template>
north-glass-erp/src/main/java/com/example/erp/controller/sd/OrderController.java
@@ -265,5 +265,15 @@
        return  Result.seccess(null);
    }
    @PostMapping("/upload-dxf")
    public Result uploadDxf(@RequestBody Map<String,Object> object) {
        return  Result.seccess(orderService.uploadDxf(object));
    }
    @PostMapping("/selectUploadDxf")
    public Result selectUploadDxf(@RequestBody Map<String,Object> object) {
        return  Result.seccess(orderService.selectUploadDxf(object));
    }
}
north-glass-erp/src/main/java/com/example/erp/entity/sd/OrderDetail.java
@@ -46,6 +46,8 @@
    private Integer deliveryNum;
    private Integer returnNum;
    private Integer state;
    private String fileName;
    private String fileData;
    private LocalDate createTime;
    private LocalDate updateTime;
    @TableField(select = false,exist= false)
north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderDetailMapper.java
@@ -49,5 +49,7 @@
    List<Order> exportOrderSummary(List<LocalDate> dates);
    boolean deleteOrderFile(String orderId);
}
north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderMapper.java
@@ -60,4 +60,8 @@
    Map<String,String> scannerGlassInfo(String projectNo, Integer layoutId, Integer sort, String orderId);
    String getProcessIdByOptimizeHeatDetail(String projectId, Integer layoutId, Integer sort);
    Boolean saveOrderFile(String fileName,String dxfData,String orderId,Integer orderNumber);
    Map<String,String> selectOrderFile( String orderId,Integer orderNumber);
}
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -232,6 +232,8 @@
        //删除订单工艺表
        // orderProcessDetailMapper.delete(new LambdaQueryWrapper<OrderProcessDetail>().eq(OrderProcessDetail::getOrderId, order.getOrderId()));
        orderDetailMapper.deleteOrderFile(order.getOrderId());
        insertOtherDetail(order.getOrderId(),OrderDetails,orderOtherMoneyList);
    }
@@ -287,6 +289,11 @@
                });
            }else{
                OrderDetails.get(i).setOtherColumns("{}");
            }
            if(OrderDetails.get(i).getFileName()!=null){
                orderMapper.saveOrderFile(OrderDetails.get(i).getFileName(), OrderDetails.get(i).getFileData(),orderId,OrderDetails.get(i).getOrderNumber());
                OrderDetails.get(i).setFileData(null);
            }
        }
@@ -404,7 +411,8 @@
    }
    //删除订单
    public Integer deleteOrder(String id) {
        return  orderMapper.delete(
        orderDetailMapper.deleteOrderFile(id);
        return orderMapper.delete(
                new QueryWrapper<Order>().eq("order_id",id)
        );
    }
@@ -972,4 +980,34 @@
        }
    }
    public Object uploadDxf(Map<String,Object> object)  {
        String fileName = "";
        if (object.get("fileName") != null) {
            fileName = object.get("fileName").toString();
        }
        String fileData = "";
        if (object.get("fileData") != null) {
            fileData = object.get("fileData").toString();
        }
        byte[] dxfData = Base64.getDecoder().decode(fileData);
        String orderId="NG25010101";
        Integer orderNumber=1;
        orderMapper.saveOrderFile(fileName, fileData,orderId,orderNumber);
        return true;
    }
    public Map<String,Object> selectUploadDxf(Map<String,Object> object)  {
        String orderId = "";
        if (object.get("orderId") != null) {
            orderId = object.get("orderId").toString();
        }
        int orderNumber =0;
        if (object.get("orderNumber") != null) {
            orderNumber = Integer.parseInt(object.get("orderNumber").toString());
        }
        Map<String,Object> map = new HashMap<>();
        map.put("data",orderMapper.selectOrderFile(orderId,orderNumber));
        return map;
    }
}
north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml
@@ -28,7 +28,8 @@
                            weight,
                            perimeter,
                            monolithic_perimeter,
                            other_columns
                            other_columns,
                            file_name
                          )
        values
        <foreach collection ="orderDetails" item="orderDetail" separator =",">
@@ -55,7 +56,8 @@
            #{orderDetail.weight},
            #{orderDetail.perimeter},
            #{orderDetail.monolithicPerimeter},
            #{orderDetail.otherColumns}
            #{orderDetail.otherColumns},
            #{orderDetail.fileName}
             )
        </foreach>
    </insert>
@@ -1066,7 +1068,9 @@
        group by od.product_id,pd.detail
    </select>
    <delete id="deleteOrderFile" >
        delete from sd.order_file where order_id = #{orderId}
    </delete>
north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml
@@ -415,4 +415,15 @@
        and a.layout_id = #{layoutId}
        and a.sort = #{sort}
    </select>
    <insert id="saveOrderFile">
        insert into sd.order_file (order_id,order_number,file_name,file_data,create_time) values(#{orderId},#{orderNumber},#{fileName},#{dxfData},now())
    </insert>
    <select id="selectOrderFile">
        select  * from sd.order_file
        where order_id = #{orderId}
          and order_number = #{orderNumber}
    </select>
</mapper>