From 6eac2b2a9459ee9b24cdee17d72ec084d3a51f36 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期一, 28 八月 2023 19:36:53 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/crm/manager/controller/PlanController.java | 195 +++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 165 insertions(+), 30 deletions(-)
diff --git a/src/main/java/com/zy/crm/manager/controller/PlanController.java b/src/main/java/com/zy/crm/manager/controller/PlanController.java
index c3dc7a5..89c6475 100644
--- a/src/main/java/com/zy/crm/manager/controller/PlanController.java
+++ b/src/main/java/com/zy/crm/manager/controller/PlanController.java
@@ -14,9 +14,12 @@
import com.core.exception.CoolException;
import com.zy.crm.common.entity.RouteCollectCountType;
import com.zy.crm.common.model.SettleDto;
+import com.zy.crm.common.service.OssService;
+import com.zy.crm.common.utils.FileSaveExampleUtil;
import com.zy.crm.common.utils.SetOfUtils;
import com.zy.crm.common.web.BaseController;
import com.zy.crm.manager.controller.result.FollowerTableVo;
+import com.zy.crm.manager.entity.Order;
import com.zy.crm.manager.entity.Plan;
import com.zy.crm.manager.entity.PlanFoll;
import com.zy.crm.manager.entity.PlanType;
@@ -35,8 +38,15 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
+import org.springframework.core.io.Resource;
+import org.springframework.core.io.FileSystemResource;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.MediaType;
+import org.springframework.http.ResponseEntity;
import javax.servlet.http.HttpServletResponse;
+import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.util.*;
@@ -52,6 +62,8 @@
private PlanTypeService planTypeService;
@Autowired
private DeptService deptService;
+ @Autowired
+ private OssService ossService;
@GetMapping(value = "/plan/{id}/auth")
@ManagerAuth
@@ -148,44 +160,45 @@
@RequestMapping(value = "/plan/update/auth")
@ManagerAuth
+ @Transactional
public R update(@RequestParam Map<String, Object> param){
- String planNeed = null;
- Integer id = null;
- for (Map.Entry<String, Object> entry : param.entrySet()){
- String val = String.valueOf(entry.getValue());
- if (Cools.isEmpty(val)){
- continue;
- }
- if (entry.getKey().equals("planNeed")){
- planNeed = val;
- }
- if (entry.getKey().equals("id")){
- try{
- id = Integer.parseInt(val);
- }catch (Exception e){
- return R.error();
- }
- }
- }
+// String planNeed = null;
+// Integer id = null;
+// for (Map.Entry<String, Object> entry : param.entrySet()){
+// String val = String.valueOf(entry.getValue());
+// if (Cools.isEmpty(val)){
+// continue;
+// }
+// if (entry.getKey().equals("planNeed")){
+// planNeed = val;
+// }
+// if (entry.getKey().equals("id")){
+// try{
+// id = Integer.parseInt(val);
+// }catch (Exception e){
+// return R.error();
+// }
+// }
+// }
if (Cools.isEmpty(param) || Cools.isEmpty(param.get("id"))){
return R.error();
}
- List<String> planNeedbs = new ArrayList<>(Arrays.asList(planNeed.split("-")));
- if (planNeedbs.get(0).equals("[object Object]")){
- planNeedbs.remove(0);
- Plan plan1 = planService.selectById(id);
- List<String> planNeedas = Arrays.asList(plan1.getPlanNeed().split("-"));
- List<String> routeIntersectionString = SetOfUtils.getRouteIntersectionString(planNeedas, planNeedbs, RouteCollectCountType.DEDUPLICATIONUNION);
- planNeed="";
- for (String planNeedss:routeIntersectionString){
- planNeed=planNeed==""? planNeedss:planNeed + "-" + planNeedss;
- }
- }
+// List<String> planNeedbs = new ArrayList<>(Arrays.asList(planNeed.split("-")));
+// if (planNeedbs.get(0).equals("[object Object]")){
+// planNeedbs.remove(0);
+// Plan plan1 = planService.selectById(id);
+// List<String> planNeedas = Arrays.asList(plan1.getPlanNeed().split("-"));
+// List<String> routeIntersectionString = SetOfUtils.getRouteIntersectionString(planNeedas, planNeedbs, RouteCollectCountType.DEDUPLICATIONUNION);
+// planNeed="";
+// for (String planNeedss:routeIntersectionString){
+// planNeed=planNeed==""? planNeedss:planNeed + "-" + planNeedss;
+// }
+// }
// pre
Plan plan = JSON.parseObject(JSON.toJSONString(param), Plan.class);
- plan.setPlanNeed(planNeed);
+// plan.setPlanNeed(planNeed);
param.entrySet().removeIf(next -> this.fields.contains(next.getKey()));
plan.setUpdateBy(getUserId());
plan.setUpdateTime(new Date());
@@ -206,6 +219,104 @@
}
return R.ok();
}
+
+ @RequestMapping(value = "/plan/insert/file/auth")
+// @ManagerAuth
+ public R insertFile(@RequestParam("planId") String planId,@RequestParam MultipartFile file){
+ try{
+ InputStream inputStream = file.getInputStream();
+ // 鑾峰彇鏂囦欢鐨勫唴瀹圭被鍨�
+ String contentType = file.getContentType();
+ String suffix = getFileSuffix(file.getOriginalFilename());
+ String url = ossService.upload(inputStream, suffix,contentType);
+// String url = "http://tjdt.oss-cn-hangzhou.aliyuncs.com/"+file.getOriginalFilename();
+ String[] names = url.split("com/");
+ String name= names[1];
+ String[] split = planId.split("-");
+ int id = Integer.parseInt(split[1]);
+ planService.increasePlanUrl(id,url,name,file.getSize());
+
+ /*String[] split = planId.split("-");
+ int id = Integer.parseInt(split[1]);
+ System.out.println("---寮�濮�---");
+ String savePath = "D:/crm/plan/file/"+id+"/"; // 鎸囧畾淇濆瓨鏂囦欢鐨勮矾寰�
+ try{
+ FileSaveExampleUtil.saveFile(file, savePath);
+ }catch (Exception e){
+ return R.error();
+ }*/
+ return R.ok();
+ }catch (Exception e){
+ System.out.println(e);
+ return R.error();
+ }
+ }
+
+ private String getFileSuffix(String filename) {
+ int dotIndex = filename.lastIndexOf(".");
+ if (dotIndex > 0 && dotIndex < filename.length() - 1) {
+ return filename.substring(dotIndex + 1);
+ }
+ return "";
+ }
+
+ @RequestMapping(value = "/plan/delete/file/auth")
+// @ManagerAuth
+ public R deleteFile(@RequestParam("planId") String planId,@RequestParam MultipartFile file){
+ planId="涓婁紶鏂囦欢-20";
+ String[] split = planId.split("-");
+ int id = Integer.parseInt(split[1]);
+ System.out.println("---寮�濮�---");
+ String savePath = "D:/crm/plan/file/"+id+"/"+file.getName(); // 鎸囧畾淇濆瓨鏂囦欢鐨勮矾寰�
+ try{
+ FileSaveExampleUtil.deleteFilesInDirectory(savePath);
+ }catch (Exception e){
+ return R.error();
+ }
+ return R.ok();
+ }
+
+ @RequestMapping(value = "/plan/view/file/auth")
+// @ManagerAuth
+ public R viewFile(@RequestParam("planId") String planId){
+ int id = Integer.parseInt(planId);
+// String savePath = "D:/crm/plan/file/"+id+"/"; // 鎸囧畾淇濆瓨鏂囦欢鐨勮矾寰�
+ try{
+ List<Integer> ids = planService.selectPlanUrlId(id);
+ List<FileSaveExampleUtil.FileDTO> fileDTOS = new ArrayList<>();
+ for (int id2 : ids){
+ String url = planService.selectPlanUrlPlanIdUrl(id2);
+ String name = planService.selectPlanUrlPlanIdName(id2);
+ Long size = planService.selectPlanUrlPlanIdSize(id2);
+ FileSaveExampleUtil.FileDTO dto = new FileSaveExampleUtil.FileDTO(name,size,url);
+ fileDTOS.add(dto);
+ }
+// List<FileSaveExampleUtil.FileDTO> fileDTOS = FileSaveExampleUtil.viewFileList(savePath);
+ return R.ok(fileDTOS);
+ }catch (Exception e){
+ return R.error();
+ }
+ }
+
+ @RequestMapping(value = "/plan/download/file/auth")
+// @ManagerAuth
+ public R downloadFile(@RequestParam("downloadUrl") String downloadUrl,HttpServletResponse response){
+// System.out.println("---寮�濮�---");
+// MultipartFile
+ try{
+ String[] names = downloadUrl.split("com/");
+ String name= names[1];
+// ResponseEntity<Resource> resourceResponseEntity = FileSaveExampleUtil.downloadFile(downloadUrl, response);
+// return R.ok(resourceResponseEntity);
+ String download = ossService.download(name);
+ return R.ok().add(download);
+ }catch (Exception e){
+
+ }
+ return R.error();
+ }
+
+
@PostMapping(value = "/plan/approval/auth")
@ManagerAuth
@@ -446,6 +557,30 @@
return R.ok(result);
}
+ @RequestMapping(value = "/planQueryName/auth")
+ @ManagerAuth
+ public R queryName(String condition) {
+ EntityWrapper<Plan> wrapper = new EntityWrapper<>();
+ wrapper.like("name", condition);
+ Long id = getRole().getId();
+ if (id.equals(1L)) {
+ wrapper.eq("host_id", 1);
+ } else if (id.equals(2L)) {
+ wrapper.eq("dept_id", getDeptId());
+ } else {
+ wrapper.eq("user_id", getUserId());
+ }
+ Page<Plan> page = planService.selectPage(new Page<>(0, 10), wrapper);
+ List<Map<String, Object>> result = new ArrayList<>();
+ for (Plan plan : page.getRecords()){
+ Map<String, Object> map = new HashMap<>();
+ map.put("id", plan.getId());
+ map.put("value", plan.getName()+"---"+plan.getId());
+ result.add(map);
+ }
+ return R.ok(result);
+ }
+
@RequestMapping(value = "/plan/check/column/auth")
@ManagerAuth
public R query(@RequestBody JSONObject param) {
--
Gitblit v1.9.1