OMS批量签名
This commit is contained in:
+30
@@ -0,0 +1,30 @@
|
||||
package com.mhd.oms.interfaces.dto.electronicSignature;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 电子签名批量签名请求DTO
|
||||
*
|
||||
* <p>勾选多条记录后批量签名,更新OMS电子签名表 + 调用WMS更新入/出库单表。</p>
|
||||
*/
|
||||
@Data
|
||||
public class ElectronicSignatureBatchSignDTO {
|
||||
|
||||
@ApiModelProperty(value = "签名ID列表", required = true)
|
||||
private List<Long> signatureIds;
|
||||
|
||||
@ApiModelProperty("手写签名图片(base64或URL,单张)")
|
||||
private String signaturePic;
|
||||
|
||||
@ApiModelProperty("拍照取证图片URL列表(多张)")
|
||||
private List<String> evidencePics;
|
||||
|
||||
@ApiModelProperty("签名备注")
|
||||
private String signatureRemark;
|
||||
|
||||
@ApiModelProperty("签名方式:1-电子签名 2-附件上传 3-扫二维码 4-系统自动")
|
||||
private Integer signatureMode;
|
||||
}
|
||||
+30
@@ -8,6 +8,7 @@ import com.mhd.oms.domain.electronicSignature.entity.ElectronicSignature;
|
||||
import com.mhd.oms.domain.electronicSignature.entity.ElectronicSignatureMaterialDetail;
|
||||
import com.mhd.oms.domain.electronicSignature.repository.todo.ElectronicSignatureDO;
|
||||
import com.mhd.oms.domain.electronicSignature.service.ElectronicSignatureDomainService;
|
||||
import com.mhd.oms.interfaces.dto.electronicSignature.ElectronicSignatureBatchSignDTO;
|
||||
import com.mhd.oms.interfaces.dto.electronicSignature.ElectronicSignatureQueryDTO;
|
||||
import com.mhd.oms.interfaces.dto.electronicSignature.ElectronicSignatureSaveDTO;
|
||||
import com.mhd.oms.interfaces.dto.electronicSignature.ElectronicSignatureVO;
|
||||
@@ -96,6 +97,35 @@ public class ElectronicSignatureApi extends BaseController {
|
||||
return AjaxResult.success(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 勾选记录批量签名
|
||||
*
|
||||
* <p>前端勾选多条待签名的电子签名记录,传入签名ID列表(signatureIds)、签名图片(signaturePic)、
|
||||
* 签名备注(signatureRemark)、签名方式(signatureMode),后端:</p>
|
||||
* <ul>
|
||||
* <li>更新 OMS ELECTRONIC_SIGNATURE 表:signatureStatus=2(已签名)、signatureTime=当前时间、signaturePic、evidencePics、signatureRemark、signatureMode</li>
|
||||
* <li>通过 Feign 调用 WMS 更新 stock_in_order / stock_out_order 表的对应签名字段</li>
|
||||
* </ul>
|
||||
*/
|
||||
@ApiOperation("批量签名(勾选记录后批量更新签名状态为已签名)")
|
||||
@PostMapping("/batchSign")
|
||||
public AjaxResult batchSign(@RequestBody ElectronicSignatureBatchSignDTO dto) {
|
||||
if (dto.getSignatureIds() == null || dto.getSignatureIds().isEmpty()) {
|
||||
return AjaxResult.error("请选择需要签名的记录");
|
||||
}
|
||||
try {
|
||||
int count = electronicSignatureDomainService.batchSign(dto);
|
||||
if (count > 0) {
|
||||
return AjaxResult.success("批量签名成功,共更新 " + count + " 条记录");
|
||||
} else {
|
||||
return AjaxResult.error("批量签名失败:未找到有效的待签名记录");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error("批量签名失败", e);
|
||||
return AjaxResult.error("批量签名失败:" + e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
private ElectronicSignatureDO toDO(ElectronicSignatureSaveDTO dto) {
|
||||
ElectronicSignatureDO signatureDO = new ElectronicSignatureDO();
|
||||
BeanUtils.copyProperties(dto, signatureDO, "materialDetailList");
|
||||
|
||||
Reference in New Issue
Block a user