Преглед изворни кода

1.海运进出口保存billDate字段强制赋值
2.出场excel导入表格报错修改
3.增加箱动态查询接口
4.增加箱动态查询报表接口
5.海运出口箱型箱量撤销放箱号提示修改
6.OW拿保存字段为null报错修改

纪新园 пре 3 дана
родитељ
комит
678d141f92

+ 10 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/box/entity/TradingBoxItem.java

@@ -643,4 +643,14 @@ public class TradingBoxItem implements Serializable {
 	 */
 	@ApiModelProperty(value = "是否生成PickUp费用")
 	private String whetherGeneratePickUpCost;
+	/**
+	 * 实际开船日期
+	 */
+	@TableField(exist = false)
+	private Date actualEtd;
+	/**
+	 * 实际到港日期
+	 */
+	@TableField(exist = false)
+	private Date actualEta;
 }

+ 2 - 0
blade-service/blade-los/src/main/java/org/springblade/los/Util/MagicValues.java

@@ -12,6 +12,8 @@ public class MagicValues {
 
 	public static final String PER_DIEM = "PerDiem";
 	public static final String PICK_UP = "PickUp";
+
+	public static final String DYNAMIC_QUERY = "动态查询";
 	public static final String OW_F = "OW-F";
 	public static final String BUY = "BUY";
 	public static final String ZR = "ZR";

+ 20 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/service/impl/ReportsBoxServiceImpl.java

@@ -32,7 +32,9 @@ import org.springblade.los.basic.reports.service.IReportsBoxService;
 import org.springblade.los.basic.reports.vo.ReportDataStatisticsVO;
 import org.springblade.los.box.entity.ExpenseApplication;
 import org.springblade.los.box.entity.TradingBox;
+import org.springblade.los.box.entity.TradingBoxItem;
 import org.springblade.los.box.service.IExpenseApplicationService;
+import org.springblade.los.box.service.ITradingBoxItemService;
 import org.springblade.los.box.service.ITradingBoxService;
 import org.springblade.los.business.amends.entity.Amends;
 import org.springblade.los.business.amends.mapper.AmendsMapper;
@@ -93,6 +95,8 @@ public class ReportsBoxServiceImpl implements IReportsBoxService {
 
 	private final ITradingBoxService tradingBoxService;
 
+	private final ITradingBoxItemService tradingBoxItemService;
+
 	private final IBCorpsService bCorpsService;
 
 	private final IExpenseApplicationService expenseApplicationService;
@@ -595,6 +599,22 @@ public class ReportsBoxServiceImpl implements IReportsBoxService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
+		}else if (MagicValues.OW.equals(reportCode) && MagicValues.DYNAMIC_QUERY.equals(groupCode)
+			&& MagicValues.OW_N.equals(type)) {
+			TradingBox tradingBox = tradingBoxService.getById(billId);
+			if (tradingBox != null) {
+				tradingBox.setBoxTypeQuantityOne(tradingBox.getBoxNumber() + "*" + tradingBox.getBoxTypeQuantityOne());
+				List<TradingBoxItem> tradingBoxItemList = tradingBoxItemService.list(new LambdaQueryWrapper<TradingBoxItem>()
+					.eq(TradingBoxItem::getTenantId, AuthUtil.getTenantId())
+					.eq(TradingBoxItem::getIsDeleted, 0)
+					.eq(TradingBoxItem::getPid, tradingBox.getId()));
+				tradingBox.setTradingBoxItemsList(tradingBoxItemList);
+				tradingBox.setDate(new Date());
+				tradingBox.setDept(dept);
+				map.put(MagicValues.DATA, tradingBox);
+			} else {
+				map.put(MagicValues.DATA, null);
+			}
 		} else {
 			map.put(MagicValues.DATA, null);
 		}

+ 74 - 13
blade-service/blade-los/src/main/java/org/springblade/los/box/controller/BoxReminderController.java

@@ -16,31 +16,29 @@
  */
 package org.springblade.los.box.controller;
 
-import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
-import io.swagger.annotations.Api;
 import lombok.AllArgsConstructor;
 import org.springblade.core.boot.ctrl.BladeController;
 import org.springblade.core.excel.util.ExcelUtil;
-import org.springblade.core.mp.support.Condition;
-import org.springblade.core.mp.support.Query;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
-import org.springblade.los.box.dto.ExportTradingBoxItemOut;
+import org.springblade.los.basic.corps.entity.BCorpsAttn;
+import org.springblade.los.basic.corps.service.IBCorpsAttnService;
+import org.springblade.los.box.entity.TradingBox;
+import org.springblade.los.box.entity.TradingBoxItem;
 import org.springblade.los.box.excel.BoxReminderExcel;
-import org.springblade.los.box.service.IPutBoxService;
-import org.springblade.los.box.service.IRouteCostService;
 import org.springblade.los.box.service.ITradingBoxItemService;
 import org.springblade.los.box.service.ITradingBoxService;
-import org.springblade.los.excel.RTFDProfitExcel;
-import org.springblade.los.excel.RouteCostProfitExcel;
+import org.springblade.los.business.sea.entity.Bills;
+import org.springblade.los.business.sea.service.IBillsService;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.servlet.http.HttpServletResponse;
-import java.math.BigDecimal;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 航线利润 控制器
@@ -56,13 +54,19 @@ public class BoxReminderController extends BladeController {
 
 	private final ITradingBoxService tradingBoxService;
 
+	private final ITradingBoxItemService tradingBoxItemService;
+
+	private final IBCorpsAttnService bCorpsAttnService;
+
+	private final IBillsService billsService;
+
 	/**
 	 * 提醒
 	 */
 	@GetMapping("/boxUsageReminder")
 	public R<List<BoxReminderExcel>> boxUsageReminder(BoxReminderExcel boxReminderExcel) {
 		boxReminderExcel.setTenantId(AuthUtil.getTenantId());
-		List<BoxReminderExcel> list = tradingBoxService.boxUsageReminder( boxReminderExcel);
+		List<BoxReminderExcel> list = tradingBoxService.boxUsageReminder(boxReminderExcel);
 		return R.data(list);
 	}
 
@@ -71,14 +75,71 @@ public class BoxReminderController extends BladeController {
 	 */
 	@GetMapping("/boxUsageReminderExport")
 	public void boxUsageReminderExport(BoxReminderExcel boxReminderExcel, HttpServletResponse response) {
-		List<BoxReminderExcel> list = tradingBoxService.boxUsageReminder( boxReminderExcel);
+		List<BoxReminderExcel> list = tradingBoxService.boxUsageReminder(boxReminderExcel);
 		if ("1".equals(boxReminderExcel.getType())) {
 			ExcelUtil.export(response, "还箱提醒", "还箱提醒", list, BoxReminderExcel.class);
 		} else if ("2".equals(boxReminderExcel.getType())) {
 			ExcelUtil.export(response, "用箱提箱", "用箱提箱", list, BoxReminderExcel.class);
-		}else if ("3".equals(boxReminderExcel.getType())) {
+		} else if ("3".equals(boxReminderExcel.getType())) {
 			ExcelUtil.export(response, "延期提醒", "延期提醒", list, BoxReminderExcel.class);
 		}
 	}
 
+
+	/**
+	 * 箱动态查询
+	 */
+	@GetMapping("/containerDynamicInquiry")
+	public R<TradingBox> containerDynamicInquiry(TradingBox tradingBox) {
+		Long purchaseCompanyId = null;
+		if (AuthUtil.getUserRole().contains("船东")) {
+			BCorpsAttn attn = bCorpsAttnService.getOne(new LambdaQueryWrapper<BCorpsAttn>()
+				.eq(BCorpsAttn::getTenantId, AuthUtil.getTenantId())
+				.eq(BCorpsAttn::getIsDeleted, 0)
+				.eq(BCorpsAttn::getUserId, AuthUtil.getUserId()));
+			if (attn != null) {
+				purchaseCompanyId = attn.getPid();
+			} else {
+				purchaseCompanyId = 0L;
+			}
+		}
+		TradingBox tradingBoxDetail = tradingBoxService.getOne(new LambdaQueryWrapper<TradingBox>()
+			.eq(TradingBox::getTenantId, AuthUtil.getTenantId())
+			.eq(TradingBox::getIsDeleted, 0)
+			.eq(ObjectUtils.isNotNull(purchaseCompanyId), TradingBox::getPurchaseCompanyId, purchaseCompanyId)
+			.eq(TradingBox::getType, "OW-N")
+			.like(ObjectUtils.isNotNull(tradingBox.getCode()), TradingBox::getCode, tradingBox.getCode())
+			.eq(TradingBox::getContainerNumber, tradingBox.getContainerNumber())
+			.last("LIMIT 1"));
+		if (tradingBoxDetail == null) {
+			throw new RuntimeException("未查到单据信息");
+		}
+		List<TradingBoxItem> tradingBoxItemList = tradingBoxItemService.list(new LambdaQueryWrapper<TradingBoxItem>()
+			.eq(TradingBoxItem::getTenantId, AuthUtil.getTenantId())
+			.eq(TradingBoxItem::getIsDeleted, 0)
+			.eq(TradingBoxItem::getPid, tradingBoxDetail.getId()));
+		if (!tradingBoxItemList.isEmpty()) {
+			List<String> mblno = tradingBoxItemList.stream().map(TradingBoxItem::getMblno).distinct().collect(Collectors.toList());
+			if (!mblno.isEmpty()) {
+				List<Bills> billsList = billsService.list(new LambdaQueryWrapper<Bills>()
+					.eq(Bills::getTenantId, AuthUtil.getTenantId())
+					.eq(Bills::getIsDeleted, 0)
+					.eq(Bills::getBusinessType, "SE")
+					.in(Bills::getMblno, mblno));
+				for (TradingBoxItem item : tradingBoxItemList) {
+					if (!billsList.isEmpty()){
+						Bills bills = billsList.stream().filter(e-> e.getMblno().equals(item.getMblno())).findFirst().orElse(null);
+						if (bills != null){
+							item.setActualEta(bills.getActualEta());
+							item.setActualEtd(bills.getActualEtd());
+						}
+					}
+				}
+			}
+		}
+		tradingBoxDetail.setTradingBoxItemsList(tradingBoxItemList);
+		tradingBoxDetail.setBoxTypeQuantityOne(tradingBoxDetail.getBoxNumber() + "*" + tradingBoxDetail.getBoxTypeQuantityOne());
+		return R.data(tradingBoxDetail);
+	}
+
 }

+ 3 - 3
blade-service/blade-los/src/main/java/org/springblade/los/box/dynamics/service/impl/BoxDynamicsRecordServiceImpl.java

@@ -6087,7 +6087,7 @@ public class BoxDynamicsRecordServiceImpl extends ServiceImpl<BoxDynamicsRecordM
 					failureHandling(type, boxDynamicsRecord, "未查到放箱号数据");
 					return false;
 				}
-				Containers containers = containersListNew.stream().filter(e -> e.getCntrNo().equals(item.getBoxCode())).findFirst().orElse(null);
+				Containers containers = containersListNew.stream().filter(e ->  item.getBoxCode().equals(e.getCntrNo())).findFirst().orElse(null);
 				if (containers == null) {
 //					throw new RuntimeException("箱号未在配箱信息中查到");
 					failureHandling(type, boxDynamicsRecord, "箱号未在配箱信息中查到");
@@ -6328,8 +6328,8 @@ public class BoxDynamicsRecordServiceImpl extends ServiceImpl<BoxDynamicsRecordM
 		feeCenter.setUnsettledAmount(amount);
 		feeCenter.setPrice(amount);
 		feeCenter.setRemarks(text);
-		int quantity = bills.getQuantityV20()+bills.getQuantityV40()+bills.getQuantityV45()+bills.getQuantityV48()+bills.getQuantityV40hc();
-		feeCenter.setQuantity(new BigDecimal(quantity));
+//		int quantity = bills.getQuantityV20()+bills.getQuantityV40()+bills.getQuantityV45()+bills.getQuantityV48()+bills.getQuantityV40hc();
+		feeCenter.setQuantity(new BigDecimal("1"));
 		feeCenter.setBillNo(bills.getBillNo());
 		feeCenter.setBusinessType(bills.getBusinessType());
 		feeCenter.setBillDate(bills.getBillDate());

+ 11 - 1
blade-service/blade-los/src/main/java/org/springblade/los/box/service/impl/TradingBoxServiceImpl.java

@@ -288,7 +288,10 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 		String text;
 		if ("OW-N,OW-F".contains(tradingBox.getType())) {
 			text = "放箱号已存在,请勿重复添加";
-			tradingBox.setNotSuitcaseNum(tradingBox.getBoxNumber()-tradingBox.getSuitcaseNum());
+			if (ObjectUtils.isNull(tradingBox.getSuitcaseNum())){
+				tradingBox.setSuitcaseNum(0);
+			}
+			tradingBox.setNotSuitcaseNum(tradingBox.getBoxNumber() - tradingBox.getSuitcaseNum());
 		} else {
 			text = "合同号已存在,请勿重复添加";
 		}
@@ -2742,6 +2745,10 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 	@Transactional(rollbackFor = Exception.class)
 	public R synchronousPutBoxData(TradingBox tradingBox) {
 		Long id = tradingBox.getId();
+		if (tradingBox.getBoxNumber() < tradingBox.getSuitcaseNum()) {
+			throw new RuntimeException("箱量不能小于已提箱数量");
+		}
+		tradingBox.setNotSuitcaseNum(tradingBox.getBoxNumber() - tradingBox.getSuitcaseNum());
 		baseMapper.updateById(tradingBox);
 		List<TradingBoxItem> tradingBoxItemList = tradingBoxItemService.list(new LambdaQueryWrapper<TradingBoxItem>()
 			.eq(TradingBoxItem::getTenantId, AuthUtil.getTenantId())
@@ -2769,6 +2776,9 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 		putBox.setBoxEastName(tradingBox.getPurchaseCompanyName());
 		putBox.setBoxCondition(tradingBox.getBoxCondition());
 
+		if (tradingBox.getBoxNumber() < putBox.getOccupyNum()) {
+			throw new RuntimeException("箱量不能小于已占用数量");
+		}
 		putBox.setTotalNum(tradingBox.getBoxNumber());
 		putBox.setRemainingNum(putBox.getTotalNum() - putBox.getOccupyNum());
 		putBox.setNotSuitcaseNum(putBox.getTotalNum());

+ 90 - 44
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/impl/BillsServiceImpl.java

@@ -210,31 +210,29 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 			.eq(Bills::getHblno, bills.getHblno())
 			.eq(Bills::getBusinessType, bills.getBusinessType())
 		);
-		if (ObjectUtils.isNotNull(bills.getBillDate())) {
-			LocalDate date = bills.getBillDate().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
-			int year = date.getYear();
-			int month = date.getMonthValue();
-			FinPeriod finPeriod = finPeriodMapper.selectOne(new LambdaQueryWrapper<FinPeriod>()
-				.eq(FinPeriod::getTenantId, AuthUtil.getTenantId())
-				.eq(FinPeriod::getBranchId, bills.getBranchId())
-				.eq(FinPeriod::getIsDeleted, 0)
-				.eq(FinPeriod::getPeriodYear, year)
-				.eq(FinPeriod::getPeriodMonth, month));
-			if (finPeriod != null) {
-				if (1 == finPeriod.getIsClosed()) {
-					throw new RuntimeException(year + "年" + month + "月账期已结转,保存失败");
-				}
-				if (1 == finPeriod.getLockingStatus()) {
-					throw new RuntimeException(year + "年" + month + "月账期已锁定,保存失败");
-				}
+		if ("SE".equals(bills.getBusinessType())) {
+			bills.setBillDate(bills.getActualEtd());
+		} else if ("SI".equals(bills.getBusinessType())) {
+			bills.setBillDate(bills.getActualEta());
+		}
+		LocalDate date = bills.getBillDate().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
+		int year = date.getYear();
+		int month = date.getMonthValue();
+		FinPeriod finPeriod = finPeriodMapper.selectOne(new LambdaQueryWrapper<FinPeriod>()
+			.eq(FinPeriod::getTenantId, AuthUtil.getTenantId())
+			.eq(FinPeriod::getBranchId, bills.getBranchId())
+			.eq(FinPeriod::getIsDeleted, 0)
+			.eq(FinPeriod::getPeriodYear, year)
+			.eq(FinPeriod::getPeriodMonth, month));
+		if (finPeriod != null) {
+			if (1 == finPeriod.getIsClosed()) {
+				throw new RuntimeException(year + "年" + month + "月账期已结转,保存失败");
 			}
-		} else {
-			if ("SE".equals(bills.getBusinessType())) {
-				bills.setBillDate(bills.getActualEtd());
-			} else if ("SI".equals(bills.getBusinessType())) {
-				bills.setBillDate(bills.getActualEta());
+			if (1 == finPeriod.getLockingStatus()) {
+				throw new RuntimeException(year + "年" + month + "月账期已锁定,保存失败");
 			}
 		}
+
 		if (ObjectUtils.isNotNull(bills.getCorpId())) {
 			BCorps bCorps = corpsMapper.selectById(bills.getCorpId());
 			if ("D".equals(bCorps.getCreditLevel())) {
@@ -379,7 +377,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 				if (ObjectUtils.isNull(item.getCntrTypeCode())) {
 					throw new RuntimeException("箱型不能为空");
 				}
-				if ("0".equals(item.getWhetherAppearStatus())){
+				if ("0".equals(item.getWhetherAppearStatus())) {
 					item.setActualQuantity(item.getQuantity());
 				}
 				if (item.getId() == null) {
@@ -545,7 +543,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 			String exrateType = currencyUtils.standardCurrency(branchId);
 			statusD += 1;
 			for (FeeCenter item : bills.getFeeCenterListD()) {
-				if (ObjectUtils.isNotNull(bills.getPreContainersList())&& !"CQXSF".equals(item.getFeeCode())) {
+				if (ObjectUtils.isNotNull(bills.getPreContainersList()) && !"CQXSF".equals(item.getFeeCode())) {
 					PreContainers preContainers = bills.getPreContainersList().stream().filter(e -> e.getCntrTypeCode().equals(item.getUnitNo()))
 						.findFirst().orElse(null);
 					if (preContainers != null && item.getQuantity().compareTo(new BigDecimal(preContainers.getQuantity() + "")) != 0 &&
@@ -1305,29 +1303,77 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 		bills.setUpdateUser(AuthUtil.getUserId());
 		bills.setUpdateTime(new Date());
 		bills.setUpdateUserName(AuthUtil.getUserName());
-		if (ObjectUtils.isNotNull(bills.getBillDate())) {
-			LocalDate date = bills.getBillDate().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
-			int year = date.getYear();
-			int month = date.getMonthValue();
-			FinPeriod finPeriod = finPeriodMapper.selectOne(new LambdaQueryWrapper<FinPeriod>()
-				.eq(FinPeriod::getTenantId, AuthUtil.getTenantId())
-				.eq(FinPeriod::getBranchId, bills.getBranchId())
-				.eq(FinPeriod::getIsDeleted, 0)
-				.eq(FinPeriod::getPeriodYear, year)
-				.eq(FinPeriod::getPeriodMonth, month));
-			if (finPeriod != null) {
-				if (1 == finPeriod.getIsClosed()) {
-					throw new RuntimeException(year + "年" + month + "月账期已结转,保存失败");
-				}
-				if (1 == finPeriod.getLockingStatus()) {
-					throw new RuntimeException(year + "年" + month + "月账期已锁定,保存失败");
-				}
+		if ("SE".equals(bills.getBusinessType())) {
+			bills.setBillDate(bills.getActualEtd());
+		} else if ("SI".equals(bills.getBusinessType())) {
+			bills.setBillDate(bills.getActualEta());
+		}
+		LocalDate date = bills.getBillDate().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
+		int year = date.getYear();
+		int month = date.getMonthValue();
+		FinPeriod finPeriod = finPeriodMapper.selectOne(new LambdaQueryWrapper<FinPeriod>()
+			.eq(FinPeriod::getTenantId, AuthUtil.getTenantId())
+			.eq(FinPeriod::getBranchId, bills.getBranchId())
+			.eq(FinPeriod::getIsDeleted, 0)
+			.eq(FinPeriod::getPeriodYear, year)
+			.eq(FinPeriod::getPeriodMonth, month));
+		if (finPeriod != null) {
+			if (1 == finPeriod.getIsClosed()) {
+				throw new RuntimeException(year + "年" + month + "月账期已结转,保存失败");
+			}
+			if (1 == finPeriod.getLockingStatus()) {
+				throw new RuntimeException(year + "年" + month + "月账期已锁定,保存失败");
 			}
 		}
 		if ("MM".equals(bills.getBillType()) && ObjectUtils.isNotNull(bills.getId())) {
 			bills.setMasterBillNo(bills.getBillNo());
 			this.synchronous(bills);
 		}
+		List<FeeCenter> feeCenterList = feeCenterService.list(new LambdaQueryWrapper<FeeCenter>()
+			.eq(FeeCenter::getTenantId, AuthUtil.getTenantId())
+			.eq(FeeCenter::getIsDeleted, 0)
+			.eq(FeeCenter::getPid, bills.getId()));
+		for (FeeCenter item : feeCenterList) {
+			item.setEta(bills.getEta());
+			item.setEtd(bills.getEtd());
+			item.setBillDate(bills.getBillDate());
+			item.setVesselId(bills.getVesselId());
+			item.setVesselCnName(bills.getVesselCnName());
+			item.setVesselEnName(bills.getVesselEnName());
+			item.setVoyageNo(bills.getVoyageNo());
+			item.setPolId(bills.getPolId());
+			item.setPolCnName(bills.getPolCnName());
+			item.setPolEnName(bills.getPolEnName());
+			item.setPolCode(bills.getPolCode());
+			item.setPodId(bills.getPodId());
+			item.setPodCnName(bills.getPodCnName());
+			item.setPodEnName(bills.getPodEnName());
+			item.setPodCode(bills.getPodCode());
+		}
+		feeCenterService.updateBatchById(feeCenterList);
+		List<FinAccBills> finAccBillsList = finAccBillsService.list(new LambdaQueryWrapper<FinAccBills>()
+			.eq(FinAccBills::getTenantId, AuthUtil.getTenantId())
+			.eq(FinAccBills::getIsDeleted, 0)
+			.eq(FinAccBills::getBusinessBillId, bills.getId()));
+		for (FinAccBills item : finAccBillsList) {
+			item.setEtd(bills.getEtd());
+			item.setEta(bills.getEta());
+			item.setBillDate(bills.getBillDate());
+			item.setBusinessDate(bills.getBillDate());
+			item.setVesselId(bills.getVesselId());
+			item.setVesselCnName(bills.getVesselCnName());
+			item.setVesselEnName(bills.getVesselEnName());
+			item.setVoyageNo(bills.getVoyageNo());
+			item.setPolId(bills.getPolId());
+			item.setPolCnName(bills.getPolCnName());
+			item.setPolEnName(bills.getPolEnName());
+			item.setPolCode(bills.getPolCode());
+			item.setPodId(bills.getPodId());
+			item.setPodCnName(bills.getPodCnName());
+			item.setPodEnName(bills.getPodEnName());
+			item.setPodCode(bills.getPodCode());
+		}
+		finAccBillsService.updateBatchById(finAccBillsList);
 		if (!bills.getPreContainersList().isEmpty()) {
 			preContainersService.saveOrUpdateBatch(bills.getPreContainersList());
 		}
@@ -4273,7 +4319,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 					preContainers1.setContainerNumberStatus("录入");
 					copyPreContainersList.add(preContainers1);
 				}
-			}else{
+			} else {
 				item.setQuantityCntrDescr("");
 				quantityCntrDescr = true;
 			}
@@ -4292,7 +4338,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 				}
 			}
 		}
-		if (quantityCntrDescr){
+		if (quantityCntrDescr) {
 			this.updateBatchById(copyBillsList);
 		}
 		if (!copyFeeCenterList.isEmpty()) {
@@ -4747,7 +4793,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 				if (ObjectUtils.isNull(item.getCntrTypeCode())) {
 					throw new RuntimeException("箱型不能为空");
 				}
-				if ("0".equals(item.getWhetherAppearStatus())){
+				if ("0".equals(item.getWhetherAppearStatus())) {
 					item.setActualQuantity(item.getQuantity());
 				}
 				item.setWhetherModifyJson(item.getCntrTypeCode() + "+" + item.getQuantity());

+ 1 - 1
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/impl/SeaContainerNumberItemServiceImpl.java

@@ -378,7 +378,7 @@ public class SeaContainerNumberItemServiceImpl extends ServiceImpl<SeaContainerN
 				throw new RuntimeException("数据错误,请联系管理员");
 			}
 			if (item.getOccupyNum() < containerNumberItem.getOccupyNum()) {
-				throw new RuntimeException("放箱号已出场,撤销失败");
+				throw new RuntimeException("放箱号占用箱量小于本次撤销箱量,撤销失败");
 			}
 			item.setOccupyNum(item.getOccupyNum() - containerNumberItem.getOccupyNum());
 			item.setRemainingNum(item.getRemainingNum() + containerNumberItem.getOccupyNum());