diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/MLEnum.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/MLEnum.java new file mode 100644 index 00000000..9ec05258 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/MLEnum.java @@ -0,0 +1,44 @@ +package org.nl.wms.storage_manage.semimanage; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.apache.commons.lang3.StringUtils; +import org.nl.common.utils.MapOf; +import org.nl.modules.common.exception.BadRequestException; + +import java.util.Map; + +/* + * @author ZZQ + * @Date 2023/5/4 20:11 + */ +@AllArgsConstructor +@Getter +public enum MLEnum { + //单据类型 + BILL_TYPE(MapOf.of("普通损溢", "41", "盘点损溢", "42")), + //单据状态 + BILL_STATUS(MapOf.of("生成", "10", "审核", "20", "完成", "99")), + //单据状态 + DTL_STATUS(MapOf.of("生成", "01", "审核", "02", "确认完成", "99")), + MOL_TYPE(MapOf.of("损", "0", "溢", "1")), + CREATE_MODE(MapOf.of("PC产生", "01", "终端产生", "02", "外部接口产生", "03", "内部调度产生", "04")); + private Map code; + + public String code(String desc) { + String code = this.getCode().get(desc); + if (StringUtils.isNotEmpty(code)) { + return code; + } + throw new BadRequestException(this.name() + "对应类型" + desc + "未定义"); + } + + public String check(String code) { + for (Map.Entry entry : this.getCode().entrySet()) { + if (entry.getValue().equals("code")) { + return entry.getValue(); + } + } + throw new BadRequestException(this.name() + "对应类型" + code + "未定义"); + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/controller/moveOrLess/StIvtMoreorlessmstYlController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/controller/moveOrLess/StIvtMoreorlessmstYlController.java index a7bff8ce..6e62e0ac 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/controller/moveOrLess/StIvtMoreorlessmstYlController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/controller/moveOrLess/StIvtMoreorlessmstYlController.java @@ -1,9 +1,19 @@ package org.nl.wms.storage_manage.rawmanage.controller.moveOrLess; -import org.springframework.web.bind.annotation.RequestMapping; +import com.alibaba.fastjson.JSONObject; +import io.swagger.annotations.ApiOperation; +import org.nl.common.anno.Log; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.storage_manage.rawmanage.service.check.dto.CheckQuery; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.IStIvtMoreorlessmstYlService; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.dto.MoreOrlessQuery; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import java.util.Map; /** *

@@ -14,8 +24,56 @@ import org.springframework.web.bind.annotation.RestController; * @since 2023-05-10 */ @RestController -@RequestMapping("/stIvtMoreorlessmstYl") +@RequestMapping("api/moreOrLess") public class StIvtMoreorlessmstYlController { + @Autowired + private IStIvtMoreorlessmstYlService moreorlessmstYlService; + + @GetMapping + @Log("查询损溢单") + @ApiOperation("查询损溢单") + public ResponseEntity query(MoreOrlessQuery query, PageQuery page) { + return new ResponseEntity<>(moreorlessmstYlService.pageQuery(query, page), HttpStatus.OK); + } + + @PostMapping + @Log("创建损溢单") + @ApiOperation("创建损溢单") + public ResponseEntity create(@RequestBody JSONObject whereJson) { + moreorlessmstYlService.create(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/getMlDtl") + @Log("查询损溢明细") + @ApiOperation("查询损溢明细") + public ResponseEntity getMlDtl(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(moreorlessmstYlService.getMlDtl(whereJson), HttpStatus.OK); + } + + @PostMapping("/update") + @Log("修改损溢单") + @ApiOperation("修改损溢单") + public ResponseEntity update(@RequestBody JSONObject whereJson) { + moreorlessmstYlService.update(whereJson); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/delete") + @Log("删除入库单") + @ApiOperation("删除入库单") + public ResponseEntity delete(@RequestBody Long[] ids){ + moreorlessmstYlService.delete(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/confirm") + @Log("完成单据") + @ApiOperation("完成单据") + public ResponseEntity confirm(@RequestBody JSONObject whereJson) { + moreorlessmstYlService.confirm(whereJson); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/check/impl/StIvtCheckmstYlServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/check/impl/StIvtCheckmstYlServiceImpl.java index 1a173941..26c33a94 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/check/impl/StIvtCheckmstYlServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/check/impl/StIvtCheckmstYlServiceImpl.java @@ -1,6 +1,7 @@ package org.nl.wms.storage_manage.rawmanage.service.check.impl; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; @@ -32,6 +33,8 @@ import org.nl.wms.storage_manage.rawmanage.service.check.dao.StIvtCheckmstYl; import org.nl.wms.storage_manage.rawmanage.service.check.dao.mapper.StIvtCheckmstYlMapper; import org.nl.wms.storage_manage.rawmanage.service.check.dto.CheckQuery; import org.nl.wms.storage_manage.rawmanage.service.iostorInv.dao.StIvtIostorinvYl; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.IStIvtMoreorlessmstYlService; +import org.nl.wms.storage_manage.semimanage.MLEnum; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -58,6 +61,8 @@ public class StIvtCheckmstYlServiceImpl extends ServiceImpl finish_list = checkdtlYlService.list(new QueryWrapper().eq("check_id", form.getString("check_id")).in("status", new String[]{"99", "07"})); //说明全部确认 if (finish_list.size() == jo_mst.getDtl_num().intValue()) { @@ -250,8 +256,70 @@ public class StIvtCheckmstYlServiceImpl extends ServiceImpl().eq("check_id", form.getString("check_id")).ne("status", "99")); + StIvtCheckdtlYl dtl = row.toJavaObject(StIvtCheckdtlYl.class); + if (jo_mst == null) { + throw new BadRequestException("盘点单状态异常!"); + } + + //创建损溢单 + JSONObject mol_jo = new JSONObject(); + mol_jo.put("buss_type", MLEnum.BILL_TYPE.code("盘点损溢")); + if (row.getString("check_result").equals("1")) { + mol_jo.put("mol_type", MLEnum.MOL_TYPE.code("损")); + } else { + mol_jo.put("mol_type", MLEnum.MOL_TYPE.code("溢")); + } + mol_jo.put("stor_id", jo_mst.getStor_id()); + mol_jo.put("remark", "盘点单:" + jo_mst.getCheck_code() + "生成的损溢单"); + mol_jo.put("workshop_id", jo_mst.getWorkshop_id()); + + //创建明细 + JSONObject dtl_jo = new JSONObject(); + dtl_jo.put("sect_id", dtl.getSect_id()); + dtl_jo.put("material_id", dtl.getMaterial_id()); + dtl_jo.put("struct_id", dtl.getStruct_id()); + dtl_jo.put("qty_unit_id", dtl.getQty_unit_id()); + dtl_jo.put("qty_unit_name", dtl.getQty_unit_name()); + dtl_jo.put("mol_qty", row.getString("check_result").equals("1") ? NumberUtil.sub(dtl.getBase_qty(), dtl.getFac_qty()) : NumberUtil.sub(dtl.getFac_qty(), dtl.getBase_qty())); + dtl_jo.put("source_billdtl_id", dtl.getCheckdtl_id()); + dtl_jo.put("source_bill_type", jo_mst.getCheck_type()); + dtl_jo.put("source_bill_code", jo_mst.getCheck_code()); + dtl_jo.put("source_bill_table", "ST_IVT_CheckMst_YL"); + JSONArray mol_rows = new JSONArray(); + mol_rows.add(dtl_jo); + mol_jo.put("tableData", mol_rows); + mol_jo.put("auto_confirm", "1"); + //创建损溢单 + moreorlessmstYlService.create(mol_jo); + + + dtl.setStatus(CHECKEnum.DTL_STATUS.code("确认完成")); + dtl.setProcess_optid(SecurityUtils.getCurrentUserId()); + dtl.setProcess_time(DateUtil.now()); + dtl.setProcess_type(CHECKEnum.PROCESS_TYPE.code("实盘为准")); + dtl.setIs_process(true); + checkdtlYlService.updateById(dtl); + List finish_list = checkdtlYlService.list(new QueryWrapper().eq("check_id", form.getString("check_id")).in("status", new String[]{"99", "07"})); + //说明全部确认 + if (finish_list.size() == jo_mst.getDtl_num().intValue()) { + checkdtlYlService.update(new UpdateWrapper().set("status", "99").eq("check_id", form.getString("check_id"))); + + jo_mst.setStatus(CHECKEnum.BILL_STATUS.code("完成")); + jo_mst.setConfirm_optid(SecurityUtils.getCurrentUserId()); + jo_mst.setConfirm_optname(SecurityUtils.getCurrentNickName()); + jo_mst.setConfirm_time(DateUtil.now()); + //解锁起点点位、仓位 + finish_list.stream() + .map(finish -> finish.getStruct_id()) + .distinct() + .forEach(struct_id -> structattrService.update(new UpdateWrapper().set("inv_code", "").set("lock_type", "0").eq("struct_id", struct_id))); + } + this.updateById(jo_mst); } @Override diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/impl/StIvtIostorinvOutYlServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/impl/StIvtIostorinvOutYlServiceImpl.java index 033696b6..db66d172 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/impl/StIvtIostorinvOutYlServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/impl/StIvtIostorinvOutYlServiceImpl.java @@ -24,19 +24,14 @@ import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtBsrealstorattr import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtStructattrService; import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtBsrealstorattr; import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr; -import org.nl.wms.pcs_manage.service.purchase.IPcsIfPurchaseorderService; -import org.nl.wms.storage_manage.CHANGE_BILL_TYPE_ENUM; import org.nl.wms.storage_manage.IOSEnum; -import org.nl.wms.storage_manage.basedata.service.record.dto.StIvtStructivtflowDto; import org.nl.wms.storage_manage.basedata.service.record.service.IStIvtStructivtflowService; import org.nl.wms.storage_manage.rawmanage.service.iostorInv.IStIvtIostorinvOutYlService; -import org.nl.wms.storage_manage.rawmanage.service.iostorInv.IStIvtIostorinvYlService; import org.nl.wms.storage_manage.rawmanage.service.iostorInv.IStIvtIostorinvdisYlService; import org.nl.wms.storage_manage.rawmanage.service.iostorInv.IStIvtIostorinvdtlYlService; import org.nl.wms.storage_manage.rawmanage.service.iostorInv.dao.StIvtIostorinvYl; import org.nl.wms.storage_manage.rawmanage.service.iostorInv.dao.StIvtIostorinvdisYl; import org.nl.wms.storage_manage.rawmanage.service.iostorInv.dao.StIvtIostorinvdtlYl; -import org.nl.wms.storage_manage.rawmanage.service.iostorInv.dao.mapper.StIvtIostorinvOutYlMapper; import org.nl.wms.storage_manage.rawmanage.service.iostorInv.dao.mapper.StIvtIostorinvYlMapper; import org.nl.wms.storage_manage.rawmanage.service.iostorInv.dto.YlIostorInvQuery; import org.nl.wms.storage_manage.rawmanage.service.structIvt.IStIvtStructivtYlService; @@ -66,15 +61,9 @@ public class StIvtIostorinvOutYlServiceImpl extends ServiceImpl page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize()); - List mst_detail = ivtIostorinvOutYlMapper.getMstDetail(query, pageQuery); + List mst_detail = this.baseMapper.getMstDetail(query, pageQuery); TableDataInfo build = TableDataInfo.build(mst_detail); build.setTotalElements(page.getTotal()); return build; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/impl/StIvtIostorinvYlServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/impl/StIvtIostorinvYlServiceImpl.java index 11efd741..d140b6dd 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/impl/StIvtIostorinvYlServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/iostorInv/impl/StIvtIostorinvYlServiceImpl.java @@ -1,6 +1,7 @@ package org.nl.wms.storage_manage.rawmanage.service.iostorInv.impl; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; @@ -55,15 +56,9 @@ public class StIvtIostorinvYlServiceImpl extends ServiceImpl page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize()); - List mst_detail = iostorinvYlMapper.getMstDetail(query, pageQuery); + List mst_detail = this.baseMapper.getMstDetail(query, pageQuery); TableDataInfo build = TableDataInfo.build(mst_detail); build.setTotalElements(page.getTotal()); return build; @@ -152,6 +147,35 @@ public class StIvtIostorinvYlServiceImpl extends ServiceImpl().eq("struct_code", dis.getSect_code()).eq("material_id", dis.getMaterial_id())); + if (ObjectUtil.isNotEmpty(structivtYl)) { + structivtYl.setCanuse_qty(NumberUtil.add(structivtYl.getCanuse_qty(), dis.getPlan_qty())); + structivtYl.setIvt_qty(structivtYl.getCanuse_qty()); + structivtYlService.updateById(structivtYl); + } else { + structivtYlService.save(StIvtStructivtYl.builder() + .stockrecord_id(IdUtil.getStringId()) + .struct_id(dis.getStruct_id()) + .struct_code(dis.getStruct_code()) + .struct_name(dis.getStruct_name()) + .material_id(dis.getMaterial_id()) + .quality_scode(dis.getQuality_scode()) + .pcsn(dis.getPcsn()) + .ivt_level(dis.getIvt_level()) + .is_active(dis.getIs_active()) + .canuse_qty(dis.getReal_qty()) + .ivt_qty(dis.getReal_qty()) + .qty_unit_id(dis.getQty_unit_id()) + .instorage_time(DateUtil.now()) + .stor_id(mst.getStor_id()) + .workshop_id(mst.getWorkshop_id()) + .build() + ); + } + /*//修改库存和插入库存变动记录表 structivtflowService.recordStructivtFlow( StIvtStructivtflowDto.builder() diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/IStIvtMoreorlessdtlYlService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/IStIvtMoreorlessdtlYlService.java index 424c5a5f..2e5d7882 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/IStIvtMoreorlessdtlYlService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/IStIvtMoreorlessdtlYlService.java @@ -1,7 +1,13 @@ package org.nl.wms.storage_manage.rawmanage.service.moveOrLess; -import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.StIvtMoreorlessdtlYl; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.StIvtMoreorlessdtlYl; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.StIvtMoreorlessmstYl; + +import java.util.List; +import java.util.Map; /** *

@@ -13,4 +19,13 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface IStIvtMoreorlessdtlYlService extends IService { + /** + * 主单据使用 + * @param row + * @param mst + * @return + */ + double create(JSONArray row, StIvtMoreorlessmstYl mst); + + List getMlDtl(JSONObject form); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/IStIvtMoreorlessmstYlService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/IStIvtMoreorlessmstYlService.java index feae0081..b68ff0df 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/IStIvtMoreorlessmstYlService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/IStIvtMoreorlessmstYlService.java @@ -1,7 +1,13 @@ package org.nl.wms.storage_manage.rawmanage.service.moveOrLess; -import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.StIvtMoreorlessmstYl; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.StIvtMoreorlessmstYl; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.dto.MoreOrlessQuery; + +import java.util.List; +import java.util.Map; /** *

@@ -13,4 +19,22 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface IStIvtMoreorlessmstYlService extends IService { + Object pageQuery(MoreOrlessQuery query, PageQuery page); + + void create(JSONObject jo); + + List getMlDtl(JSONObject map); + + void update(JSONObject map); + + /** + * 删除 + * @param ids + * { + * 主表id.. + * } + */ + void delete(Long[] ids); + + void confirm(JSONObject form); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/StIvtMoreorlessdtlYl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/StIvtMoreorlessdtlYl.java index eac39dcc..a9a451bc 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/StIvtMoreorlessdtlYl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/StIvtMoreorlessdtlYl.java @@ -1,6 +1,8 @@ package org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao; import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; import lombok.Data; @@ -24,6 +26,7 @@ public class StIvtMoreorlessdtlYl implements Serializable { /** * 损溢单明细id */ + @TableId(value = "mol_dtl_id") private String mol_dtl_id; /** diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/StIvtMoreorlessmstYl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/StIvtMoreorlessmstYl.java index e6ffade5..d7685244 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/StIvtMoreorlessmstYl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/StIvtMoreorlessmstYl.java @@ -1,6 +1,8 @@ package org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao; import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.util.Date; import java.io.Serializable; @@ -25,6 +27,7 @@ public class StIvtMoreorlessmstYl implements Serializable { /** * 损溢单标识 */ + @TableId(value = "mol_id") private String mol_id; /** @@ -80,7 +83,7 @@ public class StIvtMoreorlessmstYl implements Serializable { /** * 创建时间 */ - private Date create_time; + private String create_time; /** * 审核人 @@ -95,7 +98,7 @@ public class StIvtMoreorlessmstYl implements Serializable { /** * 审核时间 */ - private Date audit_time; + private String audit_time; /** * 确认人 @@ -110,7 +113,7 @@ public class StIvtMoreorlessmstYl implements Serializable { /** * 确认时间 */ - private Date confirm_time; + private String confirm_time; /** * 备注 @@ -140,7 +143,7 @@ public class StIvtMoreorlessmstYl implements Serializable { /** * 车间标识 */ - private String product_area; + private String workshop_id; } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/StIvtMoreorlessdtlYlMapper.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/StIvtMoreorlessdtlYlMapper.java index 51f3e195..31bedfa0 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/StIvtMoreorlessdtlYlMapper.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/StIvtMoreorlessdtlYlMapper.java @@ -1,8 +1,13 @@ package org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.mapper; +import com.alibaba.fastjson.JSONObject; +import org.apache.ibatis.annotations.Param; import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.StIvtMoreorlessdtlYl; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import java.util.List; +import java.util.Map; + /** *

* 损溢单明细表 Mapper 接口 @@ -13,4 +18,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface StIvtMoreorlessdtlYlMapper extends BaseMapper { + List getMlDtl(@Param("map") JSONObject map); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/StIvtMoreorlessmstYlMapper.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/StIvtMoreorlessmstYlMapper.java index 8e01b437..9be03aea 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/StIvtMoreorlessmstYlMapper.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/StIvtMoreorlessmstYlMapper.java @@ -1,7 +1,13 @@ package org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.mapper; +import org.apache.ibatis.annotations.Param; +import org.nl.common.domain.query.PageQuery; import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.StIvtMoreorlessmstYl; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.dto.MoreOrlessQuery; + +import java.util.List; +import java.util.Map; /** *

@@ -13,4 +19,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface StIvtMoreorlessmstYlMapper extends BaseMapper { + List getMstDetail(@Param("query") MoreOrlessQuery query, @Param("pageQuery") PageQuery pageQuery); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/xml/StIvtMoreorlessdtlYlMapper.xml b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/xml/StIvtMoreorlessdtlYlMapper.xml index b302ccfa..5a1aed3e 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/xml/StIvtMoreorlessdtlYlMapper.xml +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/xml/StIvtMoreorlessdtlYlMapper.xml @@ -2,4 +2,18 @@ + diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/xml/StIvtMoreorlessmstYlMapper.xml b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/xml/StIvtMoreorlessmstYlMapper.xml index 6fbf6a34..4c7bb3da 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/xml/StIvtMoreorlessmstYlMapper.xml +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dao/mapper/xml/StIvtMoreorlessmstYlMapper.xml @@ -2,4 +2,55 @@ + diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dto/MoreOrlessQuery.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dto/MoreOrlessQuery.java new file mode 100644 index 00000000..e6041632 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/dto/MoreOrlessQuery.java @@ -0,0 +1,37 @@ +package org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.dto; + +import lombok.Data; +import org.nl.common.domain.query.BaseQuery; +import org.nl.common.domain.query.QParam; +import org.nl.common.enums.QueryTEnum; +import org.nl.wms.storage_manage.rawmanage.service.check.dao.StIvtCheckmstYl; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.StIvtMoreorlessmstYl; + +/* + * @author ZZQ + * @Date 2023/5/4 19:49 + */ +@Data +public class MoreOrlessQuery extends BaseQuery { + + + private String stor_id; + + private String status; + + private String mol_inv_type; + + private String mol_code; + + private String mol_type; + + private Boolean is_delete = false; + + + @Override + public void paramMapping() { + super.doP.put("mol_code", QParam.builder().k(new String[]{"mol_code"}).type(QueryTEnum.LK).build()); + } + + +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/impl/StIvtMoreorlessdtlYlServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/impl/StIvtMoreorlessdtlYlServiceImpl.java index ca8bf90c..5d14b7c2 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/impl/StIvtMoreorlessdtlYlServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/impl/StIvtMoreorlessdtlYlServiceImpl.java @@ -1,12 +1,30 @@ package org.nl.wms.storage_manage.rawmanage.service.moveOrLess.impl; +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.nl.common.utils.IdUtil; +import org.nl.modules.common.exception.BadRequestException; +import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtSectattrService; +import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtStructattrService; +import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtSectattr; +import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr; import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.IStIvtMoreorlessdtlYlService; import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.StIvtMoreorlessdtlYl; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.StIvtMoreorlessmstYl; import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.mapper.StIvtMoreorlessdtlYlMapper; +import org.nl.wms.storage_manage.semimanage.MLEnum; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.math.BigDecimal; +import java.util.List; +import java.util.Map; + /** *

* 损溢单明细表 服务实现类 @@ -18,4 +36,56 @@ import org.springframework.stereotype.Service; @Service public class StIvtMoreorlessdtlYlServiceImpl extends ServiceImpl implements IStIvtMoreorlessdtlYlService { + @Autowired + private IStIvtSectattrService sectattrService; + @Autowired + private IStIvtStructattrService structattrService; + + @Override + public List getMlDtl(JSONObject form) { + return this.baseMapper.getMlDtl(form); + } + + @Override + public double create(JSONArray rows, StIvtMoreorlessmstYl mst) { + double total_qty = 0; + + if (rows.size() > 0 && ObjectUtil.isNotEmpty(mst)) { + // 先删除在插入 + this.remove(new QueryWrapper().eq("mol_id", mst.getMol_id())); + + for (int i = 0; i < rows.size(); i++) { + String mol_dtl_id = IdUtil.getStringId(); + StIvtMoreorlessdtlYl row = rows.getJSONObject(i).toJavaObject(StIvtMoreorlessdtlYl.class); + row.setMol_dtl_id(mol_dtl_id); + row.setMol_id(mst.getMol_id()); + row.setMol_code(mst.getMol_code()); + row.setSeq_no(BigDecimal.valueOf(i + 1)); + + // 获取库区信息 + QueryWrapper sect_wrapper = new QueryWrapper<>(); + sect_wrapper.eq("sect_id", row.getSect_id()); + sect_wrapper.eq("is_used", true); + StIvtSectattr sectDao = sectattrService.getOne(sect_wrapper); + if (ObjectUtil.isEmpty(sectDao)) throw new BadRequestException("库区不存在或未启用!"); + row.setSect_name(sectDao.getSect_name()); + // 获取仓位信息 + QueryWrapper struct_wrapper = new QueryWrapper<>(); + struct_wrapper.eq("struct_id", row.getStruct_id()); + struct_wrapper.eq("is_used", true); + StIvtStructattr structDao = structattrService.getOne(struct_wrapper); + if (ObjectUtil.isEmpty(structDao)) throw new BadRequestException("仓位不存在或未启用!"); + row.setStruct_name(structDao.getStruct_name()); + + row.setStoragevehicle_id("999999"); + row.setStoragevehicle_code("999999"); + row.setStatus(MLEnum.DTL_STATUS.code("生成")); + this.save(row); + + //锁定货位 + structattrService.update(new UpdateWrapper().set("lock_type", "1").set("inv_code",mst.getMol_code()).eq("struct_id", row.getStruct_id())); + } + } + return total_qty; + } } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/impl/StIvtMoreorlessmstYlServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/impl/StIvtMoreorlessmstYlServiceImpl.java index 9b067d4a..fd4d8b87 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/impl/StIvtMoreorlessmstYlServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/moveOrLess/impl/StIvtMoreorlessmstYlServiceImpl.java @@ -1,11 +1,47 @@ package org.nl.wms.storage_manage.rawmanage.service.moveOrLess.impl; -import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.IStIvtMoreorlessmstYlService; -import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.mapper.StIvtMoreorlessmstYlMapper; -import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.StIvtMoreorlessmstYl; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.NumberUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; +import io.jsonwebtoken.lang.Assert; +import org.jetbrains.annotations.NotNull; +import org.nl.common.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.utils.IdUtil; +import org.nl.common.utils.SecurityUtils; +import org.nl.modules.common.exception.BadRequestException; +import org.nl.modules.system.util.CodeUtil; +import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtBsrealstorattrService; +import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtStructattrService; +import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtBsrealstorattr; +import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr; +import org.nl.wms.storage_manage.CHECKEnum; +import org.nl.wms.storage_manage.rawmanage.service.check.dao.StIvtCheckdtlYl; +import org.nl.wms.storage_manage.rawmanage.service.check.dao.StIvtCheckmstYl; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.IStIvtMoreorlessdtlYlService; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.IStIvtMoreorlessmstYlService; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.StIvtMoreorlessdtlYl; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.StIvtMoreorlessmstYl; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.dto.MoreOrlessQuery; +import org.nl.wms.storage_manage.rawmanage.service.moveOrLess.dao.mapper.StIvtMoreorlessmstYlMapper; +import org.nl.wms.storage_manage.rawmanage.service.structIvt.IStIvtStructivtYlService; +import org.nl.wms.storage_manage.rawmanage.service.structIvt.dao.StIvtStructivtYl; +import org.nl.wms.storage_manage.semimanage.MLEnum; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.math.BigDecimal; +import java.util.List; +import java.util.Map; + /** *

* 损溢单主表 服务实现类 @@ -17,4 +53,196 @@ import org.springframework.stereotype.Service; @Service public class StIvtMoreorlessmstYlServiceImpl extends ServiceImpl implements IStIvtMoreorlessmstYlService { + @Autowired + private IStIvtMoreorlessdtlYlService moreorlessdtlYlService; + + @Autowired + private IStIvtBsrealstorattrService stIvtBsrealstorattrService; + + @Autowired + private IStIvtStructivtYlService structivtYlService; + + @Autowired + private IStIvtStructattrService structattrService; + + @Override + public Object pageQuery(MoreOrlessQuery query, PageQuery pageQuery) { + Page page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize()); + List mst_detail = this.baseMapper.getMstDetail(query, pageQuery); + TableDataInfo build = TableDataInfo.build(mst_detail); + build.setTotalElements(page.getTotal()); + return build; + } + + @Override + public void create(JSONObject form) { + JSONArray rows = form.getJSONArray("tableData"); + if (ObjectUtil.isEmpty(rows)) throw new BadRequestException("请求参数不能为空"); + + // 调用主表 插入/更新方法 + StIvtMoreorlessmstYl mlmstYl = packageMstForm(new StIvtMoreorlessmstYl(), form); + this.save(mlmstYl); + + //调用明细表 插入方法 + moreorlessdtlYlService.create(rows, mlmstYl); + + if (form.containsKey("auto_confirm") && form.getString("auto_confirm").equals("1")) { + JSONObject mst = new JSONObject(); + mst.put("mol_id", mlmstYl.getMol_id()); + this.confirm(mst); + } + } + + @Override + public List getMlDtl(JSONObject map) { + return moreorlessdtlYlService.getMlDtl(map); + } + + @Override + public void update(JSONObject form) { + Assert.notNull(new Object[]{form, form.get("mol_id")}, "请求参数不能为空"); + StIvtMoreorlessmstYl mst = form.toJavaObject(StIvtMoreorlessmstYl.class); + this.updateById(mst); + + JSONArray rows = form.getJSONArray("tableData"); + if (ObjectUtil.isEmpty(rows)) throw new BadRequestException("请求参数不能为空"); + // 调用明细表 插入/更新方法 + moreorlessdtlYlService.create(rows, mst); + } + + @Override + public void delete(Long[] ids) { + for (Long id : ids) { + StIvtMoreorlessmstYl dao = this.getOne(new QueryWrapper().eq("mol_id", id)); + dao.setIs_delete(true); + this.updateById(dao); + } + } + + @Override + public void confirm(JSONObject whereJson) { + + String mol_id = (String) whereJson.get("mol_id"); + + StIvtMoreorlessmstYl mst = this.getOne(new QueryWrapper().eq("mol_id", mol_id)); + + if (!mst.getStatus().equals(MLEnum.BILL_STATUS.code("生成"))) { + throw new BadRequestException("请选择单据状态为生成的损溢单!"); + } + + String mol_type = mst.getMol_type(); + + List dtl_list = moreorlessdtlYlService.list(new QueryWrapper().eq("mol_id", mol_id)); + //更新库存 + if (mol_type.equals(MLEnum.MOL_TYPE.code("损"))) { + dtl_list.forEach(dtl -> { + StIvtStructivtYl ivt = structivtYlService.getOne(new QueryWrapper().eq("struct_id", dtl.getStruct_id()).eq("material_id", dtl.getMaterial_id())); + if (ObjectUtil.isEmpty(ivt)) { + throw new BadRequestException("未查询到相关库存!"); + } + BigDecimal canuse_qty = ivt.getCanuse_qty(); + BigDecimal ivt_qty = ivt.getIvt_qty(); + BigDecimal mol_qty = dtl.getMol_qty(); + ivt.setCanuse_qty(NumberUtil.sub(canuse_qty, mol_qty)); + ivt.setIvt_qty(NumberUtil.sub(ivt_qty, mol_qty)); + //如果库存变为0则删除记录 + if (canuse_qty.compareTo(mol_qty) == 0 && canuse_qty.compareTo(ivt_qty) == 0) { + structivtYlService.removeById(ivt.getStockrecord_id()); + } else { + structivtYlService.updateById(ivt); + } + }); + } else { + dtl_list.forEach(dtl -> { + StIvtStructivtYl ivt = structivtYlService.getOne(new QueryWrapper().eq("struct_id", dtl.getStruct_id()).eq("material_id", dtl.getMaterial_id())); + BigDecimal mol_qty = dtl.getMol_qty(); + + if (ObjectUtil.isEmpty(ivt)) { + StIvtStructattr struct_jo = structattrService.getOne(new QueryWrapper().eq("struct_id", dtl.getStruct_id())); + //新增一条库存记录 + structivtYlService.save(StIvtStructivtYl.builder() + .stockrecord_id(IdUtil.getStringId()) + .struct_id(dtl.getStruct_id()) + .struct_code(struct_jo.getStruct_code()) + .struct_name(struct_jo.getStruct_name()) + .material_id(dtl.getMaterial_id()) + .quality_scode(dtl.getQuality_scode()) + .pcsn(dtl.getPcsn()) + .ivt_level(dtl.getIvt_level()) + .is_active(dtl.getIs_active()) + .canuse_qty(mol_qty) + .ivt_qty(mol_qty) + .qty_unit_id(dtl.getQty_unit_id()) + .instorage_time(DateUtil.now()) + .stor_id(mst.getStor_id()) + .workshop_id(mst.getWorkshop_id()) + .build() + ); + } else { + BigDecimal canuse_qty = ivt.getCanuse_qty(); + BigDecimal ivt_qty = ivt.getIvt_qty(); + ivt.setCanuse_qty(NumberUtil.add(canuse_qty, mol_qty)); + ivt.setIvt_qty(NumberUtil.add(ivt_qty, mol_qty)); + structivtYlService.updateById(ivt); + } + + //更新明细状态 + dtl.setStatus(MLEnum.DTL_STATUS.code("确认完成")); + moreorlessdtlYlService.updateById(dtl); + }); + } + + dtl_list.stream().map(dtl -> dtl.getStruct_id()) + .distinct() + .forEach(struct_id -> structattrService.update(new UpdateWrapper().set("lock_type", "0").set("inv_code", "").eq("struct_id", struct_id))); + + //更新损溢单主表 + mst.setStatus(MLEnum.BILL_STATUS.code("完成")); + mst.setConfirm_optid(SecurityUtils.getCurrentUserId()); + mst.setConfirm_optname(SecurityUtils.getCurrentNickName()); + mst.setConfirm_time(DateUtil.now()); + this.updateById(mst); + } + + @NotNull + private StIvtMoreorlessmstYl packageMstForm(StIvtMoreorlessmstYl mlmstYl, JSONObject whereJson) { + JSONArray rows = whereJson.getJSONArray("tableData"); + // 新增 + mlmstYl.setMol_id(IdUtil.getStringId()); + mlmstYl.setMol_code(CodeUtil.getNewCode("MOL_CODE")); + if (StrUtil.isEmpty(whereJson.getString("buss_type"))) { + mlmstYl.setBuss_type(MLEnum.BILL_TYPE.code("普通损溢")); + mlmstYl.setMol_inv_type(MLEnum.BILL_TYPE.code("普通损溢")); + } else { + mlmstYl.setBuss_type(whereJson.getString("buss_type")); + mlmstYl.setMol_inv_type(whereJson.getString("buss_type")); + } + + mlmstYl.setMol_type(whereJson.getString("mol_type")); + + // 获取仓库信息 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("stor_id", whereJson.getString("stor_id")); + wrapper.eq("is_used", true); + StIvtBsrealstorattr bsrealDao = stIvtBsrealstorattrService.getOne(wrapper); + if (ObjectUtil.isEmpty(bsrealDao)) throw new BadRequestException("仓库不存在或未启用!"); + + mlmstYl.setStor_id(bsrealDao.getStor_id()); + mlmstYl.setStor_name(bsrealDao.getStor_name()); + mlmstYl.setDtl_num(BigDecimal.valueOf(rows.size())); + mlmstYl.setCreate_mode(CHECKEnum.CREATE_MODE.code("PC产生")); + mlmstYl.setStatus(CHECKEnum.BILL_STATUS.code("生成")); + mlmstYl.setCreate_id(SecurityUtils.getCurrentUserId()); + mlmstYl.setCreate_name(SecurityUtils.getCurrentNickName()); + mlmstYl.setCreate_time(DateUtil.now()); + mlmstYl.setIs_delete(false); + // TODO 暂时写死 + mlmstYl.setSysdeptid("111"); + mlmstYl.setSyscompanyid("111"); + + mlmstYl.setRemark(whereJson.getString("remark")); + mlmstYl.setWorkshop_id(whereJson.getString("workshop_id")); + + return mlmstYl; + } } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/structIvt/dao/StIvtStructivtYl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/structIvt/dao/StIvtStructivtYl.java index e3192f81..4b99b199 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/structIvt/dao/StIvtStructivtYl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/rawmanage/service/structIvt/dao/StIvtStructivtYl.java @@ -1,9 +1,13 @@ package org.nl.wms.storage_manage.rawmanage.service.structIvt.dao; import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.util.Date; import java.io.Serializable; + +import lombok.Builder; import lombok.Data; import lombok.EqualsAndHashCode; @@ -18,6 +22,7 @@ import lombok.EqualsAndHashCode; @Data @EqualsAndHashCode(callSuper = false) @TableName("st_ivt_structivt_yl") +@Builder public class StIvtStructivtYl implements Serializable { private static final long serialVersionUID = 1L; @@ -25,6 +30,7 @@ public class StIvtStructivtYl implements Serializable { /** * 库存记录标识 */ + @TableId(value = "stockrecord_id") private String stockrecord_id; /** @@ -95,7 +101,7 @@ public class StIvtStructivtYl implements Serializable { /** * 入库时间 */ - private Date instorage_time; + private String instorage_time; /** * 仓库标识 @@ -105,7 +111,7 @@ public class StIvtStructivtYl implements Serializable { /** * 车间标识 */ - private String product_area; + private String workshop_id; } diff --git a/mes/hd/nladmin-system/src/main/resources/config/application-dev.yml b/mes/hd/nladmin-system/src/main/resources/config/application-dev.yml index 88f2ca63..2af7e079 100644 --- a/mes/hd/nladmin-system/src/main/resources/config/application-dev.yml +++ b/mes/hd/nladmin-system/src/main/resources/config/application-dev.yml @@ -23,10 +23,10 @@ spring: db-type: com.alibaba.druid.pool.DruidDataSource driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy # url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.46.5}:${DB_PORT:3306}/${DB_NAME:hl_one_mes_test}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false - url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.81.252}:${DB_PORT:3306}/${DB_NAME:hl_one_mes}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false + url: jdbc:log4jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:hl_one_mes}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false username: ${DB_USER:root} # password: ${DB_PWD:123456} - password: ${DB_PWD:Root.123456} + password: ${DB_PWD:root} # 初始连接数 initial-size: 5 diff --git a/mes/qd/src/views/wms/storage_manage/rawproduct/rawproductmoreOrless/AddDialog.vue b/mes/qd/src/views/wms/storage_manage/rawproduct/rawproductmoreOrless/AddDialog.vue index 90822121..86feabc0 100644 --- a/mes/qd/src/views/wms/storage_manage/rawproduct/rawproductmoreOrless/AddDialog.vue +++ b/mes/qd/src/views/wms/storage_manage/rawproduct/rawproductmoreOrless/AddDialog.vue @@ -158,7 +158,8 @@ - +