Commit e8b06ec1 by hzc

添加日记操作,加短板部门和用户id

parent 0f314d50
package com.keymobile.indicators.api.hytobacco;
import com.keymobile.indicators.constant.Constants;
import com.keymobile.indicators.model.entity.shortboard.ShortBoardTask;
import com.keymobile.indicators.model.entity.shortboard.ShortboardAnalysisValue;
import com.keymobile.indicators.model.entity.shortboard.ShortboardParam;
import com.keymobile.indicators.result.Result;
import com.keymobile.indicators.service.hytobacco.ShortboardTaskService;
import com.keymobile.indicators.utils.LogManager;
import com.keymobile.indicators.utils.SystemUserUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
......@@ -39,10 +43,19 @@ public class ShortboardTaskCtrl {
PageRequest request= PageRequest.of(shortboardParam.getPage()-1,shortboardParam.getSize());
shortboardParam.setOffset(request.getOffset());
List<ShortBoardTask> lists = new ArrayList<>();
if(StringUtils.isNotBlank(shortboardParam.getUserId())){
//userId不为空
String currentUserId = SystemUserUtil.getCurrentUserId();
shortboardParam.setUserId(currentUserId);
}
long count = shortboardTaskService.selectCountByParam(shortboardParam);
if(count>0){
lists= shortboardTaskService.selectPageByParam(shortboardParam);
}
String message = SystemUserUtil.getCurrentUser()+"查找了我的短板任务清单 ";
LogManager.logInfo(Constants.LOG_INDICATOR_SHORTBOARD_TASK_API,message);
return new PageImpl<>(lists,request,count);
}
......
......@@ -5,12 +5,15 @@ import com.alibaba.excel.support.ExcelTypeEnum;
import com.alibaba.excel.write.builder.ExcelWriterBuilder;
import com.google.gson.Gson;
import com.keymobile.indicators.conf.Custemhandler;
import com.keymobile.indicators.constant.Constants;
import com.keymobile.indicators.model.entity.shortboard.ShortBoardTask;
import com.keymobile.indicators.model.entity.shortboard.ShortBoardTaskVal;
import com.keymobile.indicators.result.Result;
import com.keymobile.indicators.service.hytobacco.ShortboardTaskService;
import com.keymobile.indicators.utils.DateUtils;
import com.keymobile.indicators.utils.ExcelUtil;
import com.keymobile.indicators.utils.LogManager;
import com.keymobile.indicators.utils.SystemUserUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
......@@ -49,7 +52,11 @@ public class ShortboardTaskValCtrl {
@ApiOperation(value = "保存短板清单填报(在线填报)", notes = "保存短板清单填报(在线填报)")
@PostMapping("saveOrUpdate")
public Result saveOrUpdate(@RequestBody ShortBoardTaskVal shortBoardTaskVal){
return shortboardTaskService.saveOrUpdateShortBoardTaskVal(shortBoardTaskVal);
Result result = shortboardTaskService.saveOrUpdateShortBoardTaskVal(shortBoardTaskVal,false);
String message = SystemUserUtil.getCurrentUser()+"在线填报了短板清单:id={}";
LogManager.logInfo(Constants.LOG_INDICATOR_SHORTBOARD_TASK_API,message,shortBoardTaskVal.getShortBoardTaskId());
return result;
}
@ApiOperation(value = "保存短板清单填报(excel填报)", notes = "保存短板清单填报(excel填报)")
......@@ -82,11 +89,13 @@ public class ShortboardTaskValCtrl {
shortBoardTaskVal.setStartMeasure(values.get(4));
shortBoardTaskVal.setStartUser(values.get(5));
//保存
shortboardTaskService.saveOrUpdateShortBoardTaskVal(shortBoardTaskVal);
shortboardTaskService.saveOrUpdateShortBoardTaskVal(shortBoardTaskVal,true);
} catch (Exception e) {
log.error("解析短板填报excel出错");
e.printStackTrace();
}
String message = SystemUserUtil.getCurrentUser()+"上传excel填报了短板清单:id={}";
LogManager.logInfo(Constants.LOG_INDICATOR_SHORTBOARD_TASK_API,message,shortBoardTaskVal.getShortBoardTaskId());
return Result.genOkResult();
}
@ApiOperation(value = "下载excel模板", notes = "下载excel模板")
......
......@@ -28,6 +28,10 @@ public class Constants {
public static final String LOG_INDICATOR_BASEDATACHECK = "indicator.basedatacheck";
public static final String LOG_INDICATOR_SHORTBOARD_TASK_API = "indicator.shortboardtask";
/** collection Name */
/** collection Name */
......
......@@ -4,6 +4,7 @@ import javax.persistence.*;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
......@@ -23,77 +24,94 @@ public class ShortBoardTask implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id" )
@ApiModelProperty("主键")
private Integer id;
/**
* 预警数据id
*/
@ApiModelProperty("预警数据id")
@Column(name = "record_id" )
private Integer recordId;
/**
* 下发时间
*/
@ApiModelProperty("下发时间")
@Column(name = "start_time" )
private Date startTime;
/**
* 指标名称
* */
@ApiModelProperty("指标名称")
@Column(name="drive_name")
private String driveName;
/**
* 截止时间
*/
@ApiModelProperty("截止时间")
@Column(name = "end_time" )
private Date endTime;
/**
* 短板名称
*/
@ApiModelProperty("短板名称")
@Column(name = "shortboard_name" )
private String shortboardName;
/**
* 下发原因
*/
@ApiModelProperty("下发原因")
@Column(name = "cause" )
private String cause;
/**
* 短板值
*/
@ApiModelProperty("短板值")
@Column(name = "value" )
private String value;
/**
* 下发人
*/
@ApiModelProperty("下发人")
@Column(name = "create_user" )
private String createUser;
/**
* 下发人id
*/
@ApiModelProperty("下发人id")
@Column(name="create_user_id")
private String createUserId;
/**
* 接收人id
*/
@ApiModelProperty("接收人id")
@Column(name = "enter_user_id" )
private String enterUserId;
/**
* 接收人
*/
@ApiModelProperty("接收人中文名")
@Column(name = "enter_user" )
private String enterUser;
/**
* 审核接收人
*/
@ApiModelProperty("审核接收人中文名")
@Column(name = "audit_user" )
private String auditUser;
/**
* 审核接收人id
*/
@ApiModelProperty("审核接收人id")
@Column(name = "audit_user_id" )
private String auditUserId;
......@@ -101,73 +119,86 @@ public class ShortBoardTask implements Serializable {
/**
* 单位id
*/
@ApiModelProperty("单位id")
@Column(name = "unit_id" )
private String unitId;
/**
* 单位名称
*/
@ApiModelProperty("单位名称")
@Column(name = "unit_name" )
private String unitName;
/**
* 短板规则描述
*/
@ApiModelProperty("短板规则描述")
@Column(name = "shortboard_desc" )
private String shortboardDesc;
/**
* 指标路径(判别指标类型)
*/
@ApiModelProperty("指标路径(判别指标类型)")
@Column(name = "drive_id_path" )
private String driveIdPath;
/**
* 清单状态
*/
@ApiModelProperty("清单状态1是短板清单 2待改善 3以改善 4加入白名单 5不合格")
@Column(name = "status" )
private Integer status;
/**
* 机构编码
*/
@ApiModelProperty("机构编码")
@Column(name = "code" )
private String code;
/**
* 更新时间
*/
@ApiModelProperty("更新时间")
@Column(name = "update_time" )
private Date updateTime;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
@Column(name = "create_time" )
private Date createTime;
/**
* 更新者
*/
@ApiModelProperty("更新者")
@Column(name = "updater" )
private String updater;
/**
* 短板规则id逗号分隔
*/
@ApiModelProperty("短板规则id逗号分隔")
@Column(name = "rule_ids" )
private String ruleIds;
/**
* 短板规则名称逗号分隔
*/
@ApiModelProperty("短板规则名称逗号分隔")
@Column(name = "rule_names" )
private String ruleNames;
/**
* 短板执行记录
*/
@ApiModelProperty("短板执行记录")
@Column(name="action_record")
private String actionRecord;
/**
* 改善措施
*/
@ApiModelProperty("改善措施")
@Transient
private String improveMeasure;
......
......@@ -2,6 +2,8 @@ package com.keymobile.indicators.model.entity.shortboard;
import javax.persistence.*;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
......@@ -9,7 +11,7 @@ import java.util.Date;
/**
* @Description
* @Author Hunter
* @Author hzc
* @Date 2020-09-22
*/
......@@ -30,60 +32,70 @@ public class ShortBoardTaskVal implements Serializable {
/**
* 短板清单id
*/
@ApiModelProperty("短板清单id")
@Column(name = "short_board_task_id" )
private Integer shortBoardTaskId;
/**
* 原因分析
*/
@ApiModelProperty("原因分析")
@Column(name = "analysis_causes" )
private String analysisCauses;
/**
* 受理人员
*/
@ApiModelProperty("受理人员")
@Column(name = "handle_user" )
private String handleUser;
/**
* 制定措施
*/
@ApiModelProperty("制定措施")
@Column(name = "create_measure" )
private String createMeasure;
/**
* 改善人员
*/
@Column(name = "improve_user" )
@ApiModelProperty("改善人员")
@Column(name = "improve_user" )
private String improveUser;
/**
* 执行改善措施
*/
@ApiModelProperty("执行改善措施")
@Column(name = "start_measure" )
private String startMeasure;
/**
* 执行人员
*/
@ApiModelProperty("执行人员")
@Column(name = "start_user" )
private String startUser;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
@Column(name = "create_time" )
private Date createTime;
/**
* 更新时间
*/
@ApiModelProperty("更新时间")
@Column(name = "update_time" )
private Date updateTime;
/**
* 更新人
*/
@ApiModelProperty("更新人")
@Column(name = "updater" )
private String updater;
......
......@@ -36,7 +36,8 @@ public class ShortboardRecord {
private String shortboardType;//短板类型:0:均值 1:最大值 2:最小值 3:排名 4:历史同期
private String isIssue;//是否下发 0:否 1:是
private String code;//标识编码
private String department;//部门
private String userId;//运算用户id
private String lastUpdater;
private String lastUpdateTime = DateUtils.formatDate(new Date(), "yyyy-MM-dd HH:mm:ss");
}
......@@ -34,4 +34,5 @@ public class ShortboardUnit {
private String createTime = DateUtils.formatDate(new Date(), "yyyy-MM-dd HH:mm:ss");
private String updater;
private String updateTime = DateUtils.formatDate(new Date(), "yyyy-MM-dd HH:mm:ss");
private String department;//部门
}
......@@ -146,7 +146,11 @@ public class ShortboardRuleService {
shortboardRecord.setShortboardName(shortboardName.toString());
shortboardRecord.setShortboardDesc(shortboardDesc.toString());
shortboardRecord.setShortboardType(shortboardType.toString());
shortboardRecord.setDrivePath(driveIndDef.getCatalogIdPath());
//单位中文名
shortboardRecord.setUnitName(driveIndCalDef.getCompareObjDesc());
shortboardRecord.setIsIssue("0");
shortboardRecord.setCode(code);
shortboardRecord.setLastUpdater(user);
......@@ -243,7 +247,7 @@ public class ShortboardRuleService {
&& !"0.0000".equals(calResult.getValue()) && !"0".equals(calResult.getValue())) {
//判断有没有实际的平均值
if(!"0.0".equals(calResult.getActualAverage())) {
if(Double.parseDouble(calResult.getValue()) >
if(Double.parseDouble(calResult.getValue()) >
Double.parseDouble(calResult.getActualAverage())) {
filterCalResults.add(calResult);
}
......
......@@ -8,6 +8,7 @@ import com.keymobile.indicators.model.mapper.indmapper.ShortboardRuleMapper;
import com.keymobile.indicators.model.mapper.indmapper.ShortboardTaskMapper;
import com.keymobile.indicators.model.mapper.indmapper.ShortboardTaskValMapper;
import com.keymobile.indicators.result.Result;
import com.keymobile.indicators.utils.LogManager;
import com.keymobile.indicators.utils.SystemUserUtil;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -40,59 +41,54 @@ public class ShortboardTaskService {
Integer recordId = shortBoardTask.getRecordId();
Date date = new Date();
ShortboardRecord shortboardRecord = shortboardRecordMapper.selectByPrimaryKey(recordId);
shortBoardTask.setCode(shortboardRecord.getCode());
shortBoardTask.setShortboardName(shortboardRecord.getShortboardName());
shortBoardTask.setDriveIdPath(shortboardRecord.getDrivePath());
shortBoardTask.setShortboardDesc(shortboardRecord.getShortboardDesc());
shortBoardTask.setUnitId(shortboardRecord.getCompareObj());
shortBoardTask.setUnitName(shortboardRecord.getUnitName());
shortBoardTask.setValue(shortboardRecord.getValue());
shortBoardTask.setDriveName(shortboardRecord.getDriveName());
shortBoardTask.setRuleIds(shortboardRecord.getShortboardRuleIds());
shortBoardTask.setStatus(Constants.SHORT_BOARD_START);
//获取短板筛选规则名称 多个逗号分隔
String shortboardRuleIds = shortboardRecord.getShortboardRuleIds();
StringBuffer ruleNames = new StringBuffer();
if(StringUtils.isNotBlank(shortboardRuleIds)){
String[] split = shortboardRuleIds.split(Constants.SEP_COMMA);
List<Integer> ruleIds = new ArrayList<>();
for (String s : split) {
ruleIds.add(Integer.valueOf(s));
if(shortboardRecord!=null){
shortBoardTask.setCode(shortboardRecord.getCode());
shortBoardTask.setShortboardName(shortboardRecord.getShortboardName());
shortBoardTask.setDriveIdPath(shortboardRecord.getDrivePath());
shortBoardTask.setShortboardDesc(shortboardRecord.getShortboardDesc());
shortBoardTask.setUnitId(shortboardRecord.getCompareObj());
shortBoardTask.setUnitName(shortboardRecord.getUnitName());
shortBoardTask.setValue(shortboardRecord.getValue());
shortBoardTask.setDriveName(shortboardRecord.getDriveName());
shortBoardTask.setRuleIds(shortboardRecord.getShortboardRuleIds());
shortBoardTask.setStatus(Constants.SHORT_BOARD_START);
//获取短板筛选规则名称 多个逗号分隔
String shortboardRuleIds = shortboardRecord.getShortboardRuleIds();
StringBuffer ruleNames = new StringBuffer();
if(StringUtils.isNotBlank(shortboardRuleIds)){
String[] split = shortboardRuleIds.split(Constants.SEP_COMMA);
List<Integer> ruleIds = new ArrayList<>();
for (String s : split) {
ruleIds.add(Integer.valueOf(s));
}
List<ShortboardRule> ShortboardRules = this.shortboardRuleMapper.findByIdList(ruleIds);
for (ShortboardRule shortboardRule : ShortboardRules) {
ruleNames.append(shortboardRule.getRuleName());
ruleNames.append(Constants.SEP_COMMA);
}
ruleNames=ruleNames.delete(ruleNames.length()-1,ruleNames.length());
}
List<ShortboardRule> ShortboardRules = this.shortboardRuleMapper.findByIdList(ruleIds);
for (ShortboardRule shortboardRule : ShortboardRules) {
ruleNames.append(shortboardRule.getRuleName());
ruleNames.append(Constants.SEP_COMMA);
shortBoardTask.setRuleNames(ruleNames.toString());
//接收人待定
shortBoardTask.setEnterUserId(",1,");
shortBoardTask.setEnterUser("root");
//下发人id
shortBoardTask.setCreateUserId(SystemUserUtil.getCurrentUserId());
String currentUser = SystemUserUtil.getCurrentUser();
String[] split = currentUser.split(Constants.SEP_COLON);
if(split.length>2){
shortBoardTask.setCreateUser(split[2]);
}
ruleNames=ruleNames.delete(ruleNames.length()-1,ruleNames.length());
}
shortBoardTask.setRuleNames(ruleNames.toString());
//接收人待定
shortBoardTask.setEnterUserId(",1,");
shortBoardTask.setEnterUser("root");
//下发人id
shortBoardTask.setCreateUserId(SystemUserUtil.getCurrentUserId());
String currentUser = SystemUserUtil.getCurrentUser();
String[] split = currentUser.split(Constants.SEP_COLON);
if(split.length>2){
shortBoardTask.setCreateUser(split[2]);
shortBoardTask.setCreateTime(date);
shortBoardTask.setUpdateTime(date);
shortBoardTask.setUpdater(SystemUserUtil.getCurrentUser());
//插入后返回id
shortBoardTask.setId(null);
shortboardTaskMapper.insert(shortBoardTask);
String message = currentUser+":下发了短板,短板id:{}短板名:{}";
// System.out.println(shortBoardTask);
LogManager.logInfo(Constants.LOG_INDICATOR_SHORTBOARD_TASK_API,message,shortBoardTask.getId(),shortBoardTask.getShortboardName());
}
shortBoardTask.setCreateTime(date);
shortBoardTask.setUpdateTime(date);
shortBoardTask.setUpdater(SystemUserUtil.getCurrentUser());
shortboardTaskMapper.insert(shortBoardTask);
System.out.println(shortBoardTask);
return Result.genOkResult();
}
......@@ -109,18 +105,23 @@ public class ShortboardTaskService {
* 短板清单填报更新或新增
* **/
@Transactional(rollbackFor = Exception.class)
public Result saveOrUpdateShortBoardTaskVal(ShortBoardTaskVal shortBoardTaskVal) {
public Result saveOrUpdateShortBoardTaskVal(ShortBoardTaskVal shortBoardTaskVal,boolean isExcel) {
Date date = new Date();
shortBoardTaskVal.setUpdateTime(date);
shortBoardTaskVal.setUpdater(SystemUserUtil.getCurrentUser());
String message = "";
if(shortBoardTaskVal.getId()!=null&&shortBoardTaskVal.getId()!=0){
//更新
shortboardTaskValMapper.updateByPrimaryKey(shortBoardTaskVal);
}else{
shortBoardTaskVal.setCreateTime(date);
shortboardTaskValMapper.insert(shortBoardTaskVal);
}
if(isExcel){
//excel方法不更新短板任务清单
return Result.genOkResult();
}
ShortBoardTask shortboardTask = new ShortBoardTask();
shortboardTask.setUpdateTime(date);
shortboardTask.setUpdater(SystemUserUtil.getCurrentUser());
......@@ -146,6 +147,8 @@ public class ShortboardTaskService {
shortBoardTask.setId(taskId);
shortBoardTask.setStatus(status);
shortboardTaskMapper.updateByPrimaryKeySelective(shortBoardTask);
String message = SystemUserUtil.getCurrentUser()+":把id={}的短板清单状态修改为{} ";
LogManager.logInfo(Constants.LOG_INDICATOR_SHORTBOARD_TASK_API,message,taskId,status);
return Result.genOkResult();
}
......
......@@ -7,6 +7,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.keymobile.indicators.utils.SystemUserUtil;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
......@@ -115,7 +116,11 @@ public class ShortboardUnitService {
compareObjList, driveIndIdList, shortboardIdList,shortboardUnit.getCode(),user);
}
if(!result.isEmpty()) {
String currentUserId = SystemUserUtil.getCurrentUserId();
for(ShortboardRecord shortboardRecord : result) {
shortboardRecord.setUserId(currentUserId);
shortboardRecord.setDepartment(shortboardUnit.getDepartment());
shortboardRecord.setShortboardUnitId(id);
}
//批量保存
......
......@@ -8,18 +8,18 @@ public enum ModelPathEnum {
LOG_INDICATOR_SCORECARD_API("indicator.scorecard","规则管理/指标计分规则管理"),
LOG_INDICATOR_OBJ_SCORERULE_API("indicator.obj.scorerule","规则管理/单位得分规则管理"),
LOG_INDICATOR_SHORTBOARD_RULE_API("indicator.shortboardrule","规则管理/短板筛选规则管理"),
LOG_INDICATOR_SHORTBOARD_UNIT_API("indicator.shortboardunit","短板管理/短板规则"),
LOG_INDICATOR_PARAMETER_API("indicator.parameter","台账管理"),
LOG_INDICATOR_BASEDATACHECK("indicator.basedatacheck","数据项稽核");
LOG_INDICATOR_BASEDATACHECK("indicator.basedatacheck","数据项稽核"),
LOG_INDICATOR_SHORTBOARD_UNIT_API("indicator.shortboardunit","短板管理/短板规则"),
LOG_INDICATOR_SHORTBOARD_TASK_API("indicator.shortboardtask","短板管理/短板清单");
private String modelName;
private String modelPath;
private ModelPathEnum(String modelName,String modelPath) {
this.modelName = modelName;
this.modelPath = modelPath;
}
public static String getModelPath(String modelName) {
for(ModelPathEnum path : ModelPathEnum.values()) {
if(modelName.equals(path.getModelName())) {
......
......@@ -48,6 +48,9 @@
<logger name="indicator.basedatacheck">
<appender-ref ref="db" />
</logger>
<logger name="indicator.shortboardtask">
<appender-ref ref="db" />
</logger>
<root level="INFO">
<appender-ref ref="stdout" />
</root>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment