소스 검색

1.增加汇率复制接口

纪新园 1 개월 전
부모
커밋
b9fcb0670d

+ 9 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/cur/controller/BCurrencyController.java

@@ -277,4 +277,13 @@ public class BCurrencyController extends BladeController {
 	}
 
 
+	/**
+	 * 复制
+	 */
+	@GetMapping("/copy")
+	public R copy(@RequestParam("id")Long id) {
+		return bCurrencyService.copy(id);
+	}
+
+
 }

+ 2 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/cur/service/IBCurrencyService.java

@@ -102,4 +102,6 @@ public interface IBCurrencyService extends IService<BCurrency> {
 	List<PeriodExchangeRate> getPeriodExchangeRate();
 
 	List<BCurrency> getBCurrency(BCurrency reports);
+
+	R copy(Long id);
 }

+ 28 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/cur/service/impl/BCurrencyServiceImpl.java

@@ -979,4 +979,32 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 		return baseMapper.getBCurrency(reports);
 	}
 
+	@Override
+	public R copy(Long id) {
+		BCurrency currency = baseMapper.selectById(id);
+		List<BCurExrate> curExrateList = bCurExrateService.list(new LambdaQueryWrapper<BCurExrate>()
+			.eq(BCurExrate::getTenantId, AuthUtil.getTenantId())
+			.eq(BCurExrate::getIsDeleted, 0)
+			.eq(BCurExrate::getBranchId, AuthUtil.getDeptId())
+			.eq(BCurExrate::getCode, currency.getCode()));
+		if (!curExrateList.isEmpty()) {
+			List<BCurExrate> exrateList = new ArrayList<>();
+			for (BCurExrate item : curExrateList) {
+				item.setId(null);
+				item.setCreateTime(null);
+				item.setCreateDept(null);
+				item.setCreateDeptName(null);
+				item.setCreateUser(null);
+				item.setCreateUserName(null);
+				item.setUpdateTime(null);
+				item.setUpdateUser(null);
+				item.setUpdateUserName(null);
+				item.setExrateYear(currency.getAnnual());
+				exrateList.add(item);
+			}
+			bCurExrateService.saveBatch(exrateList);
+		}
+		return R.success("操作成功");
+	}
+
 }