|
@@ -6,12 +6,16 @@ import com.alibaba.fastjson.JSONObject;
|
|
|
import com.ruoyi.approvalFlow.domain.AuditItems;
|
|
|
import com.ruoyi.approvalFlow.mapper.AuditItemsMapper;
|
|
|
import com.ruoyi.approvalFlow.service.impl.AuditItemsServiceImpl;
|
|
|
-import com.ruoyi.basicData.domain.*;
|
|
|
+import com.ruoyi.basicData.domain.TCorps;
|
|
|
+import com.ruoyi.basicData.domain.TFees;
|
|
|
+import com.ruoyi.basicData.domain.TGoods;
|
|
|
+import com.ruoyi.basicData.domain.TWarehouseArea;
|
|
|
import com.ruoyi.basicData.mapper.*;
|
|
|
import com.ruoyi.common.core.domain.AjaxResult;
|
|
|
import com.ruoyi.common.core.domain.entity.SysDept;
|
|
|
import com.ruoyi.common.core.domain.entity.SysDictData;
|
|
|
import com.ruoyi.common.core.domain.entity.SysUser;
|
|
|
+import com.ruoyi.common.core.domain.entity.TWarehouse;
|
|
|
import com.ruoyi.common.core.domain.model.LoginUser;
|
|
|
import com.ruoyi.common.utils.DateUtils;
|
|
|
import com.ruoyi.common.utils.StringUtils;
|
|
@@ -30,10 +34,10 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
import org.springframework.transaction.interceptor.TransactionAspectSupport;
|
|
|
-import com.ruoyi.common.core.domain.entity.TWarehouse;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
import static java.util.stream.Collectors.toList;
|
|
|
|
|
@@ -449,21 +453,6 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
JSONArray warehouseJSON = JSONArray.parseArray(tWarehousebillsitems);
|
|
|
List<TWarehousebillsitems> warehousebillsitemsList = JSONObject.parseArray(warehouseJSON.toJSONString(), TWarehousebillsitems.class);
|
|
|
for (TWarehousebillsitems wbItem : warehousebillsitemsList) {
|
|
|
- /*if(StringUtils.isNull(wbItem.getfSerialNumber())){
|
|
|
- // 生成流水号
|
|
|
- Date time = new Date();
|
|
|
- String serialNumber;
|
|
|
- if ("SJRK".equals(billsType)) { // 生成 入库 流水号
|
|
|
- serialNumber = billnoSerialServiceImpl.getSerialNumber("RK", time);
|
|
|
- wbItem.setfSerialNumber(serialNumber);
|
|
|
- } else if ("SJCK".equals(billsType)) { //生成 出库 流水号
|
|
|
- serialNumber = billnoSerialServiceImpl.getSerialNumber("CK", time);
|
|
|
- wbItem.setfSerialNumber(serialNumber);
|
|
|
- } else if ("CKDB".equals(billsType)) { //生成 出库 流水号
|
|
|
- serialNumber = billnoSerialServiceImpl.getSerialNumber("DB", time);
|
|
|
- wbItem.setfSerialNumber(serialNumber);
|
|
|
- }
|
|
|
- }*/
|
|
|
boolean warehouseStatus = "SJRK".equals(billsType) || "SJCK".equals(billsType) || "CKDB".equals(billsType);
|
|
|
// 仓储计费日期
|
|
|
wbItem.setfBilltype(billsType);
|
|
@@ -1256,6 +1245,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
String tEnclosure, String tWarehousebillsfeesCr, String tWarehousebillsfeesDr,
|
|
|
LoginUser loginUser, Long status, String billtystatus) {
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
+ List<TWarehousebillsitems> mapList= new ArrayList<>();
|
|
|
if (StringUtils.isNull(warehouseBills) || "[]".equals(warehouseBills)) {
|
|
|
return AjaxResult.error("未找到主表信息");
|
|
|
}
|
|
@@ -1277,31 +1267,22 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
tWarehousebillsfeesMapper.deleteByFPid(tWarehouseBills.getfId());
|
|
|
JSONArray warehouseJSON = JSONArray.parseArray(warehousebillsitems);
|
|
|
List<TWarehousebillsitems> warehousebillsitemsList = JSONObject.parseArray(warehouseJSON.toJSONString(), TWarehousebillsitems.class);
|
|
|
+ /**
|
|
|
+ * 1、 查询回收表是否有可用数据
|
|
|
+ * 2、 流水号生成 --> 打印一次 只记录一个号
|
|
|
+ */
|
|
|
+ Date time = new Date();
|
|
|
+ String serialNumber = null;
|
|
|
+ if ("RK".equals(billtystatus)) {
|
|
|
+ serialNumber = billnoSerialServiceImpl.getSerialNumber("RK", time);
|
|
|
+ } else if ("CK".equals(billtystatus)) { //生成 出库 流水号
|
|
|
+ serialNumber = billnoSerialServiceImpl.getSerialNumber("CK", time);
|
|
|
+ } else if ("DB".equals(billtystatus)) { //生成 出库 流水号
|
|
|
+ serialNumber = billnoSerialServiceImpl.getSerialNumber("DB", time);
|
|
|
+ }
|
|
|
for (TWarehousebillsitems item : warehousebillsitemsList) {
|
|
|
- // 生成流水号
|
|
|
- Date time = new Date();
|
|
|
- String serialNumber;
|
|
|
if (item.getfBillstatus() < 30L) {
|
|
|
- if(StringUtils.isNull(item.getfSerialNumber())){
|
|
|
- if ("RK".equals(billtystatus)) { // 生成 入库 流水号
|
|
|
- serialNumber = billnoSerialServiceImpl.getSerialNumber("RK", time);
|
|
|
- item.setfSerialNumber(serialNumber);
|
|
|
- } else if ("CK".equals(billtystatus)) { //生成 出库 流水号
|
|
|
- serialNumber = billnoSerialServiceImpl.getSerialNumber("CK", time);
|
|
|
- item.setfSerialNumber(serialNumber);
|
|
|
- } else if ("DB".equals(billtystatus)) { //生成 出库 流水号
|
|
|
- serialNumber = billnoSerialServiceImpl.getSerialNumber("DB", time);
|
|
|
- item.setfSerialNumber(serialNumber);
|
|
|
- }
|
|
|
- }
|
|
|
- if ("RK".equals(billtystatus)) { // 生成 入库 流水号
|
|
|
- serialNumber = billnoSerialServiceImpl.getSerialNumber("RK", time);
|
|
|
- item.setfSerialNumber(serialNumber);
|
|
|
- } else if ("CK".equals(billtystatus)) { //生成 出库 流水号
|
|
|
- serialNumber = billnoSerialServiceImpl.getSerialNumber("CK", time);
|
|
|
- item.setfSerialNumber(serialNumber);
|
|
|
- } else if ("DB".equals(billtystatus)) { //生成 出库 流水号
|
|
|
- serialNumber = billnoSerialServiceImpl.getSerialNumber("DB", time);
|
|
|
+ if(item.getfSerialNumber()==null || item.getfSerialNumber().equals("")){
|
|
|
item.setfSerialNumber(serialNumber);
|
|
|
}
|
|
|
item.setfBillstatus(status);
|
|
@@ -1315,6 +1296,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
return AjaxResult.error("更新库存明细失败");
|
|
|
}
|
|
|
}
|
|
|
+ mapList.add(item);
|
|
|
}
|
|
|
// 附件添加
|
|
|
if (StringUtils.isNotEmpty(tEnclosure) && !"[]".equals(tEnclosure)) {
|
|
@@ -1360,8 +1342,9 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
// 添加成功 返回 前台
|
|
|
TWarehousebillsitems tWarehousebillsitems = new TWarehousebillsitems();
|
|
|
tWarehousebillsitems.setfPid(tWarehouseBills.getfId());
|
|
|
- List<TWarehousebillsitems> mapList = tWarehousebillsitemsMapper.selectTWarehousebillsitemsList(tWarehousebillsitems);
|
|
|
+ List<TWarehousebillsitems> mapList1 = tWarehousebillsitemsMapper.selectTWarehousebillsitemsList(tWarehousebillsitems);
|
|
|
map.put("warehousebillsitems", mapList);
|
|
|
+ map.put("warehousebillsitems1", mapList1);
|
|
|
return AjaxResult.success("成功", map);
|
|
|
}
|
|
|
|
|
@@ -1930,9 +1913,15 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
tWarehousebillsfeesMapper.deleteByFPid(tWarehousebills.getfId());
|
|
|
JSONArray warehouseJSON = JSONArray.parseArray(warehousebillsitems);
|
|
|
List<TWarehousebillsitems> warehousebillsitemsList = JSONObject.parseArray(warehouseJSON.toJSONString(), TWarehousebillsitems.class);
|
|
|
+ /**
|
|
|
+ * 流水号回收
|
|
|
+ * 1、 获取所有流水号
|
|
|
+ */
|
|
|
+ List<String> SerialNumberList= new ArrayList<>();
|
|
|
if (StringUtils.isNotEmpty(warehousebillsitemsList)) {
|
|
|
int i = 1;
|
|
|
for (TWarehousebillsitems wb : warehousebillsitemsList) {
|
|
|
+ SerialNumberList.add(wb.getfSerialNumber()); // 流水号回收
|
|
|
// 查询库存总账
|
|
|
TWhgenleg tWhgenle = queryTWhgenleg(tWarehousebills, wb);
|
|
|
if ("SJRKRevoke".equals(billsType)) { // 撤销 入库
|
|
@@ -1995,12 +1984,26 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
i++;
|
|
|
wb.setUpdateBy(loginUser.getUser().getUserName());
|
|
|
wb.setUpdateTime(new Date());
|
|
|
+ wb.setfSerialNumber(null);
|
|
|
if (tWarehousebillsitemsMapper.updateTWarehousebillsitems(wb) <= 0) {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
return AjaxResult.error("新增库存明细失败");
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 流水号回收
|
|
|
+ * 2、 流水号去重
|
|
|
+ * 3、 添加到 billno_del
|
|
|
+ */
|
|
|
+ List<String> serialNumberNewList =delRepeat(SerialNumberList);
|
|
|
+ serialNumberNewList.forEach(item -> {
|
|
|
+ BillnoDel billnoDel = new BillnoDel();
|
|
|
+ billnoDel.setBillType(item.substring(0,2));
|
|
|
+ billnoDel.setBillNo(item);
|
|
|
+ billnoDelMapper.insertBillnoDel(billnoDel);
|
|
|
+ });
|
|
|
+
|
|
|
// 附件添加
|
|
|
if (StringUtils.isNotEmpty(tEnclosure) && !"[]".equals(tEnclosure)) {
|
|
|
JSONArray jsonDrArray = JSONArray.parseArray(tEnclosure);
|
|
@@ -2045,6 +2048,12 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
return AjaxResult.success();
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ public static List<String> delRepeat(List<String> list) {
|
|
|
+ List<String> myList = list.stream().distinct().collect(Collectors.toList());
|
|
|
+ return myList ;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 添加 库存明细状态
|
|
|
*
|