From f645195dab2fa0316552bf3a485e51f0682c97c9 Mon Sep 17 00:00:00 2001 From: liuqingkun Date: Sat, 18 Feb 2023 18:20:46 +0800 Subject: [PATCH] bug fix --- .../controller/ApmRecordController.java | 8 +++++ .../business/mapper/ApmConfigMapper.java | 2 +- .../business/mapper/ApmConfigMapper.xml | 3 +- .../business/mapper/ApmRecordMapper.xml | 4 ++- .../business/service/IApmConfigService.java | 3 +- .../service/impl/ApmConfigServiceImpl.java | 31 +++++++++++++++---- .../service/impl/ApmRecordServiceImpl.java | 8 +++-- .../modules/business/vo/ApmConfigListVO.java | 6 ++++ src/main/resources/application-dev.yml | 19 ++++++++++-- src/main/resources/application.yml | 12 +------ 10 files changed, 69 insertions(+), 27 deletions(-) diff --git a/src/main/java/org/springblade/modules/business/controller/ApmRecordController.java b/src/main/java/org/springblade/modules/business/controller/ApmRecordController.java index d647a76..d0da0e0 100644 --- a/src/main/java/org/springblade/modules/business/controller/ApmRecordController.java +++ b/src/main/java/org/springblade/modules/business/controller/ApmRecordController.java @@ -4,12 +4,15 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import io.swagger.annotations.*; import lombok.AllArgsConstructor; +import org.springblade.common.cache.DictBizCache; import org.springblade.common.constant.BusinessConstant; import org.springblade.common.constant.CommonConstant; import org.springblade.common.enums.ErrorMsgEnum; import org.springblade.core.boot.ctrl.BladeController; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; +import org.springblade.core.secure.BladeUser; +import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tenant.annotation.TenantDS; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.BeanUtil; @@ -146,6 +149,11 @@ public class ApmRecordController extends BladeController { @ApiOperationSupport(order = 4) @ApiOperation(value = "分页", notes = "分页") public R> selectPage(Query query, Long createDept, String startTime, String endTime, String cupCardNo, String project) { + BladeUser user = AuthUtil.getUser(); + if (!BusinessConstant.ROLE_NAME_HOSPITAL.equals(user.getRoleName())) { + createDept = null; + } + IPage page = recordService.selectRecordPage(Condition.getPage(query), createDept, startTime, endTime, cupCardNo, project); return R.data(page); } diff --git a/src/main/java/org/springblade/modules/business/mapper/ApmConfigMapper.java b/src/main/java/org/springblade/modules/business/mapper/ApmConfigMapper.java index ae3ce64..a27b5b4 100644 --- a/src/main/java/org/springblade/modules/business/mapper/ApmConfigMapper.java +++ b/src/main/java/org/springblade/modules/business/mapper/ApmConfigMapper.java @@ -35,7 +35,7 @@ public interface ApmConfigMapper extends BaseMapper { * @param project * @return */ - List selectConfigPage(IPage page, @Param("createDept") Long createDept, @Param("startTime") String startTime, @Param("endTime") String endTime, @Param("project") String project); + IPage selectConfigPage(IPage page, @Param("createDept") Long createDept, @Param("startTime") String startTime, @Param("endTime") String endTime, @Param("project") String project); List selectConfigList(@Param("createDept") Long createDept, @Param("apmDay") String apmDay, @Param("project") String project); diff --git a/src/main/java/org/springblade/modules/business/mapper/ApmConfigMapper.xml b/src/main/java/org/springblade/modules/business/mapper/ApmConfigMapper.xml index efc6bff..363eb85 100644 --- a/src/main/java/org/springblade/modules/business/mapper/ApmConfigMapper.xml +++ b/src/main/java/org/springblade/modules/business/mapper/ApmConfigMapper.xml @@ -42,7 +42,7 @@ FROM ca_apm_config ac WHERE ac.is_deleted = 0 and ac.create_dept = #{createDept} - and ac.apm_day >= #{apmDay} + and ac.apm_day = #{apmDay} and ac.project = #{project} @@ -70,6 +70,7 @@ #{dayStr} + delete from ca_apm_config where create_dept = #{createDept} and project in ${projectListStr} diff --git a/src/main/java/org/springblade/modules/business/mapper/ApmRecordMapper.xml b/src/main/java/org/springblade/modules/business/mapper/ApmRecordMapper.xml index 832351a..d76b87c 100644 --- a/src/main/java/org/springblade/modules/business/mapper/ApmRecordMapper.xml +++ b/src/main/java/org/springblade/modules/business/mapper/ApmRecordMapper.xml @@ -94,10 +94,12 @@ and create_dept = #{createDept} + and apm_day in - #{apmDayList} + #{dayStr} + group by DATE_FORMAT(apm_day, '%Y-%m-%d'), project, period, time_frame diff --git a/src/main/java/org/springblade/modules/business/service/IApmConfigService.java b/src/main/java/org/springblade/modules/business/service/IApmConfigService.java index 66c1e20..a9957c9 100644 --- a/src/main/java/org/springblade/modules/business/service/IApmConfigService.java +++ b/src/main/java/org/springblade/modules/business/service/IApmConfigService.java @@ -1,6 +1,7 @@ package org.springblade.modules.business.service; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; import org.springblade.core.mp.base.BaseService; import org.springblade.modules.business.entity.ApmConfig; import org.springblade.modules.business.vo.ApmConfigListVO; @@ -13,7 +14,7 @@ import java.util.Map; * * @author Chill */ -public interface IApmConfigService extends BaseService { +public interface IApmConfigService extends IService { /** * 获取时间范围内, 已配置放号的天列表 diff --git a/src/main/java/org/springblade/modules/business/service/impl/ApmConfigServiceImpl.java b/src/main/java/org/springblade/modules/business/service/impl/ApmConfigServiceImpl.java index f367ee4..181cc00 100644 --- a/src/main/java/org/springblade/modules/business/service/impl/ApmConfigServiceImpl.java +++ b/src/main/java/org/springblade/modules/business/service/impl/ApmConfigServiceImpl.java @@ -2,11 +2,14 @@ package org.springblade.modules.business.service.impl; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import org.apache.ibatis.annotations.Param; import org.beetl.core.util.ArrayMap; +import org.springblade.common.cache.DeptCache; import org.springblade.common.cache.DictBizCache; import org.springblade.common.constant.BusinessConstant; +import org.springblade.common.constant.CommonConstant; import org.springblade.common.utils.CommonDateUtil; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.secure.BladeUser; @@ -23,6 +26,7 @@ import org.springblade.modules.business.service.IApmConfigService; import org.springblade.modules.business.service.IApmRecordService; import org.springblade.modules.business.vo.ApmConfigListVO; import org.springblade.modules.business.wrapper.ApmConfigListWrapper; +import org.springblade.modules.system.entity.Dept; import org.springframework.stereotype.Service; import java.util.*; @@ -31,12 +35,14 @@ import java.util.stream.Collectors; /** * 服务实现类 + *

+ * BaseServiceImpl中的存储对象方法会自动更新bean中的公共字段, 如create_time, update_time等 * * @author Chill */ @Service @RequiredArgsConstructor -public class ApmConfigServiceImpl extends BaseServiceImpl implements IApmConfigService { +public class ApmConfigServiceImpl extends ServiceImpl implements IApmConfigService { private final IApmRecordService recordService; @@ -73,11 +79,13 @@ public class ApmConfigServiceImpl extends BaseServiceImpl selectPage(IPage page, Long createDept, String startTime, String endTime, String project) { // 由于每个时段保存了一条记录, 故分页时, 先使用distinct查询(医院, 项目 配置天)进行分页 - List pageRecord = baseMapper.selectConfigPage(page, createDept, startTime, endTime, project); - page.setRecords(pageRecord); + IPage pageRecord = baseMapper.selectConfigPage(page, createDept, startTime, endTime, project); - IPage result = ApmConfigListWrapper.build().pageVO(page); + IPage result = ApmConfigListWrapper.build().pageVO(pageRecord); result.getRecords().forEach(vo -> { + Dept hospital = DeptCache.getDept(vo.getCreateDept()); + vo.setCreateDeptName(Func.isNotEmpty(hospital) ? hospital.getDeptName() : ""); + // 根据(医院, 项目 配置天)获取配置详细 List configList = baseMapper.selectConfigList(vo.getCreateDept(), DateUtil.format(vo.getApmDay(), DateUtil.PATTERN_DATETIME), vo.getProject()); @@ -201,6 +209,7 @@ public class ApmConfigServiceImpl extends BaseServiceImpl countAmpNum(Long createDept, String apmDay) { - return baseMapper.countAmpNumWithDays(createDept, Arrays.asList(apmDay)); + List apmDayList = new ArrayList<>(); + apmDayList.add(apmDay); + return baseMapper.countAmpNumWithDays(createDept, apmDayList); } @Override diff --git a/src/main/java/org/springblade/modules/business/vo/ApmConfigListVO.java b/src/main/java/org/springblade/modules/business/vo/ApmConfigListVO.java index a753ef9..03a5a73 100644 --- a/src/main/java/org/springblade/modules/business/vo/ApmConfigListVO.java +++ b/src/main/java/org/springblade/modules/business/vo/ApmConfigListVO.java @@ -24,6 +24,12 @@ public class ApmConfigListVO implements Serializable { @ApiModelProperty(value = "创建部门") private Long createDept; + /** + * 创建部门名称 + */ + @ApiModelProperty(value = "创建部门名称") + private String createDeptName; + /** * 体检项目 */ diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index 1ef4188..3ffcbb5 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -26,7 +26,20 @@ blade: address: redis://127.0.0.1:6379 #本地文件上传 file: - remote-mode: false - upload-domain: http://localhost:8999 - remote-path: /usr/share/nginx/html + remote-mode: true + upload-domain: http://127.0.0.1:8999 + remote-path: D:\WorkSoft\minio\data +#oss默认配置 +oss: + enabled: false + name: minio + tenant-mode: false + endpoint: http://127.0.0.1:9000 + access-key: admin + secret-key: 12345678 +# access-key: minioadmin +# secret-key: minioadmin +# access-key: Ycu4QN8np3TrTJDd +# secret-key: WGwePhEBJE6ekD8Etv7tJh8GCDwZd7zp + bucket-name: hcu-cgs diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 635136c..23bbf08 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -1,6 +1,6 @@ #服务器配置 server: - port: 8088 + port: 80 undertow: threads: # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程 @@ -112,16 +112,6 @@ report: provider: prefix: blade- -#oss默认配置 -oss: - enabled: true - name: qiniu - tenant-mode: true - endpoint: http://prt1thnw3.bkt.clouddn.com - access-key: N_Loh1ngBqcJovwiAJqR91Ifj2vgOWHOf8AwBA_h - secret-key: AuzuA1KHAbkIndCU0dB3Zfii2O3crHNODDmpxHRS - bucket-name: bladex - #blade配置 blade: #token配置