Browse Source

1.增加营业费用复制接口
2.付费申请添加明细数据bug修改

纪新园 2 months ago
parent
commit
cacc169436

+ 10 - 0
blade-service/blade-los/src/main/java/org/springblade/los/finance/operatingExpenses/controller/OperatingExpensesController.java

@@ -206,4 +206,14 @@ public class OperatingExpensesController extends BladeController {
 	}
 	}
 
 
 
 
+	/**
+	 * 复制
+	 */
+	@GetMapping("/copyOperatingExpenses")
+	@RepeatSubmit
+	public R copyOperatingExpenses(@RequestBody OperatingExpenses operatingExpenses) {
+		return operatingExpensesService.copyOperatingExpenses(operatingExpenses);
+	}
+
+
 }
 }

+ 2 - 0
blade-service/blade-los/src/main/java/org/springblade/los/finance/operatingExpenses/service/IOperatingExpensesService.java

@@ -52,4 +52,6 @@ public interface IOperatingExpensesService extends IService<OperatingExpenses> {
 	R revokeConfirmation(OperatingExpenses operatingExpenses);
 	R revokeConfirmation(OperatingExpenses operatingExpenses);
 
 
 	R print(Long id);
 	R print(Long id);
+
+	R copyOperatingExpenses(OperatingExpenses operatingExpenses);
 }
 }

+ 59 - 0
blade-service/blade-los/src/main/java/org/springblade/los/finance/operatingExpenses/service/impl/OperatingExpensesServiceImpl.java

@@ -24,6 +24,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.AllArgsConstructor;
 import lombok.AllArgsConstructor;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.los.basic.business.entity.BusinessType;
 import org.springblade.los.basic.business.entity.BusinessType;
 import org.springblade.los.basic.business.service.IBusinessTypeService;
 import org.springblade.los.basic.business.service.IBusinessTypeService;
 import org.springblade.los.billno.entity.BusinessBillNo;
 import org.springblade.los.billno.entity.BusinessBillNo;
@@ -324,4 +325,62 @@ public class OperatingExpensesServiceImpl extends ServiceImpl<OperatingExpensesM
 		return R.data(operatingExpenses);
 		return R.data(operatingExpenses);
 	}
 	}
 
 
+	@Override
+	public R copyOperatingExpenses(OperatingExpenses operatingExpenses) {
+		if (ObjectUtils.isNull(operatingExpenses.getId())) {
+			throw new RuntimeException("缺少必要参数");
+		}
+		OperatingExpenses operatingExpensesNew = new OperatingExpenses();
+		OperatingExpenses detail = baseMapper.selectById(operatingExpenses.getId());
+		BeanUtil.copy(detail, operatingExpensesNew);
+		detail.setId(null);
+		detail.setCreateUser(null);
+		detail.setCreateUserName(null);
+		detail.setCreateTime(null);
+		detail.setUpdateUserName(null);
+		detail.setUpdateTime(null);
+		detail.setStatus(null);
+		detail.setApplicantId(null);
+		detail.setApplicantName(null);
+		detail.setApplicantDate(null);
+		detail.setSettlementStatus(null);
+		detail.setSettlementDate(null);
+		detail.setSettlementPersonId(null);
+		detail.setSettlementPersonName(null);
+		detail.setPrinterId(null);
+		detail.setPrinterName(null);
+		detail.setPrintDate(null);
+		detail.setPrintFrequency(null);
+		detail.setBillNo(null);
+		List<OperatingExpensesItem> operatingExpensesItemList = operatingExpensesItemService.list(new LambdaQueryWrapper<OperatingExpensesItem>()
+			.eq(OperatingExpensesItem::getTenantId, AuthUtil.getTenantId())
+			.eq(OperatingExpensesItem::getIsDeleted, 0)
+			.eq(OperatingExpensesItem::getPid, operatingExpenses.getId()));
+		for (OperatingExpensesItem item : operatingExpensesItemList) {
+			item.setId(null);
+			item.setPid(null);
+			item.setCreateUser(null);
+			item.setCreateUserName(null);
+			item.setCreateTime(null);
+			item.setUpdateUserName(null);
+			item.setUpdateTime(null);
+		}
+		operatingExpensesNew.setOperatingExpensesItemList(operatingExpensesItemList.isEmpty() ? new ArrayList<>() : operatingExpensesItemList);
+		List<FilesCenter> filesCenterList = filesCenterService.list(new LambdaQueryWrapper<FilesCenter>()
+			.eq(FilesCenter::getTenantId, AuthUtil.getTenantId())
+			.eq(FilesCenter::getIsDeleted, 0)
+			.eq(FilesCenter::getPid, operatingExpenses.getId()));
+		for (FilesCenter item : filesCenterList) {
+			item.setId(null);
+			item.setPid(null);
+			item.setCreateUser(null);
+			item.setCreateUserName(null);
+			item.setCreateTime(null);
+			item.setUpdateUserName(null);
+			item.setUpdateTime(null);
+		}
+		operatingExpensesNew.setFilesCenterList(filesCenterList.isEmpty() ? new ArrayList<>() : filesCenterList);
+		return R.data(operatingExpensesNew);
+	}
+
 }
 }

+ 2 - 2
blade-service/blade-los/src/main/java/org/springblade/los/finance/stl/service/impl/FinStlBillsServiceImpl.java

@@ -2432,11 +2432,11 @@ public class FinStlBillsServiceImpl extends ServiceImpl<FinStlBillsMapper, FinSt
 					} else {
 					} else {
 						BigDecimal amount = finAccBills.getAppliedAmountUsd().subtract(finAccBills.getAppliedAmountStlUsd().abs());
 						BigDecimal amount = finAccBills.getAppliedAmountUsd().subtract(finAccBills.getAppliedAmountStlUsd().abs());
 						if ("D".equals(finAccBills.getAccountDc())) {
 						if ("D".equals(finAccBills.getAccountDc())) {
-							if (item.getCurrentStlAmount().abs().compareTo(finAccBills.getAmountDrLoc().abs().subtract(amount.abs()).subtract(finAccBills.getStlAmountDrLoc().abs())) > 0) {
+							if (item.getCurrentStlAmount().abs().compareTo(finAccBills.getAmountDrUsd().abs().subtract(amount.abs()).subtract(finAccBills.getStlAmountDrUsd().abs())) > 0) {
 								throw new RuntimeException("本次申请金额大于未申请金额");
 								throw new RuntimeException("本次申请金额大于未申请金额");
 							}
 							}
 						} else {
 						} else {
-							if (item.getCurrentStlAmount().abs().compareTo(finAccBills.getAmountCrLoc().abs().subtract(amount.abs()).subtract(finAccBills.getStlAmountCrLoc().abs())) > 0) {
+							if (item.getCurrentStlAmount().abs().compareTo(finAccBills.getAmountCrUsd().abs().subtract(amount.abs()).subtract(finAccBills.getStlAmountCrUsd().abs())) > 0) {
 								throw new RuntimeException("本次申请金额大于未申请金额");
 								throw new RuntimeException("本次申请金额大于未申请金额");
 							}
 							}
 						}
 						}