From ccc46f21933fd04707f6f32e7b312595136b646b Mon Sep 17 00:00:00 2001 From: linfso Date: Mon, 3 Jun 2024 18:16:37 +0800 Subject: [PATCH] md --- .../emis/EmisWaybillAttachmentController.java | 84 ++++++++++++++++++- 1 file changed, 81 insertions(+), 3 deletions(-) diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillAttachmentController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillAttachmentController.java index 5a9fee33e..560beaf49 100644 --- a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillAttachmentController.java +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillAttachmentController.java @@ -11,8 +11,18 @@ package com.xdadan.erp.web.emis; -import java.util.List; +import java.util.*; import javax.servlet.http.HttpServletResponse; + +import com.xdadan.erp.common.utils.DateUtils; +import com.xdadan.erp.emis.domain.EmisWaybill; +import com.xdadan.erp.emis.domain.enumtype.ScanType; +import com.xdadan.erp.emis.domain.enumtype.WaybillAttachType; +import com.xdadan.erp.emis.domain.enumtype.WaybillStatus; +import com.xdadan.erp.emis.domain.exception.EmisBizError; +import com.xdadan.erp.emis.domain.vo.scan.ScanInfo; +import com.xdadan.erp.emis.service.EmisBaseService; +import com.xdadan.erp.emis.service.IEmisTmsScanRecordService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.GetMapping; @@ -48,6 +58,12 @@ public class EmisWaybillAttachmentController extends BaseController @Autowired private IEmisWaybillAttachmentService emisWaybillAttachmentService; + @Autowired + private EmisBaseService emisBaseService; + + @Autowired + private IEmisTmsScanRecordService emisTmsScanRecordService; + /** * 查询运单附件列表 */ @@ -91,8 +107,70 @@ public class EmisWaybillAttachmentController extends BaseController @PostMapping public AjaxResult add(@RequestBody EmisWaybillAttachment emisWaybillAttachment) { - // 1-揽收底单 - return toAjax(emisWaybillAttachmentService.insertEmisWaybillAttachment(emisWaybillAttachment)); + // 1-揽收底单 2-签收底单 + if(WaybillAttachType.SIGNED_PIC.typeCode.equals(emisWaybillAttachment.getAttachType())){ + // 检查运单是否签收,如果没有签收需要做图片签收 + EmisWaybill waybill=emisBaseService.getWaybillByBillCode(emisWaybillAttachment.getBillCode()); + if(waybill==null){ + return AjaxResult.error("运单不存在"); + } + + // 签收扫描登记 + /* + { + "scanType": "50", + "opType":"1-检查 2-确认", + "scanData": [ + { + "billCode": "T001,T002,T002", + "signMan": "签收人", + "picUrl": "签收图片,逗号隔开", + "remark": "签收备注", + "scanDate":"2024-05-02 12:03:05", + "scanWeight": "0.2" + } + ] + } + */ + + if(WaybillStatus.SIGNED.statusCode.equals(waybill.getWaybillStatus())) + { + + ScanInfo scanInfo = new ScanInfo(); + List> scanDataList = new ArrayList<>(); + scanInfo.setOpType(2); + scanInfo.setScanType(ScanType.SIGNED.opCode); + Map scanDateItem = new HashMap<>(); + scanDateItem.put("billCode",waybill.getBillCode()); + scanDateItem.put("signMan","已签收"); + scanDateItem.put("picUrl",emisWaybillAttachment.getFileUrl()); + scanDateItem.put("remark","图片签收"); + scanDateItem.put("scanDate", DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS,new Date())); + scanDateItem.put("scanWeight", "0.0"); + scanDataList.add(scanDateItem); + scanInfo.setScanData(scanDataList); + + + try { + emisTmsScanRecordService.scan(scanInfo); + } catch (EmisBizError emisBizError) { + emisBizError.printStackTrace(); + return AjaxResult.error(emisBizError.getMessage()); + }catch (Exception e) { + e.printStackTrace(); + return AjaxResult.error("上传异常!"); + } + + return AjaxResult.success("上传成功"); + }else{ + // 上传签收图片 + return toAjax(emisWaybillAttachmentService.insertEmisWaybillAttachment(emisWaybillAttachment)); + } + + + }else { + return toAjax(emisWaybillAttachmentService.insertEmisWaybillAttachment(emisWaybillAttachment)); + } } /**