拆托-按顺序生成流水号拆分流水号
parent
d61a33d5db
commit
de24babbc7
|
|
@ -31,4 +31,7 @@ import java.util.List;
|
||||||
public interface ItemKeyRepository extends JpaRepository<ItemKey, Long>, JpaSpecificationExecutor<ItemKey> {
|
public interface ItemKeyRepository extends JpaRepository<ItemKey, Long>, JpaSpecificationExecutor<ItemKey> {
|
||||||
@Query(value = "SELECT ik FROM ItemKey ik WHERE ik.item.id=?1 and ik.propC1=?2 and ik.propC2=?3 and ik.propC3=?4 and ik.propC4=?5 and ik.propC5=?6 and ik.propC6=?7")
|
@Query(value = "SELECT ik FROM ItemKey ik WHERE ik.item.id=?1 and ik.propC1=?2 and ik.propC2=?3 and ik.propC3=?4 and ik.propC4=?5 and ik.propC5=?6 and ik.propC6=?7")
|
||||||
ItemKey getByItemKey(Long id, String propC1, String propC2, String propC3, String propC4, String propC5, String propC6);
|
ItemKey getByItemKey(Long id, String propC1, String propC2, String propC3, String propC4, String propC5, String propC6);
|
||||||
|
|
||||||
|
@Query(value = "SELECT inv.itemKey FROM Inventory inv WHERE inv.id in ?1")
|
||||||
|
List<ItemKey> getByInv(List<Long> ids);
|
||||||
}
|
}
|
||||||
|
|
@ -16,6 +16,8 @@
|
||||||
package com.youchain.businessdata.rest;
|
package com.youchain.businessdata.rest;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.youchain.annotation.AnonymousAccess;
|
||||||
import com.youchain.annotation.Log;
|
import com.youchain.annotation.Log;
|
||||||
import com.youchain.basicdata.domain.Item;
|
import com.youchain.basicdata.domain.Item;
|
||||||
import com.youchain.businessdata.domain.ItemKey;
|
import com.youchain.businessdata.domain.ItemKey;
|
||||||
|
|
@ -24,6 +26,7 @@ import com.youchain.businessdata.service.dto.ItemKeyDto;
|
||||||
import com.youchain.businessdata.service.dto.ItemKeyQueryCriteria;
|
import com.youchain.businessdata.service.dto.ItemKeyQueryCriteria;
|
||||||
import com.youchain.businessdata.service.mapstruct.ItemKeyMapper;
|
import com.youchain.businessdata.service.mapstruct.ItemKeyMapper;
|
||||||
import com.youchain.exception.handler.ApiError;
|
import com.youchain.exception.handler.ApiError;
|
||||||
|
import com.youchain.exception.handler.ApiResult;
|
||||||
import com.youchain.modules.system.domain.Dept;
|
import com.youchain.modules.system.domain.Dept;
|
||||||
import com.youchain.utils.UserUtils;
|
import com.youchain.utils.UserUtils;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
|
|
@ -98,5 +101,32 @@ public class ItemKeyController {
|
||||||
itemKeyService.deleteAll(ids);
|
itemKeyService.deleteAll(ids);
|
||||||
return new ResponseEntity<>(HttpStatus.OK);
|
return new ResponseEntity<>(HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
@PostMapping("/getItemKey")
|
||||||
|
@Log("拆托-查询原流水号")
|
||||||
|
@AnonymousAccess
|
||||||
|
public ResponseEntity<Object> getItemKey(@RequestBody List<Long> ids) {
|
||||||
|
ApiResult apiResult=itemKeyService.getItemKeyByInv(ids);
|
||||||
|
return new ResponseEntity<>(apiResult, HttpStatus.valueOf(apiResult.getStatus()));
|
||||||
|
}
|
||||||
|
@PostMapping("/devan")
|
||||||
|
@Log("拆托-流水号")
|
||||||
|
@AnonymousAccess
|
||||||
|
public ResponseEntity<Object> devan(@RequestBody JSONObject req) {
|
||||||
|
ApiResult apiResult=itemKeyService.devan(req);
|
||||||
|
return new ResponseEntity<>(apiResult, HttpStatus.valueOf(apiResult.getStatus()));
|
||||||
|
}
|
||||||
|
@PostMapping("/devanPropC6")
|
||||||
|
@Log("拆托-生成流水号")
|
||||||
|
@AnonymousAccess
|
||||||
|
public ResponseEntity<Object> devanPropC6(@RequestBody JSONObject req) {
|
||||||
|
ApiResult apiResult=itemKeyService.devanPropC6(req);
|
||||||
|
return new ResponseEntity<>(apiResult, HttpStatus.valueOf(apiResult.getStatus()));
|
||||||
|
}
|
||||||
|
@PostMapping("/devanning")
|
||||||
|
@Log("拆托-拆托确认")
|
||||||
|
@AnonymousAccess
|
||||||
|
public ResponseEntity<Object> devanning(@RequestBody JSONObject req) {
|
||||||
|
ApiResult apiResult=itemKeyService.devanning(req);
|
||||||
|
return new ResponseEntity<>(apiResult, HttpStatus.valueOf(apiResult.getStatus()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -15,10 +15,12 @@
|
||||||
*/
|
*/
|
||||||
package com.youchain.businessdata.service;
|
package com.youchain.businessdata.service;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.youchain.basicdata.domain.Item;
|
import com.youchain.basicdata.domain.Item;
|
||||||
import com.youchain.businessdata.domain.ItemKey;
|
import com.youchain.businessdata.domain.ItemKey;
|
||||||
import com.youchain.businessdata.service.dto.ItemKeyDto;
|
import com.youchain.businessdata.service.dto.ItemKeyDto;
|
||||||
import com.youchain.businessdata.service.dto.ItemKeyQueryCriteria;
|
import com.youchain.businessdata.service.dto.ItemKeyQueryCriteria;
|
||||||
|
import com.youchain.exception.handler.ApiResult;
|
||||||
import com.youchain.modules.system.domain.Dept;
|
import com.youchain.modules.system.domain.Dept;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
@ -86,4 +88,13 @@ public interface ItemKeyService {
|
||||||
ItemKey getItemKey(Item item, String propC1,String orderNumber);
|
ItemKey getItemKey(Item item, String propC1,String orderNumber);
|
||||||
|
|
||||||
ItemKey getItemKey(Item item, String propC1,String propC2,String propC3,String propC4,String propC5,String propC6);
|
ItemKey getItemKey(Item item, String propC1,String propC2,String propC3,String propC4,String propC5,String propC6);
|
||||||
|
|
||||||
|
ApiResult getItemKeyByInv(List<Long> ids);
|
||||||
|
|
||||||
|
/** 拆托-流水号*/
|
||||||
|
ApiResult devan(JSONObject req);
|
||||||
|
/** 拆托-生成流水号*/
|
||||||
|
ApiResult devanPropC6(JSONObject req);
|
||||||
|
/** 拆托-拆托确认*/
|
||||||
|
ApiResult devanning(JSONObject req);
|
||||||
}
|
}
|
||||||
|
|
@ -651,12 +651,13 @@ public class AgvTaskServiceImpl implements AgvTaskService {
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public ApiResult addAgvAsn() {
|
public ApiResult addAgvAsn() {
|
||||||
|
String goodType="BCP";
|
||||||
//半成品入库
|
//半成品入库
|
||||||
List<Map<String,Object>> asnDetailSumQty=asnDetailRepository.findByAsn(BizStatus.RECEIVING,"SM_RK");
|
List<Map<String,Object>> asnDetailSumQty=asnDetailRepository.findByAsn(BizStatus.RECEIVING,"SM_RK");
|
||||||
List<Map<String,Object>> taskSumQty=taskRepository.findBySumPlanQty(BizStatus.RECEIVING,1,"SMGS");
|
List<Map<String,Object>> taskSumQty=taskRepository.findBySumPlanQty(BizStatus.RECEIVING,1,goodType);
|
||||||
if (taskSumQty.size()>1){
|
if (taskSumQty.size()>1){
|
||||||
//异常
|
//异常
|
||||||
List<Task> taskList=taskRepository.findByItemType(BizStatus.RECEIVING,1,"SMGS");
|
List<Task> taskList=taskRepository.findByItemType(BizStatus.RECEIVING,1,goodType);
|
||||||
for (int i = 0; i < taskList.size(); i++) {
|
for (int i = 0; i < taskList.size(); i++) {
|
||||||
Task task=taskList.get(i);
|
Task task=taskList.get(i);
|
||||||
task.setTaskStatus(BizStatus.UNUSUAL);
|
task.setTaskStatus(BizStatus.UNUSUAL);
|
||||||
|
|
@ -680,10 +681,10 @@ public class AgvTaskServiceImpl implements AgvTaskService {
|
||||||
if (taskQty>=item.getExtendD1()){
|
if (taskQty>=item.getExtendD1()){
|
||||||
//入库
|
//入库
|
||||||
//查询入库库位
|
//查询入库库位
|
||||||
List<Point> pointList = pointRepository.findByAreaCode("SMGS");
|
List<Point> pointList = pointRepository.findByAreaCode(goodType);
|
||||||
if (pointList.size()>0){
|
if (pointList.size()>0){
|
||||||
Point point=pointList.get(0);
|
Point point=pointList.get(0);
|
||||||
List<Task> taskList=taskRepository.findByItemType(BizStatus.RECEIVING,1,"SMGS");
|
List<Task> taskList=taskRepository.findByItemType(BizStatus.RECEIVING,1,goodType);
|
||||||
for (int i = 0; i < taskList.size(); i++) {
|
for (int i = 0; i < taskList.size(); i++) {
|
||||||
Task task=taskList.get(i);
|
Task task=taskList.get(i);
|
||||||
//更新Task任务
|
//更新Task任务
|
||||||
|
|
|
||||||
|
|
@ -15,8 +15,13 @@
|
||||||
*/
|
*/
|
||||||
package com.youchain.businessdata.service.impl;
|
package com.youchain.businessdata.service.impl;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.youchain.basicdata.domain.Item;
|
import com.youchain.basicdata.domain.Item;
|
||||||
|
import com.youchain.businessdata.domain.Inventory;
|
||||||
import com.youchain.businessdata.domain.ItemKey;
|
import com.youchain.businessdata.domain.ItemKey;
|
||||||
|
import com.youchain.businessdata.domain.Task;
|
||||||
|
import com.youchain.exception.handler.ApiResult;
|
||||||
import com.youchain.utils.FileUtil;
|
import com.youchain.utils.FileUtil;
|
||||||
import com.youchain.utils.PageUtil;
|
import com.youchain.utils.PageUtil;
|
||||||
import com.youchain.utils.QueryHelp;
|
import com.youchain.utils.QueryHelp;
|
||||||
|
|
@ -31,14 +36,12 @@ import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import org.springframework.data.domain.Page;
|
import org.springframework.data.domain.Page;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
import java.util.*;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import javax.persistence.EntityManager;
|
import javax.persistence.EntityManager;
|
||||||
import javax.persistence.Query;
|
import javax.persistence.Query;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.LinkedHashMap;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @website https://eladmin.vip
|
* @website https://eladmin.vip
|
||||||
|
|
@ -168,5 +171,75 @@ public class ItemKeyServiceImpl implements ItemKeyService {
|
||||||
return itemKey;
|
return itemKey;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ApiResult getItemKeyByInv(List<Long> ids) {
|
||||||
|
StringBuffer data = new StringBuffer();
|
||||||
|
List<ItemKey> itemKeyList=itemKeyRepository.getByInv(ids);
|
||||||
|
for (int i = 0; i < itemKeyList.size(); i++) {
|
||||||
|
ItemKey itemKey=itemKeyList.get(i);
|
||||||
|
if (data.length()<1){
|
||||||
|
data.append(itemKey.getPropC6());
|
||||||
|
}else {
|
||||||
|
data.append(","+itemKey.getPropC6());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ApiResult.fail(200,"操作成功",data);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ApiResult devan(JSONObject req) {
|
||||||
|
String textPropC6=req.getString("textPropC6");
|
||||||
|
String text1PropC6=req.getString("text1PropC6");
|
||||||
|
String[] arrPropC6=textPropC6.split(",");
|
||||||
|
List<String> arr1PropC6= Arrays.asList(text1PropC6.split(","));
|
||||||
|
List<String> arr2PropC6=new ArrayList<>();
|
||||||
|
for (int i = 0; i < arrPropC6.length; i++) {
|
||||||
|
boolean flag=true;
|
||||||
|
for (int j = 0; j < arr1PropC6.size(); j++) {
|
||||||
|
if (arrPropC6[i].toString().equals(arr1PropC6.get(j).toString())){
|
||||||
|
flag=false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (flag) {
|
||||||
|
arr2PropC6.add(arrPropC6[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
JSONObject data=new JSONObject();
|
||||||
|
data.put("textPropC6",arrPropC6);
|
||||||
|
data.put("text1PropC6",arr1PropC6);
|
||||||
|
data.put("text2PropC6",arr2PropC6);
|
||||||
|
System.out.println("返回:"+data);
|
||||||
|
return ApiResult.fail(200, "操作成功", data);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ApiResult devanPropC6(JSONObject req) {
|
||||||
|
String startPropC6=req.getString("startPropC6");
|
||||||
|
String endPropC6=req.getString("endPropC6");
|
||||||
|
int startPropInt = Integer.parseInt(startPropC6, 16);
|
||||||
|
int endPropInt = Integer.parseInt(endPropC6, 16);
|
||||||
|
StringBuffer text1PropC6=new StringBuffer();
|
||||||
|
for (int i = startPropInt; i <endPropInt ; i++) {
|
||||||
|
String hex = String.format("%04X", i); // %04X表示最小宽度为4,使用大写字母的16进制
|
||||||
|
if (text1PropC6.length()<1){
|
||||||
|
text1PropC6.append(hex);
|
||||||
|
}else {
|
||||||
|
text1PropC6.append(","+hex);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
JSONObject data = new JSONObject();
|
||||||
|
data.put("text1PropC6", text1PropC6);
|
||||||
|
System.out.println("data:"+data);
|
||||||
|
return ApiResult.fail(200, "操作成功", data);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ApiResult devanning(JSONObject req) {
|
||||||
|
System.out.println("req:"+req);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue