From 8b109f923dc7c2d5c5bd351a03a5277670962aac Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期一, 04 十二月 2023 13:05:04 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/crm/manager/controller/OrderController.java | 189 ++++++++++++++++++++++++++++++++++-------------
1 files changed, 137 insertions(+), 52 deletions(-)
diff --git a/src/main/java/com/zy/crm/manager/controller/OrderController.java b/src/main/java/com/zy/crm/manager/controller/OrderController.java
index 05433c2..0f17ce7 100644
--- a/src/main/java/com/zy/crm/manager/controller/OrderController.java
+++ b/src/main/java/com/zy/crm/manager/controller/OrderController.java
@@ -42,7 +42,9 @@
@Autowired
private PriOnline2Service priOnline2Service;
@Autowired
- private PriSalesService priSalesService;
+ private PriQuoteService priQuoteService;
+ @Autowired
+ private FollowUpService followUpService;
@RequestMapping(value = "/order/{id}/auth")
@ManagerAuth
@@ -62,10 +64,23 @@
if (param.get("status") != null) {
status = Integer.parseInt(param.get("status").toString());
}
+
+ Long director = null;
+ if (deptId==null && userId == null){
+ if (getRole().getId()==3){
+ userId = getUserId();
+ }else if (getRole().getId()==2){
+ deptId = getDeptId();
+ userId = null;
+ }
+ director = getUserId();
+ }
+
return R.ok(orderService.getPage(new Page<>(curr, limit)
, getHostId()
, deptId == null ? null : String.valueOf(deptId)
- , userId == null ? getUserId() : userId
+ , userId
+ , director
, condition
, status)
);
@@ -110,7 +125,29 @@
}
Date now = new Date();
+ if (order.getStatus()!=0){
+ if (Cools.isEmpty(order.getMemoExperience())){
+ return R.error("璇疯緭鍏ュ績寰椾綋浼�");
+ }else {
+ FollowUp followUp = new FollowUp();
+ followUp.setWorkMsg(order.getMemoExperience());
+ followUp.setOrderId(order.getId());
+ followUp.setUserId(getUserId());
+ followUp.setCreateBy(getUserId());
+ followUp.setUpdateBy(getUserId());
+ followUp.setDirector(getUserId());
+ followUp.setDeptId(getDeptId());
+ followUp.setCreateTime(now);
+ followUp.setUpdateTime(now);
+ followUpService.insert(followUp);
+ }
+ }else {
+ if (Cools.isEmpty(order.getMemoExperience())) {
+ order.setMemoExperience(null);
+ }
+ }
+ order.setMemoExperience(null);
order.setUpdateBy(getUserId());
order.setUpdateTime(now);
Order orderOld = orderService.selectById(order.getId());
@@ -132,48 +169,91 @@
}
public void updateDirector(Long orderId, User user , Date now){
+ User manager = new User();
+ try{
+ manager = userService.getDeptManager(getHostId(), user.getDeptId()); // 鑾峰彇閮ㄩ棬棰嗗
+ }catch (Exception e){
+ manager = user;
+ }
try{
List<Plan> plans = planService.selectList(new EntityWrapper<Plan>().eq("order_id", orderId));
for (Plan plan:plans){
- if (plan.getSettle$().equals("瀹℃壒閫氳繃")){
+ boolean signPlan = false;
+ List<PriOnline2> priOnline2s = priOnline2Service.selectList(new EntityWrapper<PriOnline2>().eq("item_id", plan.getId()));
+ if (!Cools.isEmpty(priOnline2s)){
+ for (PriOnline2 priOnline2:priOnline2s){
+ boolean signPriOnline2 = false;
+ List<PriQuote> priQuotes = priQuoteService.selectList(new EntityWrapper<PriQuote>().eq("pri_online_id", priOnline2.getId()));
+ if (!Cools.isEmpty(priQuotes)){
+ for (PriQuote priQuote:priQuotes){
+ if (priQuote.getSettle()>=4){
+ continue;
+ }
+ signPriOnline2 = true;
+ priQuote.setUserId(user.getId());
+ priQuote.setDeptId(user.getDeptId());
+ priQuote.setHostId(user.getHostId());
+ priQuote.setUpdateUserId(getUserId());
+ priQuote.setUpdateTime(now);
+
+ List<SettleDto> priQuoteDtos = JSON.parseArray(priQuote.getSettleMsg(), SettleDto.class);
+ List<SettleDto> priQuoteDtoList = new ArrayList<>();
+ for (SettleDto dto : priQuoteDtos) {
+ if (priQuoteDtos.indexOf(dto) == 0) {
+ dto.setMsg(dto.getMsg() + " 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� " + DateUtils.convert(now) + " 璺熻釜椤圭洰淇敼璐熻矗浜轰负锛�" + priQuote.getUserId$());
+ dto.setUserId(priQuote.getUserId());
+ dto.setUsername(priQuote.getUserId$());
+ } else if (dto.getStep() == 2) {
+ dto.setMsg(dto.getMsg() + " 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� " + DateUtils.convert(now) + " 璺熻釜椤圭洰淇敼璐熻矗浜烘椂鍚屾淇敼璐熻矗浜虹粡鐞嗕负锛�" + manager.getNickname());
+ dto.setUserId(manager.getId());
+ dto.setUsername(manager.getNickname());
+ } else if (dto.getStep() == 4) {
+ dto.setUserId(priQuote.getUserId());
+ dto.setUsername(priQuote.getUserId$());
+ }
+ priQuoteDtoList.add(dto);
+ }
+ priQuote.setSettleMsg(JSON.toJSONString(priQuoteDtoList));
+
+ priQuoteService.updateById(priQuote);
+ }
+ }else {
+ signPriOnline2=true;
+ }
+ if (!signPriOnline2){
+ continue;
+ }
+ signPlan = true;
+
+ priOnline2.setUserId(user.getId());
+ priOnline2.setDeptId(user.getDeptId());
+ priOnline2.setHostId(user.getHostId());
+ priOnline2.setUpdateUserId(getUserId());
+ priOnline2.setUpdateTime(now);
+ List<SettleDto> priOnline2Dtos = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class);
+ List<SettleDto> priOnline2DtoList = new ArrayList<>();
+ for (SettleDto dto : priOnline2Dtos) {
+ if (priOnline2Dtos.indexOf(dto) == 0) {
+ dto.setMsg(dto.getMsg() + " 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� " + DateUtils.convert(now) + " 璺熻釜椤圭洰淇敼璐熻矗浜轰负锛�" + priOnline2.getUser$());
+ } else if (priOnline2Dtos.indexOf(dto) == priOnline2Dtos.size()-1) {
+ dto.setUserId(priOnline2.getUserId());
+ dto.setUsername(priOnline2.getUser$());
+ }
+ priOnline2DtoList.add(dto);
+ }
+ priOnline2.setSettleMsg(JSON.toJSONString(priOnline2DtoList));
+
+ priOnline2Service.updateById(priOnline2);
+ }
+
+ }else {
+ signPlan=true;
+ }
+
+ if (!signPlan){
continue;
}
- List<PriOnline2> priOnline2s = priOnline2Service.selectList(new EntityWrapper<PriOnline2>().eq("item_id", plan.getId()));
- for (PriOnline2 priOnline2:priOnline2s){
- List<PriSales> priSalesList = priSalesService.selectList(new EntityWrapper<PriSales>().eq("pri_online2_id", priOnline2.getId()));
- for (PriSales priSales:priSalesList){
- priSales.setUserId(user.getId());
- priSales.setDeptId(user.getDeptId());
- priSales.setHostId(user.getHostId());
- priSalesService.updateById(priSales);
- }
- priOnline2.setUserId(user.getId());
- priOnline2.setDeptId(user.getDeptId());
- priOnline2.setHostId(user.getHostId());
- priOnline2.setUpdateUserId(getUserId());
- priOnline2.setUpdateTime(now);
-// List<SettleDto> priOnline2Dtos = JSON.parseArray(plan.getSettleMsg(), SettleDto.class);
-// List<SettleDto> priOnline2DtoList = new ArrayList<>();
-// for (SettleDto dto : priOnline2Dtos) {
-// switch (dto.getStep()) {
-// case 1:
-// dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�� "+DateUtils.convert(now)+" 璺熻釜椤圭洰淇敼璐熻矗浜轰负锛�"+plan.getUserId$());
-// dto.setUserId(plan.getUserId());
-// dto.setUsername(plan.getUserId$());
-// break;
-// case 4:
-// dto.setUserId(plan.getUserId());
-// dto.setUsername(plan.getUserId$());
-// break;
-// default:
-// break;
-// }
-// priOnline2DtoList.add(dto);
-// }
-// plan.setSettleMsg(JSON.toJSONString(priOnline2DtoList));
- priOnline2Service.updateById(priOnline2);
- }
plan.setUserId(user.getId());
plan.setDeptId(user.getDeptId());
plan.setHostId(user.getHostId());
@@ -183,18 +263,13 @@
List<SettleDto> planDtos = JSON.parseArray(plan.getSettleMsg(), SettleDto.class);
List<SettleDto> planDtoList = new ArrayList<>();
for (SettleDto dto : planDtos) {
- switch (dto.getStep()) {
- case 1:
- dto.setMsg(dto.getMsg()+" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� "+DateUtils.convert(now)+" 璺熻釜椤圭洰淇敼璐熻矗浜轰负锛�"+plan.getUserId$());
- dto.setUserId(plan.getUserId());
- dto.setUsername(plan.getUserId$());
- break;
- case 4:
- dto.setUserId(plan.getUserId());
- dto.setUsername(plan.getUserId$());
- break;
- default:
- break;
+ if (planDtos.indexOf(dto) == 0) {
+ dto.setMsg(dto.getMsg() + " 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� " + DateUtils.convert(now) + " 璺熻釜椤圭洰淇敼璐熻矗浜轰负锛�" + plan.getUserId$());
+ dto.setUserId(plan.getUserId());
+ dto.setUsername(plan.getUserId$());
+ } else if (dto.getStep().equals(plan.getSettleSize())) {
+ dto.setUserId(plan.getUserId());
+ dto.setUsername(plan.getUserId$());
}
planDtoList.add(dto);
}
@@ -221,6 +296,15 @@
return R.ok();
}
+ @PostMapping(value = "/order/business/list/auth")
+ @ManagerAuth
+ public R orderBusiness(@RequestParam Long orderId){
+ List<KeyValueVo> vos = new ArrayList<>();
+ vos.add(new KeyValueVo("鍑哄樊鐢宠", 1L));
+ vos.add(new KeyValueVo("鍏跺畠鍑哄樊", 2L));
+ return R.ok().add(vos);
+ }
+
@RequestMapping(value = "/orderQuery/auth")
@ManagerAuth
public R query(String condition) {
@@ -245,7 +329,7 @@
wrapper.like("name", condition);
Long id = getRole().getId();
if (id.equals(1L)) {
- wrapper.eq("host_id", 1);
+ wrapper.eq("host_id", getHostId());
} else if (id.equals(2L)) {
wrapper.eq("dept_id", getDeptId());
} else {
@@ -282,6 +366,7 @@
, getHostId()
, role.judgeLeader() ? String.valueOf(user.getDeptId()) : null
, user.getId()
+ , null
, condition
, 0);
List<KeyValueVo> vos = new ArrayList<>();
@@ -295,7 +380,7 @@
* excel瀵煎叆
*/
@PostMapping(value = "/order/excel/import/auth")
- @ManagerAuth(memo = "鐢叉柟鍗曚綅Excel瀵煎叆")
+ @ManagerAuth(memo = "瀹㈡埛淇℃伅Excel瀵煎叆")
// @Transactional
public R orderExcelImport(MultipartFile file) throws IOException {
InputStream inStream = file.getInputStream();
--
Gitblit v1.9.1