Browse Source

add:增加任务校验;

master
龚宝雄 4 weeks ago
parent
commit
97f90cfefe
  1. 2
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/impl/BsrealStorattrServiceImpl.java
  2. 2
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/enums/StatusEnum.java
  3. 5
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/ISchBaseTaskService.java
  4. 2
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/dao/mapper/SchBaseTaskMapper.xml
  5. 8
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/impl/SchBaseTaskServiceImpl.java
  6. 3
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/AutoTask.java
  7. 2
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/IOStorInvMapper.java
  8. 10
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/IOStorInvMapper.xml
  9. 17
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/OutBillServiceImpl.java
  10. 20
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/util/UpdateIvtUtils.java

2
nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/impl/BsrealStorattrServiceImpl.java

@ -169,7 +169,7 @@ public class BsrealStorattrServiceImpl extends ServiceImpl<BsrealStorattrMapper,
LambdaQueryWrapper<BsrealStorattr> queryWrapper = new LambdaQueryWrapper<>(BsrealStorattr.class) LambdaQueryWrapper<BsrealStorattr> queryWrapper = new LambdaQueryWrapper<>(BsrealStorattr.class)
.select(BsrealStorattr::getStor_id, BsrealStorattr::getStor_code, BsrealStorattr::getStor_name) .select(BsrealStorattr::getStor_id, BsrealStorattr::getStor_code, BsrealStorattr::getStor_name)
.eq(StrUtil.isNotEmpty(is_materialstore),BsrealStorattr::getIs_materialstore,is_materialstore) .eq(StrUtil.isNotEmpty(is_materialstore),BsrealStorattr::getIs_materialstore,is_materialstore)
.eq(StrUtil.isNotEmpty(is_virtualstore),BsrealStorattr::getIs_virtualstore,is_virtualstore) .ne(BsrealStorattr::getIs_virtualstore,"1")
.eq(StrUtil.isNotEmpty(is_semi_finished),BsrealStorattr::getIs_materialstore,is_semi_finished) .eq(StrUtil.isNotEmpty(is_semi_finished),BsrealStorattr::getIs_materialstore,is_semi_finished)
.eq(StrUtil.isNotEmpty(is_productstore),BsrealStorattr::getIs_materialstore,is_productstore) .eq(StrUtil.isNotEmpty(is_productstore),BsrealStorattr::getIs_materialstore,is_productstore)
.eq(StrUtil.isNotEmpty(is_attachment),BsrealStorattr::getIs_materialstore,is_attachment) .eq(StrUtil.isNotEmpty(is_attachment),BsrealStorattr::getIs_materialstore,is_attachment)

2
nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/enums/StatusEnum.java

@ -29,7 +29,7 @@ public enum StatusEnum {
*/ */
IOBILL_TYPE_IN(ForkMap.of("生产入库", "0001", "inStorageTask", "调拨入库", "0004", "inStorageTask", "退货入库", "0002", "inStorageTask", "拣选回库", IOBILL_TYPE_IN(ForkMap.of("生产入库", "0001", "inStorageTask", "调拨入库", "0004", "inStorageTask", "退货入库", "0002", "inStorageTask", "拣选回库",
"13", "inStorageTask", "盘点入库", "14", "inStorageTask", "托盘入库", "30", "inStorageTask", "返检入库", "0005", "inStorageTask", "报废入库", "0003", "inStorageTask", "inStorageTask", "手工入库", "0009", "inStorageTask")), "13", "inStorageTask", "盘点入库", "14", "inStorageTask", "托盘入库", "30", "inStorageTask", "返检入库", "0005", "inStorageTask", "报废入库", "0003", "inStorageTask", "inStorageTask", "手工入库", "0009", "inStorageTask")),
IOBILL_TYPE_OUT(ForkMap.of("销售出库", "20", "outStorageTask","发货出库", "1001", "outStorageTask", "生产出库", "21", "outStorageTask", "调拨出库", "1004", "outStorageTask", IOBILL_TYPE_OUT(ForkMap.of("销售出库", "20", "outStorageTask","发货出库", "1001", "outStorageTask", "生产出库", "1003", "outStorageTask", "手工出库", "1009", "outStorageTask", "领料出库", "23", "outStorageTask", "调拨出库", "1004", "outStorageTask",
"拣选出库", "23", "conveyorOutStorageTask", "盘点出库", "24", "outStorageTask", "出库拣选", "25", "toPickPlatformTask", "拣选出库", "23", "conveyorOutStorageTask", "盘点出库", "24", "outStorageTask", "出库拣选", "25", "toPickPlatformTask",
"退货出库", "26", "outStorageTask", "托盘出库", "40", "outStorageTask", "二楼CTU出库", "81", "outStorageTask", "返检出库", "退货出库", "26", "outStorageTask", "托盘出库", "40", "outStorageTask", "二楼CTU出库", "81", "outStorageTask", "返检出库",
"1006", "outStorageTask", "报废出库", "1002", "outStorageTask")), "1006", "outStorageTask", "报废出库", "1002", "outStorageTask")),

5
nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/ISchBaseTaskService.java

@ -71,6 +71,9 @@ public interface ISchBaseTaskService extends IService<SchBaseTask> {
*/ */
SchBaseTask getByCode(String taskCode); SchBaseTask getByCode(String taskCode);
/**
* 获取点位任务数量
*/
List<SchBaseTask> getTaskList(Set<String> pointCodes1, Set<String> pointCodes2, Set<String> pointCodes3, Set<String> pointCodes4);
} }

2
nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/dao/mapper/SchBaseTaskMapper.xml

@ -124,7 +124,7 @@
<foreach item="code" collection="pointCodes4" open="(" separator="," close=")"> #{code} </foreach> <foreach item="code" collection="pointCodes4" open="(" separator="," close=")"> #{code} </foreach>
</if> </if>
</trim> </trim>
AND (status <![CDATA[ < ]]> '80') AND (task_status <![CDATA[ < ]]> '5')
AND (is_delete = '0') AND (is_delete = '0')
</select> </select>
</mapper> </mapper>

8
nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/impl/SchBaseTaskServiceImpl.java

@ -167,7 +167,13 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
return this.getOne(lam); return this.getOne(lam);
} }
/**
* 获取点位任务数量
*/
@Override
public List<SchBaseTask> getTaskList(Set<String> pointCodes1, Set<String> pointCodes2, Set<String> pointCodes3, Set<String> pointCodes4) {
return baseMapper.getTaskList(pointCodes1, pointCodes2, pointCodes3, pointCodes4);
}
} }

3
nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/AutoTask.java

@ -3,17 +3,20 @@ package org.nl.wms.sch_manage.service.util;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.http.HttpStatus; import cn.hutool.http.HttpStatus;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows; import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.nl.config.SpringContextHolder;
import org.nl.wms.gateway.dto.RcsResponse; import org.nl.wms.gateway.dto.RcsResponse;
import org.nl.wms.gateway.service.IGateWayService; import org.nl.wms.gateway.service.IGateWayService;
import org.nl.wms.sch_manage.enums.TaskStatus; import org.nl.wms.sch_manage.enums.TaskStatus;
import org.nl.wms.sch_manage.service.ISchBaseTaskService; import org.nl.wms.sch_manage.service.ISchBaseTaskService;
import org.nl.wms.sch_manage.service.dao.SchBaseTask; import org.nl.wms.sch_manage.service.dao.SchBaseTask;
import org.nl.wms.sch_manage.service.util.tasks.StOutTask;
import org.nl.wms.warehouse_management.enums.IOSConstant; import org.nl.wms.warehouse_management.enums.IOSConstant;
import org.nl.wms.warehouse_management.service.util.UpdateIvtUtils; import org.nl.wms.warehouse_management.service.util.UpdateIvtUtils;
import org.redisson.api.RLock; import org.redisson.api.RLock;

2
nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/IOStorInvMapper.java

@ -25,6 +25,6 @@ public interface IOStorInvMapper extends BaseMapper<IOStorInv> {
List<IOStorInvDtlDto> getIODtl (@Param("params") Map whereJson); List<IOStorInvDtlDto> getIODtl (@Param("params") Map whereJson);
IPage<IOStorInv> queryOutBillPage (IPage<IOStorInv> page,@Param("params") Map whereJson); IPage<IOStorInv> queryOutBillPage (IPage<IOStorInv> page,@Param("params") Map whereJson,@Param("billTypeCollect") List<String> billTypeCollect);
} }

10
nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/IOStorInvMapper.xml

@ -146,12 +146,12 @@
AND AND
ios.bill_status IN #{params.billStatuses} ios.bill_status IN #{params.billStatuses}
</if> </if>
<if test="billTypeCollect != null and billTypeCollect != ''">
<if test="params.billTypes != null"> AND ios.bill_type IN
AND <foreach collection="billTypeCollect" item="code" separator="," open="(" close=")">
ios.bill_type IN #{params.billTypes} #{code}
</foreach>
</if> </if>
<if test="params.pcsn != null"> <if test="params.pcsn != null">
AND AND
dis.pcsn LIKE #{params.pcsn} dis.pcsn LIKE #{params.pcsn}

17
nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/OutBillServiceImpl.java

@ -157,20 +157,9 @@ public class OutBillServiceImpl extends ServiceImpl<IOStorInvMapper,IOStorInv> i
} }
map.put("billStatuses", billStatuses); map.put("billStatuses", billStatuses);
} }
List<String> billTypeCollect = ObjectUtil.isNotEmpty(bill_type)
if (ObjectUtil.isNotEmpty(bill_type)) { ? Arrays.stream(bill_type).collect(Collectors.toList()) : null;
String billTypes = "("; return ioStorInvMapper.queryOutBillPage(new Page<>(page.getPage()+1,page.getSize()),map,billTypeCollect);
for (int i = 0; i < bill_type.length; i++) {
if (i != bill_type.length - 1) {
billTypes += "'" + bill_type[i] + "',";
} else {
billTypes += "'" + bill_type[i] + "')";
}
}
map.put("billTypes", billTypes);
}
return ioStorInvMapper.queryOutBillPage(new Page<>(page.getPage()+1,page.getSize()),map);
} }
@Override @Override

20
nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/util/UpdateIvtUtils.java

@ -6,6 +6,7 @@ import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.apache.commons.collections4.CollectionUtils;
import org.nl.common.exception.BadRequestException; import org.nl.common.exception.BadRequestException;
import org.nl.common.utils.SecurityUtils; import org.nl.common.utils.SecurityUtils;
import org.nl.wms.basedata_manage.service.IMdPbStoragevehicleextService; import org.nl.wms.basedata_manage.service.IMdPbStoragevehicleextService;
@ -20,12 +21,13 @@ import org.nl.wms.warehouse_management.service.IMdPbGroupplateService;
import org.nl.wms.warehouse_management.service.dao.GroupPlate; import org.nl.wms.warehouse_management.service.dao.GroupPlate;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -104,15 +106,23 @@ public class UpdateIvtUtils {
/** /**
* 任务校验 * 任务起点或终点或载具编号有任务未完成校验
* *
* @param where 输入参数 * @param where 输入参数
*/ */
public void checkTask(JSONObject where) { public void checkTask(JSONObject where) {
List<SchBaseTask> list = iSchBaseTaskService.list(new QueryWrapper<SchBaseTask>().eq("vehicle_code", where.getString("vehicle_code")) List<SchBaseTask> list;
Set<String> pointIds = new HashSet<>();
pointIds.add(where.getString("point_code1"));
pointIds.add(where.getString("point_code2"));
list = iSchBaseTaskService.getTaskList(pointIds, pointIds, null, null);
if (CollectionUtils.isNotEmpty(list)) {
throw new BadRequestException("当前起点或终点存在任务,起点:" + where.getString("point_code1") + ",终点:" + where.getString("point_code2") + ",请在WMS任务列表中检查!");
}
list = iSchBaseTaskService.list(new QueryWrapper<SchBaseTask>().eq("vehicle_code", where.getString("vehicle_code"))
.lt("task_status", TaskStatus.FINISHED.getCode())); .lt("task_status", TaskStatus.FINISHED.getCode()));
if (!CollectionUtils.isEmpty(list)) { if (CollectionUtils.isNotEmpty(list)) {
throw new BadRequestException("当前载具存在任务:" + list.stream().map(SchBaseTask::getTask_code).collect(Collectors.joining(","))+",请在WMS任务列表中检查!"); throw new BadRequestException("当前载具存在任务:" + list.stream().map(SchBaseTask::getTask_code).collect(Collectors.joining(",")) + ",请在WMS任务列表中检查!");
} }
} }

Loading…
Cancel
Save