From 67460d9dd51a5185dc0f7cb872dce43789d54643 Mon Sep 17 00:00:00 2001
From: chengf <cgf12138@163.com>
Date: 星期四, 29 一月 2026 11:56:43 +0800
Subject: [PATCH] 上词掉词逻辑更新-cgf
---
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/demo/customer/controller/CustomerController.java | 64 +++++++++++++++++++++++++++++++-
1 files changed, 62 insertions(+), 2 deletions(-)
diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/demo/customer/controller/CustomerController.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/demo/customer/controller/CustomerController.java
index 9c0ec4d..e42ac02 100644
--- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/demo/customer/controller/CustomerController.java
+++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/demo/customer/controller/CustomerController.java
@@ -15,6 +15,7 @@
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.system.query.QueryRuleEnum;
import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.demo.contract.controller.ContractController;
import org.jeecg.modules.demo.contract.entity.Contract;
import org.jeecg.modules.demo.contract.entity.ContractFile;
import org.jeecg.modules.demo.contract.entity.SemanticWord;
@@ -32,6 +33,7 @@
import org.jeecg.modules.system.controller.SysUserController;
import org.jeecg.modules.system.entity.SysUser;
+import org.jeecg.modules.system.service.ISysUserService;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
@@ -64,7 +66,9 @@
public class CustomerController extends JeecgController<Customer, ICustomerService> {
@Autowired
private ICustomerService customerService;
-
+
+ @Autowired
+ private ISysUserService sysUserService;
/**
* 鍒嗛〉鍒楄〃鏌ヨ
*
@@ -90,6 +94,9 @@
queryWrapper.eq(Customer::getAgentsName,customer.getAgentsNameToCustomer());
queryWrapper.or();
queryWrapper.eq(Customer::getCreateBy,customer.getAgentsNameToCustomer());
+ queryWrapper.or();
+ queryWrapper.exists("SELECT 1 FROM contract WHERE contract.agents_name = {0} AND contract.customer_name = customer.enterprise_name",
+ customer.getAgentsNameToCustomer());
// 2. 鏌ヨ瀛楁鍊硷紝杩斿洖Object鍒楄〃
List<Object> objList = customerService.listObjs(queryWrapper);
@@ -108,6 +115,49 @@
IPage<Customer> pageList = customerService.page(page, queryWrapper);
return Result.OK(pageList);
}
+
+ @Operation(summary="瀹㈡埛琛�-鏌ヨ鎬诲鎴锋暟")
+ @GetMapping(value = "/count")
+ public Result<IPage<Customer>> count(Customer customer,
+ @RequestParam(name="role", defaultValue="鏃�") String role,
+ @RequestParam(name="user", defaultValue="鏃�") String user,
+ HttpServletRequest req) {
+ if (customer.getAgentsNameToCustomer() != null) {
+ // 1. 鏋勫缓Lambda鏌ヨ鏉′欢锛屾寚瀹氭煡璇nterpriseName瀛楁骞跺幓閲�
+ LambdaQueryWrapper<Customer> queryWrapper = new LambdaQueryWrapper<Customer>()
+ .select(Customer::getEnterpriseName); // 鍏宠仈瀹炰綋鐨刧etter鏂规硶
+
+ // 鍙�夛細娣诲姞鍘熸湁鏉′欢锛堝agentsName涓嶄负绌猴級
+ queryWrapper.eq(Customer::getAgentsName,customer.getAgentsNameToCustomer());
+ queryWrapper.or();
+ queryWrapper.eq(Customer::getCreateBy,customer.getAgentsNameToCustomer());
+ queryWrapper.or();
+ queryWrapper.exists("SELECT 1 FROM contract WHERE contract.agents_name = {0} AND contract.customer_name = customer.enterprise_name",
+ customer.getAgentsNameToCustomer());
+
+ // 2. 鏌ヨ瀛楁鍊硷紝杩斿洖Object鍒楄〃
+ List<Object> objList = customerService.listObjs(queryWrapper);
+
+ // 3. 杞崲涓篠tring绫诲瀷锛屽苟杩囨护null鍊�
+ if (CollectionUtils.isEmpty(objList)) {
+ return Result.ok(List.of().toString());
+ }
+ return Result.ok(objList.stream()
+ .filter(Objects::nonNull) // 杩囨护null鍊�
+ .map(Object::toString) // 杞崲涓篠tring
+ .collect(Collectors.toList()).toString());
+ }
+ QueryWrapper<Customer> queryWrapper = QueryGenerator.initQueryWrapper(customer, req.getParameterMap());
+
+ if (!user.equals("鏃�")){
+ QueryWrapper qw = new QueryWrapper<SysUser>();
+ qw.eq("id", user);
+ String userName = ((SysUser)((Page) sysUserService.queryPageList(req, qw, 1, 1).getResult()).getRecords().get(0)).getUsername();
+ queryWrapper.eq("create_by", userName);
+ }
+ long count = customerService.count(queryWrapper);
+ return Result.OK(count+"");
+ }
@Operation(summary="瀹㈡埛琛�-鍒嗛〉鍒楄〃鏌ヨ")
@GetMapping(value = "/listAgents")
@@ -254,6 +304,9 @@
@Autowired
private ISemanticWordService semanticWordService;
+ @Autowired
+ private ContractController contractController;
+
@RequiresPermissions("customer:customer:importCustomerContractWord")
@RequestMapping(value = "/importCustomerContractWord", method = RequestMethod.POST)
public Result<String> importCustomerContractWord(@RequestBody Customer customer) {
@@ -315,11 +368,17 @@
}
Customer one = customerService.getOne(queryWrapper);
customer.getContract().setCustomerName(one.getEnterpriseName());
- contractService.save(customer.getContract());
+
QueryWrapper<Contract> queryWrapper1 = new QueryWrapper<>();
queryWrapper1.eq("customer_name",customer.getContract().getCustomerName());
queryWrapper1.eq("contract_name",customer.getContract().getContractName());
+
+ if(contractService.count(queryWrapper1) != 0) {
+ return Result.error("璇ュ悎鍚屽凡瀛樺湪");
+ }
+ contractService.save(customer.getContract());
+
Contract one1 = contractService.getOne(queryWrapper1);
for (SemanticWord semanticWord : customer.getSemanticWordList()){
semanticWord.setContractId(one1.getId());
@@ -331,6 +390,7 @@
contractFileService.save(contractFile);
}
+ contractController.addContract(customer.getContract(),customer.getSemanticWordList());
return Result.OK("娣诲姞鎴愬姛锛�");
}
}
--
Gitblit v1.8.0