From 52a72d9b912461e43b31f8eb0fda48a9f28efdb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E6=97=AD=E6=98=8E=5C73939?= <739390650@QQ.COM> Date: Sun, 28 Sep 2025 14:02:43 +0800 Subject: [PATCH] =?UTF-8?q?opt:=E5=AF=8C=E4=BD=B3=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 + .../service/dao/MdMeMaterialbaseDto.java | 178 ++++++++++++++++++ .../nl/wms/ext_manage/enums/EXTConstant.java | 3 +- .../controller/PdaIosInController.java | 3 +- .../ios_manage/service/PdaIosInService.java | 3 +- .../service/impl/PdaIosInServiceImpl.java | 34 +++- .../service/impl/PdaIosOutServiceImpl.java | 102 +++++----- .../service/util/GetMaterialInfoTask.java | 4 +- .../service/util/UploadErpTask.java | 68 +++++++ .../service/ReturnService.java | 10 + .../service/impl/OutBillServiceImpl.java | 12 +- .../impl/RawAssistIStorServiceImpl.java | 13 +- .../service/impl/RetrunServiceImpl.java | 25 +++ .../main/resources/config/application-dev.yml | 4 +- .../resources/config/application-prod.yml | 139 ++++++++++++++ nladmin-ui/.env.development | 4 +- nladmin-ui/.env.production | 4 +- nladmin-ui/public/config.js | 4 +- .../views/wms/basedata/group/ViewDialog.vue | 4 +- .../src/views/wms/basedata/group/index.vue | 28 ++- .../src/views/wms/st/inbill/AddDialog.vue | 7 +- .../src/views/wms/st/inbill/DivDialog.vue | 7 +- .../src/views/wms/st/inbill/ViewDialog.vue | 7 +- 23 files changed, 583 insertions(+), 83 deletions(-) create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/MdMeMaterialbaseDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/UploadErpTask.java create mode 100644 nladmin-system/nlsso-server/src/main/resources/config/application-prod.yml diff --git a/.gitignore b/.gitignore index ad60fde..3987d7a 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,6 @@ nladmin-ui/node_modules/ nladmin-ui/.idea/misc.xml nladmin-ui/.idea/ nladmin-system/nlsso-server/target/ +nladmin-ui/dist/ +.idea/ +nladmin-ui/dist.zip diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/MdMeMaterialbaseDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/MdMeMaterialbaseDto.java new file mode 100644 index 0000000..87258f9 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/MdMeMaterialbaseDto.java @@ -0,0 +1,178 @@ +package org.nl.wms.basedata_manage.service.dao; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + *

+ * 物料基本信息表 + *

+ * + * @author author + * @since 2025-05-13 + */ +@Data +@EqualsAndHashCode(callSuper = false) +public class MdMeMaterialbaseDto implements Serializable { + + + + private String material_id; + + /** + * 物料编码 + */ + private String material_code; + + /** + * 物料名称 + */ + private String material_name; + + /** + * 规格 + */ + private String material_spec; + + /** + * 型号 + */ + private String material_model; + + /** + * 外文名称 + */ + private String english_name; + + /** + * 基本计量单位 + */ + private String base_unit_id; + + /** + * 基本计量单位 + */ + private String base_unit_name; + + /** + * 辅助计量单位 + */ + private String ass_unit_id; + + /** + * 批准文号 + */ + private String approve_fileno; + + /** + * 工程图号 + */ + private String remark; + + /** + * 物料分类标识 + */ + private String material_type_id; + + /** + * 长度单位 + */ + private String len_unit_id; + + /** + * 物料长度 + */ + private BigDecimal length; + + /** + * 物料宽度 + */ + private BigDecimal width; + + /** + * 物料高度 + */ + private BigDecimal height; + + /** + * 重量单位 + */ + private String weight_unit_id; + + /** + * 物料毛重 + */ + private BigDecimal gross_weight; + + /** + * 物料净重 + */ + private BigDecimal net_weight; + + /** + * 体积单位 + */ + private String cubage_unit_id; + + /** + * 物料体积 + */ + private BigDecimal cubage; + + /** + * 创建人 + */ + private String create_id; + + /** + * 创建人姓名 + */ + private String create_name; + + /** + * 创建时间 + */ + private String create_time; + + /** + * 修改人 + */ + private String update_optid; + + /** + * 修改人姓名 + */ + private String update_optname; + + /** + * 修改时间 + */ + private String update_time; + + /** + * 启用时间 + */ + private String is_used_time; + + /** + * 是否启用 + */ + private String is_used; + + /** + * 是否删除 + */ + private String is_delete; + + /** + * 外部标识 + */ + private String ext_id; + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext_manage/enums/EXTConstant.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext_manage/enums/EXTConstant.java index e01892e..cddbd1a 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext_manage/enums/EXTConstant.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext_manage/enums/EXTConstant.java @@ -35,5 +35,6 @@ public class EXTConstant { /** * ERP获取物料详情请求地址 */ - public final static String GET_MATERIAL_INFO_ERP_API = "api/lms/materialinfo"; + public final static String GET_MATERIAL_INFO_ERP_API = "/api/toerp/requestmaterialinfo"; + } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/controller/PdaIosInController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/controller/PdaIosInController.java index c10aa87..66e346e 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/controller/PdaIosInController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/controller/PdaIosInController.java @@ -8,6 +8,7 @@ import lombok.extern.slf4j.Slf4j; import org.nl.common.base.TableDataInfo; import org.nl.common.logging.annotation.Log; import org.nl.wms.basedata_manage.service.dao.MdMeMaterialbase; +import org.nl.wms.basedata_manage.service.dao.MdMeMaterialbaseDto; import org.nl.wms.pda_manage.ios_manage.service.PdaIosInService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; @@ -84,7 +85,7 @@ public class PdaIosInController { */ @PostMapping("/getMaterialList") @Log("获取物料列表") - public ResponseEntity> getMaterialList(@RequestBody JSONObject whereJson) { + public ResponseEntity> getMaterialList(@RequestBody JSONObject whereJson) { return new ResponseEntity<>(pdaIosInService.getMaterialList(whereJson), HttpStatus.OK); } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/service/PdaIosInService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/service/PdaIosInService.java index c3f5c8b..631302c 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/service/PdaIosInService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/service/PdaIosInService.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject; import org.nl.common.base.TableDataInfo; import org.nl.common.domain.vo.SelectItemVo; import org.nl.wms.basedata_manage.service.dao.MdMeMaterialbase; +import org.nl.wms.basedata_manage.service.dao.MdMeMaterialbaseDto; import org.nl.wms.pda_manage.util.PdaResponse; import org.nl.wms.warehouse_manage.service.dao.GroupPlate; @@ -66,7 +67,7 @@ public interface PdaIosInService { * * @return PdaResponse */ - TableDataInfo getMaterialList(JSONObject whereJson); + TableDataInfo getMaterialList(JSONObject whereJson); /** * 查询物料列表 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/service/impl/PdaIosInServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/service/impl/PdaIosInServiceImpl.java index f93351d..7c1b2ca 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/service/impl/PdaIosInServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/service/impl/PdaIosInServiceImpl.java @@ -23,6 +23,7 @@ import org.nl.wms.basedata_manage.enums.BaseDataEnum; import org.nl.wms.basedata_manage.service.*; import org.nl.wms.basedata_manage.service.dao.*; import org.nl.wms.basedata_manage.service.dto.MaterialQuery; +import org.nl.wms.ext_manage.dto.ErpGroupplateDto; import org.nl.wms.pda_manage.ios_manage.service.PdaIosInService; import org.nl.wms.pda_manage.util.PdaResponse; import org.nl.wms.sch_manage.enums.StatusEnum; @@ -54,6 +55,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.math.BigDecimal; import java.util.*; +import java.util.stream.Collectors; import static org.nl.wms.warehouse_manage.enums.IOSEnum.GROUP_PLATE_STATUS; @@ -232,7 +234,7 @@ public class PdaIosInServiceImpl implements PdaIosInService { } @Override - public TableDataInfo getMaterialList(JSONObject whereJson) { + public TableDataInfo getMaterialList(JSONObject whereJson) { PageQuery pageQuery = new PageQuery(); pageQuery.setPage(whereJson.getInteger("page") - 1); pageQuery.setSize(whereJson.getInteger("size")); @@ -240,8 +242,34 @@ public class PdaIosInServiceImpl implements PdaIosInService { if (StringUtils.isNotBlank(whereJson.getString("search"))) { materialQuery.setSearch(whereJson.getString("search").trim().toUpperCase()); } - Page mapPage = iMdMeMaterialbaseService.pageMaps(pageQuery.build(), materialQuery.build()); - return PdaResponse.build(mapPage); + // 修正:使用page方法而不是pageMaps方法,以获取MdMeMaterialbase实体对象列表 + Page page = iMdMeMaterialbaseService.page(pageQuery.build(), materialQuery.build()); + + List mdMeMaterialbases = page.getRecords(); + + List unitIdList = mdMeMaterialbases.stream() + .map(MdMeMaterialbase::getBase_unit_id) + .collect(Collectors.toList()); + + //查询单位 + List mdPbMeasureunits = iMdPbMeasureunitService.list(new QueryWrapper().lambda() + .in(MdPbMeasureunit::getMeasure_unit_id,unitIdList )); + + Map unitMap = mdPbMeasureunits.stream().collect(Collectors.toMap(MdPbMeasureunit::getMeasure_unit_id, MdPbMeasureunit::getUnit_name)); + //stream() + //collect(Collectors.toMap(MdPbMeasureunit::getMeasure_unit_id, MdPbMeasureunit::getUnit_name)); + + List mdMeMaterialbaseDtos = new ArrayList<>(); + for (MdMeMaterialbase mdMeMaterialbase : mdMeMaterialbases) { + MdMeMaterialbaseDto mdMeMaterialbaseDto = new MdMeMaterialbaseDto(); + BeanUtils.copyProperties(mdMeMaterialbase, mdMeMaterialbaseDto); + mdMeMaterialbaseDto.setBase_unit_name(unitMap.get(mdMeMaterialbase.getBase_unit_id())); + mdMeMaterialbaseDtos.add(mdMeMaterialbaseDto); + } + Page pageDto = new Page<>(); + BeanUtils.copyProperties(page, pageDto); + pageDto.setRecords(mdMeMaterialbaseDtos); + return PdaResponse.build(pageDto); } @Override diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/service/impl/PdaIosOutServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/service/impl/PdaIosOutServiceImpl.java index 4ee8248..3fd1972 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/service/impl/PdaIosOutServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda_manage/ios_manage/service/impl/PdaIosOutServiceImpl.java @@ -3,6 +3,7 @@ package org.nl.wms.pda_manage.ios_manage.service.impl; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.http.HttpStatus; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; @@ -142,57 +143,60 @@ public class PdaIosOutServiceImpl implements PdaIosOutService { throw new BadRequestException("点位不存在:"+outPoint); } //载具信息 - JSONObject obj = param.getJSONObject("obj"); + JSONArray objRows = param.getJSONArray("obj"); //创建出库单/明细/分配 - GroupPlate plateDao = mdPbGroupplateMapper.selectOne( - new LambdaQueryWrapper() - .eq(GroupPlate::getGroup_id, obj.getString("group_id"))); + for (int i = 0; i < objRows.size(); i++) { + JSONObject obj = objRows.getJSONObject(i); + GroupPlate plateDao = mdPbGroupplateMapper.selectOne( + new LambdaQueryWrapper() + .eq(GroupPlate::getGroup_id, obj.getString("group_id"))); - Structattr struct = iStructattrService.getOne(new LambdaQueryWrapper() - .eq(Structattr::getStruct_code, obj.getString("struct_code"))); - MdMeMaterialbase materDao = iMdMeMaterialbaseService.getById(plateDao.getMaterial_id()); - obj.put("material_id", materDao.getMaterial_id()); - obj.put("material_code", materDao.getMaterial_code()); - obj.put("store_id", struct.getStor_id()); - obj.put("store_code", struct.getStor_code()); - obj.put("store_name", struct.getStor_name()); - obj.put("sect_id", struct.getSect_id()); - obj.put("sect_code", struct.getSect_code()); - obj.put("sect_name", struct.getSect_name()); - obj.put("struct_id", struct.getStruct_id()); - obj.put("struct_code", struct.getStruct_code()); - obj.put("struct_name", struct.getStruct_name()); - obj.put("qty", plateDao.getQty()); - obj.put("unit_id", plateDao.getQty_unit_id()); - obj.put("unit_name", plateDao.getQty_unit_name()); - //创建出库单据 - String disId = createOutBills(obj); - //锁定货位 - JSONObject lock_map = new JSONObject(); - lock_map.put("struct_code", obj.getString("struct_code")); - lock_map.put("lock_type", IOSEnum.LOCK_TYPE.code("出库锁")); - iStructattrService.updateStatusByCode("0", lock_map); - //创建任务 - JSONObject taskForm = new JSONObject(); - taskForm.put("task_type", "STOutTask"); - taskForm.put("TaskCode", CodeUtil.getNewCode("TASK_CODE")); - taskForm.put("PickingLocation", obj.getString("struct_code")); - taskForm.put("PlacedLocation",outPoint); - taskForm.put("vehicle_code", obj.getString("storagevehicle_code")); - StOutTask stOutTask = SpringContextHolder.getBean("STOutTask"); - String taskId = stOutTask.create(taskForm); - //更新任务id - ioStorInvDisMapper.update(new IOStorInvDis(), new LambdaUpdateWrapper() - .set(IOStorInvDis::getTask_id, taskId) - .set(IOStorInvDis::getPoint_code,outPoint) - .set(IOStorInvDis::getFloor_code,floor_code) - .eq(IOStorInvDis::getIostorinvdis_id, disId) - ); - //更新组盘记录表 - mdPbGroupplateMapper.update(new GroupPlate(), new LambdaUpdateWrapper<>(GroupPlate.class) - .set(GroupPlate::getFrozen_qty, plateDao.getQty()) - .eq(GroupPlate::getGroup_id, obj.getString("group_id")) - ); + Structattr struct = iStructattrService.getOne(new LambdaQueryWrapper() + .eq(Structattr::getStruct_code, obj.getString("struct_code"))); + MdMeMaterialbase materDao = iMdMeMaterialbaseService.getById(plateDao.getMaterial_id()); + obj.put("material_id", materDao.getMaterial_id()); + obj.put("material_code", materDao.getMaterial_code()); + obj.put("store_id", struct.getStor_id()); + obj.put("store_code", struct.getStor_code()); + obj.put("store_name", struct.getStor_name()); + obj.put("sect_id", struct.getSect_id()); + obj.put("sect_code", struct.getSect_code()); + obj.put("sect_name", struct.getSect_name()); + obj.put("struct_id", struct.getStruct_id()); + obj.put("struct_code", struct.getStruct_code()); + obj.put("struct_name", struct.getStruct_name()); + obj.put("qty", plateDao.getQty()); + obj.put("unit_id", plateDao.getQty_unit_id()); + obj.put("unit_name", plateDao.getQty_unit_name()); + //创建出库单据 + String disId = createOutBills(obj); + //锁定货位 + JSONObject lock_map = new JSONObject(); + lock_map.put("struct_code", obj.getString("struct_code")); + lock_map.put("lock_type", IOSEnum.LOCK_TYPE.code("出库锁")); + iStructattrService.updateStatusByCode("0", lock_map); + //创建任务 + JSONObject taskForm = new JSONObject(); + taskForm.put("task_type", "STOutTask"); + taskForm.put("TaskCode", CodeUtil.getNewCode("TASK_CODE")); + taskForm.put("PickingLocation", obj.getString("struct_code")); + taskForm.put("PlacedLocation", outPoint); + taskForm.put("vehicle_code", obj.getString("storagevehicle_code")); + StOutTask stOutTask = SpringContextHolder.getBean("STOutTask"); + String taskId = stOutTask.create(taskForm); + //更新任务id + ioStorInvDisMapper.update(new IOStorInvDis(), new LambdaUpdateWrapper() + .set(IOStorInvDis::getTask_id, taskId) + .set(IOStorInvDis::getPoint_code, outPoint) + .set(IOStorInvDis::getFloor_code, floor_code) + .eq(IOStorInvDis::getIostorinvdis_id, disId) + ); + //更新组盘记录表 + mdPbGroupplateMapper.update(new GroupPlate(), new LambdaUpdateWrapper<>(GroupPlate.class) + .set(GroupPlate::getFrozen_qty, plateDao.getQty()) + .eq(GroupPlate::getGroup_id, obj.getString("group_id")) + ); + } JSONObject ret = new JSONObject(); ret.put("status", String.valueOf(HttpStatus.HTTP_OK)); ret.put("message","操作成功"); diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/GetMaterialInfoTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/GetMaterialInfoTask.java index e26205c..7e31c6a 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/GetMaterialInfoTask.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/GetMaterialInfoTask.java @@ -31,9 +31,9 @@ public class GetMaterialInfoTask { //定时任务 @SneakyThrows public void run(String params) { - log.info("定时器正在执行下发任务调度..."); + log.info("定时器正在执行【获取物料信息】调度..."); requestErp(params); - log.info("定时器执行下发任务调度结束..."); + log.info("定时器执行【获取物料信息】调度结束..."); } /** diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/UploadErpTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/UploadErpTask.java new file mode 100644 index 0000000..5c34604 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/UploadErpTask.java @@ -0,0 +1,68 @@ +package org.nl.wms.sch_manage.service.util; + + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.http.HttpRequest; +import com.alibaba.fastjson.JSONObject; +import lombok.RequiredArgsConstructor; +import lombok.SneakyThrows; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.nl.wms.system_manage.enums.SysParamConstant; +import org.nl.wms.system_manage.service.param.ISysParamService; +import org.nl.wms.system_manage.service.param.dao.Param; +import org.nl.wms.warehouse_manage.service.ReturnService; +import org.nl.wms.warehouse_manage.service.dao.IOStorInv; +import org.nl.wms.warehouse_manage.service.dao.IOStorInvDis; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import static org.nl.wms.ext_manage.enums.EXTConstant.GET_MATERIAL_INFO_ERP_API; + +@Slf4j +@Component +@RequiredArgsConstructor +public class UploadErpTask { + @Autowired + private ISysParamService paramService; + + @Autowired + private ReturnService returnService; + + //定时任务 + @SneakyThrows + public void run() { + log.info("定时器正在执行【回传ERP】调度..."); + uploadErpErp(); + log.info("定时器执行【回传ERP】调度结束..."); + } + + /** + * 定时下发任务 + */ + @Transactional + void uploadErpErp() { + try { + Map whereJson = new HashMap<>(); + whereJson.put("bill_status", "99"); + whereJson.put("is_upload", "1"); + whereJson.put("is_delete", "0"); + List ioStorInvs = returnService.queryAll(whereJson); + JSONObject uploadvWhereJson = new JSONObject(); + uploadvWhereJson.put("rows", ioStorInvs); + returnService.upload(uploadvWhereJson); + } catch (Exception e) { + //网络不通 + String msg = e.getMessage(); + log.error("连接失败:{}", msg); + throw e; + } + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/ReturnService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/ReturnService.java index 85e6a81..c5f0263 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/ReturnService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/ReturnService.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import org.nl.common.domain.query.PageQuery; import org.nl.wms.warehouse_manage.service.dao.IOStorInv; +import java.util.List; import java.util.Map; @@ -27,6 +28,15 @@ public interface ReturnService extends IService { */ IPage queryAll(Map whereJson, PageQuery page); + + + /** + * 分页查询 + * @param whereJson : {查询参数} + * @return 返回结果 + */ + List queryAll(Map whereJson); + /** * 回传 * @param whereJson { diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/impl/OutBillServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/impl/OutBillServiceImpl.java index d5e4d4c..e01a720 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/impl/OutBillServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/impl/OutBillServiceImpl.java @@ -1129,8 +1129,16 @@ public class OutBillServiceImpl extends ServiceImpl i @Override @Transactional(rollbackFor = Exception.class) public void taskFinish(SchBaseTask task) { - String currentUserId = SecurityUtils.getCurrentUserId(); - String nickName = SecurityUtils.getCurrentNickName(); + String currentUserId = ""; + String nickName = ""; + try { + currentUserId = SecurityUtils.getCurrentUserId(); + nickName = SecurityUtils.getCurrentNickName(); + } + catch (Exception e){ + currentUserId = "OtherSys"; + nickName= "OtherSys"; + } String now = DateUtil.now(); IOStorInvDis ioStorInvDis = ioStorInvDisMapper.selectOne(new LambdaQueryWrapper<>(IOStorInvDis.class) .eq(IOStorInvDis::getTask_id, task.getTask_id()) diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/impl/RawAssistIStorServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/impl/RawAssistIStorServiceImpl.java index e70e32f..0d56f9f 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/impl/RawAssistIStorServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/impl/RawAssistIStorServiceImpl.java @@ -678,8 +678,17 @@ public class RawAssistIStorServiceImpl extends ServiceImpl(IOStorInvDis.class) diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/impl/RetrunServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/impl/RetrunServiceImpl.java index d485060..cd437e0 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/impl/RetrunServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/impl/RetrunServiceImpl.java @@ -94,6 +94,31 @@ public class RetrunServiceImpl extends ServiceImpl i ); } + @Override + public List queryAll(Map whereJson) { + String stor_id = MapUtil.getStr(whereJson, "stor_id"); + String io_type = MapUtil.getStr(whereJson, "io_type"); + String bill_type = MapUtil.getStr(whereJson, "bill_type"); + String bill_code = MapUtil.getStr(whereJson, "bill_code"); + String is_upload = MapUtil.getStr(whereJson, "is_upload"); + String begin_time = MapUtil.getStr(whereJson, "begin_time"); + String end_time = MapUtil.getStr(whereJson, "end_time"); + + LambdaQueryWrapper lambda = new QueryWrapper().lambda(); + lambda.eq(ObjectUtil.isNotEmpty(stor_id), IOStorInv::getStor_id, stor_id); + lambda.eq(ObjectUtil.isNotEmpty(io_type), IOStorInv::getIo_type, io_type); + lambda.eq(ObjectUtil.isNotEmpty(bill_type), IOStorInv::getBill_type, bill_type); + lambda.like(ObjectUtil.isNotEmpty(bill_code), IOStorInv::getBill_code, bill_code); + lambda.eq(ObjectUtil.isNotEmpty(is_upload), IOStorInv::getIs_upload, is_upload); + lambda.ge(ObjectUtil.isNotEmpty(begin_time), IOStorInv::getInput_time, begin_time); + lambda.lt(ObjectUtil.isNotEmpty(end_time), IOStorInv::getInput_time, end_time); + lambda.eq(IOStorInv::getIs_delete, BaseDataEnum.IS_YES_NOT.code("否")); + lambda.eq(IOStorInv::getBill_status, IOSEnum.BILL_STATUS.code("完成")); + lambda.orderByDesc(IOStorInv::getInput_time); + return this.baseMapper.selectList(lambda); + } + + @Override public void upload(JSONObject whereJson) { List rows = whereJson.getJSONArray("rows").toJavaList(JSONObject.class); diff --git a/nladmin-system/nlsso-server/src/main/resources/config/application-dev.yml b/nladmin-system/nlsso-server/src/main/resources/config/application-dev.yml index 01f8747..6218b0e 100644 --- a/nladmin-system/nlsso-server/src/main/resources/config/application-dev.yml +++ b/nladmin-system/nlsso-server/src/main/resources/config/application-dev.yml @@ -1,5 +1,5 @@ server: - port: 8011 + port: 8012 #配置数据源 spring: main: @@ -9,7 +9,7 @@ spring: druid: db-type: com.alibaba.druid.pool.DruidDataSource driverClassName: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:2306}/${DB_NAME:fujia}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false + url: jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:fujia}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false # url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:wms_oulun}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false username: ${DB_USER:root} password: ${DB_PWD:123456} diff --git a/nladmin-system/nlsso-server/src/main/resources/config/application-prod.yml b/nladmin-system/nlsso-server/src/main/resources/config/application-prod.yml new file mode 100644 index 0000000..cb8e433 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/resources/config/application-prod.yml @@ -0,0 +1,139 @@ +server: + port: 8011 +#配置数据源 +spring: + main: + allow-bean-definition-overriding: true + allow-circular-references: true + datasource: + druid: + db-type: com.alibaba.druid.pool.DruidDataSource + driverClassName: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:2306}/${DB_NAME:fujia_lms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false + # url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:wms_oulun}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false + username: ${DB_USER:root} + password: ${DB_PWD:P@ssw0rd} + # 初始连接数 + initial-size: 15 + # 最小连接数 + min-idle: 25 + # 最大连接数 + max-active: 40 + # 是否自动回收超时连接 + remove-abandoned: true + # 超时时间(以秒数为单位) + remove-abandoned-timeout: 180 + # 获取连接超时时间 + max-wait: 9000 + # 连接有效性检测时间 + time-between-eviction-runs-millis: 20000 + # 连接在池中最小生存的时间 + min-evictable-idle-time-millis: 300000 + # 连接在池中最大生存的时间 + max-evictable-idle-time-millis: 900000 + # 指明连接是否被空闲连接回收器(如果有)进行检验.如果检测失败,则连接将被从池中去除 + test-while-idle: true + # 指明是否在从池中取出连接前进行检验,如果检验失败, 则从池中去除连接并尝试取出另一个 + test-on-borrow: false + # 是否在归还到池中前进行检验 + test-on-return: false + # 检测连接是否有效 + validation-query: select 1 from dual + # 配置监控统计 + webStatFilter: + enabled: true + stat-view-servlet: + enabled: true + url-pattern: /druid/* + reset-enable: false + allow: 127.0.0.1 + filters: + DruidFilter,stat + log-abandoned: false + keep-alive: true + keep-alive-between-time-millis: 20000 + + redis: + #数据库索引 + database: ${REDIS_DB:1} + #host: ${REDIS_HOST:127.0.0.1} + host: ${REDIS_HOST:localhost} + port: ${REDIS_PORT:6380} + password: ${REDIS_PWD:} + #连接超时时间 + timeout: 5000 + redisson: + config: | + threads: 4 + nettyThreads: 4 + singleServerConfig: + connectionMinimumIdleSize: 8 + connectionPoolSize: 8 + address: redis://127.0.0.1:6379 + idleConnectionTimeout: 10000 + timeout: 3000 + +# 登录相关配置 +login: + # 登录缓存 + cache-enable: true + # 是否限制单用户登录 + single-login: false + # 验证码 + login-code: + # 验证码类型配置 查看 LoginProperties 类 + code-type: arithmetic + # 登录图形验证码有效时间/分钟 + expiration: 2 + # 验证码高度 + width: 111 + # 验证码宽度 + heigth: 36 + # 内容长度 + length: 2 + # 字体名称,为空则使用默认字体 + font-name: + # 字体大小 + font-size: 25 + +#jwt +jwt: + header: Authorization + # 令牌前缀 + token-start-with: Bearer + # 必须使用最少88位的Base64对该令牌进行编码 + base64-secret: ZmQ0ZGI5NjQ0MDQwY2I4MjMxY2Y3ZmI3MjdhN2ZmMjNhODViOTg1ZGE0NTBjMGM4NDA5NzYxMjdjOWMwYWRmZTBlZjlhNGY3ZTg4Y2U3YTE1ODVkZDU5Y2Y3OGYwZWE1NzUzNWQ2YjFjZDc0NGMxZWU2MmQ3MjY1NzJmNTE0MzI= + # 令牌过期时间 此处单位/毫秒 ,默认4小时,可在此网站生成 https://www.convertworld.com/zh-hans/time/milliseconds.html + token-validity-in-seconds: 14400000 + # 在线用户key + online-key: online-token- + # 验证码 + code-key: code-key- + # token 续期检查时间范围(默认30分钟,单位毫秒),在token即将过期的一段时间内用户操作了,则给用户的token续期 + detect: 1800000 + # 续期时间范围,默认1小时,单位毫秒 + renew: 3600000 + +sa-token: + # token 名称 (同时也是cookie名称) + token-name: Authorization + # token 有效期,单位s 默认30天, -1代表永不过期 + timeout: 2592000 + # token 临时有效期 (指定时间内无操作就视为token过期) 单位: 秒 + activity-timeout: -1 + # 是否允许同一账号并发登录 (为true时允许一起登录, 为false时新登录挤掉旧登录) + is-concurrent: true + # 在多人登录同一账号时,是否共用一个token (为true时所有登录共用一个token, 为false时每次登录新建一个token) + is-share: false + # token风格 + token-style: random-128 + # 是否输出操作日志 + is-log: false + jwt-secret-key: opsjajisdnnca0sdkksdfaaasdfwwq + # token 前缀 + token-prefix: + is-read-cookie: false + is-print: false +lucene: + index: + path: D:\lms\lucene\index diff --git a/nladmin-ui/.env.development b/nladmin-ui/.env.development index e37a9a4..412e652 100644 --- a/nladmin-ui/.env.development +++ b/nladmin-ui/.env.development @@ -1,8 +1,8 @@ ENV = 'development' # 接口地址 -VUE_APP_BASE_API = 'http://localhost:8011' -VUE_APP_WS_API = 'ws://localhost:8011' +VUE_APP_BASE_API = 'http://localhost:8012' +VUE_APP_WS_API = 'ws://localhost:8012' # 是否启用 babel-plugin-dynamic-import-node插件 VUE_CLI_BABEL_TRANSPILE_MODULES = true diff --git a/nladmin-ui/.env.production b/nladmin-ui/.env.production index fa1b85f..c795f72 100644 --- a/nladmin-ui/.env.production +++ b/nladmin-ui/.env.production @@ -2,6 +2,6 @@ ENV = 'production' # 如果使用 Nginx 代理后端接口,那么此处需要改为 '/',文件查看 Docker 部署篇,Nginx 配置 # 接口地址,注意协议,如果你没有配置 ssl,需要将 https 改为 http -VUE_APP_BASE_API = 'http://192.168.229.10:8011' +VUE_APP_BASE_API = 'http://172.19.10.72:8011' # 如果接口是 http 形式, wss 需要改为 ws -VUE_APP_WS_API = 'ws://192.168.229.10:8011' +VUE_APP_WS_API = 'ws://172.19.10.72:8011' diff --git a/nladmin-ui/public/config.js b/nladmin-ui/public/config.js index ce71425..a42521b 100644 --- a/nladmin-ui/public/config.js +++ b/nladmin-ui/public/config.js @@ -1,9 +1,9 @@ window.g = { dev: { - VUE_APP_BASE_API: 'http://127.0.0.1:8011' + VUE_APP_BASE_API: 'http://127.0.0.1:8012' }, prod: { - VUE_APP_BASE_API: 'http://127.0.0.1:8011' + VUE_APP_BASE_API: 'http://172.19.10.72:8011' } } diff --git a/nladmin-ui/src/views/wms/basedata/group/ViewDialog.vue b/nladmin-ui/src/views/wms/basedata/group/ViewDialog.vue index 145856d..4b9fe92 100644 --- a/nladmin-ui/src/views/wms/basedata/group/ViewDialog.vue +++ b/nladmin-ui/src/views/wms/basedata/group/ViewDialog.vue @@ -26,9 +26,9 @@ - + diff --git a/nladmin-ui/src/views/wms/basedata/group/index.vue b/nladmin-ui/src/views/wms/basedata/group/index.vue index 635d9d2..84443da 100644 --- a/nladmin-ui/src/views/wms/basedata/group/index.vue +++ b/nladmin-ui/src/views/wms/basedata/group/index.vue @@ -94,18 +94,16 @@ - + - - + + @@ -130,7 +130,21 @@ - + + + @@ -189,7 +203,9 @@ + @@ -255,7 +271,7 @@ export default { mixins: [presenter(), header(), form(defaultForm), crud()], tableEnums: ['md_pb_measureunit#unit_name#measure_unit_id'], // 数据字典 - dicts: ['is_used', 'GROUP_STATUS'], + dicts: ['is_used', 'GROUP_STATUS', 'EXT_TYPE'], cruds() { return CRUD({ title: '组盘记录', diff --git a/nladmin-ui/src/views/wms/st/inbill/AddDialog.vue b/nladmin-ui/src/views/wms/st/inbill/AddDialog.vue index be41b89..bad1ab2 100644 --- a/nladmin-ui/src/views/wms/st/inbill/AddDialog.vue +++ b/nladmin-ui/src/views/wms/st/inbill/AddDialog.vue @@ -137,7 +137,7 @@ - +