Commit 98c50fc0 authored by chenzhao's avatar chenzhao

应急预案人员分工角色

parent 7925dc0c
package com.yeejoin.amos.fas.dao.entity;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
/**
* The persistent class for the equipment_fire_equipment database table.
*/
@Entity
@Data
@Table(name = "c_emergency_relation")
@NamedQuery(name = "EmergencyRelation.findAll", query = "SELECT e FROM EmergencyRelation e")
public class EmergencyRelation extends BasicEntity {
private static final long serialVersionUID = 1L;
//职责id
@Column(name = "obligationId")
private Long obligationId;
//人员id
@Column(name = "person_id")
private Long personId;
//分工内容id
@Column(name = "content_id")
private Long contentId;
//人员名称
@Column(name = "person_name")
private String personName;
}
\ No newline at end of file
package com.yeejoin.amos.fas.dao.entity;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import java.util.ArrayList;
import java.util.List;
/**
* The persistent class for the equipment_fire_equipment database table.
*/
@Data
public class EmergencyRelationTree extends BasicEntity {
private static final long serialVersionUID = 1L;
//职责id
private Long obligationId;
//人员名称
private String name;
//子级
private List<EmergencyRelationTree> children = new ArrayList<>();
//树节点展示标识
private String type;
}
\ No newline at end of file
package com.yeejoin.amos.fas.dao.entity;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
/**
* The persistent class for the equipment_fire_equipment database table.
*/
@Entity
@Table(name = "c_emergency_task_content")
@Data
public class EmergencyTaskContent extends BasicEntity {
private static final long serialVersionUID = 1L;
//分工内容id
@Column(name = "content")
private String content;
//人员名称
@Column(name = "code")
private String code;
//人员名称
@Column(name = "obligation_id")
private Long obligationId;
}
\ No newline at end of file
package com.yeejoin.amos.fas.business.controller;
import com.yeejoin.amos.fas.business.service.intfc.IDictService;
import com.yeejoin.amos.fas.business.service.intfc.IEmergencyTaskService;
import com.yeejoin.amos.fas.core.common.request.CommonPageable;
import com.yeejoin.amos.fas.dao.entity.Dict;
import com.yeejoin.amos.fas.dao.entity.EmergencyRelation;
import com.yeejoin.amos.fas.dao.entity.EmergencyRelationTree;
import org.springframework.data.domain.Page;
import com.yeejoin.amos.fas.core.util.CommonResponse;
import com.yeejoin.amos.fas.core.util.CommonResponseUtil;
import com.yeejoin.amos.fas.dao.entity.EmergencyTaskContent;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Controller
@RequestMapping("/api/emergency")
@Api(tags = "应急人员分工Api")
public class EmergencyTaskController extends BaseController{
@Autowired
IEmergencyTaskService iEmergencyTaskService;
@Autowired
private IDictService dictService;
@ApiOperation(httpMethod = "GET",value = "岗位人员树", notes = "岗位人员树")
@RequestMapping(value = "/tree", method = RequestMethod.GET)
public CommonResponse tree(){
Dict dict = new Dict();
dict.setDictCode("YJZC");
List<Dict> dictList = dictService.getDictList(dict);
List<EmergencyRelationTree> list = new ArrayList<>();
List<EmergencyRelationTree> treeNodes = iEmergencyTaskService.treeList();
dictList.forEach(e->{
EmergencyRelationTree tree = new EmergencyRelationTree();
tree.setId(e.getId());
tree.setName(e.getDictName());
tree.setType("0");
tree.setChildren(treeNodes.stream().filter(t->t.getObligationId().equals(e.getId())).collect(Collectors.toList()));
list.add(tree);
});
return CommonResponseUtil.success(list);
}
@ApiOperation(httpMethod = "GET",value = "分工内容列表", notes = "分工内容列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResponse list(Long obligationId ,@RequestParam int pageNumber,
@RequestParam int pageSize){
if (pageNumber >=1 ){
pageNumber = pageNumber -1 ;
}
CommonPageable commonPageable = new CommonPageable(pageNumber, pageSize);
Page<EmergencyTaskContent> list = iEmergencyTaskService.list(obligationId,commonPageable);
return CommonResponseUtil.success(list);
}
@ApiOperation(httpMethod = "POST",value = "树人员节点删除", notes = "树人员节点删除")
@RequestMapping(value = "/deleteTreeNode", method = RequestMethod.DELETE)
public CommonResponse deleteTreeNode(Long obligationId ,Long id){
iEmergencyTaskService.deleteTreeNode(obligationId,id);
return CommonResponseUtil.success();
}
@ApiOperation(httpMethod = "POST",value = "新增树人员节点", notes = "新增树人员节点")
@PostMapping(value = "/savePerson", produces = "application/json;charset=UTF-8")
public CommonResponse savePerson(@RequestBody EmergencyRelation emergencyRelation){
iEmergencyTaskService.save(emergencyRelation);
emergencyRelation.setCreateDate(new Date());
return CommonResponseUtil.success();
}
}
package com.yeejoin.amos.fas.business.dao.mapper;
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 java.util.List;
public interface EmergencyTaskMapper extends BaseMapper {
List<EmergencyTaskContent> getEmergencyTaskList(Long obligationId,Long offset,int pageSize);
int getEmergencyTaskCount(Long obligationId);
List<EmergencyRelationTree> treeList();
void deleteTreeNode(Long obligationId , Long personId);
void save(EmergencyRelation emergencyRelation);
}
package com.yeejoin.amos.fas.business.service.impl;
import com.yeejoin.amos.fas.business.dao.mapper.EmergencyTaskMapper;
import com.yeejoin.amos.fas.business.service.intfc.IEmergencyTaskService;
import com.yeejoin.amos.fas.core.common.request.CommonPageable;
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.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class EmergencyTaskServiceImpl implements IEmergencyTaskService {
@Autowired
EmergencyTaskMapper emergencyTaskMapper;
@Override
public Page<EmergencyTaskContent> list(Long obligationId, CommonPageable pageable) {
int total = emergencyTaskMapper.getEmergencyTaskCount(obligationId);
List<EmergencyTaskContent> emergencyTaskList = emergencyTaskMapper.getEmergencyTaskList(obligationId, pageable.getOffset(), pageable.getPageSize());
Page<EmergencyTaskContent> result = new PageImpl<>(emergencyTaskList, pageable, total);
return result;
}
@Override
public List<EmergencyRelationTree> treeList() {
return emergencyTaskMapper.treeList();
}
@Override
public void deleteTreeNode(Long obligationId, Long personId) {
emergencyTaskMapper.deleteTreeNode(obligationId , personId);
}
@Override
public void save(EmergencyRelation emergencyRelation) {
emergencyTaskMapper.save(emergencyRelation);
}
}
package com.yeejoin.amos.fas.business.service.intfc;
import com.yeejoin.amos.fas.core.common.request.CommonPageable;
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.springframework.data.domain.Page;
import java.util.List;
public interface IEmergencyTaskService {
Page<EmergencyTaskContent> list(Long obligationId, CommonPageable pageable);
List<EmergencyRelationTree> treeList();
void deleteTreeNode(Long obligationId ,Long personId);
void save(EmergencyRelation emergencyRelation);
}
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.fas.business.dao.mapper.EmergencyTaskMapper">
<select id="getEmergencyTaskList" resultType="com.yeejoin.amos.fas.dao.entity.EmergencyTaskContent" >
SELECT
id,
content,
code
FROM
c_emergency_task_content
<where>
<if test="_parameter != null ">
obligation_id = #{obligationId}
</if>
</where>
LIMIT #{offset}, #{pageSize}
</select>
<select id="getEmergencyTaskCount" resultType="int">
SELECT
count(1)
FROM
c_emergency_task_content
<where>
<if test="_parameter != null ">
obligation_id = #{obligationId}
</if>
</where>
</select>
<select id="treeList" resultType="com.yeejoin.amos.fas.dao.entity.EmergencyRelationTree">
SELECT
cer.person_id as id,
cer.person_name as name,
cer.obligationId as obligationId,
'1' as type
FROM
c_emergency_relation cer
</select>
<delete id="deleteTreeNode">
delete from c_emergency_relation where obligationId = #{obligationId} and person_id = #{personId}
</delete>
<insert id="save" parameterType="com.yeejoin.amos.fas.dao.entity.EmergencyRelation">
INSERT INTO `c_emergency_relation`(id, `obligationId`, `person_id`, `content_id`, `person_name`)
VALUES (#{id}, #{obligationId}, #{personId}, #{contentId}, #{personName});
</insert>
</mapper>
\ No newline at end of file
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