Commit df537d21 authored by chenhao's avatar chenhao

开发需求3667

parent 777d2540
......@@ -52,46 +52,46 @@ public class FireChemicalDto extends BaseDto {
private String formula;
@ApiModelProperty(value = "主要成分")
@ExcelProperty(value = "主要成分", index = 7)
@ExcelIgnore
private String ingredient;
@ApiModelProperty(value = "泄漏处理")
@ExcelProperty(value = "泄漏处理", index = 8)
@ExcelProperty(value = "泄漏处理", index = 7)
private String leakWay;
@ExcelProperty(value = "中文名", index = 0)
@ApiModelProperty(value = "中文名")
private String name;
@ApiModelProperty(value = "性状")
@ExcelProperty(value = "性状", index = 9)
@ExcelProperty(value = "性状", index = 8)
private String property;
@ApiModelProperty(value = "贮藏方法")
@ExcelProperty(value = "贮藏方法", index = 10)
@ExcelProperty(value = "贮藏方法", index = 9)
private String store;
@ApiModelProperty(value = "症状")
@ExcelProperty(value = "症状", index = 11)
@ExcelProperty(value = "症状", index = 10)
private String symptom;
@ApiModelProperty(value = "禁忌物/禁忌")
@ExcelProperty(value = "禁忌物/禁忌", index = 12)
@ExcelProperty(value = "禁忌物/禁忌", index = 11)
private String tabu;
@ExcelIgnore
@ApiModelProperty(value = "类型code")
private String typeCode;
@ExplicitConstraint(type = "CHEMICALTYPE", indexNum = 13, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExplicitConstraint(type = "CHEMICALTYPE", indexNum = 12, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ApiModelProperty(value = "类型名称")
@ExcelProperty(value = "类型名称", index = 13)
@ExcelProperty(value = "类型名称", index = 12)
private String type;
// @ExplicitConstraint(indexNum=14,source = {"男","女"}) //固定下拉内容
@ExcelProperty(value = "国标号", index = 14)
@ExcelProperty(value = "国标号", index = 13)
@ApiModelProperty(value = "国标号")
private String un;
@ExcelIgnore
@ApiModelProperty(value = "化学品图片")
@ExcelProperty(value = "化学品图片", index = 15)
private String image;
@ExcelIgnore
@ApiModelProperty(value = "更新时间")
......
package com.yeejoin.amos.boot.module.common.api.dto;
import java.util.Date;
import org.springframework.format.annotation.DateTimeFormat;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import com.yeejoin.amos.boot.module.common.api.excel.ExplicitConstraint;
import com.yeejoin.amos.boot.module.common.api.excel.RoleNameExplicitConstraint;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 消防队员
*
......@@ -170,11 +174,86 @@ public class FirefightersExcelDto extends BaseDto {
private String recUserName;
@ExcelIgnore
@ApiModelProperty(value = "人员id")
private Long firefightersId;
/*************************岗位职级***********************/
@ApiModelProperty(value = "员工层级")
@ExcelProperty(value = "员工层级", index = 20)
@ExplicitConstraint(type = "YGCJ", indexNum = 20, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
private String employeeHierarchy;
@ApiModelProperty(value = "行政职务")
@ExplicitConstraint(type = "XZZW", indexNum = 21, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "行政职务", index = 21)
private String administrativePosition;
@ApiModelProperty(value = "岗位资质")
@ExplicitConstraint(type = "GWZZ", indexNum = 22, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "岗位资质", index = 22)
private String postQualification;
@ExcelIgnore
@ApiModelProperty(value = "专家领域")
@ApiModelProperty(value = "消防救援人员类别")
@ExplicitConstraint(type = "XFRYLB", indexNum = 23, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "消防救援人员类别", index = 23)
private String category;
// @ApiModelProperty(value = "消防救援人员状态")
// private String state;
@ApiModelProperty(value = "消防救援衔级别代码")
@ExplicitConstraint(type = "XFJYJB", indexNum = 24, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "消防救援衔级别代码", index = 24)
private String level;
@ApiModelProperty(value = "消防专家领域")
@ExplicitConstraint(type = "ZJLY", indexNum = 25, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "消防专家领域", index = 25)
private String areasExpertise;
/*************************学历教育***********************/
@ApiModelProperty(value = "第一学历")
@ExplicitConstraint(type = "XLLX", indexNum = 26, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "第一学历", index = 26)
private String firstDegree;
@ApiModelProperty(value = "最高学历")
@ExplicitConstraint(type = "XLLX", indexNum = 27, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "最高学历", index = 27)
private String highestEducation;
@ApiModelProperty(value = "学位")
@ExplicitConstraint(type = "XWLX", indexNum = 28, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "学位", index = 28)
private String academicDegree;
@ApiModelProperty(value = "毕业院校")
@ExcelProperty(value = "毕业院校", index = 29)
private String school;
@ApiModelProperty(value = "毕业专业名称")
@ExcelProperty(value = "毕业专业名称", index = 30)
private String professionalName;
/*************************工作履历岗***********************/
@ApiModelProperty(value = "参加工作时间")
@ExcelProperty(value = "参加工作时间", index = 31)
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date workingHours;
@ApiModelProperty(value = "参加消防部门工作时间")
@ExcelProperty(value = "参加消防部门工作时间", index = 32)
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date fireWorkingHours;
}
......@@ -53,53 +53,52 @@ public class KeySiteExcleDto implements Serializable {
private String buildingArea;
@ExcelIgnore
@ExcelProperty(value = "建筑高度(m)", index = 5)
@ApiModelProperty(value = "建筑高度(m)")
private String buildingHeight;
@ExplicitConstraint(type = "NHDJ", indexNum =6, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "耐火等级", index = 6)
@ExplicitConstraint(type = "NHDJ", indexNum =5, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "耐火等级", index = 5)
@ApiModelProperty(value = "耐火等级")
private String fireEnduranceRate;
@ExplicitConstraint(type = "JZWSYXZ", indexNum =7, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "使用性质", index = 7)
@ExplicitConstraint(type = "JZWSYXZ", indexNum =6, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "使用性质", index = 6)
@ApiModelProperty(value = "使用性质")
private String useNature;
@ExcelProperty(value = "责任人", index = 8)
@ExcelProperty(value = "责任人", index = 7)
@ApiModelProperty(value = "责任人")
private String chargePerson;
@ExcelProperty(value = "责任人身份证", index = 9)
@ExcelProperty(value = "责任人身份证", index = 8)
@ApiModelProperty(value = "责任人身份证")
private String chargePersonId;
@ExcelProperty(value = "确定重点防火部位的原因", index = 10)
@ExcelProperty(value = "确定重点防火部位的原因", index = 9)
@ApiModelProperty(value = "确定重点防火部位的原因")
private String keyPreventionReason;
@ExcelProperty(value = "消防设施情况", index = 11)
@ExcelProperty(value = "消防设施情况", index = 10)
@ExplicitConstraint(indexNum=11,source = {"有","无"})
@ApiModelProperty(value = "消防设施情况")
private String fireFacilitiesInfo;
@ExcelProperty(value = "防火标志设立情况", index = 12)
@ExcelProperty(value = "防火标志设立情况", index = 11)
@ApiModelProperty(value = "防火标志设立情况")
private String firePreventionFlagName;
@ExcelProperty(value = "危险源", index = 13)
@ExcelProperty(value = "危险源", index = 12)
@ApiModelProperty(value = "危险源")
private String hazard;
@ExcelProperty(value = "消防安全管理措施", index = 14)
@ExcelProperty(value = "消防安全管理措施", index = 13)
@ApiModelProperty(value = "消防安全管理措施")
private String safetyManagementMeasures;
@ExcelProperty(value = "防范手段措施", index = 15)
@ExcelProperty(value = "防范手段措施", index = 14)
@ApiModelProperty(value = "防范手段措施")
private String preventiveMeasures;
@ExcelProperty(value = "备注", index = 16)
@ExcelProperty(value = "备注", index = 15)
@ApiModelProperty(value = "备注")
private String remark;
}
......@@ -5,10 +5,12 @@
<select id="getFirefightersJobTitleCount"
resultType="com.yeejoin.amos.boot.biz.common.utils.FirefightersTreeDto">
select COUNT(a.sequence_nbr) num, a.job_title_code jobTitleCode
select COUNT(a.sequence_nbr) num, a.job_title_code
jobTitleCode
from cb_firefighters a
where a.is_delete = 0
GROUP BY a.job_title_code
GROUP BY
a.job_title_code
</select>
<!--消防队员列表按时间倒叙排列add desc 2021-09-08 by kongfm -->
<select id="getFirefighters"
......@@ -16,7 +18,8 @@
select a.*,b.areas_expertise areasExpertise ,b.areas_expertise_code
areasExpertiseCode from cb_firefighters a LEFT JOIN
cb_firefighters_post b on
a.sequence_nbr=b.firefighters_id where a.is_delete=0
a.sequence_nbr=b.firefighters_id where
a.is_delete=0
<if test='par.postQualification!=null'>and b.post_qualification_code = #{par.postQualification}</if>
<if test='par.areasExpertise!=null'>and b.areas_expertise_code= #{par.areasExpertise}</if>
<if test='par.name!=null'>and a.name like concat ('%',#{par.name},'%')</if>
......@@ -48,7 +51,8 @@
<select id="listToSelectById" resultType="Map">
SELECT IFNULL(a.personnel_photos, '') personnelPhotos,
SELECT
IFNULL(a.personnel_photos, '') personnelPhotos,
a.sequence_nbr
sequenceNbr,
IFNULL(a.`name`, '无') `name`,
......@@ -65,31 +69,84 @@
IFNULL(b.post_qualification, '无')
postQualification, year ( from_days( datediff( now( ),
a.birthday_time))) age
FROM cb_firefighters a LEFT JOIN cb_firefighters_post b
FROM cb_firefighters a LEFT JOIN
cb_firefighters_post b
ON a.sequence_nbr
= b.firefighters_id LEFT JOIN cb_fire_team c on
= b.firefighters_id LEFT JOIN
cb_fire_team c on
c.sequence_nbr=a.fire_team_id
WHERE a.is_delete =0
and a.sequence_nbr=#{id}
and
a.sequence_nbr=#{id}
</select>
<!-- BUG3553 BY kongfm 人员关系显示汉字 -->
<!---陈浩修改导出的数据量 2021-09-13-->
<select id="exportToExcel"
resultType="com.yeejoin.amos.boot.module.common.api.dto.FirefightersExcelDto">
<!-- SELECT f.*, ( SELECT cb_fire_team.NAME FROM cb_fire_team WHERE cb_fire_team.sequence_nbr
= f.fire_team_id ) fireTeam, emergency_contact, da.NAME AS relationship,
emergency_contact_phone FROM cb_firefighters f LEFT JOIN cb_firefighters_contacts
fc ON f.sequence_nbr = fc.firefighters_id left join cb_data_dictionary da
on da.CODE = fc.relationship where f.is_delete = #{isDelete} -->
SELECT
f.*, (
SELECT
f.*,
( SELECT cb_fire_team.NAME FROM cb_fire_team WHERE
cb_fire_team.sequence_nbr = f.fire_team_id ) fireTeam,
cb_fire_team. NAME
FROM
cb_fire_team
WHERE
cb_fire_team.sequence_nbr = f.fire_team_id
) fireTeam,
emergency_contact,
da.NAME AS relationship,
emergency_contact_phone
da. NAME AS relationship,
emergency_contact_phone,
fw.working_hours,
fw.fire_working_hours,
(
SELECT
NAME
FROM
cb_data_dictionary
WHERE
CODE = fe.first_degree
AND type = 'XLLX'
) AS
first_degree,
(
SELECT
NAME
FROM
cb_data_dictionary
WHERE
CODE =
fe.highest_education
AND type = 'XLLX'
) AS highest_education,
(
SELECT
NAME
FROM
cb_data_dictionary
WHERE
CODE = fe.academic_degree
AND type ='XWLX'
) AS academic_degree,
fe.school,
fe.professional_name,
fp.*
FROM
cb_firefighters f
LEFT JOIN cb_firefighters_contacts fc ON f.sequence_nbr =
fc.firefighters_id
left join cb_data_dictionary da on da.CODE = fc.relationship
where f.is_delete = #{isDelete}
LEFT JOIN cb_firefighters_contacts fc ON f.sequence_nbr = fc.firefighters_id
LEFT JOIN cb_data_dictionary da ON da. CODE = fc.relationship
LEFT JOIN cb_firefighters_workexperience fw ON f.sequence_nbr = fw.firefighters_id
LEFT JOIN cb_firefighters_education fe ON f.sequence_nbr = fe.firefighters_id
LEFT JOIN cb_firefighters_post fp ON f.sequence_nbr = fp.firefighters_id
WHERE
f.is_delete = 0 and fc.is_delete=0 and
fw.is_delete=0 and fe.is_delete=0 and
fp.is_delete=0
</select>
</mapper>
......@@ -33,7 +33,6 @@ import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.common.api.dto.CompanyPerson;
import com.yeejoin.amos.boot.module.common.api.dto.DutyCarDto;
import com.yeejoin.amos.boot.module.common.api.dto.DutyPersonDto;
......@@ -66,6 +65,9 @@ import com.yeejoin.amos.boot.module.common.api.entity.FireStation;
import com.yeejoin.amos.boot.module.common.api.entity.FireTeam;
import com.yeejoin.amos.boot.module.common.api.entity.Firefighters;
import com.yeejoin.amos.boot.module.common.api.entity.FirefightersContacts;
import com.yeejoin.amos.boot.module.common.api.entity.FirefightersEducation;
import com.yeejoin.amos.boot.module.common.api.entity.FirefightersPost;
import com.yeejoin.amos.boot.module.common.api.entity.FirefightersWorkexperience;
import com.yeejoin.amos.boot.module.common.api.entity.MaintenanceCompany;
import com.yeejoin.amos.boot.module.common.api.entity.RescueEquipment;
import com.yeejoin.amos.boot.module.common.api.entity.SpecialPositionStaff;
......@@ -82,7 +84,11 @@ import com.yeejoin.amos.boot.module.common.biz.service.impl.DynamicFormColumnSer
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireChemicalServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireExpertsServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireStationServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersContactsServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersEducationServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersPostServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FirefightersWorkexperienceServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.LinkageUnitServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.OrgUsrServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.RescueEquipmentServiceImpl;
......@@ -103,8 +109,6 @@ public class ExcelServiceImpl {
private static final String MAINTENANCE_PERSON = "maintenancePerson";
@Autowired
private RedisUtils redisUtils;
@Autowired
DataSourcesImpl dataSourcesImpl;
@Autowired
FireChemicalServiceImpl fireChemicalServiceImpl;
......@@ -151,6 +155,15 @@ public class ExcelServiceImpl {
@Autowired
IOrgUsrService orgUsrServer;
@Autowired
FirefightersPostServiceImpl iFirefightersPostService;
@Autowired
FirefightersContactsServiceImpl ifirefightersContactsService;
@Autowired
FirefightersEducationServiceImpl ifirefightersEducationService;
@Autowired
FirefightersWorkexperienceServiceImpl ifirefightersWorkexperienceService;
public void templateExport(HttpServletResponse response, ExcelDto excelDto) throws ClassNotFoundException {
String url = excelDto.getClassUrl();
Class<?> clz = Class.forName(url);
......@@ -511,7 +524,20 @@ if (excelDtoList != null && excelDtoList.size() > 0) {
FirefightersContacts firefightersContacts = new FirefightersContacts();
firefighters = Bean.toPo(item, firefighters);
firefighters = Bean.toPo(getCurrentInfo(), firefighters);
//手动添加主键,以便于给岗位、职位等实体赋值id
Long sequenceId =sequence.nextId();
firefighters.setSequenceNbr(sequenceId);
item.setFirefightersId(sequenceId);
firefightersContacts = Bean.toPo(item, firefightersContacts);
FirefightersWorkexperience firefightersWorkexperience =new FirefightersWorkexperience();
FirefightersEducation firefightersEducation=new FirefightersEducation();
FirefightersPost firefightersPost=new FirefightersPost();
firefightersWorkexperience = Bean.toPo(item, firefightersWorkexperience);
firefightersEducation = Bean.toPo(item, firefightersEducation);
firefightersPost = Bean.toPo(item, firefightersPost);
if (item.getFireTeam() != null) {
Long fireTeamId = Long.valueOf(item.getFireTeam().split("@")[1]);
firefighters.setFireTeamId(fireTeamId);
......@@ -550,6 +576,56 @@ if (excelDtoList != null && excelDtoList.size() > 0) {
firefighters.setResidence(tempCity[0]);
firefighters.setResidenceDetails(tempCity[1]);
}
/*************************岗位职级***********************/
if (item.getEmployeeHierarchy()!= null) {
String[] employeeHierarchy = item.getEmployeeHierarchy().split("@");
firefightersPost.setEmployeeHierarchy(employeeHierarchy[0]);
firefightersPost.setEmployeeHierarchyCode(employeeHierarchy[1]);
}
if (item.getAdministrativePosition()!= null) {
String[] employeeHierarchy = item.getAdministrativePosition().split("@");
firefightersPost.setAdministrativePosition(employeeHierarchy[0]);
firefightersPost.setAdministrativePositionCode(employeeHierarchy[1]);
}
if (item.getEmployeeHierarchy()!= null) {
String[] employeeHierarchy = item.getEmployeeHierarchy().split("@");
firefightersPost.setEmployeeHierarchy(employeeHierarchy[0]);
firefightersPost.setEmployeeHierarchyCode(employeeHierarchy[1]);
}
if (item.getPostQualification()!= null) {
String[] employeeHierarchy = item.getPostQualification().split("@");
firefightersPost.setPostQualification(employeeHierarchy[0]);
firefightersPost.setPostQualificationCode(employeeHierarchy[1]);
}
if (item.getCategory()!= null) {
String[] employeeHierarchy = item.getCategory().split("@");
firefightersPost.setCategory(employeeHierarchy[0]);
firefightersPost.setCategoryCode(employeeHierarchy[1]);
}
if (item.getLevel()!= null) {
String[] employeeHierarchy = item.getLevel().split("@");
firefightersPost.setLevel(employeeHierarchy[0]);
firefightersPost.setLevelCode(employeeHierarchy[1]);
}
if (item.getAreasExpertise()!= null) {
String[] employeeHierarchy = item.getAreasExpertise().split("@");
firefightersPost.setAreasExpertise(employeeHierarchy[0]);
firefightersPost.setAreasExpertiseCode(employeeHierarchy[1]);
}
/*************************学历教育***********************/
if (item.getFirstDegree()!= null) {
String[] employeeHierarchy = item.getFirstDegree().split("@");
firefightersEducation.setFirstDegree(employeeHierarchy[1]);
}
if (item.getHighestEducation()!= null) {
String[] employeeHierarchy = item.getHighestEducation().split("@");
firefightersEducation.setHighestEducation(employeeHierarchy[1]);
}
iFirefightersPostService.save(firefightersPost);
ifirefightersEducationService.save(firefightersEducation);
ifirefightersWorkexperienceService.save(firefightersWorkexperience);
// BUG 2760 修改消防人员导出模板和 导入问题 bykongfm
FirefightersInfoDto firefightersInfo = new FirefightersInfoDto(firefighters, firefightersContacts);
firefightersService.saveFirefighters(firefightersInfo);
......
......@@ -312,4 +312,11 @@
'调派任务状态(执行中:executing,已完成:finished)';
</sql>
</changeSet>
<changeSet author="chenhao" id="2021-09-13-chenhao-1">
<comment>update data cb_firefighters_workexperience</comment>
<sql>
ALTER TABLE `cb_firefighters_workexperience` modify working_hours date COMMENT '参加工作时间';
ALTER TABLE `cb_firefighters_workexperience` modify fire_working_hours date COMMENT '参加消防部门工作时间';
</sql>
</changeSet>
</databaseChangeLog>
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