Browse Source

Merge branch 'master' into bfyMa

# Conflicts:
#	src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java
#	src/main/resources/application.yml
test
lucky 4 years ago
parent
commit
6286f0d843
  1. 148
      .drone.yml
  2. 10
      src/main/java/com/ccsens/carbasics/api/QuestionnaireController.java
  3. 1
      src/main/java/com/ccsens/carbasics/bean/vo/OrganizationVo.java
  4. 2
      src/main/java/com/ccsens/carbasics/bean/vo/message/RemindMessageVo.java
  5. 2
      src/main/java/com/ccsens/carbasics/service/AccountManageService.java
  6. 11
      src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java

148
.drone.yml

@ -0,0 +1,148 @@
kind: pipeline
type: docker
name: default
# workspace,path可设定默认的拉取目录和每个step中docker镜像的chdir目录,通常不需要设置
# workspace官方说明:https://docs.drone.io/yaml/docker/#the-workspace-object
# 可在repo->setting中设置secret,使用from_secret引用密钥
# 常量值
constants:
- &SERVER_HOST test.tall.wiki
- &SERVER_PORT 30022
- &BUILD_CMDER
- ls
- mvn -version
- java -version
- mvn clean package -Dmaven.test.skip=true
- &SCP_TARGET /home/cloud/carbasics
- &SCP_SOURCE target/*.jar
- &SCP_STRIP_DIR_LEVEL 1
- &SSH_CMDER
- cd /home/cloud/carbasics
- pwd
- ./carbasics.sh > /dev/null 2> /dev/null &
#- &NOTIFY_EMAIL weizezhao@ccsens.com
- &NOTIFY_WECHATROBOT_WEBHOOK https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=b2b93e9a-128b-41d4-8dce-12004e3f48b9
# 挂载的主机卷,可以映射到docker容器中
volumes:
- name: ssh_key
host:
path: /root/.ssh/
- name: cache
host:
path: /var/lib/cache
# 执行触发器
trigger:
branch:
- master
- drone
# 构建阶段
steps:
- name: build-maven
image: maven:3.8.4-jdk-8
pull: if-not-exists # default always
volumes:
- name: cache
path: /root/.m2
commands: *BUILD_CMDER
- name: deploy-scp
image: appleboy/drone-scp
pull: if-not-exists
volumes:
- name: ssh_key
path: /root/.ssh/
settings:
host: *SERVER_HOST
port: *SERVER_PORT
username: root
key_path: /root/.ssh/id_rsa
rm: false # true则会删除目标目录重建
target: *SCP_TARGET
source: *SCP_SOURCE
strip_components: *SCP_STRIP_DIR_LEVEL # 去除的目录层数,如果没有该选项,则拷贝过去是 target/xxx.jar,1代表去除target
- name: run-ssh
image: appleboy/drone-ssh
pull: if-not-exists
volumes:
- name: ssh_key
path: /root/.ssh/
settings:
settings:
host: *SERVER_HOST
port: *SERVER_PORT
username: root
key_path: /root/.ssh/id_rsa
script_stop: true # stop script after first failure
#command_timeout: 30s # 30seconds, the maximum amount of time for the execute commands, default is 10 minutes.
script: *SSH_CMDER
#- cd /home/cloud/carbasics
#- ./re.sh > /dev/null 2> /dev/null &
- name: notify-wechatwork
image: fifsky/drone-wechat-work
pull: if-not-exists
settings:
url: *NOTIFY_WECHATROBOT_WEBHOOK
msgtype: markdown
content: |
{{if eq .Status "success" }}
#### 🎉 ${DRONE_REPO} 构建成功
> Commit: [${DRONE_COMMIT_MESSAGE}](${DRONE_COMMIT_LINK})
> Author: ${DRONE_COMMIT_AUTHOR}
> [点击查看](${DRONE_BUILD_LINK})
{{else}}
#### ❌ ${DRONE_REPO} 构建失败
> Commit: [${DRONE_COMMIT_MESSAGE}](${DRONE_COMMIT_LINK})
> Author: ${DRONE_COMMIT_AUTHOR}
> 请立即修复!!!
> [点击查看](${DRONE_BUILD_LINK})
{{end}}
when:
status:
- failure
- success
# - name: notify-email
# image: drillster/drone-email
# pull: if-not-exists
# settings:
# host: smtp.qiye.aliyun.com #例如 smtp.qq.com
# port: 465 #例如QQ邮箱端口465
# username: devops@ccsens.com #邮箱用户名
# password: #邮箱密码
# from_secret: orgsecret_password_mail_devops
# from: devops@ccsens.com
# recipients: *NOTIFY_EMAIL #收件人,多个用,隔开
# when: #执行条件
# status:
# - success
# - changed
# - failure
# - name: notify-dingtalk
# image: lddsb/drone-dingtalk-message
# environment:
# PASSWORD:
# from_secret: password_mail_devops
# settings:
# token: your-dingtalk-robot-access-token
# type: markdown
# message_color: true
# message_pic: true
# sha_link: true
# -name: notify-slack
# image: plugins/slack
# webhook: https://hooks.slack.com/ www.dijiuyy.com services/xxx/xxx/xxx
# channel: dev
# template: >
# {{#success build.status}}
# build {{build.number}} succeeded. Good job.
# {{else}}
# build {{build.number}} failed. Fix me please.
# {{/success}}

10
src/main/java/com/ccsens/carbasics/api/QuestionnaireController.java

@ -127,7 +127,15 @@ public class QuestionnaireController {
// 未添加时间条件
Workbook workbook = questionnaireService.export(export);
log.info("导出问卷记录结束");
String fileName = "山西省缺血性脑卒中数据汇总表"+ DateUtil.format(new Date(), "yyyyMMddHHmmss") +".xlsx";
String str = "";
if (1L == export.getQid()) {
str = "2021年1-6月";
}else if (3L == export.getQid()) {
str = "2021年7-11月";
}else if (4L == export.getQid()) {
str = "2021年7-12月";
}
String fileName = str+"山西省缺血性脑卒中数据汇总表"+ DateUtil.format(new Date(), "yyyyMMddHHmmss") +".xlsx";
response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName, CharsetUtil.UTF_8));
workbook.write(response.getOutputStream());
}

1
src/main/java/com/ccsens/carbasics/bean/vo/OrganizationVo.java

@ -2,7 +2,6 @@ package com.ccsens.carbasics.bean.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javafx.geometry.Pos;
import lombok.Data;
import java.util.List;

2
src/main/java/com/ccsens/carbasics/bean/vo/message/RemindMessageVo.java

@ -3,7 +3,9 @@ package com.ccsens.carbasics.bean.vo.message;
import com.ccsens.carbasics.util.Constant;
import com.ccsens.util.message.BaseMessageDto;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@Data
public class RemindMessageVo extends BaseMessageDto {
private Data data;

2
src/main/java/com/ccsens/carbasics/service/AccountManageService.java

@ -84,7 +84,7 @@ public class AccountManageService implements IAccountManageService {
boolean flag = true;
//1.校验字段是否都填写
Integer num = questionnaireDetailDao.countCodeNumber(detailId);
if (num < 22) {
if (num < 24) {
flag = false;
}
String answer = questionnaireDetailDao.queryXGZL(detailId);

11
src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java

@ -104,14 +104,14 @@ public class QuestionnaireService implements IQuestionnaireService{
@Override
public void saveQuestionnaire(QuestionnaireDto.SaveQuestionnaire param, Long userId) throws Exception {
//redis判断是否已有
Object o = redisUtil.get(param.getDetailId() + "" + userId);
Object o = redisUtil.get(param.getDetailId() + "" + userId + param.getCode());
log.info("redis保存问卷用户{},{}",param.getDetailId() + "" + userId,o);
if (ObjectUtil.isNull(o)) {
redisUtil.set(param.getDetailId() + "" + userId,param.getCode());
redisUtil.set(param.getDetailId() + "" + userId + param.getCode(),userId);
//查询是否已经提交,已提交不能保存修改
QuestionnaireDetail questionnaireDetail = questionnaireDetailDao.selectByPrimaryKey(param.getDetailId());
if (Constant.SubmitStatus.submit.status == questionnaireDetail.getSubmitStatus()) {
redisUtil.del(param.getDetailId() + "" + userId);
redisUtil.del(param.getDetailId() + "" + userId + param.getCode());
throw new BaseException(DefaultCodeError.HOSPITAL_REPEAT_SUBMIT);
}
Long recordId = recordDao.queryIsExist(param.getDetailId(),param.getCode());
@ -129,7 +129,7 @@ public class QuestionnaireService implements IQuestionnaireService{
record.setAnswer(param.getAnswer());
recordDao.insertSelective(record);
}
redisUtil.del(param.getDetailId() + "" + userId);
redisUtil.del(param.getDetailId() + "" + userId + param.getCode());
}
@ -177,7 +177,8 @@ public class QuestionnaireService implements IQuestionnaireService{
List<String> stringList = new ArrayList<>();
stringList.add("QXXWJ");
List<CodeVo.Basic> qxxwj = codeDictionariesDao.query(stringList);
if (num < qxxwj.size()-1) {
log.info("QXXWJ数量:{}",qxxwj.size());
if (num < qxxwj.size()) {
throw new BaseException(DefaultCodeError.QUESTIONNAIRE_INFO_INCOMPLETE);
}
String answer = questionnaireDetailDao.queryXGZL(param.getDetailId());

Loading…
Cancel
Save