Commit d6626e93 authored by litengwei's avatar litengwei

应急任务添加

parent b679e378
...@@ -2,10 +2,8 @@ package com.yeejoin.amos.fas.dao.entity; ...@@ -2,10 +2,8 @@ package com.yeejoin.amos.fas.dao.entity;
import lombok.Data; import lombok.Data;
import javax.persistence.Column; import javax.persistence.*;
import javax.persistence.Entity; import java.util.List;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
/** /**
...@@ -17,22 +15,47 @@ import javax.persistence.Table; ...@@ -17,22 +15,47 @@ import javax.persistence.Table;
public class EmergencyTaskContent extends BasicEntity { public class EmergencyTaskContent extends BasicEntity {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
//分工内容
//分工内容id
@Column(name = "content") @Column(name = "content")
private String content; private String content;
//人员名称 //编号
@Column(name = "code") @Column(name = "code")
private String code; private String code;
//人员名称 //关联角色ID
@Column(name = "obligation_id") @Column(name = "obligation_id")
private Long obligationId; private Long obligationId;
//所属流程步骤编号
@Column(name = "step_code")
private String stepCode;
//角色code
@Column(name = "role_code")
private String roleCode;
//任务排序号
@Column(name = "task_num")
private String taskNum;
//是否必填项
@Column(name = "is_must")
private boolean isMust;
//所属角色
@Transient
private List<String> roleCodeList;
//所属流程步骤编号
@Column(name = "button_json")
private String buttonJson;
//预案类型
@Column(name = "plan_type")
private String planType;
//人员名称 //关联角色名称
@Column(name = "obligation_name") @Column(name = "obligation_name")
private String obligationName; private String obligationName;
} }
\ No newline at end of file
...@@ -150,6 +150,13 @@ public class EmergencyTaskController extends BaseController{ ...@@ -150,6 +150,13 @@ public class EmergencyTaskController extends BaseController{
return CommonResponseUtil.success(); return CommonResponseUtil.success();
} }
@ApiOperation(httpMethod = "POST",value = "新增树人员节点", notes = "新增树人员节点")
@PostMapping(value = "/saveTaskConfig", produces = "application/json;charset=UTF-8")
public CommonResponse saveTaskConfig(@RequestBody EmergencyTaskContent emergencyTaskContent){
iEmergencyTaskService.saveTaskConfig(emergencyTaskContent);
return CommonResponseUtil.success();
}
@ApiOperation(httpMethod = "POST",value = "编辑树人员节点", notes = "编辑树人员节点") @ApiOperation(httpMethod = "POST",value = "编辑树人员节点", notes = "编辑树人员节点")
@PostMapping(value = "/editPerson", produces = "application/json;charset=UTF-8") @PostMapping(value = "/editPerson", produces = "application/json;charset=UTF-8")
public CommonResponse editPerson(@RequestBody EmergencyRelationVo vo){ public CommonResponse editPerson(@RequestBody EmergencyRelationVo vo){
......
...@@ -30,6 +30,8 @@ import org.springframework.util.ObjectUtils; ...@@ -30,6 +30,8 @@ import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes; import org.springframework.web.context.request.ServletRequestAttributes;
import org.typroject.tyboot.component.cache.Redis;
import org.typroject.tyboot.component.cache.enumeration.CacheType;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
...@@ -86,7 +88,12 @@ public class LoginController { ...@@ -86,7 +88,12 @@ public class LoginController {
reginParams = getLogin(userId, token); reginParams = getLogin(userId, token);
}else{ }else{
RequestContext.setProduct(product); RequestContext.setProduct(product);
if (!TokenOperation.refresh(reginParams.getToken())) { String cacheKey = Redis.genKey(new String[]{CacheType.ERASABLE.name(), "SESSION_TOKEN", RequestContext.getProduct(), reginParams.getToken()});
boolean hasKey = Redis.getRedisTemplate().hasKey(cacheKey);
if (hasKey) {
return reginParams;
} else {
logger.info("Auto自动登陆=====:{}", JSON.toJSONString(reginParams));
reginParams = getLogin(userId, token); reginParams = getLogin(userId, token);
} }
} }
......
...@@ -18,6 +18,8 @@ public interface EmergencyTaskMapper extends BaseMapper { ...@@ -18,6 +18,8 @@ public interface EmergencyTaskMapper extends BaseMapper {
void save(EmergencyRelation emergencyRelation); void save(EmergencyRelation emergencyRelation);
void saveTaskConfig(EmergencyTaskContent emergencyTaskContent);
List<String> roleCodes(String amosOrgId); List<String> roleCodes(String amosOrgId);
List<Long> getPersonIds(Long obligationId); List<Long> getPersonIds(Long obligationId);
......
...@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONArray; ...@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONArray;
import com.yeejoin.amos.fas.business.action.model.ContingencyRo; import com.yeejoin.amos.fas.business.action.model.ContingencyRo;
import com.yeejoin.amos.fas.business.action.mq.WebMqttComponent; import com.yeejoin.amos.fas.business.action.mq.WebMqttComponent;
import com.yeejoin.amos.fas.business.dao.mapper.EmergencyTaskMapper; import com.yeejoin.amos.fas.business.dao.mapper.EmergencyTaskMapper;
import com.yeejoin.amos.fas.business.dao.mapper.EmergencyTaskRoleMapper;
import com.yeejoin.amos.fas.business.dao.mapper.PlanOperationRecordMapper; import com.yeejoin.amos.fas.business.dao.mapper.PlanOperationRecordMapper;
import com.yeejoin.amos.fas.business.dao.repository.IContingencyPlanInstanceRepository; import com.yeejoin.amos.fas.business.dao.repository.IContingencyPlanInstanceRepository;
import com.yeejoin.amos.fas.business.dao.repository.IPlanOperationRecordDao; import com.yeejoin.amos.fas.business.dao.repository.IPlanOperationRecordDao;
...@@ -17,10 +18,7 @@ import com.yeejoin.amos.fas.business.vo.EmergencyTaskContentVo; ...@@ -17,10 +18,7 @@ import com.yeejoin.amos.fas.business.vo.EmergencyTaskContentVo;
import com.yeejoin.amos.fas.business.vo.MessageVO; import com.yeejoin.amos.fas.business.vo.MessageVO;
import com.yeejoin.amos.fas.core.common.request.CommonPageable; import com.yeejoin.amos.fas.core.common.request.CommonPageable;
import com.yeejoin.amos.fas.core.util.StringUtil; import com.yeejoin.amos.fas.core.util.StringUtil;
import com.yeejoin.amos.fas.dao.entity.ContingencyPlanInstance; import com.yeejoin.amos.fas.dao.entity.*;
import com.yeejoin.amos.fas.dao.entity.EmergencyRelation;
import com.yeejoin.amos.fas.dao.entity.EmergencyRelationTree;
import com.yeejoin.amos.fas.dao.entity.EmergencyTaskContent;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateFormatUtils; import org.apache.commons.lang3.time.DateFormatUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -67,12 +65,17 @@ public class EmergencyTaskServiceImpl implements IEmergencyTaskService { ...@@ -67,12 +65,17 @@ public class EmergencyTaskServiceImpl implements IEmergencyTaskService {
@Autowired @Autowired
private PlanOperationRecordMapper planOperationRecordMapper; private PlanOperationRecordMapper planOperationRecordMapper;
@Autowired
private EmergencyTaskRoleMapper emergencyTaskRoleMapper;
@Value("${spring.application.name}") @Value("${spring.application.name}")
private String serviceName; private String serviceName;
@Value("${station.name}") @Value("${station.name}")
private String stationName; private String stationName;
String taskJson = "{\"type\":\"button\",\"operate\":[{\"code\":\"STOP_OIL_CONSERVATOR_DRAIN\",\"icon\":\"yellow\",\"state\":\"wait\",\"title\":\"已执行\",\"confirm\":false,\"content\":\"_content\",\"delayed\":[0],\"stepState\":\"A\",\"requestUrl\":\"/fireAutoSys/api/timeline/click\"}],\"stepCode\":\"_stepCode\"}";
@Override @Override
public Page<EmergencyTaskContent> list(Long obligationId, String planType, CommonPageable pageable) { public Page<EmergencyTaskContent> list(Long obligationId, String planType, CommonPageable pageable) {
int total = emergencyTaskMapper.getEmergencyTaskCount(obligationId, planType); int total = emergencyTaskMapper.getEmergencyTaskCount(obligationId, planType);
...@@ -99,6 +102,21 @@ public class EmergencyTaskServiceImpl implements IEmergencyTaskService { ...@@ -99,6 +102,21 @@ public class EmergencyTaskServiceImpl implements IEmergencyTaskService {
} }
@Override @Override
public void saveTaskConfig(EmergencyTaskContent emergencyTaskContent) {
List<String> roleList = emergencyTaskContent.getRoleCodeList();
for (String role : roleList
) {
String json = taskJson.replace("_content", emergencyTaskContent.getContent()).replace("__stepCode", emergencyTaskContent.getStepCode());
emergencyTaskContent.setButtonJson(json);
EmergencyTaskRole emergencyTaskRole = emergencyTaskRoleMapper.selectById(Long.valueOf(role));
emergencyTaskContent.setRoleCode(emergencyTaskRole.getCode());
emergencyTaskContent.setObligationName(emergencyTaskRole.getName());
emergencyTaskContent.setObligationId(emergencyTaskRole.getId());
emergencyTaskMapper.saveTaskConfig(emergencyTaskContent);
}
}
@Override
public String getRolesByUserId(String userId) { public String getRolesByUserId(String userId) {
List<String> list = emergencyTaskMapper.roleCodes(userId); List<String> list = emergencyTaskMapper.roleCodes(userId);
String roleCodes = String.join(",", list); String roleCodes = String.join(",", list);
......
...@@ -20,6 +20,8 @@ public interface IEmergencyTaskService { ...@@ -20,6 +20,8 @@ public interface IEmergencyTaskService {
void save(EmergencyRelation emergencyRelation); void save(EmergencyRelation emergencyRelation);
void saveTaskConfig(EmergencyTaskContent emergencyTaskContent);
String getRolesByUserId(String userId); String getRolesByUserId(String userId);
List<Long> getPersonIds(Long obligationId); List<Long> getPersonIds(Long obligationId);
......
...@@ -108,6 +108,11 @@ ...@@ -108,6 +108,11 @@
VALUES (#{id}, #{obligationId}, #{personId}, #{amosOrgId}, #{personName},#{createDate}); VALUES (#{id}, #{obligationId}, #{personId}, #{amosOrgId}, #{personName},#{createDate});
</insert> </insert>
<insert id="saveTaskConfig" parameterType="com.yeejoin.amos.fas.dao.entity.EmergencyTaskContent">
INSERT INTO `c_emergency_task_content`(id, `content`, `code`, `obligationId`, `create_date`, `obligation_name`, `step_code`, `role_code`,`button_json`, `task_num`,`is_must`, `plan_type`)
VALUES (#{id}, #{content}, #{code}, #{obligationId}, #{createDate},#{obligationName}, #{stepCode}, #{roleCode}, #{buttonJson},#{taskNum}, #{isMust} ,#{planType} );
</insert>
<select id="getContentList" resultType="com.yeejoin.amos.fas.business.vo.EmergencyTaskContentVo"> <select id="getContentList" resultType="com.yeejoin.amos.fas.business.vo.EmergencyTaskContentVo">
SELECT SELECT
* *
......
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