|
|
@@ -212,8 +212,8 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
AskGoods askGoods1 = askGoodsMapper.getAsknInfo(askGoods); //要货单数量
|
|
|
int alreadyNum = askGoodsMapper.getAskInfoNumVitrual(askGoods);//已扫描总数
|
|
|
int inventoryAlready = askGoodsMapper.getInventoryAlready(askGoods);//库存已扫描数量
|
|
|
- Double inventorySurplus = (Double.parseDouble(inventory.getAmount()) - Double.parseDouble(inventory.getAmountLock())) - inventoryAlready; //库存剩余数量
|
|
|
- Double surplusNum = Double.parseDouble(askGoods1.getNum()) - Double.parseDouble(askGoods1.getOutNum()) - alreadyNum; //剩余要扫描数量
|
|
|
+ Double inventorySurplus = DateUtil.formatDouble1((Double.parseDouble(inventory.getAmount()) - Double.parseDouble(inventory.getAmountLock())) - inventoryAlready); //库存剩余数量
|
|
|
+ Double surplusNum = DateUtil.formatDouble1(Double.parseDouble(askGoods1.getNum()) - Double.parseDouble(askGoods1.getOutNum()) - alreadyNum); //剩余要扫描数量
|
|
|
|
|
|
if(Double.doubleToLongBits(surplusNum) >= Double.doubleToLongBits(inventorySurplus)){
|
|
|
askGoods.setNum(String.valueOf(inventorySurplus));
|
|
|
@@ -237,6 +237,20 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
return map;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public Map<String, Object> addAskGoodsVitrualMinus(AskGoods askGoods) {
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ try{
|
|
|
+ askGoodsMapper.addAskGoodsVitrual(askGoods);
|
|
|
+ map.put("msg", "200");
|
|
|
+ }catch (Exception e){
|
|
|
+ e.printStackTrace();
|
|
|
+ map.put("msg", "500");
|
|
|
+ map.put("errMsg", "失败");
|
|
|
+ }
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public Map<String, Object> OutOfLibrary(String uniqueCode, String type, String askGoodsId, String name) {
|
|
|
@@ -251,11 +265,36 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
for(AskGoods askGoods : list){
|
|
|
askGoods.setStorageCode(removalCode);
|
|
|
askGoods.setCompanyNumber(askGoods.getAccountSleeve());
|
|
|
+ String materialId = askGoodsMapper.getMaterialId(askGoods.getWllbCode());//查询物料id
|
|
|
Inventory inventory = askGoodsMapper.getInventory(askGoods);//查询库存数量
|
|
|
if(inventory == null){
|
|
|
// throw new Exception("库存不存在");
|
|
|
// System.out.println("库存不存在");
|
|
|
- continue;
|
|
|
+ //查询物料信息
|
|
|
+ MaterialClass material = warehousingMapper.getMaterial(new Notice().setMaterialCode(askGoods.getWllbCode()));
|
|
|
+
|
|
|
+ inventory = new Inventory()
|
|
|
+ .setStorageLocationCode(askGoods.getStorageLocationCode())
|
|
|
+ .setAmount("0")
|
|
|
+ .setWllbClass(material.getWllbClass())
|
|
|
+ .setMaterialId(material.getTldId())
|
|
|
+ .setWllbCode(material.getWllbCode())
|
|
|
+ .setAccountSleeve(askGoods.getAccountSleeve())
|
|
|
+ .setWbs(askGoods.getWbs())
|
|
|
+ .setProducDate(askGoods.getProducDate())
|
|
|
+ .setProducBatch("19700101")
|
|
|
+ .setSupplierId(askGoods.getSupplierId())
|
|
|
+ .setSerial(askGoods.getSerial());
|
|
|
+ if(material.getPartType().equals("半成品") || material.getPartType().equals("产成品")) {
|
|
|
+ inventory.setSupplierId("EC13437");
|
|
|
+ if(askGoods.getAccountSleeve().equals("8130")){
|
|
|
+ inventory.setSerial("000000");
|
|
|
+ } else if(askGoods.getAccountSleeve().equals("8400")){
|
|
|
+ inventory.setSerial("100000");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ askGoodsMapper.addInventory(inventory);
|
|
|
+ inventory.setId(inventory.getId());
|
|
|
}
|
|
|
//如果出库库存等于虚拟表库存则删除此库存
|
|
|
if(Double.doubleToLongBits(Double.parseDouble(askGoods.getNum())) == Double.doubleToLongBits(Double.parseDouble(inventory.getAmount()))){
|
|
|
@@ -264,7 +303,6 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
inventory.setAmount(askGoods.getNum());
|
|
|
askGoodsMapper.updateInventory(inventory);
|
|
|
}
|
|
|
- String materialId = askGoodsMapper.getMaterialId(askGoods.getWllbCode());//查询物料id
|
|
|
AskGoods askGoods1 = askGoodsMapper.getAskDetailed(askGoodsId, materialId, askGoods.getEntryNumber());//查询要料申请单内容
|
|
|
ReturRemoval returRemoval = new ReturRemoval()
|
|
|
.setMaterialId(materialId)
|
|
|
@@ -287,7 +325,8 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
.setRemovalCode(removalCode)
|
|
|
.setSourceType(askGoods3.getSourceType())
|
|
|
.setMoveType(askGoods3.getMoveType())
|
|
|
- .setName(name);
|
|
|
+ .setName(name)
|
|
|
+ .setRequestTypeName(askGoods3.getRequestTypeName());
|
|
|
askGoodsMapper.addReturnGsRemovalF(returRemoval1);//新增返回gs数据父表信息
|
|
|
map.put("data", askGoods3.getAskGoodsId());
|
|
|
// } else {
|
|
|
@@ -321,6 +360,12 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
List<Map<String, Object>> mapList = askGoodsMapper.plugOutRemoval(removalCode);
|
|
|
if(mapList.size() >0 ) {
|
|
|
JSONObject strJson = new JSONObject();
|
|
|
+ int isRed = 0;
|
|
|
+ if(mapList.get(0).get("requestTypeName").toString().equals("跨越退料")){
|
|
|
+ isRed = 2;
|
|
|
+ } else {
|
|
|
+ isRed = 0;
|
|
|
+ }
|
|
|
//父表
|
|
|
strJson.put("GIReqBillID", mapList.get(0).get("askGoodsId").toString());//要货单id
|
|
|
strJson.put("WMSID", mapList.get(0).get("id").toString());//出库单id
|
|
|
@@ -329,7 +374,7 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
strJson.put("SourceBillDate",DateUtil.dateConversion(mapList.get(0).get("scrq").toString()));//业务日期
|
|
|
strJson.put("SourceType", mapList.get(0).get("sourceType").toString());//来源类型 8
|
|
|
strJson.put("MoveType", mapList.get(0).get("moveType").toString());//移动类型
|
|
|
- strJson.put("IsRed", 0);//是否红单1
|
|
|
+ strJson.put("IsRed", isRed);//是否红单1 2
|
|
|
if (realName == null || realName == ""){
|
|
|
realName = "李兆峰" ;
|
|
|
}
|
|
|
@@ -798,10 +843,9 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
JSONObject returnData = new JSONObject();
|
|
|
List<JSONObject> retunList = new LinkedList<>();
|
|
|
JSONObject ReqOutStocks = new JSONObject();
|
|
|
- JSONObject BillItems = new JSONObject();
|
|
|
List<JSONObject> list2 = new LinkedList<>();
|
|
|
for (Map<String, Object> map : askGoodsMapper.getRemovalz(mapList.get(0).get("askGoodsId").toString(), warehouseWhere)) {
|
|
|
-
|
|
|
+ JSONObject BillItems = new JSONObject();
|
|
|
BillItems.put("WMSItemID", map.get("id"));//分录ID
|
|
|
BillItems.put("BOLID", map.get("askGoodsId"));//要货申请单ID
|
|
|
BillItems.put("BOLItemID", map.get("entryNumber"));//要货申请明细ID
|
|
|
@@ -1981,6 +2025,8 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
@Override
|
|
|
public void test() {
|
|
|
AskGoods askGoods = new AskGoods();
|