From 011e7b1906597b41a4143afb268ae059e97df60c Mon Sep 17 00:00:00 2001 From: LSH Date: 星期三, 13 九月 2023 17:20:40 +0800 Subject: [PATCH] # --- src/main/java/com/zy/crm/manager/controller/PlanController.java | 152 ++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 120 insertions(+), 32 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 411eb67..178b6ef 100644 --- a/src/main/java/com/zy/crm/manager/controller/PlanController.java +++ b/src/main/java/com/zy/crm/manager/controller/PlanController.java @@ -14,16 +14,13 @@ 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.Plan; -import com.zy.crm.manager.entity.PlanFoll; -import com.zy.crm.manager.entity.PlanType; -import com.zy.crm.manager.service.PlanFollService; -import com.zy.crm.manager.service.PlanService; -import com.zy.crm.manager.service.PlanTypeService; +import com.zy.crm.manager.entity.*; +import com.zy.crm.manager.service.*; import com.zy.crm.system.entity.User; import com.zy.crm.system.service.DeptService; import com.zy.crm.system.service.UserService; @@ -36,6 +33,12 @@ 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; @@ -54,6 +57,10 @@ private PlanTypeService planTypeService; @Autowired private DeptService deptService; + @Autowired + private OssService ossService; + @Autowired + private PriOnline2Service priOnline2Service; @GetMapping(value = "/plan/{id}/auth") @ManagerAuth @@ -100,7 +107,7 @@ } @RequestMapping(value = "/plan/add/auth") - @ManagerAuth + @ManagerAuth(memo = "娣诲姞瑙勫垝鐢宠鍗�") @Transactional public R add(@RequestParam Map<String, Object> param) { // pre @@ -149,7 +156,7 @@ } @RequestMapping(value = "/plan/update/auth") - @ManagerAuth + @ManagerAuth(memo = "鏇存柊瑙勫垝鐢宠鍗�") @Transactional public R update(@RequestParam Map<String, Object> param){ // String planNeed = null; @@ -202,10 +209,14 @@ } @RequestMapping(value = "/plan/delete/auth") - @ManagerAuth + @ManagerAuth(memo = "鍒犻櫎瑙勫垝鐢宠鍗�") public R delete(@RequestParam(value="ids[]") Long[] ids){ for (Long id : ids){ - planService.deleteById(id); + int priOnline2 = priOnline2Service.selectCount(new EntityWrapper<PriOnline2>().eq("item_id", id)); + if (priOnline2!=0){ + return R.error("瀛樺湪鍏宠仈鐨勬牳浠峰崟锛岀姝㈠垹闄わ紒锛侊紒"); + } + planService.deleteById(id); } return R.ok(); } @@ -213,51 +224,103 @@ @RequestMapping(value = "/plan/insert/file/auth") // @ManagerAuth public R insertFile(@RequestParam("planId") String planId,@RequestParam MultipartFile file){ - 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); + 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(); } - return R.ok(); } - @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(); + private String getFileSuffix(String filename) { + int dotIndex = filename.lastIndexOf("."); + if (dotIndex > 0 && dotIndex < filename.length() - 1) { + return filename.substring(dotIndex + 1); } - return R.ok(); + 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+"/"; // 鎸囧畾淇濆瓨鏂囦欢鐨勮矾寰� +// String savePath = "D:/crm/plan/file/"+id+"/"; // 鎸囧畾淇濆瓨鏂囦欢鐨勮矾寰� try{ - List<FileSaveExampleUtil.FileDTO> fileDTOS = FileSaveExampleUtil.viewFileList(savePath); + 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 + @ManagerAuth(memo = "瀹℃壒鐢宠鍗�") public R approval(@RequestParam Long planId, @RequestParam(required = false) Long plannerId){ Plan plan = planService.selectById(planId); @@ -495,6 +558,31 @@ 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()); + map.put("value", plan.getName()); + result.add(map); + } + return R.ok(result); + } + @RequestMapping(value = "/plan/check/column/auth") @ManagerAuth public R query(@RequestBody JSONObject param) { -- Gitblit v1.9.1