master
liuqingkun 3 years ago
parent c82fdd5760
commit 6f65476ebc
  1. 3
      src/main/java/org/springblade/common/constant/BusinessConstant.java
  2. 4
      src/main/java/org/springblade/modules/business/mapper/ApmRecordMapper.xml
  3. 3
      src/main/java/org/springblade/modules/business/service/impl/ApmConfigServiceImpl.java
  4. 14
      src/main/java/org/springblade/modules/business/service/impl/ApmRecordServiceImpl.java
  5. 11
      src/main/java/org/springblade/modules/business/timer/BlacklistTimerJob.java
  6. 3
      src/main/java/org/springblade/modules/business/timer/QuartzConfig.java
  7. 5
      src/main/java/org/springblade/modules/resource/endpoint/OssEndpoint.java

@ -7,6 +7,7 @@ package org.springblade.common.constant;
*/
public interface BusinessConstant {
String STRING_EMPTY = "";
String DATE_STR_DAY_START_HMS = " 00:00:00";
String DATE_STR_DAY_END_HMS = " 23:59:59";
@ -55,4 +56,6 @@ public interface BusinessConstant {
String DICT_KEY_APM_CONFIG_DEADLINE = "hc_apm_config_deadline";
String DICT_KEY_RENEGED_TIMES_TO_BLACKLIST = "hc_reneged_times_to_blacklist";
String IMG_URL_DOMAIN = "http://www.qdscgs.com:9091";
}

@ -105,9 +105,9 @@
</select>
<select id="getRenegedCountList" resultType="map">
SELECT create_dept AS createDept, cup_name AS cupName, cup_card_no AS cupCardNo,cup_phone AS cupPhone, COUNT(id) AS renegedTimes
SELECT cup_name AS cupName, cup_card_no AS cupCardNo,cup_phone AS cupPhone, COUNT(id) AS renegedTimes
FROM ca_apm_record
WHERE blacklist_flag = 0 AND apm_day &lt;= NOW() AND apm_status = 2
GROUP BY create_dept, cup_name, cup_card_no,cup_phone
GROUP BY cup_name, cup_card_no,cup_phone
</select>
</mapper>

@ -4,14 +4,11 @@ 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;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.utils.BeanUtil;

@ -96,9 +96,21 @@ public class ApmRecordServiceImpl extends BaseServiceImpl<ApmRecordMapper, ApmRe
if (!record.getCreateDept().equals(apmRecord.getCreateDept())) {
return "预约失败, 本日已有其他医院的预约";
}
}
}
// 获取用户未报到且体检日期大于当前的预约记录, 限制用户每项只能有一个预约
List<ApmRecord> recordsCheckProject = list(
Wrappers.<ApmRecord>lambdaQuery()
.eq(ApmRecord::getCupCardNo, cupCardNo)
.eq(ApmRecord::getApmStatus, BusinessConstant.RECORD_STATUS_UNREGISTER)
.ge(ApmRecord::getApmDay, DateUtil.now())
);
for (ApmRecord apmRecord : apmRecordList) {
for (ApmRecord record : recordsCheckProject) {
if (record.getProject().equals(apmRecord.getProject())) {
return "预约失败, 本日已有此项目的预约";
return "预约失败, 已有此项目的预约";
}
}
}

@ -55,14 +55,12 @@ public class BlacklistTimerJob extends QuartzJobBean {
List<ApmRecord> recordUpdateList = new ArrayList<>();
List<Blacklist> blacklists = new ArrayList<>();
List<Map<String, Object>> renegedCountList = recordService.getRenegedCountList();
for (Map<String, Object> item : renegedCountList) {
Long createDept = (Long) item.get("createDept");
String cupName = (String) item.get("cupName");
String cupCardNo = (String) item.get("cupCardNo");
String cupPhone = (String) item.get("cupPhone");
int renegedTimes = (Integer) item.get("renegedTimes");
int renegedTimes = Integer.parseInt(item.get("renegedTimes").toString());
// 若未达到
if (renegedTimes < configRenegedTimes) {
@ -71,7 +69,6 @@ public class BlacklistTimerJob extends QuartzJobBean {
// 2. 若未记录的违约记录 >= renegedTimes, 添加黑名单,
Blacklist blacklist = new Blacklist();
blacklist.setCreateDept(createDept);
blacklist.setCupName(cupName);
blacklist.setCupCardNo(cupCardNo);
blacklist.setCupPhone(cupPhone);
@ -85,9 +82,9 @@ public class BlacklistTimerJob extends QuartzJobBean {
recordUpdateList.add(record);
}
}
blacklistService.saveBatch(blacklists);
recordService.updateBatchById(recordUpdateList);
}
blacklistService.saveBatch(blacklists);
recordService.updateBatchById(recordUpdateList);
}
}

@ -10,6 +10,7 @@ public class QuartzConfig {
* 添加黑名单定时任务表达式, 每天23:00执行
*/
private String CRON_BLACKLIST_JOB = "0 0 23 * * ?";
private String CRON_BLACKLIST_JOB_TEST = "0 0/1 * * * ?";
/**
* 创建定时任务
@ -30,7 +31,7 @@ public class QuartzConfig {
@Bean
public Trigger blacklistTimerJobTrigger() {
//每隔5秒执行一次
CronScheduleBuilder cronScheduleBuilder = CronScheduleBuilder.cronSchedule(CRON_BLACKLIST_JOB);
CronScheduleBuilder cronScheduleBuilder = CronScheduleBuilder.cronSchedule(CRON_BLACKLIST_JOB_TEST);
//创建触发器
Trigger trigger = TriggerBuilder.newTrigger()

@ -19,6 +19,8 @@ package org.springblade.modules.resource.endpoint;
import io.swagger.annotations.Api;
import lombok.AllArgsConstructor;
import lombok.SneakyThrows;
import org.apache.commons.lang.StringUtils;
import org.springblade.common.constant.BusinessConstant;
import org.springblade.core.launch.constant.AppConstant;
import org.springblade.core.oss.model.BladeFile;
import org.springblade.core.oss.model.OssFile;
@ -28,6 +30,7 @@ import org.springblade.core.tool.api.R;
import org.springblade.core.tool.constant.RoleConstant;
import org.springblade.core.tool.utils.FileUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.StringUtil;
import org.springblade.modules.resource.builder.oss.OssBuilder;
import org.springblade.modules.resource.entity.Attach;
import org.springblade.modules.resource.service.IAttachService;
@ -146,6 +149,8 @@ public class OssEndpoint {
@PostMapping("/put-file")
public R<BladeFile> putFile(@RequestParam MultipartFile file) {
BladeFile bladeFile = ossBuilder.template().putFile(file.getOriginalFilename(), file.getInputStream());
String domain = StringUtils.substringBeforeLast(bladeFile.getDomain(), "/");
bladeFile.setLink(bladeFile.getLink().replace(domain, BusinessConstant.STRING_EMPTY));
return R.data(bladeFile);
}

Loading…
Cancel
Save