Commit 416f31fc0c38a2659ddc889c2da22bdcd0b66ce4
1 parent
4943dc26
调整单插入库存
Showing
3 changed files
with
121 additions
and
8 deletions
src/main/java/com/huaheng/pc/inventory/adjustDetail/domain/AdjustDetail.java
... | ... | @@ -268,6 +268,48 @@ public class AdjustDetail implements Serializable { |
268 | 268 | @TableField(value = "lastUpdated") |
269 | 269 | @ApiModelProperty(value = "更新时间") |
270 | 270 | private Date lastUpdated; |
271 | + /** | |
272 | + * 供应商 | |
273 | + */ | |
274 | + @TableField(value = "supplierCode") | |
275 | + @ApiModelProperty(value = "供应商") | |
276 | + private String supplierCode; | |
277 | + /** | |
278 | + * 批次 | |
279 | + */ | |
280 | + @TableField(value = "batch") | |
281 | + @ApiModelProperty(value = "批次") | |
282 | + private String batch; | |
283 | + /** | |
284 | + * 批号 | |
285 | + */ | |
286 | + @TableField(value = "lot") | |
287 | + @ApiModelProperty(value = "批号") | |
288 | + private String lot; | |
289 | + /** | |
290 | + * 项目号 | |
291 | + */ | |
292 | + @TableField(value = "projectNo") | |
293 | + @ApiModelProperty(value = "项目号") | |
294 | + private String projectNo; | |
295 | + /** | |
296 | + * 重量 | |
297 | + */ | |
298 | + @TableField(value = "weight") | |
299 | + @ApiModelProperty(value = "重量") | |
300 | + private String weight; | |
301 | + /** | |
302 | + * 生产日期 | |
303 | + */ | |
304 | + @TableField(value = "manufactureDate") | |
305 | + @ApiModelProperty(value = "生产日期") | |
306 | + private Date manufactureDate; | |
307 | + /** | |
308 | + * 失效日期 | |
309 | + */ | |
310 | + @TableField(value = "expirationDate") | |
311 | + @ApiModelProperty(value = "失效日期") | |
312 | + private Date expirationDate; | |
271 | 313 | |
272 | 314 | |
273 | 315 | private static final long serialVersionUID = 1L; |
... | ... |
src/main/java/com/huaheng/pc/inventory/adjustDetail/service/AdjustDetailServiceImpl.java
... | ... | @@ -291,15 +291,71 @@ public class AdjustDetailServiceImpl extends ServiceImpl<AdjustDetailMapper, Adj |
291 | 291 | @Transactional |
292 | 292 | public void updateAdjustDetailInsert (AdjustDetail adjustDetail) { |
293 | 293 | /*当实际库存为0时,调整单触发插入新库存状态*/ |
294 | - //判断是否存在库存头,没有需要生成,有库存头直接插入库存明细即可 | |
295 | 294 | //新生成库存头时,库位,容器都需要更新数据 |
296 | 295 | |
296 | + //判断是否存在库存头,没有需要生成,有库存头直接插入库存明细即可 | |
297 | + InventoryHeader ih = new InventoryHeader(); | |
298 | + ih.setWarehouseCode(adjustDetail.getWarehouseCode()); | |
299 | + ih.setLocationCode(adjustDetail.getLocationCode()); | |
300 | + ih.setContainerCode(adjustDetail.getContainerCode()); | |
301 | + LambdaQueryWrapper<InventoryHeader> inventoryHeaderLambdaQueryWrapper = Wrappers.lambdaQuery(ih); | |
302 | + InventoryHeader inventoryHeader = inventoryHeaderService.getOne(inventoryHeaderLambdaQueryWrapper); | |
303 | + if(inventoryHeader == null){ | |
304 | + //库存头为空,生成库存头 | |
305 | + inventoryHeader.setWarehouseCode(adjustDetail.getWarehouseCode()); | |
306 | + inventoryHeader.setLocationCode(adjustDetail.getLocationCode()); | |
307 | + inventoryHeader.setContainerCode(adjustDetail.getContainerCode()); | |
308 | + inventoryHeader.setContainerStatus(""); | |
309 | + inventoryHeader.setCompanyCode(adjustDetail.getCompanyCode()); | |
310 | + inventoryHeader.setMaterialSkuQty(""); | |
311 | + inventoryHeader.setTotalWeight(""); | |
312 | + inventoryHeader.setCreated(new Date()); | |
313 | + inventoryHeader.setCreatedBy(ShiroUtils.getLoginName()); | |
314 | + inventoryHeader.setLastUpdated(new Date()); | |
315 | + inventoryHeader.setLastUpdatedBy(ShiroUtils.getLoginName()); | |
316 | + inventoryHeaderService.saveOrUpdate(inventoryHeader); | |
317 | + //更新库位和容器 | |
318 | + locationService.updateContainerCodeAndStatus(inventoryHeader.getLocationCode(),inventoryHeader.getContainerCode(),"empty"); | |
319 | + containerService.updateLocationCodeAndStatus(inventoryHeader.getContainerCode(),inventoryHeader.getLocationCode(),"empty"); | |
297 | 320 | |
298 | - | |
299 | - | |
300 | - | |
301 | - | |
302 | - | |
321 | + } | |
322 | + //生成库存明细 | |
323 | + InventoryDetail inventoryDetail = new InventoryDetail(); | |
324 | + inventoryDetail.setInventoryHeaderId(inventoryHeader.getId()); | |
325 | + inventoryDetail.setWarehouseCode(adjustDetail.getWarehouseCode()); | |
326 | + inventoryDetail.setCompanyCode(adjustDetail.getCompanyCode()); | |
327 | + inventoryDetail.setLocationCode(adjustDetail.getLocationCode()); | |
328 | + inventoryDetail.setContainerCode(adjustDetail.getContainerCode()); | |
329 | + inventoryDetail.setMaterialCode(adjustDetail.getMaterialCode()); | |
330 | + inventoryDetail.setMaterialName(adjustDetail.getMaterialName()); | |
331 | + inventoryDetail.setMaterialSpec(adjustDetail.getMaterialSpec()); | |
332 | + inventoryDetail.setMaterialUnit(adjustDetail.getMaterialUnit()); | |
333 | + inventoryDetail.setQty(adjustDetail.getToQty()); | |
334 | + inventoryDetail.setTaskQty(adjustDetail.getToQty()); | |
335 | + inventoryDetail.setLockedQty(BigDecimal.ONE); | |
336 | + inventoryDetail.setInventorySts(adjustDetail.getFromInventorySts()); | |
337 | + inventoryDetail.setSupplierCode(adjustDetail.getSupplierCode()); | |
338 | + inventoryDetail.setReferCode(adjustDetail.getAdjustCode()); | |
339 | + inventoryDetail.setReferDetailId(adjustDetail.getId().toString()); | |
340 | + inventoryDetail.setBatch(adjustDetail.getBatch()); | |
341 | + inventoryDetail.setLot(adjustDetail.getLot()); | |
342 | + inventoryDetail.setProjectNo(adjustDetail.getProjectNo()); | |
343 | + inventoryDetail.setWeight(adjustDetail.getWeight()); | |
344 | + inventoryDetail.setManufactureDate(adjustDetail.getManufactureDate()); | |
345 | + inventoryDetail.setExpirationDate(adjustDetail.getExpirationDate()); | |
346 | +// inventoryDetail.setAttributeId(); | |
347 | +// inventoryDetail.setAttribute1(); | |
348 | +// inventoryDetail.setAttribute2(); | |
349 | +// inventoryDetail.setAttribute3(); | |
350 | +// inventoryDetail.setLockCode(); | |
351 | +// inventoryDetail.setLastCycleCountDate(); | |
352 | + inventoryDetail.setCreated(new Date()); | |
353 | + inventoryDetail.setCreatedBy(ShiroUtils.getLoginName()); | |
354 | + inventoryDetail.setLastUpdated(new Date()); | |
355 | + inventoryDetail.setLastUpdatedBy(ShiroUtils.getLoginName()); | |
356 | + inventoryDetail.setReceiptCode(""); | |
357 | + inventoryDetail.setReceiptDetailId(null); | |
358 | + inventoryDetailService.saveOrUpdate(inventoryDetail); | |
303 | 359 | |
304 | 360 | } |
305 | 361 | |
... | ... |
src/main/resources/mybatis/inventory/AdjustDetailMapper.xml
... | ... | @@ -28,6 +28,7 @@ |
28 | 28 | <result column="toQty" jdbcType="INTEGER" property="toQty" /> |
29 | 29 | <result column="gapQty" jdbcType="INTEGER" property="gapQty" /> |
30 | 30 | <result column="status" jdbcType="INTEGER" property="status" /> |
31 | + <result column="supplierCode" jdbcType="VARCHAR" property="supplierCode" /> | |
31 | 32 | <result column="createdBy" jdbcType="VARCHAR" property="createdBy" /> |
32 | 33 | <result column="created" jdbcType="TIMESTAMP" property="created" /> |
33 | 34 | <result column="lastUpdatedBy" jdbcType="VARCHAR" property="lastUpdatedBy" /> |
... | ... | @@ -40,13 +41,27 @@ |
40 | 41 | <result column="userDef2" jdbcType="VARCHAR" property="userDef2" /> |
41 | 42 | <result column="userDef3" jdbcType="VARCHAR" property="userDef3" /> |
42 | 43 | <result column="processStamp" jdbcType="VARCHAR" property="processStamp" /> |
44 | + <result column="batch" jdbcType="VARCHAR" property="batch" /> | |
45 | + <result column="lot" jdbcType="VARCHAR" property="lot" /> | |
46 | + <result column="projectNo" jdbcType="VARCHAR" property="projectNo" /> | |
47 | + <result column="weight" jdbcType="VARCHAR" property="weight" /> | |
48 | + <result column="manufactureDate" jdbcType="TIMESTAMP" property="manufactureDate" /> | |
49 | + <result column="expirationDate" jdbcType="TIMESTAMP" property="expirationDate" /> | |
50 | + | |
51 | + | |
52 | + | |
53 | + | |
54 | + | |
55 | + | |
56 | + | |
57 | + | |
43 | 58 | </resultMap> |
44 | 59 | <sql id="Base_Column_List"> |
45 | 60 | <!--@mbg.generated--> |
46 | 61 | id, adjustCode, cycleCountCode, inventoryDetailId, cycleDetailId, checkCode, checkDetailId, referCode, |
47 | 62 | referDetailId, warehouseCode, companyCode, containerCode, locationCode ,materialCode, materialName, |
48 | 63 | materialSpec, materialUnit, problemType, attributeId, fromInventorySts, toInventorySts, |
49 | - fromQty, toQty, gapQty, `status`, created, createdBy,lastUpdatedBy,lastUpdated, agreeTime, Remark, | |
50 | - version, userDef1, userDef2, userDef3, processStamp | |
64 | + fromQty, toQty, gapQty, `status`,supplierCode, created, createdBy,lastUpdatedBy,lastUpdated, agreeTime, Remark, | |
65 | + version, userDef1, userDef2, userDef3, processStamp, batch, lot,projectNo,weight,manufactureDate,expirationDate | |
51 | 66 | </sql> |
52 | 67 | </mapper> |
53 | 68 | \ No newline at end of file |
... | ... |