PDA抄码修改
This commit is contained in:
+4
-1
@@ -53,6 +53,9 @@ public class ReceiptMaterialDetailDTO extends BaseVOEntity {
|
||||
@Excel(name = "物料基础信息id")
|
||||
private Long materialBaseInfoId;
|
||||
|
||||
@ApiModelProperty("是否抄码(物料主数据): 1-是 2-否,与 PC 明细一致")
|
||||
private Integer copyCode;
|
||||
|
||||
@ApiModelProperty("物料编码")
|
||||
@Excel(name = "物料编码")
|
||||
private String materialCode;
|
||||
@@ -297,7 +300,7 @@ public class ReceiptMaterialDetailDTO extends BaseVOEntity {
|
||||
@Excel(name = "抄码数量")
|
||||
private String copyQuantity;
|
||||
|
||||
@ApiModelProperty("抄码数量克重详情")
|
||||
@ApiModelProperty("抄码数量克重详情:JSON 字符串,key 为序号(1,2,3…),value 为单件净重KG(支持小数)。例:{\"1\":1.343,\"2\":1.343};上架完成后写入 copy_code_reference")
|
||||
@Excel(name = "抄码数量克重详情")
|
||||
private String copyDetails;
|
||||
}
|
||||
+37
-3
@@ -18,9 +18,17 @@ import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 收货单Api
|
||||
* 收货单 PDA Api
|
||||
* <p>
|
||||
* 抄码收货方式与 PC 端 {@code StockReceiptOrderApi#getInfo} 一致:均来自物料主数据「是否抄码」({@code copyCode}:1-是 2-否),
|
||||
* 在明细上由服务端填充(见 {@link com.mhd.wms.application.service.stockReceiptOrder.StockReceiptOrderApplicationService#getInfoByApp} /
|
||||
* {@link com.mhd.wms.application.service.stockReceiptOrder.StockReceiptOrderApplicationService#getInfo} 中的单位/包装填充逻辑)。
|
||||
* 提交收货仍使用 {@link #receivingGoods},抄码实绩字段(托盘号、抄码批次、抄码数量、克重明细等)随明细 JSON 与 PC 相同。
|
||||
* 若列表页未拉详情,可在点击「收货」前调用 {@link #getCopyCodeForReceiptLine} 或 {@link #getCopyCodeByMaterialBaseInfoId} 仅取抄码标识。
|
||||
* </p>
|
||||
*
|
||||
* @author gen
|
||||
* @date 2024-05-21
|
||||
@@ -63,6 +71,31 @@ public class StockReceiptOrderAppApi extends BaseController {
|
||||
return AjaxResult.success(stockReceiptOrderApplicationService.getInfoByApp(receiptOrderId, receiptStatus));
|
||||
}
|
||||
|
||||
/**
|
||||
* PDA:按收货单行查询是否抄码(与 PC 物料主数据 copyCode 一致)。列表未拉 {@link #getInfoByApp} 时,点击「收货」前调用本接口即可分流抄码页/普通收货页。
|
||||
*
|
||||
* @return data 含 copyCode(1-是 2-否)、materialBaseInfoId、materialDetailId
|
||||
*/
|
||||
@ApiOperation("按收货明细行查询是否抄码(与PC同源,供跳转抄码收货页)")
|
||||
@GetMapping("/getCopyCodeForReceiptLine")
|
||||
public AjaxResult getCopyCodeForReceiptLine(
|
||||
@ApiParam(value = "收货单ID", required = true) @RequestParam Long receiptOrderId,
|
||||
@ApiParam(value = "收货明细 material_detail_id", required = true) @RequestParam Long materialDetailId) {
|
||||
Map<String, Object> data = stockReceiptOrderApplicationService.getCopyCodeForPdaReceiptLine(receiptOrderId, materialDetailId);
|
||||
return AjaxResult.success(data);
|
||||
}
|
||||
|
||||
/**
|
||||
* PDA:仅已知物料基础信息 ID 时查询是否抄码(与 PC 一致)。列表若已带 materialBaseInfoId 可直调,无需整单详情。
|
||||
*/
|
||||
@ApiOperation("按物料基础信息ID查询是否抄码")
|
||||
@GetMapping("/getCopyCodeByMaterialBaseInfoId")
|
||||
public AjaxResult getCopyCodeByMaterialBaseInfoId(
|
||||
@ApiParam(value = "物料基础信息ID", required = true) @RequestParam Long materialBaseInfoId) {
|
||||
Map<String, Object> data = stockReceiptOrderApplicationService.getCopyCodeByMaterialBaseInfoId(materialBaseInfoId);
|
||||
return AjaxResult.success(data);
|
||||
}
|
||||
|
||||
/**
|
||||
* PDA:查询某计划行(卡片)下所有 level=2 分批收货子行(含首笔仅落主行时的主行快照),附带序列号。
|
||||
*/
|
||||
@@ -78,9 +111,10 @@ public class StockReceiptOrderAppApi extends BaseController {
|
||||
}
|
||||
|
||||
/**
|
||||
* 收货
|
||||
* 收货(与 PC 同源)。抄码物料请在对应明细上传 copyBatch、palletNumber、copyQuantity、copyDetails;
|
||||
* copyDetails 为 JSON:序号 → 单件净重(KG),如 {"1":1.343,"2":1.343};抄码对照表在上架完成入账后写入,非本接口直接写。
|
||||
*/
|
||||
@ApiOperation("收货")
|
||||
@ApiOperation("收货(抄码明细字段见 materialDetailList.copyDetails 等,与 PC 一致)")
|
||||
@PostMapping("/receivingGoods")
|
||||
public AjaxResult receivingGoods(@RequestBody StockReceiptOrderDTO stockReceiptOrderDTO) {
|
||||
// 勿用 Hutool JSON 往返转 DO:嵌套 children、receiptGrossWeight/receiptNetWeight/receiptVolume/receiptArea 等会丢失或类型不对,导致累计未落库
|
||||
|
||||
Reference in New Issue
Block a user