From bf2fbd9f3e90dd2ef508c5944ae63491397b42ae Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期六, 04 十一月 2023 10:35:26 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java | 197 ++++++++++++++++++++++++++++++++----------------
1 files changed, 130 insertions(+), 67 deletions(-)
diff --git a/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java b/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java
index 0a9e933..478a3a3 100644
--- a/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java
+++ b/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java
@@ -56,6 +56,8 @@
@Autowired
private UserService userService;
+ String PZH=" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� ";
+
@RequestMapping(value = "/priOnline2/{id}/auth")
@ManagerAuth
public R get(@PathVariable("id") String id) {
@@ -63,7 +65,7 @@
assert priOnline2 != null;
JSONObject resultObj = JSON.parseObject(JSON.toJSONString(priOnline2));
// 姝ラ鏉$浉鍏�
- resultObj.put("step", priOnline2.getSettle() == 4 ? 0 : priOnline2.getSettle() + 1);
+ resultObj.put("step", priOnline2.getSettle() == 3 ? 0 : priOnline2.getSettle() + 1);
return R.ok().add(resultObj);
}
@@ -126,7 +128,13 @@
}
}
if (!signUserId && !signDeptId){
- wrapper.eq("user_id", getUserId());
+ if (getRole().getId()==1){
+ wrapper.or().eq("host_id",1);
+ }else if (getRole().getId()==2){
+ wrapper.eq("dept_id",getDeptId());
+ }else {
+ wrapper.eq("user_id", getUserId());
+ }
}
if (signHostId){
wrapper.or().eq("host_id",1);
@@ -178,21 +186,20 @@
// }catch (Exception e){
// manager = getUser();
// }
- String node="2-";
- PlanType planType = planTypeService.selectById(plan.getPlanType());
- node = node+planType.getType();
-
- ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", node));//2锛氭姤浠锋祦绋�
- User manager = userService.selectById(processPermissions.getUserId()); // 鑾峰彇鎶ヤ环娴佺▼鑺傜偣2纭浜�
+// String node="2-";
+// PlanType planType = planTypeService.selectById(plan.getPlanType());
+// node = node+planType.getType();
+// ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", node));//2锛氭牳浠锋祦绋�
+// User manager = userService.selectById(processPermissions.getUserId()); // 鑾峰彇鏍镐环娴佺▼鑺傜偣2纭浜�
// 鑾峰彇涓氬姟鍛�
List<String> initNames = new ArrayList<>();
initNames.add("鎺ュ彇鏍镐环浠诲姟");
initNames.add("瀹屾垚鏍镐环");
- initNames.add("缁忕悊瀹℃牳");
+// initNames.add("缁忕悊瀹℃牳");
initNames.add("涓氬姟鍛樼‘璁�");
- priOnline2.setSettleMsg(JSON.toJSONString(SettleDto.initSalesPricing(manager,getUser(),userUp,initNames,3)));
+ priOnline2.setSettleMsg(JSON.toJSONString(SettleDto.initSalesPricingPriOnline2(getUser(),userUp,initNames,2)));
//璁剧疆椤圭洰娴佺▼
plan.setStep(2);
@@ -433,6 +440,48 @@
return R.ok().add(vos);
}
+ @PostMapping(value = "/priOnline2/approvalEnd/auth")
+ @ManagerAuth(memo = "鎷掔粷鐢宠鍗�")
+ public R approvalEnd(@RequestParam Long priOnlineId,
+ @RequestParam(required = false) Long plannerId) {
+ PriOnline2 priOnline2 = priOnline2Service.selectById(priOnlineId);
+ Date now = new Date();
+ Long memberId = priOnline2.getMemberId();
+ User member = userService.selectById(memberId);
+ if (!member.getId().equals(getUserId())){
+ return R.error("鎶辨瓑锛屾偍娌℃湁瀹℃牳鐨勬潈闄�");
+ }
+ List<SettleDto> planDtos = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class);
+ List<SettleDto> planDtoList = new ArrayList<>();
+ boolean sign = true;
+ for (SettleDto dto : planDtos) {
+ if (dto.getStep().equals(1)){
+ priOnline2.setMemberId(dto.getUserId());
+ }
+ if (sign && dto.getUserId().equals(memberId) && priOnline2.getSettle()+1==dto.getStep()){
+ if (Cools.isEmpty(dto.getMsg())){
+ dto.setMsg(DateUtils.convert(now)+" "+member.getNickname()+"鍥為��瀹℃壒");
+ }else {
+ dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(now)+" "+member.getNickname()+"鍥為��瀹℃壒");
+ }
+ sign = false;
+ }
+ if (sign){
+ dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(now)+" "+member.getNickname()+"鍥為��瀹℃壒");
+ }
+
+ planDtoList.add(dto);
+ }
+ priOnline2.setStatus(0);
+ priOnline2.setSettle(0);
+ priOnline2.setUpdateUserId(getUserId());
+ priOnline2.setUpdateTime(now);
+
+ priOnline2.setSettleMsg(JSON.toJSONString(planDtoList));
+ priOnline2Service.updateById(priOnline2);
+ return R.ok("鍥為��鎴愬姛");
+ }
+
@PostMapping(value = "/priOnline2/approval/auth")
@ManagerAuth
public R approvalBusinessTrip(@RequestParam Long priOnlineId,
@@ -443,16 +492,18 @@
switch (priOnline2.getSettle()) {
case 0:
// 鏈儴闂ㄧ粡鐞嗗鏍� 鑺傜偣璐熻矗浜�
- Plan plan1 = planService.selectById(priOnline2.getItemId());
- PlanType planType1 = planTypeService.selectById(plan1.getPlanType());
+ User user = userService.selectById(priOnline2.getMemberId());
- ProcessPermissions processPermissions1 = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "2-"+planType1.getType()));//2锛氭姤浠锋祦绋�
- User manager1 = userService.selectById(processPermissions1.getUserId()); // 鑾峰彇鎶ヤ环娴佺▼鑺傜偣2纭浜�
+ Plan plan1 = planService.selectById(priOnline2.getItemId());
+// PlanType planType1 = planTypeService.selectById(plan1.getPlanType());
+//
+// ProcessPermissions processPermissions1 = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "2-"+planType1.getType()));//2锛氭牳浠锋祦绋�
+// User manager1 = userService.selectById(processPermissions1.getUserId()); // 鑾峰彇鎶ヤ环娴佺▼鑺傜偣2纭浜�
if (Cools.isEmpty(getUser())) {
return R.error("鎶辨瓑锛屾偍娌℃湁鎻愪氦鐨勬潈闄�");
}
- if (!getUserId().equals(getUser().getId())) {
+ if (!getUserId().equals(user.getId())) {
return R.error("鎶辨瓑锛屾偍娌℃湁鎻愪氦鐨勬潈闄�");
}
// 淇敼 settle 姝ラ鏁版嵁
@@ -464,7 +515,11 @@
break;
case 1:
dto.setCurr(Boolean.TRUE);
- dto.setMsg(getUser().getNickname() + "鎻愪氦瀹屾垚");
+ if (Cools.isEmpty(dto.getMsg())){
+ dto.setMsg(user.getNickname() + "鎻愪氦瀹屾垚");
+ }else {
+ dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" " + user.getNickname() + "鎻愪氦瀹屾垚");
+ }
dto.setTime(DateUtils.convert(now));
break;
default:
@@ -476,59 +531,63 @@
priOnline2.setSettle(1);
priOnline2.setUpdateUserId(getUserId());
priOnline2.setUpdateTime(now);
- priOnline2.setMemberId(manager1.getId());
+ priOnline2.setMemberId(plan1.getUserId());
if (!priOnline2Service.updateById(priOnline2)) {
throw new CoolException("鎻愪氦澶辫触锛岃鑱旂郴绠$悊鍛�");
}
break;
- case 1:
- // 鏈儴闂ㄧ粡鐞嗗鏍� 鑺傜偣璐熻矗浜�
- Plan plan = planService.selectById(priOnline2.getItemId());
- PlanType planType = planTypeService.selectById(plan.getPlanType());
-
- ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "2-"+planType.getType()));//2锛氭姤浠锋祦绋�
- User manager = userService.selectById(processPermissions.getUserId()); // 鑾峰彇鎶ヤ环娴佺▼鑺傜偣2纭浜�
-
-// User manager = new User();
-// try{
-// manager = userService.getDeptManager(getHostId(), getUser().getDeptId()); // 鑾峰彇閮ㄩ棬棰嗗
-// }catch (Exception e){
-// manager = user;
+// case 1:
+// // 鏈儴闂ㄧ粡鐞嗗鏍� 鑺傜偣璐熻矗浜�
+// Plan plan = planService.selectById(priOnline2.getItemId());
+// PlanType planType = planTypeService.selectById(plan.getPlanType());
+//
+// ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "2-"+planType.getType()));//2锛氭姤浠锋祦绋�
+// User manager = userService.selectById(processPermissions.getUserId()); // 鑾峰彇鎶ヤ环娴佺▼鑺傜偣2纭浜�
+//
+//// User manager = new User();
+//// try{
+//// manager = userService.getDeptManager(getHostId(), getUser().getDeptId()); // 鑾峰彇閮ㄩ棬棰嗗
+//// }catch (Exception e){
+//// manager = user;
+//// }
+// if (manager.getId().equals(getUserId())) {
+//
+// // 淇敼 settle 姝ラ鏁版嵁
+// List<SettleDto> list = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class);
+// for (SettleDto dto : list) {
+// switch (dto.getStep()) {
+// case 1:
+// dto.setCurr(Boolean.FALSE);
+// break;
+// case 2:
+// dto.setCurr(Boolean.TRUE);
+// if (Cools.isEmpty(dto.getMsg())){
+// dto.setMsg(manager.getNickname() + "瀹℃壒閫氳繃");
+// }else {
+// dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" " + manager.getNickname() + "瀹℃壒閫氳繃");
+// }
+// dto.setTime(DateUtils.convert(now));
+// break;
+// default:
+// break;
+// }
+// }
+// priOnline2.setSettleMsg(JSON.toJSONString(list));
+//
+// // 淇敼瑙勫垝鍗曠姸鎬�
+// priOnline2.setSettle(2); // 鐢宠閫氳繃
+// priOnline2.setUpdateTime(now);
+// priOnline2.setUpdateUserId(getUserId());
+// priOnline2.setMemberId(plan.getUserId());
+// if (!priOnline2Service.updateById(priOnline2)) {
+// throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
+// }
+// } else {
+// return R.error("鎶辨瓑锛屾偍娌℃湁瀹℃牳鐨勬潈闄愶紒锛侊紒");
// }
- if (manager.getId().equals(getUserId())) {
-
- // 淇敼 settle 姝ラ鏁版嵁
- List<SettleDto> list = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class);
- for (SettleDto dto : list) {
- switch (dto.getStep()) {
- case 1:
- dto.setCurr(Boolean.FALSE);
- break;
- case 2:
- dto.setCurr(Boolean.TRUE);
- dto.setMsg(manager.getNickname() + "瀹℃壒閫氳繃");
- dto.setTime(DateUtils.convert(now));
- break;
- default:
- break;
- }
- }
- priOnline2.setSettleMsg(JSON.toJSONString(list));
-
- // 淇敼瑙勫垝鍗曠姸鎬�
- priOnline2.setSettle(2); // 鐢宠閫氳繃
- priOnline2.setUpdateTime(now);
- priOnline2.setUpdateUserId(getUserId());
- priOnline2.setMemberId(plan.getUserId());
- if (!priOnline2Service.updateById(priOnline2)) {
- throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
- }
- } else {
- return R.error("鎶辨瓑锛屾偍娌℃湁瀹℃牳鐨勬潈闄愶紒锛侊紒");
- }
- break;
- case 2:
+// break;
+ case 1:
// 涓氬姟鍛�
User salesman0 = userService.selectById(priOnline2.getUserId());
if (!getUserId().equals(salesman0.getId())) {
@@ -538,12 +597,16 @@
List<SettleDto> list2 = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class);
for (SettleDto dto : list2) {
switch (dto.getStep()) {
- case 2:
+ case 1:
dto.setCurr(Boolean.TRUE);
break;
- case 3:
+ case 2:
dto.setCurr(Boolean.TRUE);
- dto.setMsg("涓氬姟鍛�" + salesman0.getNickname() + "浠ョ‘璁�");
+ if (Cools.isEmpty(dto.getMsg())){
+ dto.setMsg("涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃");
+ }else {
+ dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃");
+ }
dto.setTime(DateUtils.convert(new Date()));
break;
default:
@@ -552,7 +615,7 @@
}
priOnline2.setSettleMsg(JSON.toJSONString(list2));
// 淇敼瑙勫垝鍗曠姸鎬�
- priOnline2.setSettle(3); // 瀹℃壒閫氳繃
+ priOnline2.setSettle(2); // 瀹℃壒閫氳繃
priOnline2.setStatus(1);
priOnline2.setUpdateTime(new Date());
priOnline2.setUpdateUserId(getUserId());
--
Gitblit v1.9.1