fix:缓存线异常处理功能
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
|
/*
|
||||||
|
|
||||||
package org.nl.wms.masterdata_manage.storage.controller.material;
|
package org.nl.wms.masterdata_manage.storage.controller.material;
|
||||||
|
|
||||||
@@ -7,8 +8,6 @@ import io.swagger.annotations.ApiOperation;
|
|||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.nl.common.anno.Log;
|
import org.nl.common.anno.Log;
|
||||||
import org.nl.wms.masterdata_manage.备份st.service.StructrelamaterialService;
|
|
||||||
import org.nl.wms.masterdata_manage.备份st.service.dto.StructrelamaterialDto;
|
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.http.HttpStatus;
|
import org.springframework.http.HttpStatus;
|
||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
@@ -17,10 +16,12 @@ import org.springframework.web.bind.annotation.*;
|
|||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
*/
|
||||||
/**
|
/**
|
||||||
* @author zhouz
|
* @author zhouz
|
||||||
* @date 2021-12-09
|
* @date 2021-12-09
|
||||||
**/
|
**//*
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Api(tags = "物料存放设置管理")
|
@Api(tags = "物料存放设置管理")
|
||||||
@@ -83,3 +84,4 @@ public class StructrelamaterialController {
|
|||||||
return new ResponseEntity<>(HttpStatus.OK);
|
return new ResponseEntity<>(HttpStatus.OK);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ import java.util.regex.Pattern;
|
|||||||
@RequestMapping("/api/cacheLineHand")
|
@RequestMapping("/api/cacheLineHand")
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@SaIgnore
|
@SaIgnore
|
||||||
public class CacheLineHandController{
|
public class CacheLineHandController {
|
||||||
private final CacheLineHandService cacheLineHandService;
|
private final CacheLineHandService cacheLineHandService;
|
||||||
|
|
||||||
@PostMapping("/queryMaterial")
|
@PostMapping("/queryMaterial")
|
||||||
@@ -70,20 +70,18 @@ public class CacheLineHandController{
|
|||||||
* 输入搜索条件校验,限制查询参数过短,模糊力度大
|
* 输入搜索条件校验,限制查询参数过短,模糊力度大
|
||||||
*/
|
*/
|
||||||
private void checkLength(String params) {
|
private void checkLength(String params) {
|
||||||
if(StringUtils.isNotBlank(params)) {
|
if (StringUtils.isNotBlank(params)) {
|
||||||
int length = params.getBytes().length;
|
int length = params.getBytes().length;
|
||||||
//限制查询参数过短,模糊力度大
|
//限制查询参数过短,模糊力度大
|
||||||
if(Pattern.compile("[0-9a-zA-Z]+").matcher(params).matches() || Pattern.compile("\\d+").matcher(params).matches()) {
|
if (Pattern.compile("[0-9a-zA-Z]+").matcher(params).matches() || Pattern.compile("\\d+").matcher(params).matches()) {
|
||||||
if(length < 5) {
|
if (length < 5) {
|
||||||
throw new BizCoreException("输入条件所查询的内容过多,请输入大于4个字的查询条件。");
|
throw new BizCoreException("输入条件所查询的内容过多,请输入大于4个字的查询条件。");
|
||||||
}
|
}
|
||||||
}
|
} else if (Pattern.compile("[\u4e00-\u9fa5]+").matcher(params).matches()) {
|
||||||
else if(Pattern.compile("[\u4e00-\u9fa5]+").matcher(params).matches()) {
|
if (length < 9) {
|
||||||
if(length < 9) {
|
|
||||||
throw new BizCoreException("输入条件所查询的内容过多,请输入大于3个字的查询条件。");
|
throw new BizCoreException("输入条件所查询的内容过多,请输入大于3个字的查询条件。");
|
||||||
}
|
}
|
||||||
}
|
} else if (length < 4) {
|
||||||
else if(length < 4) {
|
|
||||||
throw new BizCoreException("输入条件所查询的内容过多,请输入大于3个字的查询条件。");
|
throw new BizCoreException("输入条件所查询的内容过多,请输入大于3个字的查询条件。");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -124,9 +122,9 @@ public class CacheLineHandController{
|
|||||||
@PostMapping("/instPageQuery")
|
@PostMapping("/instPageQuery")
|
||||||
@Log("任务操作-查询")
|
@Log("任务操作-查询")
|
||||||
@ApiOperation("任务操作-查询")
|
@ApiOperation("任务操作-查询")
|
||||||
public ResponseEntity<Object> instPageQuery(@RequestBody Map<String,String> param, Pageable page) {
|
public ResponseEntity<Object> instPageQuery(@RequestBody Map<String, String> param, Pageable page) {
|
||||||
log.info("海亮缓存线手持服务 [任务操作-查询] 接口被请求, 请求参数-{}", param);
|
log.info("海亮缓存线手持服务 [任务操作-查询] 接口被请求, 请求参数-{}", param);
|
||||||
if(null == param) {
|
if (null == param) {
|
||||||
throw new BizCoreException(ResultCode.VALIDATE_FAILED);
|
throw new BizCoreException(ResultCode.VALIDATE_FAILED);
|
||||||
}
|
}
|
||||||
return new ResponseEntity<>(cacheLineHandService.instPageQuery(param, page), HttpStatus.OK);
|
return new ResponseEntity<>(cacheLineHandService.instPageQuery(param, page), HttpStatus.OK);
|
||||||
@@ -138,7 +136,7 @@ public class CacheLineHandController{
|
|||||||
public ResponseEntity<Object> instOperation(@RequestBody JSONObject param) {
|
public ResponseEntity<Object> instOperation(@RequestBody JSONObject param) {
|
||||||
log.info("海亮缓存线手持服务 [任务操作] 接口被请求, 请求参数-{}", param);
|
log.info("海亮缓存线手持服务 [任务操作] 接口被请求, 请求参数-{}", param);
|
||||||
//任务类型和任务ID校验,instruct_uuid为前端参数命名,本来应为task_id
|
//任务类型和任务ID校验,instruct_uuid为前端参数命名,本来应为task_id
|
||||||
if(StringUtils.isBlank(param.getString("instruct_uuid")) || StringUtils.isBlank(param.getString("opt_type"))) {
|
if (StringUtils.isBlank(param.getString("instruct_uuid")) || StringUtils.isBlank(param.getString("opt_type"))) {
|
||||||
throw new BizCoreException("ResultCode.VALIDATE_FAILED");
|
throw new BizCoreException("ResultCode.VALIDATE_FAILED");
|
||||||
}
|
}
|
||||||
return new ResponseEntity<>(cacheLineHandService.instOperation(param), HttpStatus.OK);
|
return new ResponseEntity<>(cacheLineHandService.instOperation(param), HttpStatus.OK);
|
||||||
@@ -150,10 +148,10 @@ public class CacheLineHandController{
|
|||||||
public ResponseEntity<JSONArray> cacheLineOutBoxExceptionQuery(@RequestBody JSONObject param) {
|
public ResponseEntity<JSONArray> cacheLineOutBoxExceptionQuery(@RequestBody JSONObject param) {
|
||||||
log.info("海亮缓存线手持服务 [缓存线出箱异常-查询] 接口被请求, 请求参数-{}", param);
|
log.info("海亮缓存线手持服务 [缓存线出箱异常-查询] 接口被请求, 请求参数-{}", param);
|
||||||
//参数校验
|
//参数校验
|
||||||
if(StringUtils.isBlank(param.getString("wcsdevice_code"))) {
|
if (StringUtils.isBlank(param.getString("wcsdevice_code"))) {
|
||||||
throw new BizCoreException("请选择缓存线并输入缓存线位置编号再查询");
|
throw new BizCoreException("请选择缓存线并输入缓存线位置编号再查询");
|
||||||
}
|
}
|
||||||
if(StringUtils.isBlank(param.getString("position_code"))) {
|
if (StringUtils.isBlank(param.getString("position_code"))) {
|
||||||
throw new BizCoreException("请输入缓存线位置编号再查询");
|
throw new BizCoreException("请输入缓存线位置编号再查询");
|
||||||
}
|
}
|
||||||
return new ResponseEntity<>(cacheLineHandService.cacheLineOutBoxExceptionQuery(param), HttpStatus.OK);
|
return new ResponseEntity<>(cacheLineHandService.cacheLineOutBoxExceptionQuery(param), HttpStatus.OK);
|
||||||
@@ -165,10 +163,10 @@ public class CacheLineHandController{
|
|||||||
public ResponseEntity<Object> cacheLineOutBoxExceptionConfirm(@RequestBody JSONObject param) {
|
public ResponseEntity<Object> cacheLineOutBoxExceptionConfirm(@RequestBody JSONObject param) {
|
||||||
log.info("海亮缓存线手持服务 [缓存线出箱异常-确认] 接口被请求, 请求参数-{}", param);
|
log.info("海亮缓存线手持服务 [缓存线出箱异常-确认] 接口被请求, 请求参数-{}", param);
|
||||||
//参数校验
|
//参数校验
|
||||||
if(StringUtils.isBlank(param.getString("vehicle_code"))) {
|
if (StringUtils.isBlank(param.getString("vehicle_code"))) {
|
||||||
throw new BizCoreException("请输入料箱码");
|
throw new BizCoreException("请输入料箱码");
|
||||||
}
|
}
|
||||||
if(StringUtils.isBlank(param.getString("wcsdevice_code")) || StringUtils.isBlank(param.getString("position_code"))) {
|
if (StringUtils.isBlank(param.getString("wcsdevice_code")) || StringUtils.isBlank(param.getString("position_code"))) {
|
||||||
throw new BizCoreException("请输入缓存线位置编号与缓存线编号");
|
throw new BizCoreException("请输入缓存线位置编号与缓存线编号");
|
||||||
}
|
}
|
||||||
return new ResponseEntity<>(cacheLineHandService.cacheLineOutBoxExceptionConfirm(param), HttpStatus.OK);
|
return new ResponseEntity<>(cacheLineHandService.cacheLineOutBoxExceptionConfirm(param), HttpStatus.OK);
|
||||||
@@ -177,10 +175,10 @@ public class CacheLineHandController{
|
|||||||
@PostMapping("/inOutExceptionInstQuery")
|
@PostMapping("/inOutExceptionInstQuery")
|
||||||
@Log("缓存线扫码异常-查询")
|
@Log("缓存线扫码异常-查询")
|
||||||
@ApiOperation("缓存线扫码异常-查询")
|
@ApiOperation("缓存线扫码异常-查询")
|
||||||
public ResponseEntity<JSONArray> inOutExceptionInstQuery(@RequestBody JSONObject param) {
|
public ResponseEntity<Object> inOutExceptionInstQuery(@RequestBody JSONObject param) {
|
||||||
log.info("海亮缓存线手持服务 [缓存线扫码异常-查询] 接口被·请求, 请求参数-{}", param);
|
log.info("海亮缓存线手持服务 [缓存线扫码异常-查询] 接口被·请求, 请求参数-{}", param);
|
||||||
//参数校验
|
//参数校验
|
||||||
if(StringUtils.isBlank(param.getString("wcsdevice_code"))) {
|
if (StringUtils.isBlank(param.getString("wcsdevice_code"))) {
|
||||||
throw new BizCoreException("请选择缓存线编号!");
|
throw new BizCoreException("请选择缓存线编号!");
|
||||||
}
|
}
|
||||||
return new ResponseEntity<>(cacheLineHandService.inOutExceptionInstQuery(param), HttpStatus.OK);
|
return new ResponseEntity<>(cacheLineHandService.inOutExceptionInstQuery(param), HttpStatus.OK);
|
||||||
@@ -192,7 +190,7 @@ public class CacheLineHandController{
|
|||||||
public ResponseEntity<Object> inOutExceptionInstConfirm(@RequestBody JSONObject param) {
|
public ResponseEntity<Object> inOutExceptionInstConfirm(@RequestBody JSONObject param) {
|
||||||
log.info("海亮缓存线手持服务 [扫码异常确认] 接口被请求, 请求参数-{}", param);
|
log.info("海亮缓存线手持服务 [扫码异常确认] 接口被请求, 请求参数-{}", param);
|
||||||
//参数校验
|
//参数校验
|
||||||
if(StringUtils.isBlank(param.getString("type")) || StringUtils.isBlank(param.getString("wcsdevice_code")) || StringUtils.isBlank(param.getString("vehicle_code"))) {
|
if (StringUtils.isBlank(param.getString("type")) || StringUtils.isBlank(param.getString("wcsdevice_code")) || StringUtils.isBlank(param.getString("vehicle_code"))) {
|
||||||
throw new BizCoreException("请确认缓存线,位置,料箱码是否都已选择或填入!");
|
throw new BizCoreException("请确认缓存线,位置,料箱码是否都已选择或填入!");
|
||||||
}
|
}
|
||||||
return new ResponseEntity<>(cacheLineHandService.inOutExceptionInstConfirm(param), HttpStatus.OK);
|
return new ResponseEntity<>(cacheLineHandService.inOutExceptionInstConfirm(param), HttpStatus.OK);
|
||||||
@@ -212,7 +210,7 @@ public class CacheLineHandController{
|
|||||||
public ResponseEntity<Object> inOutEmptyBox(@RequestBody JSONObject param) {
|
public ResponseEntity<Object> inOutEmptyBox(@RequestBody JSONObject param) {
|
||||||
log.info("海亮缓存线手持服务 [空箱初始化--出入空箱] 接口被请求, 请求参数-{}", param);
|
log.info("海亮缓存线手持服务 [空箱初始化--出入空箱] 接口被请求, 请求参数-{}", param);
|
||||||
//参数校验
|
//参数校验
|
||||||
if(StringUtils.isBlank(param.getString("inOut_type")) || StringUtils.isBlank(param.getString("wcsdevice_code")) || StringUtils.isBlank(param.getString("vehicle_code"))) {
|
if (StringUtils.isBlank(param.getString("inOut_type")) || StringUtils.isBlank(param.getString("wcsdevice_code")) || StringUtils.isBlank(param.getString("vehicle_code"))) {
|
||||||
throw new BizCoreException(ResultCode.VALIDATE_FAILED);
|
throw new BizCoreException(ResultCode.VALIDATE_FAILED);
|
||||||
}
|
}
|
||||||
return new ResponseEntity<>(cacheLineHandService.inOutEmptyBox(param), HttpStatus.OK);
|
return new ResponseEntity<>(cacheLineHandService.inOutEmptyBox(param), HttpStatus.OK);
|
||||||
@@ -291,7 +289,7 @@ public class CacheLineHandController{
|
|||||||
public ResponseEntity<Object> cacheLineExcepOpt(@RequestBody JSONObject param) {
|
public ResponseEntity<Object> cacheLineExcepOpt(@RequestBody JSONObject param) {
|
||||||
log.info("海亮缓存线手持服务 [缓存线异常处理] 接口被请求, 请求参数-{}", param);
|
log.info("海亮缓存线手持服务 [缓存线异常处理] 接口被请求, 请求参数-{}", param);
|
||||||
//参数校验
|
//参数校验
|
||||||
if(StringUtils.isBlank(param.getString("wcsdevice_code")) || StringUtils.isBlank(param.getString("opt_type"))) {
|
if (StringUtils.isBlank(param.getString("wcsdevice_code")) || StringUtils.isBlank(param.getString("opt_type"))) {
|
||||||
throw new BizCoreException(ResultCode.VALIDATE_FAILED);
|
throw new BizCoreException(ResultCode.VALIDATE_FAILED);
|
||||||
}
|
}
|
||||||
return new ResponseEntity<>(cacheLineHandService.cacheLineExcepOpt(param), HttpStatus.OK);
|
return new ResponseEntity<>(cacheLineHandService.cacheLineExcepOpt(param), HttpStatus.OK);
|
||||||
@@ -324,7 +322,7 @@ public class CacheLineHandController{
|
|||||||
@PostMapping("/getCacheLineMaterialInfo")
|
@PostMapping("/getCacheLineMaterialInfo")
|
||||||
@Log("缓存线物料信息盘点")
|
@Log("缓存线物料信息盘点")
|
||||||
@ApiOperation("缓存线物料信息盘点")
|
@ApiOperation("缓存线物料信息盘点")
|
||||||
public ResponseEntity<JSONArray> getCacheLineMaterialInfo(@RequestBody JSONObject param) {
|
public ResponseEntity<Object> getCacheLineMaterialInfo(@RequestBody JSONObject param) {
|
||||||
log.info("海亮缓存线手持服务 [缓存线盘点-缓存线物料信息盘点] 接口被请求, 请求参数-{}", param);
|
log.info("海亮缓存线手持服务 [缓存线盘点-缓存线物料信息盘点] 接口被请求, 请求参数-{}", param);
|
||||||
return new ResponseEntity<>(cacheLineHandService.getCacheLineMaterialInfo(param), HttpStatus.OK);
|
return new ResponseEntity<>(cacheLineHandService.getCacheLineMaterialInfo(param), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -134,7 +134,7 @@ public interface CacheLineHandService{
|
|||||||
* @author gbx
|
* @author gbx
|
||||||
* @date 2023/3/24
|
* @date 2023/3/24
|
||||||
*/
|
*/
|
||||||
JSONArray inOutExceptionInstQuery(JSONObject param);
|
List<Map> inOutExceptionInstQuery(JSONObject param);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 扫码异常确认
|
* 扫码异常确认
|
||||||
@@ -286,7 +286,7 @@ public interface CacheLineHandService{
|
|||||||
* @param param
|
* @param param
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
JSONArray getCacheLineMaterialInfo(JSONObject param);
|
List<Map> getCacheLineMaterialInfo(JSONObject param);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取生产区域下拉框
|
* 获取生产区域下拉框
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import cn.hutool.core.util.StrUtil;
|
|||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
@@ -25,6 +26,10 @@ import org.nl.modules.wql.util.WqlUtil;
|
|||||||
import org.nl.wms.ext.acs.service.WmsToAcsService;
|
import org.nl.wms.ext.acs.service.WmsToAcsService;
|
||||||
import org.nl.wms.pda_manage.pda.dto.MaterialDto;
|
import org.nl.wms.pda_manage.pda.dto.MaterialDto;
|
||||||
import org.nl.wms.pda_manage.pda.service.CacheLineHandService;
|
import org.nl.wms.pda_manage.pda.service.CacheLineHandService;
|
||||||
|
import org.nl.wms.product_manage.service.device.IPdmBiDeviceService;
|
||||||
|
import org.nl.wms.product_manage.service.device.dao.PdmBiDevice;
|
||||||
|
import org.nl.wms.scheduler_manage.service.cacheline.dao.mapper.SchCachelinePositionMapper;
|
||||||
|
import org.nl.wms.scheduler_manage.service.cacheline.dao.mapper.SchCachelineVehilematerialMapper;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.scheduling.annotation.Async;
|
import org.springframework.scheduling.annotation.Async;
|
||||||
@@ -39,7 +44,7 @@ import java.util.stream.Collectors;
|
|||||||
/**
|
/**
|
||||||
* CacheLineHandServiceImpl.java Description: 3中异常类型:
|
* CacheLineHandServiceImpl.java Description: 3中异常类型:
|
||||||
* 1、比如要N个空箱子或N个满料料箱。查询出来以后,一个码都无法扫描出来,这时候标记这些箱子为异常
|
* 1、比如要N个空箱子或N个满料料箱。查询出来以后,一个码都无法扫描出来,这时候标记这些箱子为异常
|
||||||
* 2、箱码扫描不出来,则用手持经过WMS中转传输给WCS,最后给电器。
|
* 2、箱码扫描不出来,则用手持经过WMS中转传输给WCS,最后给电气。
|
||||||
* 3、AGV搬运过程中异常(非AGVERR),查询条件为设备、起始点等未完成的时候(有可能不是异常)。
|
* 3、AGV搬运过程中异常(非AGVERR),查询条件为设备、起始点等未完成的时候(有可能不是异常)。
|
||||||
*
|
*
|
||||||
* @date 2023/3/22
|
* @date 2023/3/22
|
||||||
@@ -47,12 +52,18 @@ import java.util.stream.Collectors;
|
|||||||
@Service
|
@Service
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class CacheLineHandServiceImpl implements CacheLineHandService{
|
public class CacheLineHandServiceImpl implements CacheLineHandService {
|
||||||
private final RedisUtils redisUtils;
|
private final RedisUtils redisUtils;
|
||||||
@Autowired
|
@Autowired
|
||||||
private LocalCache cache;
|
private LocalCache cache;
|
||||||
@Autowired
|
@Autowired
|
||||||
private WmsToAcsService wmsToAcsService;
|
private WmsToAcsService wmsToAcsService;
|
||||||
|
@Autowired
|
||||||
|
private IPdmBiDeviceService deviceService;
|
||||||
|
@Autowired
|
||||||
|
private SchCachelineVehilematerialMapper vehilematerialMapper;
|
||||||
|
@Autowired
|
||||||
|
private SchCachelinePositionMapper positionMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public JSONArray dropdownListQuery(String param, String type) {
|
public JSONArray dropdownListQuery(String param, String type) {
|
||||||
@@ -75,19 +86,19 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
// stopWatch.start();
|
// stopWatch.start();
|
||||||
// stopWatch.stop();
|
// stopWatch.stop();
|
||||||
// System.out.println("缓存本地花费时间 totalTime = " + stopWatch.getTotalTimeMillis());
|
// System.out.println("缓存本地花费时间 totalTime = " + stopWatch.getTotalTimeMillis());
|
||||||
if(StringUtils.isBlank(param)) {
|
if (StringUtils.isBlank(param)) {
|
||||||
return WQL.getWO("PDA_QUERY").addParam("flag", "6").addParam("condition", param).process().getResultJSONArray(0).toJavaList(MaterialDto.class);
|
return WQL.getWO("PDA_QUERY").addParam("flag", "6").addParam("condition", param).process().getResultJSONArray(0).toJavaList(MaterialDto.class);
|
||||||
}
|
}
|
||||||
List<MaterialDto> materialList;
|
List<MaterialDto> materialList;
|
||||||
ThreadPoolExecutor pool = ThreadPoolExecutorUtil.getPoll();
|
ThreadPoolExecutor pool = ThreadPoolExecutorUtil.getPoll();
|
||||||
//12W种物料信息,查本地缓存
|
//12W种物料信息,查本地缓存
|
||||||
materialList = cache.get("hl:cacheLineHand:materialBase:mid");
|
materialList = cache.get("hl:cacheLineHand:materialBase:mid");
|
||||||
if(null != materialList) {
|
if (null != materialList) {
|
||||||
return getMaterialDto(materialList, param);
|
return getMaterialDto(materialList, param);
|
||||||
}
|
}
|
||||||
//2.查reids
|
//2.查reids
|
||||||
materialList = redisUtils.get("hl:cacheLineHand:materialBase:mid", MaterialDto.class);
|
materialList = redisUtils.get("hl:cacheLineHand:materialBase:mid", MaterialDto.class);
|
||||||
if(null != materialList) {
|
if (null != materialList) {
|
||||||
//设置本地缓存
|
//设置本地缓存
|
||||||
cache.setLocalCache("hl:cacheLineHand:materialBase:mid", materialList);
|
cache.setLocalCache("hl:cacheLineHand:materialBase:mid", materialList);
|
||||||
return getMaterialDto(materialList, param);
|
return getMaterialDto(materialList, param);
|
||||||
@@ -115,7 +126,7 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
*/
|
*/
|
||||||
@NotNull
|
@NotNull
|
||||||
private List<MaterialDto> getMaterialDto(List<MaterialDto> materialList, String param) {
|
private List<MaterialDto> getMaterialDto(List<MaterialDto> materialList, String param) {
|
||||||
if(StringUtils.isNotBlank(param)) {
|
if (StringUtils.isNotBlank(param)) {
|
||||||
//按条件搜索
|
//按条件搜索
|
||||||
materialList = materialList.stream().filter(m -> (m.getMaterial_name().contains(param)) || m.getMaterial_code().contains(param) || m.getMaterial_spec().contains(param) || m.getClass_name().contains(param)).collect(Collectors.toList());
|
materialList = materialList.stream().filter(m -> (m.getMaterial_name().contains(param)) || m.getMaterial_code().contains(param) || m.getMaterial_spec().contains(param) || m.getClass_name().contains(param)).collect(Collectors.toList());
|
||||||
return materialList;
|
return materialList;
|
||||||
@@ -147,8 +158,8 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
* 任务操作-查询
|
* 任务操作-查询
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public Map<String,Object> instPageQuery(Map<String,String> param, Pageable page) {
|
public Map<String, Object> instPageQuery(Map<String, String> param, Pageable page) {
|
||||||
HashMap<String,String> map = new HashMap<>();
|
HashMap<String, String> map = new HashMap<>();
|
||||||
map.put("flag", "10");
|
map.put("flag", "10");
|
||||||
Integer pageNumber = 0;
|
Integer pageNumber = 0;
|
||||||
Integer pageSize = 20;
|
Integer pageSize = 20;
|
||||||
@@ -156,60 +167,60 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
//任务状态
|
//任务状态
|
||||||
String task_status = whereJson.getString("status");
|
String task_status = whereJson.getString("status");
|
||||||
//任务名称
|
//任务名称
|
||||||
if(StrUtil.isNotEmpty(whereJson.getString("task_name"))) {
|
if (StrUtil.isNotEmpty(whereJson.getString("task_name"))) {
|
||||||
map.put("task_name", "%" + whereJson.getString("task_name") + "%");
|
map.put("task_name", "%" + whereJson.getString("task_name") + "%");
|
||||||
}
|
}
|
||||||
//生产区域
|
//生产区域
|
||||||
if(StrUtil.isNotEmpty(whereJson.getString("product_area"))) {
|
if (StrUtil.isNotEmpty(whereJson.getString("product_area"))) {
|
||||||
map.put("product_area", whereJson.getString("product_area"));
|
map.put("product_area", whereJson.getString("product_area"));
|
||||||
}
|
}
|
||||||
//任务类型
|
//任务类型
|
||||||
if(StrUtil.isNotEmpty(whereJson.getString("code"))) {
|
if (StrUtil.isNotEmpty(whereJson.getString("code"))) {
|
||||||
map.put("task_type", whereJson.getString("code"));
|
map.put("task_type", whereJson.getString("code"));
|
||||||
}
|
}
|
||||||
if(StrUtil.isNotEmpty(task_status)) {
|
if (StrUtil.isNotEmpty(task_status)) {
|
||||||
task_status = task_status.replace("[\"", "").replace("\"]", "").replace("\"", "");
|
task_status = task_status.replace("[\"", "").replace("\"]", "").replace("\"", "");
|
||||||
}
|
}
|
||||||
String moreTaskStatus = whereJson.getString("more_task_status");
|
String moreTaskStatus = whereJson.getString("more_task_status");
|
||||||
if(ObjectUtil.isNotEmpty(moreTaskStatus)) {
|
if (ObjectUtil.isNotEmpty(moreTaskStatus)) {
|
||||||
task_status = moreTaskStatus;
|
task_status = moreTaskStatus;
|
||||||
}
|
}
|
||||||
map.put("status", task_status);
|
map.put("status", task_status);
|
||||||
//处理状态为未完成
|
//处理状态为未完成
|
||||||
if(StrUtil.isNotEmpty(task_status) && task_status.contains("-1")) {
|
if (StrUtil.isNotEmpty(task_status) && task_status.contains("-1")) {
|
||||||
map.put("unFinish", "-1");
|
map.put("unFinish", "-1");
|
||||||
map.put("status", task_status.replace("-1", ""));
|
map.put("status", task_status.replace("-1", ""));
|
||||||
}
|
}
|
||||||
//任务编号
|
//任务编号
|
||||||
if(StrUtil.isNotEmpty(whereJson.getString("inst_num"))) {
|
if (StrUtil.isNotEmpty(whereJson.getString("inst_num"))) {
|
||||||
map.put("inst_num", "%" + whereJson.getString("inst_num") + "%");
|
map.put("inst_num", "%" + whereJson.getString("inst_num") + "%");
|
||||||
}
|
}
|
||||||
//起点
|
//起点
|
||||||
if(StrUtil.isNotEmpty(whereJson.getString("start_point"))) {
|
if (StrUtil.isNotEmpty(whereJson.getString("start_point"))) {
|
||||||
map.put("start_point", "%" + whereJson.getString("start_point") + "%");
|
map.put("start_point", "%" + whereJson.getString("start_point") + "%");
|
||||||
}
|
}
|
||||||
//终点
|
//终点
|
||||||
if(StrUtil.isNotEmpty(whereJson.getString("end_point"))) {
|
if (StrUtil.isNotEmpty(whereJson.getString("end_point"))) {
|
||||||
map.put("end_point", "%" + whereJson.getString("end_point") + "%");
|
map.put("end_point", "%" + whereJson.getString("end_point") + "%");
|
||||||
}
|
}
|
||||||
//载具编码
|
//载具编码
|
||||||
if(StrUtil.isNotEmpty(whereJson.getString("vehicle_code"))) {
|
if (StrUtil.isNotEmpty(whereJson.getString("vehicle_code"))) {
|
||||||
map.put("vehicle_code", "%" + whereJson.getString("vehicle_code") + "%");
|
map.put("vehicle_code", "%" + whereJson.getString("vehicle_code") + "%");
|
||||||
}
|
}
|
||||||
//开始时间
|
//开始时间
|
||||||
if(StrUtil.isNotEmpty(whereJson.getString("start_date"))) {
|
if (StrUtil.isNotEmpty(whereJson.getString("start_date"))) {
|
||||||
map.put("start_date", whereJson.getString("start_date"));
|
map.put("start_date", whereJson.getString("start_date"));
|
||||||
}
|
}
|
||||||
//结束时间
|
//结束时间
|
||||||
if(StrUtil.isNotEmpty(whereJson.getString("end_date"))) {
|
if (StrUtil.isNotEmpty(whereJson.getString("end_date"))) {
|
||||||
map.put("end_date", whereJson.getString("end_date"));
|
map.put("end_date", whereJson.getString("end_date"));
|
||||||
}
|
}
|
||||||
//分页参数
|
//分页参数
|
||||||
if(StrUtil.isNotEmpty(whereJson.getString("page")) && StrUtil.isNotEmpty(whereJson.getString("size"))) {
|
if (StrUtil.isNotEmpty(whereJson.getString("page")) && StrUtil.isNotEmpty(whereJson.getString("size"))) {
|
||||||
pageNumber = whereJson.getInteger("page");
|
pageNumber = whereJson.getInteger("page");
|
||||||
pageSize = whereJson.getInteger("size");
|
pageSize = whereJson.getInteger("size");
|
||||||
//平板暂时无分页
|
//平板暂时无分页
|
||||||
if(pageNumber == 1) {
|
if (pageNumber == 1) {
|
||||||
pageNumber = 0;
|
pageNumber = 0;
|
||||||
pageSize = 100;
|
pageSize = 100;
|
||||||
}
|
}
|
||||||
@@ -226,28 +237,27 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
* 任务操作-取消,完成,重发
|
* 任务操作-取消,完成,重发
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public CommonResult<Map<String,Object>> instOperation(JSONObject param) {
|
public CommonResult<Map<String, Object>> instOperation(JSONObject param) {
|
||||||
String optType = param.getString("opt_type");
|
String optType = param.getString("opt_type");
|
||||||
String instruct_uuid = param.getString("instruct_uuid");
|
String instruct_uuid = param.getString("instruct_uuid");
|
||||||
WQLObject taskTab = WQLObject.getWQLObject("sch_base_task");
|
WQLObject taskTab = WQLObject.getWQLObject("sch_base_task");
|
||||||
JSONObject taskObject = taskTab.query("task_id =" + instruct_uuid).uniqueResult(0);
|
JSONObject taskObject = taskTab.query("task_id =" + instruct_uuid).uniqueResult(0);
|
||||||
if(null == taskObject) {
|
if (null == taskObject) {
|
||||||
throw new BadRequestException("未找到该任务信息!");
|
throw new BadRequestException("未找到该任务信息!");
|
||||||
}
|
}
|
||||||
//8-取消、7-完成、5-任务下发,根据操作类型执行相关操作
|
//8-取消、7-完成、5-任务下发,根据操作类型执行相关操作
|
||||||
if(StatusEnum.TASK_CANNEL.getCode().equals(optType) || StatusEnum.TASK_FINISH.getCode().equals(optType)) {
|
if (StatusEnum.TASK_CANNEL.getCode().equals(optType) || StatusEnum.TASK_FINISH.getCode().equals(optType)) {
|
||||||
//无取消这个状态了,取消和完成操作对应状态都是完成
|
//无取消这个状态了,取消和完成操作对应状态都是完成
|
||||||
optType = StatusEnum.TASK_FINISH.getCode();
|
optType = StatusEnum.TASK_FINISH.getCode();
|
||||||
String finalOptType = optType;
|
String finalOptType = optType;
|
||||||
return RestBusinessTemplate.execute(() -> updateTaskStatus(taskObject, finalOptType));
|
return RestBusinessTemplate.execute(() -> updateTaskStatus(taskObject, finalOptType));
|
||||||
}
|
}
|
||||||
//任务下发
|
//任务下发
|
||||||
else if(StatusEnum.TASK_PUBLISH.getCode().equals(optType)) {
|
else if (StatusEnum.TASK_PUBLISH.getCode().equals(optType)) {
|
||||||
JSONArray jsonArray = new JSONArray();
|
JSONArray jsonArray = new JSONArray();
|
||||||
jsonArray.add(taskObject);
|
jsonArray.add(taskObject);
|
||||||
return RestBusinessTemplate.execute(() -> wmsToAcsService.issueTaskToAcs(jsonArray));
|
return RestBusinessTemplate.execute(() -> wmsToAcsService.issueTaskToAcs(jsonArray));
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -258,7 +268,7 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
public JSONObject updateTaskStatus(JSONObject taskObj, String status) {
|
public JSONObject updateTaskStatus(JSONObject taskObj, String status) {
|
||||||
String currentUserId = SecurityUtils.getCurrentUserId();
|
String currentUserId = SecurityUtils.getCurrentUserId();
|
||||||
String nickName = SecurityUtils.getCurrentNickName();
|
String nickName = SecurityUtils.getCurrentNickName();
|
||||||
HashMap<String,String> map = new HashMap<>(4);
|
HashMap<String, String> map = new HashMap<>(4);
|
||||||
map.put("task_status", status);
|
map.put("task_status", status);
|
||||||
map.put("update_optid", currentUserId);
|
map.put("update_optid", currentUserId);
|
||||||
map.put("update_optname", nickName);
|
map.put("update_optname", nickName);
|
||||||
@@ -275,14 +285,14 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
@Async
|
@Async
|
||||||
public void cacheLineMaterSync(
|
public void cacheLineMaterSync(
|
||||||
String cachelineCode) {
|
String cachelineCode) {
|
||||||
if(StringUtils.isBlank(cachelineCode)) {
|
if (StringUtils.isBlank(cachelineCode)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
RedissonUtils.lock(() -> {
|
RedissonUtils.lock(() -> {
|
||||||
WQLObject positionTab = WQLObject.getWQLObject("sch_cacheline_position");
|
WQLObject positionTab = WQLObject.getWQLObject("sch_cacheline_position");
|
||||||
WQLObject ivtTab = WQLObject.getWQLObject("sch_cacheline_vehilematerial");
|
WQLObject ivtTab = WQLObject.getWQLObject("sch_cacheline_vehilematerial");
|
||||||
JSONArray positionArr = positionTab.query("cacheline_code = '" + cachelineCode + "'").getResultJSONArray(0);
|
JSONArray positionArr = positionTab.query("cacheline_code = '" + cachelineCode + "'").getResultJSONArray(0);
|
||||||
if(positionArr.size() == 0) {
|
if (positionArr.size() == 0) {
|
||||||
log.warn("CacheLineHandServiceImpl#cacheLineMaterSync");
|
log.warn("CacheLineHandServiceImpl#cacheLineMaterSync");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -292,12 +302,12 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
Set<String> relationVehiles = ivtArr.stream().map(a -> ((JSONObject) a).getString("vehicle_code")).collect(Collectors.toSet());
|
Set<String> relationVehiles = ivtArr.stream().map(a -> ((JSONObject) a).getString("vehicle_code")).collect(Collectors.toSet());
|
||||||
Collection<String> cacheLineVehilesSub = CollectionUtils.subtract(cacheLineVehiles, relationVehiles);
|
Collection<String> cacheLineVehilesSub = CollectionUtils.subtract(cacheLineVehiles, relationVehiles);
|
||||||
Collection<String> relationVehilesSub = CollectionUtils.subtract(relationVehiles, cacheLineVehiles);
|
Collection<String> relationVehilesSub = CollectionUtils.subtract(relationVehiles, cacheLineVehiles);
|
||||||
if(!CollectionUtils.isEmpty(relationVehilesSub)) {
|
if (!CollectionUtils.isEmpty(relationVehilesSub)) {
|
||||||
String sql = String.join("','", relationVehilesSub);
|
String sql = String.join("','", relationVehilesSub);
|
||||||
ivtTab.delete("cacheline_code = '" + cachelineCode + "' and vehicle_code in ('" + sql + "')");
|
ivtTab.delete("cacheline_code = '" + cachelineCode + "' and vehicle_code in ('" + sql + "')");
|
||||||
}
|
}
|
||||||
if(!CollectionUtils.isEmpty(cacheLineVehilesSub)) {
|
if (!CollectionUtils.isEmpty(cacheLineVehilesSub)) {
|
||||||
for(String vehileCode : cacheLineVehilesSub) {
|
for (String vehileCode : cacheLineVehilesSub) {
|
||||||
ivtTab.insert(MapOf.of("create_time", DateUtil.now(), "vehmaterial_id", IdUtil.getStringId(), "vehicle_code", vehileCode, "vehicle_status", StatusEnum.CACHE_VEL_ERR.getCode(), "cacheline_code", cachelineCode, "err_type", StatusEnum.STATUS_TRUE.getCode()));
|
ivtTab.insert(MapOf.of("create_time", DateUtil.now(), "vehmaterial_id", IdUtil.getStringId(), "vehicle_code", vehileCode, "vehicle_status", StatusEnum.CACHE_VEL_ERR.getCode(), "cacheline_code", cachelineCode, "err_type", StatusEnum.STATUS_TRUE.getCode()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -314,7 +324,7 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
JSONArray arr = positionTab.query("cacheLine_code like '%" + param.getString("cacheLine_code") + "%'", "layer_num desc,order_no").getResultJSONArray(0);
|
JSONArray arr = positionTab.query("cacheLine_code like '%" + param.getString("cacheLine_code") + "%'", "layer_num desc,order_no").getResultJSONArray(0);
|
||||||
// 获取缓存线物料库存信息
|
// 获取缓存线物料库存信息
|
||||||
WQLObject ivtTab = WQLObject.getWQLObject("sch_cacheline_vehilematerial");
|
WQLObject ivtTab = WQLObject.getWQLObject("sch_cacheline_vehilematerial");
|
||||||
for(int i = 0; i < arr.size(); i++) {
|
for (int i = 0; i < arr.size(); i++) {
|
||||||
JSONObject json = arr.getJSONObject(i);
|
JSONObject json = arr.getJSONObject(i);
|
||||||
//料箱展示顺序号
|
//料箱展示顺序号
|
||||||
json.put("seat_order_num", json.getString("order_no"));
|
json.put("seat_order_num", json.getString("order_no"));
|
||||||
@@ -322,25 +332,23 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
json.put("weight", "0");
|
json.put("weight", "0");
|
||||||
json.put("quantity", "0");
|
json.put("quantity", "0");
|
||||||
//不展示
|
//不展示
|
||||||
if(StatusEnum.CACHE_VEL_DIS.getCode().equals(json.getString("is_show"))) {
|
if (StatusEnum.CACHE_VEL_DIS.getCode().equals(json.getString("is_show"))) {
|
||||||
json.put("vehicle_status", StatusEnum.CACHE_VEL_DIS.getCode());
|
json.put("vehicle_status", StatusEnum.CACHE_VEL_DIS.getCode());
|
||||||
}
|
}
|
||||||
//展示
|
//展示
|
||||||
else{
|
else {
|
||||||
//是否空位
|
//是否空位
|
||||||
if(StatusEnum.CACHE_VEL_NULL.getCode().equals(json.getString("is_empty"))) {
|
if (StatusEnum.CACHE_VEL_NULL.getCode().equals(json.getString("is_empty"))) {
|
||||||
json.put("vehicle_status", StatusEnum.STATUS_FLASE.getCode());
|
json.put("vehicle_status", StatusEnum.STATUS_FLASE.getCode());
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
// 载具不是空位
|
// 载具不是空位
|
||||||
String vehicle_code = json.getString("vehicle_code");
|
String vehicle_code = json.getString("vehicle_code");
|
||||||
//从缓存线物料库存中 根据缓存线编码和载具编码获取绑定信息
|
//从缓存线物料库存中 根据缓存线编码和载具编码获取绑定信息
|
||||||
JSONObject ivtObj = ivtTab.query("vehicle_code = '" + vehicle_code + "' and cacheLine_code like '%" + param.getString("wcsdevice_code") + "%'").uniqueResult(0);
|
JSONObject ivtObj = ivtTab.query("vehicle_code = '" + vehicle_code + "' and cacheLine_code like '%" + param.getString("wcsdevice_code") + "%'").uniqueResult(0);
|
||||||
if(ivtObj == null) {
|
if (ivtObj == null) {
|
||||||
//标记为红色异常
|
//标记为红色异常
|
||||||
json.put("vehicle_status", StatusEnum.CACHE_VEL_ERR.getCode());
|
json.put("vehicle_status", StatusEnum.CACHE_VEL_ERR.getCode());
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
json.put("vehicle_status", ivtObj.getString("vehicle_status"));
|
json.put("vehicle_status", ivtObj.getString("vehicle_status"));
|
||||||
json.put("weight", ivtObj.getString("weight"));
|
json.put("weight", ivtObj.getString("weight"));
|
||||||
json.put("quantity", ivtObj.getString("quantity"));
|
json.put("quantity", ivtObj.getString("quantity"));
|
||||||
@@ -376,14 +384,14 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
String cacheLine_code = param.getString("wcsdevice_code");
|
String cacheLine_code = param.getString("wcsdevice_code");
|
||||||
String weight = param.getString("weight");
|
String weight = param.getString("weight");
|
||||||
String quantity = param.getString("quantity");
|
String quantity = param.getString("quantity");
|
||||||
if(StringUtils.isBlank(quantity) || param.getInteger("quantity") <= 0) {
|
if (StringUtils.isBlank(quantity) || param.getInteger("quantity") <= 0) {
|
||||||
throw new BadRequestException("数量必须大于0!");
|
throw new BadRequestException("数量必须大于0!");
|
||||||
}
|
}
|
||||||
//缓存线位置表
|
//缓存线位置表
|
||||||
WQLObject positionTab = WQLObject.getWQLObject("sch_cacheline_position");
|
WQLObject positionTab = WQLObject.getWQLObject("sch_cacheline_position");
|
||||||
// 缓存线位置
|
// 缓存线位置
|
||||||
JSONObject vehiobj = positionTab.query("position_code = '" + position_code + "'").uniqueResult(0);
|
JSONObject vehiobj = positionTab.query("position_code = '" + position_code + "'").uniqueResult(0);
|
||||||
if(vehiobj == null) {
|
if (vehiobj == null) {
|
||||||
throw new BadRequestException("位置不存在,设置有误!");
|
throw new BadRequestException("位置不存在,设置有误!");
|
||||||
}
|
}
|
||||||
//工序表
|
//工序表
|
||||||
@@ -396,7 +404,7 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
// throw new BadRequestException("工序查询错误,请检查工序");
|
// throw new BadRequestException("工序查询错误,请检查工序");
|
||||||
// }
|
// }
|
||||||
JSONObject meObj = meTab.query("material_id = '" + semimanufactures_uuid + "'").uniqueResult(0);
|
JSONObject meObj = meTab.query("material_id = '" + semimanufactures_uuid + "'").uniqueResult(0);
|
||||||
if(ObjectUtil.isEmpty(meObj)) {
|
if (ObjectUtil.isEmpty(meObj)) {
|
||||||
throw new BadRequestException("物料查询错误,请检查物料");
|
throw new BadRequestException("物料查询错误,请检查物料");
|
||||||
}
|
}
|
||||||
vehiobj.put("vehicle_code", vehicle_code);
|
vehiobj.put("vehicle_code", vehicle_code);
|
||||||
@@ -407,7 +415,7 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
//3.先删除料箱的所有关联信息,包括物料,工序,生产区域
|
//3.先删除料箱的所有关联信息,包括物料,工序,生产区域
|
||||||
ivtTab.delete("vehicle_code = '" + vehicle_code + "'");
|
ivtTab.delete("vehicle_code = '" + vehicle_code + "'");
|
||||||
// 物料信息
|
// 物料信息
|
||||||
HashMap<String,String> json = new HashMap<>();
|
HashMap<String, String> json = new HashMap<>();
|
||||||
json.put("vehmaterial_id", IdUtil.getStringId());
|
json.put("vehmaterial_id", IdUtil.getStringId());
|
||||||
json.put("vehicle_code", vehicle_code);
|
json.put("vehicle_code", vehicle_code);
|
||||||
json.put("cacheLine_code", cacheLine_code);
|
json.put("cacheLine_code", cacheLine_code);
|
||||||
@@ -437,7 +445,7 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
// 缓存线位置表
|
// 缓存线位置表
|
||||||
WQLObject positionTab = WQLObject.getWQLObject("sch_cacheline_position");
|
WQLObject positionTab = WQLObject.getWQLObject("sch_cacheline_position");
|
||||||
JSONObject vehiobj = positionTab.query("position_code = '" + position_code + "'").uniqueResult(0);
|
JSONObject vehiobj = positionTab.query("position_code = '" + position_code + "'").uniqueResult(0);
|
||||||
if(vehiobj == null) {
|
if (vehiobj == null) {
|
||||||
throw new BadRequestException("位置不存在,设置有误!");
|
throw new BadRequestException("位置不存在,设置有误!");
|
||||||
}
|
}
|
||||||
//1.缓存线位置通过扫码绑定料箱条码
|
//1.缓存线位置通过扫码绑定料箱条码
|
||||||
@@ -497,15 +505,15 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
//缓存线载具物料表
|
//缓存线载具物料表
|
||||||
WQLObject vehMaterTab = WQLObject.getWQLObject("sch_cacheline_vehilematerial");
|
WQLObject vehMaterTab = WQLObject.getWQLObject("sch_cacheline_vehilematerial");
|
||||||
// 入空箱
|
// 入空箱
|
||||||
if(StatusEnum.IN_VEHICLE.getCode().equals(inOut_type)) {
|
if (StatusEnum.IN_VEHICLE.getCode().equals(inOut_type)) {
|
||||||
// 1.判断是否可以放入空箱子
|
// 1.判断是否可以放入空箱子
|
||||||
JSONObject ivtObj = positionTab.query("vehicle_code = '" + vehicle_code + "'").uniqueResult(0);
|
JSONObject ivtObj = positionTab.query("vehicle_code = '" + vehicle_code + "'").uniqueResult(0);
|
||||||
if(ivtObj != null) {
|
if (ivtObj != null) {
|
||||||
throw new BadRequestException("箱子【" + vehicle_code + "】已在库内,无法入空箱!");
|
throw new BadRequestException("箱子【" + vehicle_code + "】已在库内,无法入空箱!");
|
||||||
}
|
}
|
||||||
// 3.判断是否可以放入空箱子
|
// 3.判断是否可以放入空箱子
|
||||||
JSONObject json = positionTab.query("cacheLine_code = '" + cacheLine_code + "' and position_code = '" + position_code + "' and is_empty= '1'").uniqueResult(0);
|
JSONObject json = positionTab.query("cacheLine_code = '" + cacheLine_code + "' and position_code = '" + position_code + "' and is_empty= '1'").uniqueResult(0);
|
||||||
if(json == null) {
|
if (json == null) {
|
||||||
throw new BadRequestException("无法找到缓存线【" + position_code + "】的空位,无法入空箱!");
|
throw new BadRequestException("无法找到缓存线【" + position_code + "】的空位,无法入空箱!");
|
||||||
}
|
}
|
||||||
// 3.入空箱子
|
// 3.入空箱子
|
||||||
@@ -519,10 +527,10 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
result = vehMaterTab.insert(afterIvt).getSucess();
|
result = vehMaterTab.insert(afterIvt).getSucess();
|
||||||
}
|
}
|
||||||
// 出空箱
|
// 出空箱
|
||||||
if(StatusEnum.OUT_VEHICLE.getCode().equals(inOut_type)) {
|
if (StatusEnum.OUT_VEHICLE.getCode().equals(inOut_type)) {
|
||||||
// 缓存线载具物料表
|
// 缓存线载具物料表
|
||||||
JSONObject json = vehMaterTab.query("cacheLine_code = '" + cacheLine_code + "'and vehicle_code = '" + vehicle_code + "' and vehicle_status= '1'").uniqueResult(0);
|
JSONObject json = vehMaterTab.query("cacheLine_code = '" + cacheLine_code + "'and vehicle_code = '" + vehicle_code + "' and vehicle_status= '1'").uniqueResult(0);
|
||||||
if(json == null) {
|
if (json == null) {
|
||||||
throw new BadRequestException("无法找到缓存线【" + cacheLine_code + "】的空箱【" + vehicle_code + "】,出空箱失败");
|
throw new BadRequestException("无法找到缓存线【" + cacheLine_code + "】的空箱【" + vehicle_code + "】,出空箱失败");
|
||||||
}
|
}
|
||||||
// 删除掉出库的箱子及关联物料
|
// 删除掉出库的箱子及关联物料
|
||||||
@@ -544,16 +552,16 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
//根据缓存线编码和缓存线点位查找任务ID
|
//根据缓存线编码和缓存线点位查找任务ID
|
||||||
JSONObject posiObj = WQLObject.getWQLObject("sch_cacheline_position").query("cacheLine_code = '" + wcsdevice_code + "' and position_code = '" + position_code + "'").uniqueResult(0);
|
JSONObject posiObj = WQLObject.getWQLObject("sch_cacheline_position").query("cacheLine_code = '" + wcsdevice_code + "' and position_code = '" + position_code + "'").uniqueResult(0);
|
||||||
//查不到点位信息
|
//查不到点位信息
|
||||||
if(null == posiObj) {
|
if (null == posiObj) {
|
||||||
throw new BadRequestException("未找到该缓存线的点位信息!");
|
throw new BadRequestException("未找到该缓存线的点位信息!");
|
||||||
}
|
}
|
||||||
//查不到任务信息
|
//查不到任务信息
|
||||||
if(StringUtils.isBlank(posiObj.getString("task_code"))) {
|
if (StringUtils.isBlank(posiObj.getString("task_code"))) {
|
||||||
throw new BadRequestException("未找到该缓存线的点位的任务信息!");
|
throw new BadRequestException("未找到该缓存线的点位的任务信息!");
|
||||||
}
|
}
|
||||||
JSONArray jsonArray = WQL.getWO("PDA_QUERY").addParam("flag", "10").addParam("task_code", posiObj.getString("task_code")).process().getResultJSONArray(0);
|
JSONArray jsonArray = WQL.getWO("PDA_QUERY").addParam("flag", "10").addParam("task_code", posiObj.getString("task_code")).process().getResultJSONArray(0);
|
||||||
//缓存线编码
|
//缓存线编码
|
||||||
for(int i = 0; i < jsonArray.size(); i++) {
|
for (int i = 0; i < jsonArray.size(); i++) {
|
||||||
JSONObject row = jsonArray.getJSONObject(i);
|
JSONObject row = jsonArray.getJSONObject(i);
|
||||||
row.put("wcsdevice_code", wcsdevice_code);
|
row.put("wcsdevice_code", wcsdevice_code);
|
||||||
}
|
}
|
||||||
@@ -587,29 +595,29 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
//3.删除入料箱之前的所有关联信息,包括物料,工序,生产区域
|
//3.删除入料箱之前的所有关联信息,包括物料,工序,生产区域
|
||||||
ivtTab.delete("vehicle_code = '" + vehicle_code + "'");
|
ivtTab.delete("vehicle_code = '" + vehicle_code + "'");
|
||||||
//4.初始化料箱
|
//4.初始化料箱
|
||||||
HashMap<String,String> json = new HashMap<>();
|
HashMap<String, String> json = new HashMap<>();
|
||||||
json.put("vehicle_code", vehicle_code);
|
json.put("vehicle_code", vehicle_code);
|
||||||
json.put("cacheLine_code", cacheLine_code);
|
json.put("cacheLine_code", cacheLine_code);
|
||||||
json.put("vehmaterial_id", IdUtil.getStringId());
|
json.put("vehmaterial_id", IdUtil.getStringId());
|
||||||
json.put("create_time", DateUtil.now());
|
json.put("create_time", DateUtil.now());
|
||||||
// 出空箱入满箱扫码异常
|
// 出空箱入满箱扫码异常
|
||||||
if(StatusEnum.OUT_VEHICLE.getCode().equals(inOut_type)) {
|
if (StatusEnum.OUT_VEHICLE.getCode().equals(inOut_type)) {
|
||||||
//5.通过缓存线位置表当前执行任务id,获取任务信息中的物料信息
|
//5.通过缓存线位置表当前执行任务id,获取任务信息中的物料信息
|
||||||
JSONObject positionInfo = positionTab.query("vehicle_code = '" + vehicle_code + "'").uniqueResult(0);
|
JSONObject positionInfo = positionTab.query("vehicle_code = '" + vehicle_code + "'").uniqueResult(0);
|
||||||
//查不到点位信息
|
//查不到点位信息
|
||||||
if(null == positionInfo) {
|
if (null == positionInfo) {
|
||||||
throw new BadRequestException("未找到该缓存线的点位信息!");
|
throw new BadRequestException("未找到该缓存线的点位信息!");
|
||||||
}
|
}
|
||||||
//获取当前任务信息
|
//获取当前任务信息
|
||||||
JSONObject instructObj = WQLObject.getWQLObject("sch_base_task").query("task_code = '" + positionInfo.getString("task_code") + "'").uniqueResult(0);
|
JSONObject instructObj = WQLObject.getWQLObject("sch_base_task").query("task_code = '" + positionInfo.getString("task_code") + "'").uniqueResult(0);
|
||||||
//查不到点位信息
|
//查不到点位信息
|
||||||
if(null == instructObj) {
|
if (null == instructObj) {
|
||||||
throw new BadRequestException("未找到该任务信息!");
|
throw new BadRequestException("未找到该任务信息!");
|
||||||
}
|
}
|
||||||
//获取物料信息
|
//获取物料信息
|
||||||
JSONObject meObj = WQLObject.getWQLObject("md_me_materialbase").query("material_id = '" + instructObj.get("material_id") + "'").uniqueResult(0);
|
JSONObject meObj = WQLObject.getWQLObject("md_me_materialbase").query("material_id = '" + instructObj.get("material_id") + "'").uniqueResult(0);
|
||||||
//查不到点位信息
|
//查不到点位信息
|
||||||
if(null == meObj) {
|
if (null == meObj) {
|
||||||
throw new BadRequestException("未找到该物料信息!");
|
throw new BadRequestException("未找到该物料信息!");
|
||||||
}
|
}
|
||||||
//6.重新新建该缓存线位置上的料箱为满箱及所属工序,生产区域等信息
|
//6.重新新建该缓存线位置上的料箱为满箱及所属工序,生产区域等信息
|
||||||
@@ -619,7 +627,7 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
json.put("vehicle_status", StatusEnum.CACHE_VEL_EMT.getCode());
|
json.put("vehicle_status", StatusEnum.CACHE_VEL_EMT.getCode());
|
||||||
}
|
}
|
||||||
// 出满箱入空箱
|
// 出满箱入空箱
|
||||||
if(StatusEnum.IN_VEHICLE.getCode().equals(inOut_type)) {
|
if (StatusEnum.IN_VEHICLE.getCode().equals(inOut_type)) {
|
||||||
//5.重新新建该缓存线位置上的料箱为空箱子,是空料箱没有放物料等其他信息
|
//5.重新新建该缓存线位置上的料箱为空箱子,是空料箱没有放物料等其他信息
|
||||||
//缓存线载具状态 1-空位、2-绿色空箱、3-黄色满箱、4-红色异常、5不显示
|
//缓存线载具状态 1-空位、2-绿色空箱、3-黄色满箱、4-红色异常、5不显示
|
||||||
json.put("vehicle_status", StatusEnum.STATUS_TRUE.getCode());
|
json.put("vehicle_status", StatusEnum.STATUS_TRUE.getCode());
|
||||||
@@ -637,8 +645,8 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
* 缓存线扫码异常-查询
|
* 缓存线扫码异常-查询
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public JSONArray inOutExceptionInstQuery(JSONObject param) {
|
public List<Map> inOutExceptionInstQuery(JSONObject param) {
|
||||||
return WQL.getWO("PDA_QUERY").addParamMap(MapOf.of("cacheline_code", param.getString("wcsdevice_code"), "flag", "12")).process().getResultJSONArray(0);
|
return vehilematerialMapper.getErrorVeh(param.getString("wcsdevice_code"));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -671,8 +679,7 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
jsonArray.add(jsonObject);
|
jsonArray.add(jsonObject);
|
||||||
try {
|
try {
|
||||||
return RestBusinessTemplate.execute(() -> AcsUtil.notifyAcs("api/wms/issuedBarcode", jsonArray));
|
return RestBusinessTemplate.execute(() -> AcsUtil.notifyAcs("api/wms/issuedBarcode", jsonArray));
|
||||||
}
|
} catch (NullPointerException e) {
|
||||||
catch(NullPointerException e) {
|
|
||||||
throw new BadRequestException(e.toString());
|
throw new BadRequestException(e.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -688,7 +695,7 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
// opt_type 1-暂停、2-启动,默认为1暂停
|
// opt_type 1-暂停、2-启动,默认为1暂停
|
||||||
String type = StatusEnum.PAUSE_CACHELINE.getCode();
|
String type = StatusEnum.PAUSE_CACHELINE.getCode();
|
||||||
String opt_type = param.getString("opt_type");
|
String opt_type = param.getString("opt_type");
|
||||||
if(StatusEnum.START_CACHELINE.getCode().equals(opt_type)) {
|
if (StatusEnum.START_CACHELINE.getCode().equals(opt_type)) {
|
||||||
type = "0";
|
type = "0";
|
||||||
}
|
}
|
||||||
JSONArray jsonArray = new JSONArray();
|
JSONArray jsonArray = new JSONArray();
|
||||||
@@ -700,8 +707,7 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
jsonArray.add(jsonObject);
|
jsonArray.add(jsonObject);
|
||||||
try {
|
try {
|
||||||
return RestBusinessTemplate.execute(() -> AcsUtil.notifyAcs("api/wms/puaseCacheLine", jsonArray));
|
return RestBusinessTemplate.execute(() -> AcsUtil.notifyAcs("api/wms/puaseCacheLine", jsonArray));
|
||||||
}
|
} catch (NullPointerException e) {
|
||||||
catch(NullPointerException e) {
|
|
||||||
throw new BadRequestException(e.toString());
|
throw new BadRequestException(e.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -715,12 +721,12 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
String wcsdevice_code = param.getString("wcsdevice_code");
|
String wcsdevice_code = param.getString("wcsdevice_code");
|
||||||
WQLObject instructTab = WQLObject.getWQLObject("sch_base_task");
|
WQLObject instructTab = WQLObject.getWQLObject("sch_base_task");
|
||||||
String where = "point_code2 = '" + wcsdevice_code + "' and vehicle_code = '" + vehicle_code + "' and task_status <> '7'";
|
String where = "point_code2 = '" + wcsdevice_code + "' and vehicle_code = '" + vehicle_code + "' and task_status <> '7'";
|
||||||
if(StringUtils.isBlank(vehicle_code)) {
|
if (StringUtils.isBlank(vehicle_code)) {
|
||||||
where = "point_code2 = '" + wcsdevice_code + "' and task_status <> '7'";
|
where = "point_code2 = '" + wcsdevice_code + "' and task_status <> '7'";
|
||||||
}
|
}
|
||||||
JSONArray arr = instructTab.query(where).getResultJSONArray(0);
|
JSONArray arr = instructTab.query(where).getResultJSONArray(0);
|
||||||
JSONArray result = new JSONArray();
|
JSONArray result = new JSONArray();
|
||||||
for(int i = 0; i < arr.size(); i++) {
|
for (int i = 0; i < arr.size(); i++) {
|
||||||
JSONObject row = arr.getJSONObject(i);
|
JSONObject row = arr.getJSONObject(i);
|
||||||
JSONObject json = new JSONObject();
|
JSONObject json = new JSONObject();
|
||||||
json.put("instruct_uuid", row.getString("task_id"));
|
json.put("instruct_uuid", row.getString("task_id"));
|
||||||
@@ -768,14 +774,13 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
String wcsdevice_code = param.getString("wcsdevice_code");
|
String wcsdevice_code = param.getString("wcsdevice_code");
|
||||||
JSONArray arr;
|
JSONArray arr;
|
||||||
WQLObject instructTab = WQLObject.getWQLObject("sch_base_task");
|
WQLObject instructTab = WQLObject.getWQLObject("sch_base_task");
|
||||||
if(StringUtils.isBlank(vehicle_code)) {
|
if (StringUtils.isBlank(vehicle_code)) {
|
||||||
arr = instructTab.query("point_code1 = '" + wcsdevice_code + "' and task_status <> '7'").getResultJSONArray(0);
|
arr = instructTab.query("point_code1 = '" + wcsdevice_code + "' and task_status <> '7'").getResultJSONArray(0);
|
||||||
}
|
} else {
|
||||||
else{
|
|
||||||
arr = instructTab.query("point_code1 = '" + wcsdevice_code + "' and vehicle_code = '" + vehicle_code + "' and task_status <> '7'").getResultJSONArray(0);
|
arr = instructTab.query("point_code1 = '" + wcsdevice_code + "' and vehicle_code = '" + vehicle_code + "' and task_status <> '7'").getResultJSONArray(0);
|
||||||
}
|
}
|
||||||
JSONArray result = new JSONArray();
|
JSONArray result = new JSONArray();
|
||||||
for(int i = 0; i < arr.size(); i++) {
|
for (int i = 0; i < arr.size(); i++) {
|
||||||
JSONObject row = arr.getJSONObject(i);
|
JSONObject row = arr.getJSONObject(i);
|
||||||
JSONObject json = new JSONObject();
|
JSONObject json = new JSONObject();
|
||||||
json.put("instruct_uuid", row.getString("task_id"));
|
json.put("instruct_uuid", row.getString("task_id"));
|
||||||
@@ -824,30 +829,38 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
jsonArray.add(jsonObject);
|
jsonArray.add(jsonObject);
|
||||||
try {
|
try {
|
||||||
return RestBusinessTemplate.execute(() -> new JSONObject());
|
return RestBusinessTemplate.execute(() -> new JSONObject());
|
||||||
}
|
} catch (NullPointerException e) {
|
||||||
catch(NullPointerException e) {
|
|
||||||
throw new BadRequestException(e.toString());
|
throw new BadRequestException(e.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public JSONArray getCacheLine(JSONObject param) {
|
public JSONArray getCacheLine(JSONObject param) {
|
||||||
// 生产区域
|
QueryWrapper<PdmBiDevice> wrapper = new QueryWrapper<>();
|
||||||
String product_area = param.getString("product_area");
|
String product_area = param.getString("product_area");
|
||||||
return WQL.getWO("PDA_QUERY").addParamMap(MapOf.of("flag", "7", "product_area", product_area)).process().getResultJSONArray(0);
|
if (StrUtil.isNotEmpty(product_area)) {
|
||||||
|
wrapper.eq("product_area", product_area);
|
||||||
|
}
|
||||||
|
List<PdmBiDevice> device_list = deviceService.list(wrapper.like("device_code", "HCX"));
|
||||||
|
JSONArray ja = new JSONArray();
|
||||||
|
device_list.forEach(device -> {
|
||||||
|
JSONObject jo = new JSONObject();
|
||||||
|
jo.put("value", device.getDevice_code());
|
||||||
|
jo.put("text", device.getDevice_name());
|
||||||
|
ja.add(jo);
|
||||||
|
});
|
||||||
|
// 生产区域
|
||||||
|
|
||||||
|
return ja;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public JSONArray getCacheLineMaterialInfo(JSONObject param) {
|
public List<Map> getCacheLineMaterialInfo(JSONObject param) {
|
||||||
// 缓存线编码 point_code
|
// 缓存线编码 point_code
|
||||||
String pointCode = param.getString("wcsdevice_code");
|
String pointCode = param.getString("wcsdevice_code");
|
||||||
String productArea = param.getString("product_area");
|
String productArea = param.getString("product_area");
|
||||||
AtomicReference<JSONArray> res = new AtomicReference<>(new JSONArray());
|
|
||||||
RedissonUtils.lock(() -> {
|
return positionMapper.getPositionInfo(MapOf.of("product_area", productArea, "cacheline_code", pointCode));
|
||||||
// 生产区域
|
|
||||||
res.set(WQL.getWO("PDA_QUERY").addParamMap(MapOf.of("flag", "8", "product_area", productArea, "cacheline_code", pointCode)).process().getResultJSONArray(0));
|
|
||||||
}, pointCode, 3);
|
|
||||||
return res.get();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -862,7 +875,7 @@ public class CacheLineHandServiceImpl implements CacheLineHandService{
|
|||||||
res.put("message", "删除失败");
|
res.put("message", "删除失败");
|
||||||
WQLObject cvTab = WQLObject.getWQLObject("SCH_CacheLine_VehileMaterial");
|
WQLObject cvTab = WQLObject.getWQLObject("SCH_CacheLine_VehileMaterial");
|
||||||
String vehicleCode = param.getString("vehicle_code");
|
String vehicleCode = param.getString("vehicle_code");
|
||||||
if(ObjectUtil.isNotEmpty(vehicleCode)) {
|
if (ObjectUtil.isNotEmpty(vehicleCode)) {
|
||||||
cvTab.delete("vehicle_code = '" + vehicleCode + "'");
|
cvTab.delete("vehicle_code = '" + vehicleCode + "'");
|
||||||
res.put("message", "删除成功");
|
res.put("message", "删除成功");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -173,17 +173,17 @@
|
|||||||
IF 输入.flag = "7"
|
IF 输入.flag = "7"
|
||||||
QUERY
|
QUERY
|
||||||
SELECT
|
SELECT
|
||||||
p.point_code as value,
|
device_code AS value,
|
||||||
p.point_name as text
|
device_name AS text
|
||||||
FROM
|
FROM
|
||||||
sch_base_point p
|
pdm_bi_device
|
||||||
WHERE
|
WHERE
|
||||||
p.region_code = 'A1_HCX'
|
device_code like '%HCX%'
|
||||||
OPTION 输入.product_area <> ""
|
OPTION 输入.product_area <> ""
|
||||||
p.product_area = 输入.product_area
|
product_area = 输入.product_area
|
||||||
ENDOPTION
|
ENDOPTION
|
||||||
ORDER BY
|
ORDER BY
|
||||||
p.point_code
|
device_code
|
||||||
ENDSELECT
|
ENDSELECT
|
||||||
ENDQUERY
|
ENDQUERY
|
||||||
ENDIF
|
ENDIF
|
||||||
@@ -210,13 +210,9 @@
|
|||||||
LEFT JOIN sch_cacheline_vehilematerial ON sch_cacheline_position.vehicle_code = sch_cacheline_vehilematerial.vehicle_code
|
LEFT JOIN sch_cacheline_vehilematerial ON sch_cacheline_position.vehicle_code = sch_cacheline_vehilematerial.vehicle_code
|
||||||
LEFT JOIN md_me_materialbase ON md_me_materialbase.material_id = sch_cacheline_vehilematerial.material_id
|
LEFT JOIN md_me_materialbase ON md_me_materialbase.material_id = sch_cacheline_vehilematerial.material_id
|
||||||
WHERE
|
WHERE
|
||||||
1 = 1
|
|
||||||
OPTION 输入.product_area <> ""
|
|
||||||
sch_cacheline_position.product_area = 输入.product_area
|
sch_cacheline_position.product_area = 输入.product_area
|
||||||
ENDOPTION
|
AND
|
||||||
OPTION 输入.cacheline_code <> ""
|
|
||||||
sch_cacheline_position.cacheline_code = 输入.cacheline_code
|
sch_cacheline_position.cacheline_code = 输入.cacheline_code
|
||||||
ENDOPTION
|
|
||||||
ORDER BY
|
ORDER BY
|
||||||
sch_cacheline_position.cacheline_code, sch_cacheline_position.layer_num, sch_cacheline_position.positionorder_no, sch_cacheline_position.cache_line_no
|
sch_cacheline_position.cacheline_code, sch_cacheline_position.layer_num, sch_cacheline_position.positionorder_no, sch_cacheline_position.cache_line_no
|
||||||
ENDSELECT
|
ENDSELECT
|
||||||
|
|||||||
@@ -1,8 +1,12 @@
|
|||||||
package org.nl.wms.scheduler_manage.service.cacheline.dao.mapper;
|
package org.nl.wms.scheduler_manage.service.cacheline.dao.mapper;
|
||||||
|
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
import org.nl.wms.scheduler_manage.service.cacheline.dao.SchCachelinePosition;
|
import org.nl.wms.scheduler_manage.service.cacheline.dao.SchCachelinePosition;
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
* 缓存线位置表 Mapper 接口
|
* 缓存线位置表 Mapper 接口
|
||||||
@@ -13,4 +17,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|||||||
*/
|
*/
|
||||||
public interface SchCachelinePositionMapper extends BaseMapper<SchCachelinePosition> {
|
public interface SchCachelinePositionMapper extends BaseMapper<SchCachelinePosition> {
|
||||||
|
|
||||||
|
List<Map> getPositionInfo(@Param("map") Map map);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,12 @@
|
|||||||
package org.nl.wms.scheduler_manage.service.cacheline.dao.mapper;
|
package org.nl.wms.scheduler_manage.service.cacheline.dao.mapper;
|
||||||
|
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
import org.nl.wms.scheduler_manage.service.cacheline.dao.SchCachelineVehilematerial;
|
import org.nl.wms.scheduler_manage.service.cacheline.dao.SchCachelineVehilematerial;
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
* 缓存线载具物料表 Mapper 接口
|
* 缓存线载具物料表 Mapper 接口
|
||||||
@@ -13,4 +17,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|||||||
*/
|
*/
|
||||||
public interface SchCachelineVehilematerialMapper extends BaseMapper<SchCachelineVehilematerial> {
|
public interface SchCachelineVehilematerialMapper extends BaseMapper<SchCachelineVehilematerial> {
|
||||||
|
|
||||||
|
List<Map> getErrorVeh(@Param("cacheline_code") String cacheline_code);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,4 +2,34 @@
|
|||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="org.nl.wms.scheduler_manage.service.cacheline.dao.mapper.SchCachelinePositionMapper">
|
<mapper namespace="org.nl.wms.scheduler_manage.service.cacheline.dao.mapper.SchCachelinePositionMapper">
|
||||||
|
|
||||||
|
<select id="getPositionInfo" resultType="java.util.Map">
|
||||||
|
SELECT
|
||||||
|
scp.cacheline_code,
|
||||||
|
scp.position_code,
|
||||||
|
scp.position_name,
|
||||||
|
scp.vehicle_code,
|
||||||
|
scp.layer_num,
|
||||||
|
scp.positionorder_no as seat_order_num,
|
||||||
|
sch_cacheline_vehilematerial.workprocedure_code,
|
||||||
|
sch_cacheline_vehilematerial.workprocedure_name,
|
||||||
|
sch_cacheline_vehilematerial.material_id as material_uuid,
|
||||||
|
mb.material_code,
|
||||||
|
mb.material_name,
|
||||||
|
mb.material_spec,
|
||||||
|
sch_cacheline_vehilematerial.quantity,
|
||||||
|
sch_cacheline_vehilematerial.weight,
|
||||||
|
IF(length(scp.vehicle_code) > 0, IFNULL(sch_cacheline_vehilematerial.vehicle_status, 4), 1) AS vehicle_status
|
||||||
|
FROM
|
||||||
|
sch_cacheline_position scp
|
||||||
|
LEFT JOIN sch_cacheline_vehilematerial ON scp.vehicle_code = sch_cacheline_vehilematerial.vehicle_code
|
||||||
|
LEFT JOIN md_me_materialbase mb ON mb.material_id = sch_cacheline_vehilematerial.material_id
|
||||||
|
<where>
|
||||||
|
scp.cacheline_code = #{map.cacheline_code}
|
||||||
|
<if test="map.product_area != null and map.product_area != ''">
|
||||||
|
and scp.product_area = #{map.product_area}
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
ORDER BY
|
||||||
|
scp.cacheline_code, scp.layer_num, scp.positionorder_no, scp.cache_line_no
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
@@ -2,4 +2,26 @@
|
|||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="org.nl.wms.scheduler_manage.service.cacheline.dao.mapper.SchCachelineVehilematerialMapper">
|
<mapper namespace="org.nl.wms.scheduler_manage.service.cacheline.dao.mapper.SchCachelineVehilematerialMapper">
|
||||||
|
|
||||||
|
<select id="getErrorVeh" resultType="java.util.Map">
|
||||||
|
SELECT
|
||||||
|
*
|
||||||
|
FROM
|
||||||
|
(
|
||||||
|
SELECT
|
||||||
|
v.vehicle_code,
|
||||||
|
p.position_code,
|
||||||
|
p.cacheline_code
|
||||||
|
FROM
|
||||||
|
sch_cacheline_vehilematerial v
|
||||||
|
LEFT JOIN sch_cacheline_position p ON v.vehicle_code = p.vehicle_code
|
||||||
|
WHERE
|
||||||
|
v.err_type = 2
|
||||||
|
AND v.is_delete = 0
|
||||||
|
) a
|
||||||
|
<where>
|
||||||
|
<if test="cacheline_code != null and cacheline_code != ''">
|
||||||
|
a.cacheline_code = #{cacheline_code}
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
@@ -59,8 +59,8 @@ public class StIvtIostorinvYlOutController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/getIODtl")
|
@PostMapping("/getIODtl")
|
||||||
@Log("查询入库分配明细")
|
@Log("查询出库分配明细")
|
||||||
@ApiOperation("查询入库分配明细")
|
@ApiOperation("查询出库分配明细")
|
||||||
public ResponseEntity<Object> getIODtl(@RequestBody JSONObject whereJson) {
|
public ResponseEntity<Object> getIODtl(@RequestBody JSONObject whereJson) {
|
||||||
return new ResponseEntity<>(iostorinvOutYlService.getInvDtl(whereJson), HttpStatus.OK);
|
return new ResponseEntity<>(iostorinvOutYlService.getInvDtl(whereJson), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ public interface IStIvtIostorinvdtlYlService extends IService<StIvtIostorinvdtlY
|
|||||||
* @param iostorinvCp_id
|
* @param iostorinvCp_id
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
double create(JSONArray row, String iostorinvCp_id);
|
double create(JSONArray row, String iostorinvCp_id,String io_type);
|
||||||
|
|
||||||
List<Map> getDtlList(JSONObject json);
|
List<Map> getDtlList(JSONObject json);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -202,7 +202,7 @@ public class StIvtIostorinvYl implements Serializable {
|
|||||||
/**
|
/**
|
||||||
* 车间标识
|
* 车间标识
|
||||||
*/
|
*/
|
||||||
private String product_area;
|
private String workshop_id;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,6 +19,7 @@
|
|||||||
mst.total_qty,
|
mst.total_qty,
|
||||||
mst.detail_count,
|
mst.detail_count,
|
||||||
mst.bill_status,
|
mst.bill_status,
|
||||||
|
mst.workshop_id,
|
||||||
mst.remark,
|
mst.remark,
|
||||||
mst.create_id,
|
mst.create_id,
|
||||||
mst.create_name,
|
mst.create_name,
|
||||||
@@ -28,12 +29,9 @@
|
|||||||
DATE_FORMAT( mst.update_time,'%Y-%m-%d %H:%i:%s') AS update_time,
|
DATE_FORMAT( mst.update_time,'%Y-%m-%d %H:%i:%s') AS update_time,
|
||||||
mst.confirm_id,
|
mst.confirm_id,
|
||||||
mst.confirm_name,
|
mst.confirm_name,
|
||||||
DATE_FORMAT( mst.confirm_time,'%Y-%m-%d %H:%i:%s') AS confirm_time,
|
DATE_FORMAT( mst.confirm_time,'%Y-%m-%d %H:%i:%s') AS confirm_time
|
||||||
dis.struct_id,
|
|
||||||
dis.sect_id
|
|
||||||
FROM
|
FROM
|
||||||
st_ivt_iostorinv_yl mst
|
st_ivt_iostorinv_yl mst
|
||||||
LEFT JOIN st_ivt_iostorinvdis_yl dis ON dis.iostorinv_id = mst.iostorinv_id
|
|
||||||
<where>
|
<where>
|
||||||
mst.is_delete = '0'
|
mst.is_delete = '0'
|
||||||
AND
|
AND
|
||||||
|
|||||||
@@ -30,7 +30,8 @@
|
|||||||
mst.confirm_name,
|
mst.confirm_name,
|
||||||
DATE_FORMAT( mst.confirm_time,'%Y-%m-%d %H:%i:%s') AS confirm_time,
|
DATE_FORMAT( mst.confirm_time,'%Y-%m-%d %H:%i:%s') AS confirm_time,
|
||||||
dis.struct_id,
|
dis.struct_id,
|
||||||
dis.sect_id
|
dis.sect_id,
|
||||||
|
mst.workshop_id
|
||||||
FROM
|
FROM
|
||||||
st_ivt_iostorinv_yl mst
|
st_ivt_iostorinv_yl mst
|
||||||
LEFT JOIN st_ivt_iostorinvdis_yl dis ON dis.iostorinv_id = mst.iostorinv_id
|
LEFT JOIN st_ivt_iostorinvdis_yl dis ON dis.iostorinv_id = mst.iostorinv_id
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ import org.nl.wms.storage_manage.rawmanage.service.iostorInv.IStIvtIostorinvdtlY
|
|||||||
import org.nl.wms.storage_manage.rawmanage.service.iostorInv.dao.StIvtIostorinvYl;
|
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.StIvtIostorinvdisYl;
|
||||||
import org.nl.wms.storage_manage.rawmanage.service.iostorInv.dao.StIvtIostorinvdtlYl;
|
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.dao.mapper.StIvtIostorinvYlMapper;
|
||||||
import org.nl.wms.storage_manage.rawmanage.service.iostorInv.dto.YlIostorInvQuery;
|
import org.nl.wms.storage_manage.rawmanage.service.iostorInv.dto.YlIostorInvQuery;
|
||||||
import org.nl.wms.storage_manage.rawmanage.service.structIvt.IStIvtStructivtYlService;
|
import org.nl.wms.storage_manage.rawmanage.service.structIvt.IStIvtStructivtYlService;
|
||||||
@@ -59,7 +60,7 @@ public class StIvtIostorinvOutYlServiceImpl extends ServiceImpl<StIvtIostorinvYl
|
|||||||
private IStIvtIostorinvdtlYlService iostorinvdtlYlService;
|
private IStIvtIostorinvdtlYlService iostorinvdtlYlService;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private StIvtIostorinvYlMapper iostorinvYlMapper;
|
private StIvtIostorinvOutYlMapper ivtIostorinvOutYlMapper;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private IStIvtIostorinvdisYlService iostorinvdisYlService;
|
private IStIvtIostorinvdisYlService iostorinvdisYlService;
|
||||||
@@ -77,7 +78,7 @@ public class StIvtIostorinvOutYlServiceImpl extends ServiceImpl<StIvtIostorinvYl
|
|||||||
@Override
|
@Override
|
||||||
public Object pageQuery(YlIostorInvQuery query, PageQuery pageQuery) {
|
public Object pageQuery(YlIostorInvQuery query, PageQuery pageQuery) {
|
||||||
Page<Object> page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize());
|
Page<Object> page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize());
|
||||||
List<Map> mst_detail = iostorinvYlMapper.getMstDetail(query, pageQuery);
|
List<Map> mst_detail = ivtIostorinvOutYlMapper.getMstDetail(query, pageQuery);
|
||||||
TableDataInfo<Map> build = TableDataInfo.build(mst_detail);
|
TableDataInfo<Map> build = TableDataInfo.build(mst_detail);
|
||||||
build.setTotalElements(page.getTotal());
|
build.setTotalElements(page.getTotal());
|
||||||
return build;
|
return build;
|
||||||
@@ -94,7 +95,7 @@ public class StIvtIostorinvOutYlServiceImpl extends ServiceImpl<StIvtIostorinvYl
|
|||||||
this.save(stIvtIostorinvYl);
|
this.save(stIvtIostorinvYl);
|
||||||
|
|
||||||
// 调用明细表 插入/更新方法
|
// 调用明细表 插入/更新方法
|
||||||
iostorinvdtlYlService.create(rows, stIvtIostorinvYl.getIostorinv_id());
|
iostorinvdtlYlService.create(rows, stIvtIostorinvYl.getIostorinv_id(), stIvtIostorinvYl.getIo_type());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -109,7 +110,7 @@ public class StIvtIostorinvOutYlServiceImpl extends ServiceImpl<StIvtIostorinvYl
|
|||||||
JSONArray rows = form.getJSONArray("tableData");
|
JSONArray rows = form.getJSONArray("tableData");
|
||||||
if (ObjectUtil.isEmpty(rows)) throw new BadRequestException("请求参数不能为空");
|
if (ObjectUtil.isEmpty(rows)) throw new BadRequestException("请求参数不能为空");
|
||||||
// 调用明细表 插入/更新方法
|
// 调用明细表 插入/更新方法
|
||||||
iostorinvdtlYlService.create(rows, form.getString("iostorinv_id"));
|
iostorinvdtlYlService.create(rows, form.getString("iostorinv_id"), mst.getIo_type());
|
||||||
return mst.getIostorinv_id();
|
return mst.getIostorinv_id();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -138,56 +139,17 @@ public class StIvtIostorinvOutYlServiceImpl extends ServiceImpl<StIvtIostorinvYl
|
|||||||
|
|
||||||
StIvtIostorinvYl mst = this.getById(iostorinv_id);
|
StIvtIostorinvYl mst = this.getById(iostorinv_id);
|
||||||
|
|
||||||
List<StIvtIostorinvdisYl> dis_list = iostorinvdisYlService.list(new QueryWrapper<StIvtIostorinvdisYl>().eq("iostorinv_id", iostorinv_id));
|
|
||||||
List<StIvtIostorinvdtlYl> dtl_list = iostorinvdtlYlService.list(new QueryWrapper<StIvtIostorinvdtlYl>().eq("iostorinv_id", iostorinv_id));
|
List<StIvtIostorinvdtlYl> dtl_list = iostorinvdtlYlService.list(new QueryWrapper<StIvtIostorinvdtlYl>().eq("iostorinv_id", iostorinv_id));
|
||||||
|
|
||||||
if (ObjectUtil.isEmpty(dis_list)) {
|
if (ObjectUtil.isEmpty(dtl_list)) {
|
||||||
throw new BadRequestException("该入库单不存在分配明细!");
|
throw new BadRequestException("该入库单不存在明细!");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mst == null || mst.getIs_delete() == true) {
|
if (mst == null || mst.getIs_delete() == true) {
|
||||||
throw new BadRequestException("单据不存在");
|
throw new BadRequestException("单据不存在");
|
||||||
}
|
}
|
||||||
|
|
||||||
//修改分配状态
|
|
||||||
dis_list.forEach(dis -> {
|
|
||||||
dis.setReal_qty(dis.getPlan_qty());
|
|
||||||
dis.setWork_status(IOSEnum.WORK_STATUS.code("完成"));
|
|
||||||
iostorinvdisYlService.updateById(dis);
|
|
||||||
|
|
||||||
//修改库存和插入库存变动记录表
|
|
||||||
structivtflowService.recordStructivtFlow(
|
|
||||||
StIvtStructivtflowDto.builder()
|
|
||||||
.bill_code(mst.getBill_code()).change_type_scode(CHANGE_BILL_TYPE_ENUM.IOSTORINV_IN_CONFIRM).bill_table("st_ivt_iostorinv_bcp")
|
|
||||||
.material_id(dis.getMaterial_id()).pcsn(dis.getPcsn())
|
|
||||||
.struct_code(dis.getStruct_code()).result_qty(structivtYlService.getOne(new QueryWrapper<StIvtStructivtYl>().eq("struct_code", dis.getStruct_code())).getCanuse_qty()).change_qty(dis.getReal_qty())
|
|
||||||
.task_id(dis.getTask_id())
|
|
||||||
.storagevehicle_code(dis.getStoragevehicle_code())
|
|
||||||
.build()
|
|
||||||
);
|
|
||||||
});
|
|
||||||
|
|
||||||
//修改明细状态
|
|
||||||
dtl_list.forEach(dtl -> {
|
|
||||||
dtl.setReal_qty(dtl.getPlan_qty());
|
|
||||||
dtl.setBill_status(IOSEnum.BILL_STATUS.code("完成"));
|
|
||||||
iostorinvdtlYlService.updateById(dtl);
|
|
||||||
|
|
||||||
//如果单据类型为原料入库
|
|
||||||
if (mst.getBill_type().equals(IOSEnum.BILL_TYPE.code("原料入库"))) {
|
|
||||||
JSONObject pur_jo = new JSONObject();
|
|
||||||
pur_jo.put("po_code", dtl.getSource_bill_code());
|
|
||||||
pur_jo.put("instor_qty", dtl.getReal_qty());
|
|
||||||
purchaseorderService.updatePurchaseNum(pur_jo);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
//修改主表
|
|
||||||
mst.setConfirm_id(SecurityUtils.getCurrentUserId());
|
|
||||||
mst.setConfirm_name(SecurityUtils.getCurrentNickName());
|
|
||||||
mst.setConfirm_time(DateUtil.now());
|
|
||||||
mst.setBill_status(IOSEnum.BILL_STATUS.code("完成"));
|
|
||||||
this.updateById(mst);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -198,7 +160,7 @@ public class StIvtIostorinvOutYlServiceImpl extends ServiceImpl<StIvtIostorinvYl
|
|||||||
// 新增
|
// 新增
|
||||||
stIvtIostorinvYl.setIostorinv_id(IdUtil.getStringId());
|
stIvtIostorinvYl.setIostorinv_id(IdUtil.getStringId());
|
||||||
stIvtIostorinvYl.setBill_code(CodeUtil.getNewCode("IO_CODE"));
|
stIvtIostorinvYl.setBill_code(CodeUtil.getNewCode("IO_CODE"));
|
||||||
stIvtIostorinvYl.setIo_type(IOSEnum.IO_TYPE.code("入库"));
|
stIvtIostorinvYl.setIo_type(IOSEnum.IO_TYPE.code("出库"));
|
||||||
stIvtIostorinvYl.setBuss_type(whereJson.getString("bill_type"));
|
stIvtIostorinvYl.setBuss_type(whereJson.getString("bill_type"));
|
||||||
stIvtIostorinvYl.setBill_type(stIvtIostorinvYl.getBuss_type());
|
stIvtIostorinvYl.setBill_type(stIvtIostorinvYl.getBuss_type());
|
||||||
stIvtIostorinvYl.setBill_status(IOSEnum.BILL_STATUS.code("生成"));
|
stIvtIostorinvYl.setBill_status(IOSEnum.BILL_STATUS.code("生成"));
|
||||||
@@ -234,6 +196,7 @@ public class StIvtIostorinvOutYlServiceImpl extends ServiceImpl<StIvtIostorinvYl
|
|||||||
stIvtIostorinvYl.setTotal_qty(whereJson.getBigDecimal("total_qty"));
|
stIvtIostorinvYl.setTotal_qty(whereJson.getBigDecimal("total_qty"));
|
||||||
stIvtIostorinvYl.setDetail_count(rows.size());
|
stIvtIostorinvYl.setDetail_count(rows.size());
|
||||||
stIvtIostorinvYl.setRemark(whereJson.getString("remark"));
|
stIvtIostorinvYl.setRemark(whereJson.getString("remark"));
|
||||||
|
stIvtIostorinvYl.setWorkshop_id(whereJson.getString("workshop_id"));
|
||||||
|
|
||||||
return stIvtIostorinvYl;
|
return stIvtIostorinvYl;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -95,7 +95,7 @@ public class StIvtIostorinvYlServiceImpl extends ServiceImpl<StIvtIostorinvYlMap
|
|||||||
this.save(stIvtIostorinvYl);
|
this.save(stIvtIostorinvYl);
|
||||||
|
|
||||||
// 调用明细表 插入/更新方法
|
// 调用明细表 插入/更新方法
|
||||||
iostorinvdtlYlService.create(rows, stIvtIostorinvYl.getIostorinv_id());
|
iostorinvdtlYlService.create(rows, stIvtIostorinvYl.getIostorinv_id(), stIvtIostorinvYl.getIo_type());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -110,7 +110,7 @@ public class StIvtIostorinvYlServiceImpl extends ServiceImpl<StIvtIostorinvYlMap
|
|||||||
JSONArray rows = form.getJSONArray("tableData");
|
JSONArray rows = form.getJSONArray("tableData");
|
||||||
if (ObjectUtil.isEmpty(rows)) throw new BadRequestException("请求参数不能为空");
|
if (ObjectUtil.isEmpty(rows)) throw new BadRequestException("请求参数不能为空");
|
||||||
// 调用明细表 插入/更新方法
|
// 调用明细表 插入/更新方法
|
||||||
iostorinvdtlYlService.create(rows, form.getString("iostorinv_id"));
|
iostorinvdtlYlService.create(rows, form.getString("iostorinv_id"), mst.getIo_type());
|
||||||
return mst.getIostorinv_id();
|
return mst.getIostorinv_id();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -235,6 +235,7 @@ public class StIvtIostorinvYlServiceImpl extends ServiceImpl<StIvtIostorinvYlMap
|
|||||||
stIvtIostorinvYl.setTotal_qty(whereJson.getBigDecimal("total_qty"));
|
stIvtIostorinvYl.setTotal_qty(whereJson.getBigDecimal("total_qty"));
|
||||||
stIvtIostorinvYl.setDetail_count(rows.size());
|
stIvtIostorinvYl.setDetail_count(rows.size());
|
||||||
stIvtIostorinvYl.setRemark(whereJson.getString("remark"));
|
stIvtIostorinvYl.setRemark(whereJson.getString("remark"));
|
||||||
|
stIvtIostorinvYl.setWorkshop_id(whereJson.getString("workshop_id"));
|
||||||
|
|
||||||
return stIvtIostorinvYl;
|
return stIvtIostorinvYl;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -36,14 +36,16 @@ public class StIvtIostorinvdtlYlServiceImpl extends ServiceImpl<StIvtIostorinvdt
|
|||||||
private IStIvtIostorinvdisYlService iostorinvdisYlService;
|
private IStIvtIostorinvdisYlService iostorinvdisYlService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public double create(JSONArray rows, String iostorinvYl_id) {
|
public double create(JSONArray rows, String iostorinvYl_id, String io_type) {
|
||||||
double total_qty = 0;
|
double total_qty = 0;
|
||||||
|
|
||||||
if (rows.size() > 0 && StringUtils.isNotEmpty(iostorinvYl_id)) {
|
if (rows.size() > 0 && StringUtils.isNotEmpty(iostorinvYl_id)) {
|
||||||
// 先删除在插入
|
// 先删除在插入
|
||||||
this.remove(new QueryWrapper<StIvtIostorinvdtlYl>().eq("iostorinv_id", iostorinvYl_id));
|
this.remove(new QueryWrapper<StIvtIostorinvdtlYl>().eq("iostorinv_id", iostorinvYl_id));
|
||||||
|
if (io_type.equals(IOSEnum.IO_TYPE.code("入库"))) {
|
||||||
//删除分配记录
|
//删除分配记录
|
||||||
iostorinvdisYlService.deleteById(iostorinvYl_id);
|
iostorinvdisYlService.deleteById(iostorinvYl_id);
|
||||||
|
}
|
||||||
|
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
String iostorinvdtlYl_id = IdUtil.getStringId();
|
String iostorinvdtlYl_id = IdUtil.getStringId();
|
||||||
@@ -60,9 +62,11 @@ public class StIvtIostorinvdtlYlServiceImpl extends ServiceImpl<StIvtIostorinvdt
|
|||||||
JSONObject mst_jo = new JSONObject();
|
JSONObject mst_jo = new JSONObject();
|
||||||
mst_jo.put("mst_id", iostorinvYl_id);
|
mst_jo.put("mst_id", iostorinvYl_id);
|
||||||
mst_jo.put("dtl_id", iostorinvdtlYl_id);
|
mst_jo.put("dtl_id", iostorinvdtlYl_id);
|
||||||
|
if (io_type.equals(IOSEnum.IO_TYPE.code("入库"))) {
|
||||||
iostorinvdisYlService.create(rows.getJSONObject(i), mst_jo);
|
iostorinvdisYlService.create(rows.getJSONObject(i), mst_jo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return total_qty;
|
return total_qty;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -248,6 +248,7 @@ const defaultForm = {
|
|||||||
struct_id: '',
|
struct_id: '',
|
||||||
bill_type: '',
|
bill_type: '',
|
||||||
remark: '',
|
remark: '',
|
||||||
|
workshop_id: '',
|
||||||
biz_date: new Date(),
|
biz_date: new Date(),
|
||||||
create_mode: '',
|
create_mode: '',
|
||||||
tableData: []
|
tableData: []
|
||||||
@@ -419,7 +420,6 @@ export default {
|
|||||||
tableChanged(rows) {
|
tableChanged(rows) {
|
||||||
// 对新增的行进行校验不能存在相同物料批次
|
// 对新增的行进行校验不能存在相同物料批次
|
||||||
rows.forEach((item) => {
|
rows.forEach((item) => {
|
||||||
debugger
|
|
||||||
let same_mater = true
|
let same_mater = true
|
||||||
this.form.tableData.forEach((row) => {
|
this.form.tableData.forEach((row) => {
|
||||||
if (row.material_code === item.material_code) {
|
if (row.material_code === item.material_code) {
|
||||||
|
|||||||
@@ -203,7 +203,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<StructIvt
|
<MaterDtl
|
||||||
:dialog-show.sync="materShow"
|
:dialog-show.sync="materShow"
|
||||||
:is-single="false"
|
:is-single="false"
|
||||||
@setMaterValue="tableChanged"
|
@setMaterValue="tableChanged"
|
||||||
@@ -237,6 +237,7 @@ const defaultForm = {
|
|||||||
stor_id: '',
|
stor_id: '',
|
||||||
struct_id: '',
|
struct_id: '',
|
||||||
bill_type: '',
|
bill_type: '',
|
||||||
|
workshop_id: '',
|
||||||
remark: '',
|
remark: '',
|
||||||
biz_date: new Date(),
|
biz_date: new Date(),
|
||||||
create_mode: '',
|
create_mode: '',
|
||||||
@@ -301,7 +302,7 @@ export default {
|
|||||||
},
|
},
|
||||||
[CRUD.HOOK.afterToEdit]() {
|
[CRUD.HOOK.afterToEdit]() {
|
||||||
// 获取入库单明细
|
// 获取入库单明细
|
||||||
crudProductIn.getIODtl({'iostorinv_id': this.form.iostorinv_id}).then(res => {
|
crudProductOut.getIODtl({'iostorinv_id': this.form.iostorinv_id}).then(res => {
|
||||||
this.form.tableData = res
|
this.form.tableData = res
|
||||||
// 将明细变成不可编辑
|
// 将明细变成不可编辑
|
||||||
for (let i = 0; i < this.form.tableData.length; i++) {
|
for (let i = 0; i < this.form.tableData.length; i++) {
|
||||||
@@ -310,25 +311,6 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
[CRUD.HOOK.beforeToEdit]() {
|
|
||||||
this.struct_id = this.crud.form.struct_id
|
|
||||||
this.sect_id = this.crud.form.sect_id
|
|
||||||
crudStructattr.getSectCascader({'stor_id': this.crud.form.stor_id}).then(res => {
|
|
||||||
this.sects = res.content
|
|
||||||
this.form.struct_id = this.search(this.sects, this.struct_id)
|
|
||||||
})
|
|
||||||
},
|
|
||||||
[CRUD.HOOK.afterToView]() {
|
|
||||||
crudProductIn.getIODtl({'bill_code': this.form.bill_code}).then(res => {
|
|
||||||
this.form.tableData = res
|
|
||||||
// 将明细变成不可编辑
|
|
||||||
for (let i = 0; i < this.form.tableData.length; i++) {
|
|
||||||
const row = this.form.tableData[i]
|
|
||||||
this.form.tableData.splice(i, 1, row)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
[CRUD.HOOK.beforeSubmit]() {
|
[CRUD.HOOK.beforeSubmit]() {
|
||||||
// 提交前校验
|
// 提交前校验
|
||||||
if (this.form.tableData.length === 0) {
|
if (this.form.tableData.length === 0) {
|
||||||
@@ -360,16 +342,6 @@ export default {
|
|||||||
this.sects = res.content
|
this.sects = res.content
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
search(object, value) {
|
|
||||||
debugger
|
|
||||||
for (var key in object) {
|
|
||||||
if (object[key].value == value) return [object[key].value];
|
|
||||||
if (object[key].children && Object.keys(object[key].children).length > 0) {
|
|
||||||
var temp = search(object[key].children, value);
|
|
||||||
if (temp) return [object[key].value, temp].flat();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
sectQueryChange(val) {
|
sectQueryChange(val) {
|
||||||
debugger
|
debugger
|
||||||
this.sectProp = val
|
this.sectProp = val
|
||||||
@@ -404,10 +376,9 @@ export default {
|
|||||||
tableChanged(rows) {
|
tableChanged(rows) {
|
||||||
// 对新增的行进行校验不能存在相同物料批次
|
// 对新增的行进行校验不能存在相同物料批次
|
||||||
rows.forEach((item) => {
|
rows.forEach((item) => {
|
||||||
debugger
|
|
||||||
let same_mater = true
|
let same_mater = true
|
||||||
this.form.tableData.forEach((row) => {
|
this.form.tableData.forEach((row) => {
|
||||||
if (row.material_code === item.material_code && row.struct_id === item.struct_id) {
|
if (row.material_code === item.material_code) {
|
||||||
same_mater = false
|
same_mater = false
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -415,7 +386,9 @@ export default {
|
|||||||
item.quality_scode = '01'
|
item.quality_scode = '01'
|
||||||
item.ivt_level = '01'
|
item.ivt_level = '01'
|
||||||
item.is_active = '1'
|
item.is_active = '1'
|
||||||
item.plan_qty = item.canuse_qty
|
item.plan_qty = '1'
|
||||||
|
item.qty_unit_id = item.base_unit_id
|
||||||
|
item.qty_unit_name = item.base_unit_name
|
||||||
this.form.total_qty = parseFloat(this.form.total_qty) + parseFloat(item.plan_qty)
|
this.form.total_qty = parseFloat(this.form.total_qty) + parseFloat(item.plan_qty)
|
||||||
this.form.tableData.splice(-1, 0, item)
|
this.form.tableData.splice(-1, 0, item)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -45,7 +45,7 @@
|
|||||||
@change="crud.toQuery"
|
@change="crud.toQuery"
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in dict.ST_INV_IN_TYPE"
|
v-for="item in dict.ST_INV_OUT_TYPE"
|
||||||
:key="item.value"
|
:key="item.value"
|
||||||
:label="item.label"
|
:label="item.label"
|
||||||
:value="item.value"
|
:value="item.value"
|
||||||
@@ -130,7 +130,7 @@ export default {
|
|||||||
name: 'ViewDialog',
|
name: 'ViewDialog',
|
||||||
components: {},
|
components: {},
|
||||||
mixins: [crud()],
|
mixins: [crud()],
|
||||||
dicts: ['ST_INV_IN_TYPE', 'product_area', 'IO_BILL_STATUS'],
|
dicts: ['ST_INV_OUT_TYPE', 'product_area', 'IO_BILL_STATUS'],
|
||||||
props: {
|
props: {
|
||||||
dialogShow: {
|
dialogShow: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
|
|||||||
@@ -42,7 +42,7 @@
|
|||||||
@change="crud.toQuery"
|
@change="crud.toQuery"
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in dict.ST_INV_IN_TYPE"
|
v-for="item in dict.ST_INV_OUT_TYPE"
|
||||||
:key="item.value"
|
:key="item.value"
|
||||||
:label="item.label"
|
:label="item.label"
|
||||||
:value="item.value"
|
:value="item.value"
|
||||||
@@ -233,7 +233,7 @@ export default {
|
|||||||
},
|
},
|
||||||
mixins: [presenter(), header(), crud()],
|
mixins: [presenter(), header(), crud()],
|
||||||
// 数据字典
|
// 数据字典
|
||||||
dicts: ['IO_BILL_STATUS', 'ST_INV_IN_TYPE', 'product_area', 'ST_INV_CREATE'],
|
dicts: ['IO_BILL_STATUS', 'ST_INV_OUT_TYPE', 'product_area', 'ST_INV_CREATE'],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
height: document.documentElement.clientHeight - 180 + 'px;',
|
height: document.documentElement.clientHeight - 180 + 'px;',
|
||||||
@@ -306,7 +306,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
bill_typeFormat(row, column) {
|
bill_typeFormat(row, column) {
|
||||||
return this.dict.label.ST_INV_IN_TYPE[row.bill_type]
|
return this.dict.label.ST_INV_OUT_TYPE[row.bill_type]
|
||||||
},
|
},
|
||||||
toView(row) {
|
toView(row) {
|
||||||
this.mstrow = row
|
this.mstrow = row
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import request from '@/utils/request'
|
|||||||
|
|
||||||
export function add(data) {
|
export function add(data) {
|
||||||
return request({
|
return request({
|
||||||
url: 'api/productOut',
|
url: '/api/out/stIvtIostorinvYl',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@@ -10,7 +10,7 @@ export function add(data) {
|
|||||||
|
|
||||||
export function del(ids) {
|
export function del(ids) {
|
||||||
return request({
|
return request({
|
||||||
url: 'api/productOut/',
|
url: '/api/out/stIvtIostorinvYl/',
|
||||||
method: 'delete',
|
method: 'delete',
|
||||||
data: ids
|
data: ids
|
||||||
})
|
})
|
||||||
@@ -18,211 +18,211 @@ export function del(ids) {
|
|||||||
|
|
||||||
export function edit(data) {
|
export function edit(data) {
|
||||||
return request({
|
return request({
|
||||||
url: 'api/productOut',
|
url: '/api/out/stIvtIostorinvYl/update',
|
||||||
method: 'put',
|
|
||||||
data
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
export function getOutBillDtl(data) {
|
|
||||||
return request({
|
|
||||||
url: '/api/productOut/getOutBillDtl',
|
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function getOutBillDis(data) {
|
|
||||||
|
export function getIODtl(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/getOutBillDis',
|
url: '/api/out/stIvtIostorinvYl/getIODtl',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
export function getIODis(data) {
|
||||||
|
return request({
|
||||||
|
url: '/api/out/stIvtIostorinvYl/getIODis',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function getOutBillDisDtl(params) {
|
export function getOutBillDisDtl(params) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/getOutBillDisDtl',
|
url: '//api/out/stIvtIostorinvYl/getOutBillDisDtl',
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params
|
params
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function getOutBillTask(params) {
|
export function getOutBillTask(params) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/getOutBillTask',
|
url: '//api/out/stIvtIostorinvYl/getOutBillTask',
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params
|
params
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function getInvTypes() {
|
export function getInvTypes() {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/getInvTypes',
|
url: '//api/out/stIvtIostorinvYl/getInvTypes',
|
||||||
method: 'get'
|
method: 'get'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function insertDtl(data) {
|
export function insertDtl(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/insertDtl',
|
url: '//api/out/stIvtIostorinvYl/insertDtl',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function allDiv(data) {
|
export function allDiv(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/allDiv',
|
url: '//api/out/stIvtIostorinvYl/allDiv',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function allDivOne(data) {
|
export function allDivOne(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/allDivOne',
|
url: '//api/out/stIvtIostorinvYl/allDivOne',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function allCancel(data) {
|
export function allCancel(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/allCancel',
|
url: '//api/out/stIvtIostorinvYl/allCancel',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function oneCancel(data) {
|
export function oneCancel(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/oneCancel',
|
url: '//api/out/stIvtIostorinvYl/oneCancel',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function setPoint(data) {
|
export function setPoint(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/setPoint',
|
url: '//api/out/stIvtIostorinvYl/setPoint',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function oneSetPoint(data) {
|
export function oneSetPoint(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/oneSetPoint',
|
url: '//api/out/stIvtIostorinvYl/oneSetPoint',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function getStructIvt(params) {
|
export function getStructIvt(params) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/getStructIvt',
|
url: '//api/out/stIvtIostorinvYl/getStructIvt',
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params
|
params
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function manualDiv(data) {
|
export function manualDiv(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/manualDiv',
|
url: '//api/out/stIvtIostorinvYl/manualDiv',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function confirm(data) {
|
export function confirm(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/confirm',
|
url: '//api/out/stIvtIostorinvYl/confirm',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function issueTask(data) {
|
export function issueTask(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/issueTask',
|
url: '//api/out/stIvtIostorinvYl/issueTask',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function finishTask(data) {
|
export function finishTask(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/finishTask',
|
url: '//api/out/stIvtIostorinvYl/finishTask',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function cancleTaskfinish(data) {
|
export function cancleTaskfinish(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/cancleTaskfinish',
|
url: '//api/out/stIvtIostorinvYl/cancleTaskfinish',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function paramByCodeType(data) {
|
export function paramByCodeType(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/paramByCodeType',
|
url: '//api/out/stIvtIostorinvYl/paramByCodeType',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function schAreaType(data) {
|
export function schAreaType(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/schAreaType',
|
url: '//api/out/stIvtIostorinvYl/schAreaType',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function backConfirm(data) {
|
export function backConfirm(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/backConfirm',
|
url: '//api/out/stIvtIostorinvYl/backConfirm',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function getType() {
|
export function getType() {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/getType',
|
url: '//api/out/stIvtIostorinvYl/getType',
|
||||||
method: 'get'
|
method: 'get'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function moneySubmit(data) {
|
export function moneySubmit(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/moneySubmit',
|
url: '//api/out/stIvtIostorinvYl/moneySubmit',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function getDisNum(data) {
|
export function getDisNum(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/getDisNum',
|
url: '//api/out/stIvtIostorinvYl/getDisNum',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function queryBox(data) {
|
export function queryBox(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/queryBox',
|
url: '//api/out/stIvtIostorinvYl/queryBox',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function getOutBillTask2(data) {
|
export function getOutBillTask2(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/getOutBillTask2',
|
url: '//api/out/stIvtIostorinvYl/getOutBillTask2',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function cancelTask(data) {
|
export function cancelTask(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/cancelTask',
|
url: '//api/out/stIvtIostorinvYl/cancelTask',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function allSetPoint(data) {
|
export function allSetPoint(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/allSetPoint',
|
url: '//api/out/stIvtIostorinvYl/allSetPoint',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export function oneSetPoint2(data) {
|
export function oneSetPoint2(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/api/productOut/oneSetPoint2',
|
url: '//api/out/stIvtIostorinvYl/oneSetPoint2',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export default { add, edit, del, allDiv, allCancel, getOutBillDtl, getOutBillDis, setPoint, oneSetPoint, getOutBillTask, getStructIvt, manualDiv, confirm, issueTask, finishTask, cancleTaskfinish, getInvTypes, paramByCodeType, schAreaType, backConfirm, getOutBillDisDtl, getType, allDivOne, moneySubmit, getDisNum, queryBox, getOutBillTask2, oneCancel, cancelTask, allSetPoint, oneSetPoint2 }
|
export default { add, edit, del, allDiv, allCancel, getIODtl, getIODis, setPoint, oneSetPoint, getOutBillTask, getStructIvt, manualDiv, confirm, issueTask, finishTask, cancleTaskfinish, getInvTypes, paramByCodeType, schAreaType, backConfirm, getOutBillDisDtl, getType, allDivOne, moneySubmit, getDisNum, queryBox, getOutBillTask2, oneCancel, cancelTask, allSetPoint, oneSetPoint2 }
|
||||||
|
|||||||
Reference in New Issue
Block a user