|
@@ -20,6 +20,7 @@ import com.ruoyi.common.core.domain.model.LoginUser;
|
|
|
import com.ruoyi.common.utils.DateUtils;
|
|
|
import com.ruoyi.common.utils.SecurityUtils;
|
|
|
import com.ruoyi.common.utils.StringUtils;
|
|
|
+import com.ruoyi.common.utils.ip.AddressUtils;
|
|
|
import com.ruoyi.quotation.domain.TSeaprice;
|
|
|
import com.ruoyi.quotation.mapper.TSeapriceMapper;
|
|
|
import com.ruoyi.reportManagement.domain.TWareHouseItemsExcel;
|
|
@@ -41,9 +42,12 @@ import com.ruoyi.warehouseBusiness.domain.*;
|
|
|
import com.ruoyi.warehouseBusiness.excel.*;
|
|
|
import com.ruoyi.warehouseBusiness.mapper.*;
|
|
|
import com.ruoyi.warehouseBusiness.service.ITWarehouseBillsService;
|
|
|
+import jdk.jfr.events.ExceptionThrownEvent;
|
|
|
import org.apache.poi.ss.usermodel.*;
|
|
|
import org.apache.poi.ss.util.CellReference;
|
|
|
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
@@ -153,6 +157,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
|
|
|
@Autowired
|
|
|
private TWarehousebillsCntritemsMapper tWarehousebillsCntritemsMapper;
|
|
|
+ private static final Logger log = LoggerFactory.getLogger(AddressUtils.class);
|
|
|
|
|
|
|
|
|
/**
|
|
@@ -207,6 +212,11 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
if (StringUtils.isNotNull(tWarehouse)) {
|
|
|
warehouseList.add(tWarehouse);
|
|
|
}
|
|
|
+ //查询业务员
|
|
|
+ if (tWarehousebills.getfSalesmanId() != null){
|
|
|
+ SysUser user = sysUserMapper.selectUserById(tWarehousebills.getfSalesmanId());
|
|
|
+ map.put("fSalesman",user);
|
|
|
+ }
|
|
|
// 查询经营单位
|
|
|
corpsId.add(tWarehousebills.getfSbu());
|
|
|
map.put("warehousebills", tWarehousebills);
|
|
@@ -429,6 +439,10 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
TWhgenleg tWhgenleg = new TWhgenleg();
|
|
|
if ("SJRK".equals(warehouseBills.getfBilltype())) {
|
|
|
tWhgenleg.setfOriginalbilldate(warehousebillsitems.getfBsdate());
|
|
|
+ tWhgenleg.setfCustomno(warehouseBills.getfCustomno());
|
|
|
+ if (StringUtils.isNotEmpty(warehouseBills.getRemark())){
|
|
|
+ tWhgenleg.setRemark(warehouseBills.getRemark());
|
|
|
+ }
|
|
|
}
|
|
|
if ("HQZY".equals(warehouseBills.getfBilltype()) | "CKDB".equals(warehouseBills.getfBilltype()) | "HWTG".equals(warehouseBills.getfBilltype())) {
|
|
|
tWhgenleg.setfOriginalbilldate(warehousebillsitems.getfOriginalbilldate());
|
|
@@ -583,11 +597,23 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
boolean warehouseStatus = "SJRK".equals(billsType) || "SJCK".equals(billsType) || "CKDB".equals(billsType) || "HWTG".equals(billsType);
|
|
|
// 仓储计费日期
|
|
|
wbItem.setfBilltype(billsType);
|
|
|
+ if ("SJRK".equals(billsType) && warehouseBills.getfId() != null && "0".equals(warehouseBills.getfChargetype())) {
|
|
|
+ boolean fchargedate = this.getFchargedate(fPid, wbItem.getfBsdate());
|
|
|
+ if (fchargedate == false){
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error("入库日期不能小于最小仓储费计算日期");
|
|
|
+ }
|
|
|
+ }
|
|
|
if ("SJRK".equals(billsType)) {
|
|
|
- if ("0".equals(warehouseBills.getfChargetype())) {
|
|
|
- wbItem.setfChargedate(warehouseBills.getfChargedate());
|
|
|
- } else {
|
|
|
- wbItem.setfChargedate(mixDate);
|
|
|
+ if ("1".equals(warehouseBills.getfChargetype())) {
|
|
|
+ wbItem.setfChargedate(warehouseBills.getfBsdate());
|
|
|
+ } else if ("0".equals(warehouseBills.getfChargetype())){
|
|
|
+ Date fchargedate = tWarehousebillsitemsMapper.getFchargedate(fPid);
|
|
|
+ if (fchargedate != null){
|
|
|
+ wbItem.setfChargedate(fchargedate);
|
|
|
+ }else {
|
|
|
+ wbItem.setfChargedate(mixDate);
|
|
|
+ }
|
|
|
}
|
|
|
wbItem.setfBillingway(warehouseBills.getfBillingway());
|
|
|
wbItem.setfMblno(warehouseBills.getfMblno());// 入库更新库存前执行update更新明细的提单号等于主表的提单号
|
|
@@ -2892,7 +2918,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
JSONArray warehouseJSON = JSONArray.parseArray(warehousebillsitems);
|
|
|
List<TWarehousebillsitems> warehousebillsitemsList = JSONObject.parseArray(warehouseJSON.toJSONString(), TWarehousebillsitems.class);
|
|
|
Date time = new Date();
|
|
|
- if ("1".equals(tWarehouseBills.getfChargetype())) {
|
|
|
+ if ("0".equals(tWarehouseBills.getfChargetype())) {
|
|
|
time = tWarehousebillsitemsMapper.selecMinBsDateByFPid(tWarehouseBills.getfId());
|
|
|
}
|
|
|
int i = 1;
|
|
@@ -2917,7 +2943,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
|
|
|
item.setfOriginalbilldate(item.getfBsdate());
|
|
|
item.setfBillingway(tWarehouseBills.getfBillingway());
|
|
|
- if ("0".equals(tWarehouseBills.getfChargetype())) {
|
|
|
+ if ("1".equals(tWarehouseBills.getfChargetype())) {
|
|
|
time = item.getfBsdate();
|
|
|
}
|
|
|
item.setfChargedate(time);
|
|
@@ -2928,6 +2954,12 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
}
|
|
|
TWhgenleg tWhgenle = queryTWhgenleg(tWarehouseBills, item, goods.getIfCntrno());
|
|
|
if (StringUtils.isNotNull(tWhgenle)) {
|
|
|
+ if ("SJRK".equals(billsType)){
|
|
|
+ item.setfCustomno(tWarehouseBills.getfCustomno());
|
|
|
+ if (StringUtils.isNotEmpty(tWarehouseBills.getRemark())){
|
|
|
+ item.setRemark(tWarehouseBills.getRemark());
|
|
|
+ }
|
|
|
+ }
|
|
|
int i1 = updateTWhgenlegData(item, tWhgenle.getfId(), billsType);
|
|
|
if (i1 <= 0) {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
@@ -3034,7 +3066,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
*/
|
|
|
@Override
|
|
|
@Transactional
|
|
|
- public AjaxResult addDetails(Long fId, String billsType) {
|
|
|
+ public AjaxResult addDetails(Long fId, String billsType,LoginUser loginUser) {
|
|
|
TWarehouseBills tWarehouseBills = tWarehouseBillsMapper.selectTWarehousebillsById(fId);
|
|
|
if (StringUtils.isNull(tWarehouseBills)) {
|
|
|
return AjaxResult.error("未找到仓储信息,请确认是否存在");
|
|
@@ -3043,13 +3075,26 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
if (StringUtils.isEmpty(warehousebillsitemsList)) {
|
|
|
return AjaxResult.error("未找到仓储库存明细信息,请确认是否存在");
|
|
|
}
|
|
|
+ if (tWarehouseBills.getfItemstatus().longValue() == 4L
|
|
|
+ || tWarehouseBills.getfItemstatus().longValue() == 5L
|
|
|
+ || tWarehouseBills.getfItemstatus().longValue() == 6L){
|
|
|
+ return AjaxResult.error("该单明细已提交审核,请勿重复提交");
|
|
|
+ }
|
|
|
for (TWarehousebillsitems item : warehousebillsitemsList) {
|
|
|
- if (item.getfItemstatus() != 40L || item.getfItemstatus() == 50L) {
|
|
|
+ if (item.getfBillstatus() != 40L || item.getfBillstatus() == 50L) {
|
|
|
return AjaxResult.error("库存明细中存在审核中数据,无法再次提交请核");
|
|
|
}
|
|
|
}
|
|
|
boolean isApprove;
|
|
|
long itemStatus = 6L;
|
|
|
+ Long actId = 0L;
|
|
|
+ String key = null;
|
|
|
+ if (billsType.equals("SJRKITEM")){
|
|
|
+ actId = 170L;
|
|
|
+ }else if (billsType.equals("SJCKITEM")){
|
|
|
+ actId = 180L;
|
|
|
+ }
|
|
|
+
|
|
|
SysConfig sysConfig = queryWarehouseConfig(billsType);
|
|
|
if (StringUtils.isNull(sysConfig)) {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
@@ -3058,11 +3103,11 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
if ("0".equals(sysConfig.getConfigValue())) {
|
|
|
isApprove = true;
|
|
|
itemStatus = 4L;
|
|
|
- tWarehouseBills.setfItemsStatus(3L);
|
|
|
+ tWarehouseBills.setfItemstatus(itemStatus);
|
|
|
tWarehouseBills.setUpdateTime(new Date());
|
|
|
tWarehouseBills.setUpdateBy(SecurityUtils.getUsername());
|
|
|
} else {
|
|
|
- tWarehouseBills.setfItemsStatus(4L);
|
|
|
+ tWarehouseBills.setfItemstatus(itemStatus);
|
|
|
tWarehouseBills.setUpdateTime(new Date());
|
|
|
tWarehouseBills.setUpdateBy(SecurityUtils.getUsername());
|
|
|
}
|
|
@@ -3073,17 +3118,17 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
item.setfItemstatus(itemStatus);
|
|
|
tWarehousebillsitemsMapper.updateTWarehousebillsitems(item);
|
|
|
}
|
|
|
- /*if (isApprove) {
|
|
|
+ if ("0".equals(sysConfig.getConfigValue())) {
|
|
|
AuditItems auditItems = new AuditItems();
|
|
|
auditItems.setLevelId(0L);
|
|
|
- auditItems.setBillId(warehouseBills.getfId());
|
|
|
- auditItems.setActId(actId);
|
|
|
+ auditItems.setBillId(tWarehouseBills.getfId());
|
|
|
+ auditItems.setActId(actId);//暂定
|
|
|
auditItems.setIffinalItem("F");
|
|
|
auditItems.setBillNo(tWarehouseBills.getfBillno());
|
|
|
// 存储委托方(货权方)
|
|
|
auditItems.setRefno1(tWarehouseBills.getfCorpid() + "");
|
|
|
// 存储业务类型(业务类型)
|
|
|
- auditItems.setRefno2(tWarehouseBills.getfBilltype());
|
|
|
+ auditItems.setRefno2(billsType);
|
|
|
// 存储提单号(提单号)
|
|
|
auditItems.setRefno3(tWarehouseBills.getfMblno());
|
|
|
auditItems.setSendUserId(loginUser.getUser().getUserId());
|
|
@@ -3094,6 +3139,8 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
auditItems.setAuditOpTime(new Date());
|
|
|
auditItems.setAuditMsg("提交");
|
|
|
auditItems.setAuditStatus("O");
|
|
|
+ auditItems.setFidStatus("f_itemstatus");
|
|
|
+ auditItems.setTimes(tWarehouseBills.getfTimes());
|
|
|
AjaxResult approvalFlow = auditItemsService.createApprovalFlow(auditItems);
|
|
|
// Long code = Long.valueOf(String.valueOf(approvalFlow.get("code"))).longValue();
|
|
|
String code = approvalFlow.get("code").toString();
|
|
@@ -3102,8 +3149,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
}
|
|
|
return approvalFlow;
|
|
|
- }*/
|
|
|
-
|
|
|
+ }
|
|
|
return AjaxResult.success();
|
|
|
}
|
|
|
|
|
@@ -3708,6 +3754,86 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
return AjaxResult.success(map);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public AjaxResult calculateStorageFeesList(List<TWarehouseBills> tWarehouseBillsList, LoginUser loginUser, String billsType) {
|
|
|
+ if (CollectionUtils.isEmpty(tWarehouseBillsList)){
|
|
|
+ return AjaxResult.error("请输入筛选条件,再计算仓储费");
|
|
|
+ }
|
|
|
+ List<Map<String,Object>> list = new ArrayList<>();
|
|
|
+ for (TWarehouseBills tWarehouseBills : tWarehouseBillsList) {
|
|
|
+ if (StringUtils.isNull(tWarehouseBills.getfCorpid())) {
|
|
|
+ return AjaxResult.error("请选择客户信息");
|
|
|
+ }
|
|
|
+ long fPid = 0L;
|
|
|
+ if (StringUtils.isNull(tWarehouseBills.getfId())) {
|
|
|
+ // 生成流水号
|
|
|
+ Date time = new Date();
|
|
|
+ String billNo = billnoSerialServiceImpl.getSerialNumber("JSCCF", time);
|
|
|
+ tWarehouseBills.setfBillno(billNo);
|
|
|
+ if (StringUtils.isNull(tWarehouseBills.getfBillstatus())) {
|
|
|
+ tWarehouseBills.setfBillstatus(2L);
|
|
|
+ }
|
|
|
+ tWarehouseBills.setfBilltype(billsType);
|
|
|
+ tWarehouseBills.setfBsdeptid(loginUser.getUser().getDeptId());
|
|
|
+ tWarehouseBills.setCreateBy(loginUser.getUser().getUserName());
|
|
|
+ tWarehouseBills.setCreateTime(new Date());
|
|
|
+ tWarehouseBillsMapper.insertTWarehousebills(tWarehouseBills);
|
|
|
+ fPid = tWarehouseBills.getfId();
|
|
|
+ } else {
|
|
|
+ tWarehousebillsfeesMapper.deleteByFPid(tWarehouseBills.getfId());
|
|
|
+ tWarehousebillsitemsMapper.deleteByFPid(tWarehouseBills.getfId());
|
|
|
+ tWarehouseBills.setUpdateBy(loginUser.getUser().getUserName());
|
|
|
+ tWarehouseBills.setUpdateTime(new Date());
|
|
|
+ tWarehouseBillsMapper.updateTWarehousebills(tWarehouseBills);
|
|
|
+ fPid = tWarehouseBills.getfId();
|
|
|
+ }
|
|
|
+ // 计划物资明细
|
|
|
+ List<TWarehousebillsfees> itemsList = new ArrayList<>();
|
|
|
+ BigDecimal bigDecimal = new BigDecimal(0);
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ // 库存总账id
|
|
|
+ long whgenlegFeeId = 0;
|
|
|
+ // 计费单位
|
|
|
+ long feeUnitid = 1;
|
|
|
+ // 查询 出库 货转的库存明细
|
|
|
+ List<Map<String, Object>> warehousebillsitemsList = tWarehousebillsitemsMapper.selectStorageFeeItemList(tWarehouseBills);
|
|
|
+ if (warehousebillsitemsList.size() != 0) {
|
|
|
+ Map<String, Object> mapItem = getWarehouseItems(tWarehouseBills, warehousebillsitemsList, loginUser);
|
|
|
+ if (mapItem.containsKey("error")) {
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error((String) mapItem.get("error"));
|
|
|
+ }
|
|
|
+ itemsList = (List<TWarehousebillsfees>) mapItem.get("itemsList");
|
|
|
+ }
|
|
|
+ List<Map<String, Object>> tWhgenlegs = tWhgenlegMapper.selectStorageFeeItemList(tWarehouseBills);
|
|
|
+ if (tWhgenlegs.size() != 0) {
|
|
|
+ Map<String, Object> mapItem = getWarehouseItems(tWarehouseBills, tWhgenlegs, loginUser);
|
|
|
+ if (mapItem.containsKey("error")) {
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error((String) mapItem.get("error"));
|
|
|
+ }
|
|
|
+ List<TWarehousebillsfees> itemList = (List<TWarehousebillsfees>) mapItem.get("itemsList");
|
|
|
+ if (itemList.size() != 0) {
|
|
|
+ for (TWarehousebillsfees ite : itemList) {
|
|
|
+ itemsList.add(ite);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ TFees tFees = new TFees();
|
|
|
+ tFees.setfStatus("2");
|
|
|
+ tFees.setDelFlag("0");
|
|
|
+ List<TFees> feesList = tFeesMapper.selectTFeesList(tFees);
|
|
|
+ if (itemsList.size() <= 0) {
|
|
|
+ return AjaxResult.error("未找到合适的库存明细");
|
|
|
+ }
|
|
|
+ map.put("feesList", feesList);
|
|
|
+ map.put("warehouseBills", tWarehouseBills);
|
|
|
+ map.put("warehouseItemList", itemsList);
|
|
|
+ list.add(map);
|
|
|
+ }
|
|
|
+ return AjaxResult.success(list);
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 计算出库仓储费
|
|
|
* 待完成!!!!!!!!!
|
|
@@ -3730,7 +3856,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
*/
|
|
|
@Override
|
|
|
public AjaxResult queryClerkRoleList() {
|
|
|
- return AjaxResult.success(sysUserMapper.selectUserByRole("仓管员"));
|
|
|
+ return AjaxResult.success(sysUserMapper.selectUserByRole("库管"));
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -3848,6 +3974,115 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
return AjaxResult.success(tWarehousebills);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public AjaxResult insertStorageFeeList(List<StorageChargeInsert> storageChargeInsert, LoginUser loginUser, String billsType) {
|
|
|
+ if (CollectionUtils.isEmpty(storageChargeInsert)){
|
|
|
+ return AjaxResult.error("请选择要保存的数据");
|
|
|
+ }
|
|
|
+ for (StorageChargeInsert chargeInsert : storageChargeInsert) {
|
|
|
+ TWarehouseBills tWarehousebills = JSONArray.parseObject(chargeInsert.getWarehouseBills(), TWarehouseBills.class);
|
|
|
+ long fPid = 0L;
|
|
|
+ boolean billstatus = tWarehousebills.getfBillstatus().equals(4L);
|
|
|
+ if (billstatus && (StringUtils.isNull(chargeInsert.getWarehouseItems()) || "[]".equals(chargeInsert.getWarehouseItems()))) {
|
|
|
+ return AjaxResult.error("未找到计费物资明细无法提交");
|
|
|
+ }
|
|
|
+ /*if (billstatus && (StringUtils.isNull(warehouseFees) || "[]".equals(warehouseFees))) {
|
|
|
+ return AjaxResult.error("未找到应收款明细无法提交");
|
|
|
+ }*/
|
|
|
+ tWarehousebills.setfTimes(tWarehousebills.getfTimes() + 1);
|
|
|
+ if (StringUtils.isNotNull(tWarehousebills.getfId())) {
|
|
|
+ fPid = tWarehousebills.getfId();
|
|
|
+ tWarehousebills.setUpdateTime(new Date());
|
|
|
+ tWarehousebills.setUpdateBy(loginUser.getUser().getUserName());
|
|
|
+ tWarehouseBillsMapper.updateTWarehousebills(tWarehousebills);
|
|
|
+ tWarehousebillsfeesMapper.deleteByFPid(fPid);
|
|
|
+ tWarehousebillsitemsMapper.deleteByFPid(fPid);
|
|
|
+ } else {
|
|
|
+ // 生成流水号
|
|
|
+ Date time = new Date();
|
|
|
+ String billNo = billnoSerialServiceImpl.getSerialNumber("JSCCF", time);
|
|
|
+ tWarehousebills.setfBillno(billNo);
|
|
|
+ tWarehousebills.setfDeptid(loginUser.getUser().getDeptId());
|
|
|
+ tWarehousebills.setfBsdeptid(loginUser.getUser().getDeptId());
|
|
|
+ tWarehousebills.setCreateBy(loginUser.getUser().getUserName());
|
|
|
+ tWarehousebills.setCreateTime(new Date());
|
|
|
+ tWarehousebills.setfBilltype(chargeInsert.getBillsType());
|
|
|
+ tWarehouseBillsMapper.insertTWarehousebills(tWarehousebills);
|
|
|
+ fPid = tWarehousebills.getfId();
|
|
|
+ }
|
|
|
+ JSONArray warehouseJSON = JSONArray.parseArray(chargeInsert.getWarehouseItems());
|
|
|
+ List<TWarehousebillsfees> itemsList = JSONObject.parseArray(warehouseJSON.toJSONString(), TWarehousebillsfees.class);
|
|
|
+ for (TWarehousebillsfees item : itemsList) {
|
|
|
+ item.setfId(null);
|
|
|
+ item.setSrcBillNo(tWarehousebills.getfBillno());
|
|
|
+ item.setfPid(fPid);
|
|
|
+ item.setfBillstatus(tWarehousebills.getfBillstatus());
|
|
|
+ tWarehousebillsfeesMapper.insertTWarehousebillsfees(item);
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotNull(chargeInsert.getWarehouseFees()) && !"[]".equals(chargeInsert.getWarehouseFees())) {
|
|
|
+ JSONArray feesJSON = JSONArray.parseArray(chargeInsert.getWarehouseFees());
|
|
|
+ List<TWarehousebillsfees> warehousebillsfeesList = JSONObject.parseArray(feesJSON.toJSONString(), TWarehousebillsfees.class);
|
|
|
+ for (TWarehousebillsfees fees : warehousebillsfeesList) {
|
|
|
+ fees.setfId(null);
|
|
|
+ fees.setfPid(fPid);
|
|
|
+ fees.setfDc("D");
|
|
|
+ fees.setfBilltype("JSCCF");
|
|
|
+ fees.setSrcBillNo(tWarehousebills.getfBillno());
|
|
|
+ fees.setfBillstatus(tWarehousebills.getfBillstatus());
|
|
|
+ tWarehousebillsfeesMapper.insertTWarehousebillsfees(fees);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (billstatus) {
|
|
|
+ String key = "warehouse.storageFeeCalculation.ApprovalFlow";
|
|
|
+ SysConfig sysConfig = sysConfigMapper.checkConfigKeyUnique(key);
|
|
|
+ if (StringUtils.isNull(sysConfig)) {
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error("系统参数异常,未找到开启审批流参数");
|
|
|
+ }
|
|
|
+ if ("0".equals(sysConfig.getConfigValue())) {
|
|
|
+ AuditItems auditItems = new AuditItems();
|
|
|
+ auditItems.setLevelId(0L);
|
|
|
+ auditItems.setBillId(fPid);
|
|
|
+ auditItems.setActId(150L);
|
|
|
+ auditItems.setIffinalItem("F");
|
|
|
+ auditItems.setBillNo(tWarehousebills.getfBillno());
|
|
|
+ // 存储委托方(货权方)
|
|
|
+ auditItems.setRefno1(tWarehousebills.getfCorpid() + "");
|
|
|
+ // 存储业务类型(业务类型)
|
|
|
+ auditItems.setRefno2(tWarehousebills.getfBilltype());
|
|
|
+ // 存储提单号(提单号)
|
|
|
+ auditItems.setRefno3(tWarehousebills.getfMblno());
|
|
|
+ auditItems.setSendUserId(loginUser.getUser().getUserId());
|
|
|
+ auditItems.setSendName(loginUser.getUsername());
|
|
|
+ auditItems.setSendTime(new Date());
|
|
|
+ auditItems.setAuditUserId(loginUser.getUser().getUserId());
|
|
|
+ auditItems.setAuditItem(new Date());
|
|
|
+ auditItems.setAuditOpTime(new Date());
|
|
|
+ auditItems.setAuditMsg("提交");
|
|
|
+ auditItems.setAuditStatus("O");
|
|
|
+ auditItems.setFidStatus("f_billstatus");
|
|
|
+ auditItems.setTimes(tWarehousebills.getfTimes());
|
|
|
+ AjaxResult approvalFlow = auditItemsService.createApprovalFlow(auditItems);
|
|
|
+ String code = approvalFlow.get("code").toString();
|
|
|
+// Long code = Long.valueOf(String.valueOf(ajaxResult.get("code"))).longValue();
|
|
|
+ if ("500".equals(code)) {
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ }
|
|
|
+ return approvalFlow;
|
|
|
+ } else {
|
|
|
+ AjaxResult ajaxResult = storageFeeFollow(fPid, 6L);
|
|
|
+ String code = ajaxResult.get("code").toString();
|
|
|
+// Long code = Long.valueOf(String.valueOf(ajaxResult.get("code"))).longValue();
|
|
|
+ if ("500".equals(code)) {
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ }
|
|
|
+ return ajaxResult;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return AjaxResult.success();
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 根据id查询仓储费计算信息
|
|
|
*
|
|
@@ -4681,7 +4916,9 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
} else if ("HWTG".equals(billsType)) {
|
|
|
key = "cargoClearance.orders.approvalFlow";
|
|
|
} else if ("SJRKITEM".equals(billsType)) {
|
|
|
-// key = "cargoClearance.orders.approvalFlow";
|
|
|
+ key = "warehouse.inStockItem.ApprovalFlow";
|
|
|
+ }else if ("SJCKITEM".equals(billsType)) {
|
|
|
+ key = "warehouse.outStockItem.ApprovalFlow";
|
|
|
}
|
|
|
return sysConfigMapper.checkConfigKeyUnique(key);
|
|
|
}
|
|
@@ -4753,4 +4990,39 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取最小仓储费计算日期
|
|
|
+ * @param fId
|
|
|
+ * @param date
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public boolean getFchargedate(Long fId,Date date) {
|
|
|
+ Date fchargedate = tWarehousebillsitemsMapper.getFchargedate(fId);
|
|
|
+ if (fchargedate == null){
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ int i = date.compareTo(fchargedate);
|
|
|
+ if (i == -1){
|
|
|
+ return false;
|
|
|
+ }else {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 获取仓储费最小日期并更新入库明细的仓储费计算日期
|
|
|
+ * @param fId
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public AjaxResult updateFchargeDate(Long fId) throws ParseException {
|
|
|
+ Date fchargedate = tWarehousebillsitemsMapper.getFchargedate(fId);
|
|
|
+ int i = tWarehousebillsitemsMapper.warehouseItemfChargedate(fId, fchargedate);
|
|
|
+ if (i>0){
|
|
|
+ return AjaxResult.success();
|
|
|
+ }else if (i == 0){
|
|
|
+ return AjaxResult.error("更新最小仓储费计算日期出错,请找管理员");
|
|
|
+ }else {
|
|
|
+ return AjaxResult.success();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|