|
@@ -150,6 +150,7 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public Map<String, Object> addAskGoodsVitrual(AskGoods askGoods) {
|
|
public Map<String, Object> addAskGoodsVitrual(AskGoods askGoods) {
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
try{
|
|
try{
|
|
@@ -163,7 +164,7 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
AskGoods askGoods1 = askGoodsMapper.getAsknInfo(askGoods); //要货单数量
|
|
AskGoods askGoods1 = askGoodsMapper.getAsknInfo(askGoods); //要货单数量
|
|
|
int alreadyNum = askGoodsMapper.getAskInfoNumVitrual(askGoods);//已扫描总数
|
|
int alreadyNum = askGoodsMapper.getAskInfoNumVitrual(askGoods);//已扫描总数
|
|
|
int inventoryAlready = askGoodsMapper.getInventoryAlready(askGoods);//库存已扫描数量
|
|
int inventoryAlready = askGoodsMapper.getInventoryAlready(askGoods);//库存已扫描数量
|
|
|
- int inventorySurplus = Integer.parseInt(inventory.getAmount()) - inventoryAlready; //库存剩余数量
|
|
|
|
|
|
|
+ int inventorySurplus = (Integer.parseInt(inventory.getAmount()) - Integer.parseInt(inventory.getAmountLock())) - inventoryAlready; //库存剩余数量
|
|
|
int surplusNum = Integer.parseInt(askGoods1.getNum()) - alreadyNum; //剩余要扫描数量
|
|
int surplusNum = Integer.parseInt(askGoods1.getNum()) - alreadyNum; //剩余要扫描数量
|
|
|
|
|
|
|
|
if(surplusNum >= inventorySurplus){
|
|
if(surplusNum >= inventorySurplus){
|
|
@@ -183,6 +184,7 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public Map<String, Object> OutOfLibrary(String uniqueCode, String type, String askGoodsId) {
|
|
public Map<String, Object> OutOfLibrary(String uniqueCode, String type, String askGoodsId) {
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
//redis并发锁
|
|
//redis并发锁
|
|
@@ -203,11 +205,11 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
AskGoods askGoods1 = askGoodsMapper.getAskDetailed(askGoodsId, materialId);//查询要料申请单内容
|
|
AskGoods askGoods1 = askGoodsMapper.getAskDetailed(askGoodsId, materialId);//查询要料申请单内容
|
|
|
ReturRemoval returRemoval = new ReturRemoval()
|
|
ReturRemoval returRemoval = new ReturRemoval()
|
|
|
.setMaterialId(materialId)
|
|
.setMaterialId(materialId)
|
|
|
- .setAskGoodsId(askGoodsId)
|
|
|
|
|
|
|
+ .setDocumentId(askGoodsId)
|
|
|
.setWbs(askGoods1.getWbs())
|
|
.setWbs(askGoods1.getWbs())
|
|
|
.setNum(askGoods.getNum())
|
|
.setNum(askGoods.getNum())
|
|
|
.setEntryNumber(askGoods1.getEntryNumber())
|
|
.setEntryNumber(askGoods1.getEntryNumber())
|
|
|
- .setAskId(askGoods1.getId())
|
|
|
|
|
|
|
+ .setDocumentPointsId(askGoods1.getId())
|
|
|
.setStorageLocationCode(askGoods.getStorageLocationCode());
|
|
.setStorageLocationCode(askGoods.getStorageLocationCode());
|
|
|
askGoodsMapper.addRemoval(askGoods);//插入出库流水
|
|
askGoodsMapper.addRemoval(askGoods);//插入出库流水
|
|
|
askGoodsMapper.deleteVirtual(askGoods.getId());//删除已出虚拟表库存
|
|
askGoodsMapper.deleteVirtual(askGoods.getId());//删除已出虚拟表库存
|
|
@@ -218,7 +220,7 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
AskGoods askGoods3 = askGoodsMapper.getAskDetailedF(askGoodsId);
|
|
AskGoods askGoods3 = askGoodsMapper.getAskDetailedF(askGoodsId);
|
|
|
String removalCode = codeGenerateCk();
|
|
String removalCode = codeGenerateCk();
|
|
|
ReturRemoval returRemoval1 = new ReturRemoval()
|
|
ReturRemoval returRemoval1 = new ReturRemoval()
|
|
|
- .setAskGoodsId(askGoods3.getAskGoodsId())
|
|
|
|
|
|
|
+ .setDocumentId(askGoods3.getAskGoodsId())
|
|
|
.setRemovalCode(removalCode)
|
|
.setRemovalCode(removalCode)
|
|
|
.setSourceType(askGoods3.getSourceType())
|
|
.setSourceType(askGoods3.getSourceType())
|
|
|
.setMoveType(askGoods3.getMoveType());
|
|
.setMoveType(askGoods3.getMoveType());
|
|
@@ -357,6 +359,7 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public Map<String, Object> delAskGoodsVitrual(String id, String type) {
|
|
public Map<String, Object> delAskGoodsVitrual(String id, String type) {
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
try{
|
|
try{
|
|
@@ -425,7 +428,51 @@ public class AskGoodsServiceImpl implements AskGoodsService {
|
|
|
//当前时间
|
|
//当前时间
|
|
|
Date time = new Date();
|
|
Date time = new Date();
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMddHHmmss");
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMddHHmmss");
|
|
|
- ExcelUtils.export(response, "出库流水数据导出" + sdf.format(time), sheetDataList);
|
|
|
|
|
|
|
+ ExcelUtils.export(response, "半成品出库流水数据导出" + sdf.format(time), sheetDataList);
|
|
|
|
|
+ }catch (Exception e){
|
|
|
|
|
+ e.printStackTrace();
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public Map<String, Object> getRemovalHalf(AskGoods askGoods) {
|
|
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
|
|
+ try{
|
|
|
|
|
+ //查询数据
|
|
|
|
|
+ PageHelper.startPage(askGoods.getPage(), askGoods.getLimit());
|
|
|
|
|
+ PageInfo<AskGoods> list = new PageInfo<>(askGoodsMapper.getRemovalHalf(askGoods));
|
|
|
|
|
+ map.put("data", list);
|
|
|
|
|
+ map.put("msg", "200");
|
|
|
|
|
+ }catch (Exception e){
|
|
|
|
|
+ e.printStackTrace();
|
|
|
|
|
+ map.put("msg", "500");
|
|
|
|
|
+ map.put("errMsg", "失败");
|
|
|
|
|
+ }
|
|
|
|
|
+ return map;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public void getRemovalHalfExcel(AskGoods askGoods, HttpServletResponse response) {
|
|
|
|
|
+ try{
|
|
|
|
|
+ //导出数据汇总
|
|
|
|
|
+ List<List<Object>> sheetDataList = new ArrayList<>();
|
|
|
|
|
+ //表头数据
|
|
|
|
|
+ List<Object> head = Arrays.asList("物料名称", "出库数量", "用户名称", "出库时间", "公司编号", "客户编号");
|
|
|
|
|
+ //查询数据
|
|
|
|
|
+ PageHelper.startPage(askGoods.getPage(), askGoods.getLimit());
|
|
|
|
|
+ PageInfo<Map<String, Object>> list = new PageInfo<>(askGoodsMapper.getRemovalHalfExcel(askGoods));
|
|
|
|
|
+ sheetDataList.add(head);
|
|
|
|
|
+ for(Map<String, Object> userMap : list.getList()){
|
|
|
|
|
+ List<Object> listSheet = new ArrayList<>();
|
|
|
|
|
+ for(String key: userMap.keySet()){
|
|
|
|
|
+ listSheet.add(userMap.get(key));
|
|
|
|
|
+ }
|
|
|
|
|
+ sheetDataList.add(listSheet);
|
|
|
|
|
+ }
|
|
|
|
|
+ //当前时间
|
|
|
|
|
+ Date time = new Date();
|
|
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyyMddHHmmss");
|
|
|
|
|
+ ExcelUtils.export(response, "产成品出库流水数据导出" + sdf.format(time), sheetDataList);
|
|
|
}catch (Exception e){
|
|
}catch (Exception e){
|
|
|
e.printStackTrace();
|
|
e.printStackTrace();
|
|
|
}
|
|
}
|