From fc868e56b1e8199d2c4267fae74c44cfa62a777f Mon Sep 17 00:00:00 2001 From: zjh <zjh@888> Date: 星期三, 31 一月 2024 09:13:51 +0800 Subject: [PATCH] zjh 本地 2024/01/31 -1 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHomePageController.java | 145 +++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 143 insertions(+), 2 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHomePageController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHomePageController.java index 0db4807..e849ab1 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHomePageController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjHomePageController.java @@ -6,8 +6,10 @@ import com.ltkj.common.core.domain.AjaxResult; import com.ltkj.common.core.domain.entity.SysDept; import com.ltkj.common.core.domain.entity.SysUser; +import com.ltkj.common.core.redis.RedisCache; import com.ltkj.common.utils.DateUtils; import com.ltkj.hosp.domain.*; +import com.ltkj.hosp.dto.TjChartVo; import com.ltkj.hosp.service.*; import com.ltkj.hosp.vodomain.*; import com.ltkj.system.service.ISysDeptService; @@ -15,10 +17,12 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; +import io.swagger.models.auth.In; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.math.BigDecimal; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; @@ -43,11 +47,18 @@ @Resource private ITjProjectService projectService; @Resource + private RedisCache redisCache; + @Resource + private TjAsyncService asyncService; + @Resource private ISysDeptService deptService; @Resource private ISysUserService userService; @Resource private ITjOrderRemarkService remarkService; + + @Resource + private ITjFlowingWaterService tjFlowingWaterService; @GetMapping("/GetChartByDate") @@ -295,7 +306,6 @@ if (s.equals(tjOrder.getCheckDoctor()) && tjOrder.getReleaseTime() != null) { releaseCount++; } - // TODO: 2023/3/31 鍙戦�佺煭淇�/閭欢缁熻 if (s.equals(tjOrder.getCheckDoctor()) && "1".equals(tjOrder.getSendEmail())) { messageCount++; } @@ -446,7 +456,16 @@ @GetMapping("/getLineChart") @ApiOperation(value = "棣栭〉鎶樼嚎鍥炬暟鎹�") public AjaxResult getLineChart() { - List<Map<Object, Object>> line = orderService.getLine(); + asyncService.getLineChart(); + if(redisCache.hasKey("getLineChart")){ + return redisCache.getCacheObject("getLineChart"); + } + return getResult(); + } + + private AjaxResult getResult() { +// List<Map<Object, Object>> line = orderService.getLine(); + List<LineChartsVo> line = orderService.getLine(); Collections.reverse(line); return AjaxResult.success("鎶樼嚎鍥炬暟鎹�", line); } @@ -454,6 +473,14 @@ @GetMapping("/getPieChart") @ApiOperation(value = "棣栭〉楗肩姸鍥剧櫥璁颁汉鏁版帴鍙�") public AjaxResult getPieChart() { + asyncService.getPieChart(); + if(redisCache.hasKey("getPieChart")){ + return redisCache.getCacheObject("getPieChart"); + } + return getAjaxResult(); + } + + private AjaxResult getAjaxResult() { Map<String, Object> map = new HashMap<>(); //鑾峰彇浣撴鐧昏鏁� @@ -477,6 +504,7 @@ } else { map.put("tjyc", 0); } + return AjaxResult.success(map); } @@ -618,4 +646,117 @@ public Integer RegisterToday() { return orderService.count(new QueryWrapper<TjOrder>().between("create_time", DateUtil.beginOfDay(new Date()), DateUtil.endOfDay(new Date()))); } + + + @GetMapping("/getChartByDeptId") + @ApiOperation("鏍规嵁閮ㄩ棬鏌ヨ浣撴缁熻") + public AjaxResult getChartByDeptId(@RequestParam Long deptId, + @ApiParam(value = "寮�濮嬫椂闂�") @RequestParam(required = false) String beginTime, + @ApiParam(value = "缁撴潫鏃堕棿") @RequestParam(required = false) String endTime) { + List<TjChartVo> res=new ArrayList(); + LambdaQueryWrapper<TjOrderRemark> wq0 = new LambdaQueryWrapper<>(); + wq0.eq(TjOrderRemark::getDeptId, deptId); + List<TjOrderRemark> remarkList = remarkService.list(wq0); + + List<Long> proIdList = remarkList.stream().map(TjOrderRemark::getProId).distinct().collect(Collectors.toList()); + for (Long aLong : proIdList) { + LambdaQueryWrapper<TjOrderRemark> wq00 = new LambdaQueryWrapper<>(); + wq00.eq(TjOrderRemark::getDeptId, deptId); + List<TjOrderRemark> remarkList1 = remarkService.list(wq00); + Integer num1=0; + Integer num2=0; + Integer num3=0; + Integer num4=0; + TjChartVo chartVo=new TjChartVo(); + chartVo.setDeptId(deptId); + chartVo.setDeptName(deptService.getById(deptId).getDeptName()); + for (TjOrderRemark tjOrderRemark : remarkList1) { + if (tjOrderRemark.getType()==1){ + num1+=1; + }else if (tjOrderRemark.getType()==0){ + num1+=1; + }else if (tjOrderRemark.getType()==3){ + num1+=1; + }else if (tjOrderRemark.getType()==2){ + num1+=1; + } + } + chartVo.setYijianNum(String.valueOf(num1)); + chartVo.setWeijianNum(String.valueOf(num2)); + chartVo.setYanqiNum(String.valueOf(num3)); + chartVo.setQijianNum(String.valueOf(num4)); + res.add(chartVo); + } + return AjaxResult.success(res); + } + + + @GetMapping("/getTiaoByDeptId") + @ApiOperation("鏍规嵁閮ㄩ棬鍜屾椂闂存鏌ヨ浣撴缁熻鍥捐〃") + public AjaxResult getTiaoByDeptId(@RequestParam Long deptId, + @ApiParam(value = "寮�濮嬫椂闂�") @RequestParam(required = false) String beginTime, + @ApiParam(value = "缁撴潫鏃堕棿") @RequestParam(required = false) String endTime) { + + return AjaxResult.success(); + } + + @GetMapping("/getTiaoNumsByDate") + @ApiOperation("鏍规嵁鏃堕棿鏌ヨ浣撴缁熻鍥捐〃") + public AjaxResult getTiaoNumsByDate(@ApiParam(value = "寮�濮嬫椂闂�")String beginTime, + @ApiParam(value = "缁撴潫鏃堕棿") String endTime) { + TjChartVo chartVo=new TjChartVo(); + LambdaQueryWrapper<TjOrder> wqq = new LambdaQueryWrapper<>(); + wqq.gt(TjOrder::getStatus,200); + if (null != beginTime && null != endTime) { + wqq.between(TjOrder::getCreateTime, beginTime, endTime); + } + final List<TjOrder> list = orderService.list(wqq); + chartVo.setTijianNum(list.size()); + + Integer boys=0; + Integer girls=0; + Integer person=0; + Integer tuan=0; + BigDecimal shouyi=new BigDecimal(0); + for (TjOrder tjOrder : list) { + TjCustomer customer = customerService.getById(tjOrder.getUserId()); + if(null !=customer){ + if (customer.getCusSex()==0){ + boys+=1; + }else if (customer.getCusSex()==1){ + girls+=1; + } + } + if ("2".equals(tjOrder.getTjType())){ + person+=1; + } else if ("1".equals(tjOrder.getTjType())) { + tuan+=1; + } + //璁$畻鏀剁泭 + LambdaQueryWrapper<TjFlowingWater> wqqq=new LambdaQueryWrapper<>(); + wqqq.eq(TjFlowingWater::getOrderId,tjOrder.getOrderId()); + final List<TjFlowingWater> list1 = tjFlowingWaterService.list(wqqq); + for (TjFlowingWater tjFlowingWater : list1) { + shouyi.add(tjFlowingWater.getPaidIn()); + } + } + chartVo.setBoysNum(boys); + chartVo.setGirlsNum(girls); + chartVo.setPersonNum(person); + chartVo.setTuanDuiNum(tuan); + chartVo.setMoneysNum(shouyi); + return AjaxResult.success(chartVo); + } + + + @GetMapping("/getListByTjNumber") + @ApiOperation("鏍规嵁浣撴鍙蜂笅鐨勯」鐩垪琛�") + public AjaxResult getListByTjNumber(@RequestParam String tjNumber) { + LambdaQueryWrapper<TjOrderRemark> wq0 = new LambdaQueryWrapper<>(); + wq0.eq(TjOrderRemark::getTjNumber, tjNumber); + List<TjOrderRemark> remarkList = remarkService.list(wq0); + return AjaxResult.success(remarkList); + } + + } -- Gitblit v1.8.0