|
|
@ -1,12 +1,14 @@
|
|
|
|
package com.glxp.api.controller.collect;
|
|
|
|
package com.glxp.api.controller.collect;
|
|
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
|
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
import com.github.pagehelper.PageInfo;
|
|
|
|
import com.github.pagehelper.PageInfo;
|
|
|
|
import com.glxp.api.common.enums.ResultEnum;
|
|
|
|
import com.glxp.api.common.enums.ResultEnum;
|
|
|
|
import com.glxp.api.common.res.BaseResponse;
|
|
|
|
import com.glxp.api.common.res.BaseResponse;
|
|
|
|
import com.glxp.api.common.util.ResultVOUtils;
|
|
|
|
import com.glxp.api.common.util.ResultVOUtils;
|
|
|
|
import com.glxp.api.controller.BaseController;
|
|
|
|
import com.glxp.api.controller.BaseController;
|
|
|
|
import com.glxp.api.entity.collect.IoCollectOrder;
|
|
|
|
import com.glxp.api.entity.collect.IoCollectOrder;
|
|
|
|
|
|
|
|
import com.glxp.api.entity.collect.IoCollectOrderCodeMan;
|
|
|
|
import com.glxp.api.exception.JsonException;
|
|
|
|
import com.glxp.api.exception.JsonException;
|
|
|
|
import com.glxp.api.req.collect.CollectOrderCodeManRequest;
|
|
|
|
import com.glxp.api.req.collect.CollectOrderCodeManRequest;
|
|
|
|
import com.glxp.api.req.inout.AddTagCodeReqeust;
|
|
|
|
import com.glxp.api.req.inout.AddTagCodeReqeust;
|
|
|
@ -17,6 +19,7 @@ import com.glxp.api.res.inout.VailCodeResultResponse;
|
|
|
|
import com.glxp.api.res.inout.VailTagResultResponse;
|
|
|
|
import com.glxp.api.res.inout.VailTagResultResponse;
|
|
|
|
import com.glxp.api.service.collect.IoCollectOrderCodeManService;
|
|
|
|
import com.glxp.api.service.collect.IoCollectOrderCodeManService;
|
|
|
|
import com.glxp.api.service.collect.IoCollectOrderService;
|
|
|
|
import com.glxp.api.service.collect.IoCollectOrderService;
|
|
|
|
|
|
|
|
import com.glxp.api.util.IntUtil;
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
import org.springframework.validation.BindingResult;
|
|
|
|
import org.springframework.validation.BindingResult;
|
|
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
|
@ -27,7 +30,9 @@ import org.springframework.web.bind.annotation.RestController;
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
import javax.validation.Valid;
|
|
|
|
import javax.validation.Valid;
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
|
|
|
import java.util.HashMap;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
|
|
|
|
@Slf4j
|
|
|
|
@Slf4j
|
|
|
|
@RestController
|
|
|
|
@RestController
|
|
|
@ -88,6 +93,7 @@ public class IoCollectOrderCodeManController extends BaseController {
|
|
|
|
IoCollectOrder collectOrder = null;
|
|
|
|
IoCollectOrder collectOrder = null;
|
|
|
|
VailTagResultResponse vailTagResultResponse = new VailTagResultResponse();
|
|
|
|
VailTagResultResponse vailTagResultResponse = new VailTagResultResponse();
|
|
|
|
List<VailCodeResultResponse> vailCodeResultResponses = new ArrayList<>();
|
|
|
|
List<VailCodeResultResponse> vailCodeResultResponses = new ArrayList<>();
|
|
|
|
|
|
|
|
List<String> vailCodesList = new ArrayList<String>();
|
|
|
|
if (CollUtil.isNotEmpty(addTagCodeReqeust.getCodeList())) {
|
|
|
|
if (CollUtil.isNotEmpty(addTagCodeReqeust.getCodeList())) {
|
|
|
|
for (String code : addTagCodeReqeust.getCodeList()) {
|
|
|
|
for (String code : addTagCodeReqeust.getCodeList()) {
|
|
|
|
VailCodeResultResponse vailCodeResultResponse = new VailCodeResultResponse();
|
|
|
|
VailCodeResultResponse vailCodeResultResponse = new VailCodeResultResponse();
|
|
|
@ -97,21 +103,87 @@ public class IoCollectOrderCodeManController extends BaseController {
|
|
|
|
try {
|
|
|
|
try {
|
|
|
|
collectOrder = collectOrderCodeManService.prescribeTagCode(addTagCodeReqeust);
|
|
|
|
collectOrder = collectOrderCodeManService.prescribeTagCode(addTagCodeReqeust);
|
|
|
|
} catch (JsonException e) {
|
|
|
|
} catch (JsonException e) {
|
|
|
|
|
|
|
|
vailCodeResultResponse.setErrMsg(e.getMessage());
|
|
|
|
if (e.getCode() == 502) {
|
|
|
|
if (e.getCode() == 502) {
|
|
|
|
vailCodeResultResponse.setStatus(3);
|
|
|
|
vailCodeResultResponse.setStatus(3);
|
|
|
|
|
|
|
|
} else if (e.getCode() == 503) {
|
|
|
|
|
|
|
|
// 单据扫码数量大于1 的需要拆零确认
|
|
|
|
|
|
|
|
String msg = e.getMessage();
|
|
|
|
|
|
|
|
String[] data = msg.split(";");
|
|
|
|
|
|
|
|
String count = data[1];
|
|
|
|
|
|
|
|
if (IntUtil.value(count) > 1) {
|
|
|
|
|
|
|
|
vailCodeResultResponse.setStatus(4);
|
|
|
|
|
|
|
|
vailCodeResultResponse.setBizId(data[0]);
|
|
|
|
|
|
|
|
vailCodeResultResponse.setErrMsg(data[2]);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
vailCodesList.add(code);
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
vailCodeResultResponse.setStatus(2);
|
|
|
|
vailCodeResultResponse.setStatus(2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
vailCodeResultResponse.setErrMsg(e.getMessage());
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
vailCodeResultResponses.add(vailCodeResultResponse);
|
|
|
|
vailCodeResultResponses.add(vailCodeResultResponse);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
vailTagResultResponse.setCollectOrder(collectOrder);
|
|
|
|
vailTagResultResponse.setCollectOrder(collectOrder);
|
|
|
|
vailTagResultResponse.setVailCodeResultResponses(vailCodeResultResponses);
|
|
|
|
vailTagResultResponse.setVailCodeResultResponses(vailCodeResultResponses);
|
|
|
|
|
|
|
|
String errMsg = countSameErrMsg(vailCodeResultResponses);
|
|
|
|
|
|
|
|
if (StrUtil.isNotEmpty(errMsg)) {
|
|
|
|
|
|
|
|
return ResultVOUtils.error(500, errMsg);
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
addTagCodeReqeust.setCodeList(vailCodesList);
|
|
|
|
|
|
|
|
addTagCodeReqeust.setInsert(true);
|
|
|
|
|
|
|
|
for (String code : vailCodesList) {
|
|
|
|
|
|
|
|
addTagCodeReqeust.setCode(code);
|
|
|
|
|
|
|
|
collectOrderCodeManService.prescribeTagCode(addTagCodeReqeust);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
return ResultVOUtils.success(vailTagResultResponse);
|
|
|
|
return ResultVOUtils.success(vailTagResultResponse);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* @param
|
|
|
|
|
|
|
|
* @return
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
@PostMapping("/udiwms/ioSplit/collect/order/batchUpdateCode")
|
|
|
|
|
|
|
|
public BaseResponse batchUpdate(@RequestBody AddTagCodeReqeust addTagCodeReqeust,
|
|
|
|
|
|
|
|
BindingResult bindingResult) {
|
|
|
|
|
|
|
|
if (bindingResult.hasErrors()) {
|
|
|
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
List<IoCollectOrderCodeMan> collectOrderCodeMEN = addTagCodeReqeust.getCollectOrderCodeManList();
|
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(collectOrderCodeMEN)) {
|
|
|
|
|
|
|
|
for (IoCollectOrderCodeMan collectOrderCodeMan : collectOrderCodeMEN) {
|
|
|
|
|
|
|
|
collectOrderCodeManService.updateById(collectOrderCodeMan);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
return ResultVOUtils.success("更新成功!");
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
return ResultVOUtils.error("数据不能为空");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public String countSameErrMsg(List<VailCodeResultResponse> vailCodeResultResponses) {
|
|
|
|
|
|
|
|
Map<String, Integer> errMsgCountMap = new HashMap<>();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for (VailCodeResultResponse response : vailCodeResultResponses) {
|
|
|
|
|
|
|
|
String errMsg = response.getCode().substring(0, 7) + ";" + response.getErrMsg();
|
|
|
|
|
|
|
|
if (errMsgCountMap.containsKey(errMsg)) {
|
|
|
|
|
|
|
|
errMsgCountMap.put(errMsg, errMsgCountMap.get(errMsg) + 1);
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
errMsgCountMap.put(errMsg, 1);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for (Map.Entry<String, Integer> entry : errMsgCountMap.entrySet()) {
|
|
|
|
|
|
|
|
String key = entry.getKey();
|
|
|
|
|
|
|
|
Integer value = entry.getValue();
|
|
|
|
|
|
|
|
if (value > 1) {
|
|
|
|
|
|
|
|
return key.substring(8);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
return null;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@PostMapping("/udiwms/ioSplit/collect/code/remove")
|
|
|
|
@PostMapping("/udiwms/ioSplit/collect/code/remove")
|
|
|
|
public BaseResponse removeCode(@RequestBody @Valid DeleteTageCodeRequest deleteTageCodeRequest,
|
|
|
|
public BaseResponse removeCode(@RequestBody @Valid DeleteTageCodeRequest deleteTageCodeRequest,
|
|
|
|