Commit d69e8b47 authored by 付培阳's avatar 付培阳

消防人员导入导出

parent 2b5deeb5
......@@ -38,6 +38,7 @@ public class FireTeamDto extends BaseDto {
@ApiModelProperty(value = "机构code")
private String companyCode;
@ExplicitConstraint(indexNum = 1, sourceClass = RoleNameExplicitConstraint.class,method="getFireTeam") //动态下拉内容
@ExcelProperty(value = "上级单位", index = 1)
@ApiModelProperty(value = "父级名称")
private String parentName;
......
package com.yeejoin.amos.boot.module.common.api.dto;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
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;
/**
* 消防队员
*
* @author tb
* @date 2021-06-07
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="FirefightersDto", description="消防队员")
public class FirefightersExcelDto extends BaseDto {
@ExcelIgnore
private static final long serialVersionUID = 1L;
@ExcelIgnore
@ApiModelProperty(value = "系统账号")
private String systemAccount;
@ExcelProperty(value = "姓名", index = 0)
@ApiModelProperty(value = "姓名")
private String name;
@ExcelProperty(value = "员工编码", index = 1)
@ApiModelProperty(value = "员工编码")
private String employeeNumber;
@ExplicitConstraint(indexNum = 2, sourceClass = RoleNameExplicitConstraint.class,method="getFireTeam") //动态下拉内容
@ExcelProperty(value = "消防队伍", index = 2)
@ApiModelProperty(value = "队伍")
private String fireTeam;
@ExcelProperty(value = "所属部门", index = 3)
@ApiModelProperty(value = "所属机构")
private String company;
@ExcelIgnore
@ApiModelProperty(value = "机构code")
private String companyCode;
@ExcelIgnore
@ApiModelProperty(value = "机构名称")
private String companyName;
@ExplicitConstraint(type = "RYZJLX", indexNum = 4, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "证件类型", index = 4)
@ApiModelProperty(value = "常用证件类型代码")
private String certificatesType;
@ExcelProperty(value = "证件号码", index = 5)
@ApiModelProperty(value = "证件号码")
private String certificateNumber;
@ExcelProperty(value = "出生日期", index = 6)
@ApiModelProperty(value = "出生日期")
private Date birthdayTime;
@ExplicitConstraint(indexNum = 7, source = {"男", "女"}) //固定下拉内容
@ExcelProperty(value = "性别", index = 5)
@ApiModelProperty(value = "性别")
private String gender;
@ExplicitConstraint(indexNum = 8, sourceClass = RoleNameExplicitConstraint.class, method = "getNations") //固定下拉内容
@ExcelProperty(value = "民族", index = 8)
@ApiModelProperty(value = "民族")
private String nation;
@ExplicitConstraint(indexNum = 9, sourceClass = RoleNameExplicitConstraint.class, method = "getMaritalStatus") //固定下拉内容
@ExcelProperty(value = "婚姻状况", index = 9)
@ApiModelProperty(value = "婚姻状况")
private String maritalStatus;
@ExcelProperty(value = "户籍所在地", index = 10)
@ApiModelProperty(value = "籍贯/户口所在地")
private String nativePlace;
@ExplicitConstraint(indexNum = 11, sourceClass = RoleNameExplicitConstraint.class, method = "getPoliticalOutlook") //固定下拉内容
@ExcelProperty(value = "政治面貌", index = 11)
@ApiModelProperty(value = "政治面貌代码")
private String politicalOutlook;
@ExcelProperty(value = "现居住地", index = 12)
@ApiModelProperty(value = "现居住地")
private String residence;
@ExcelIgnore
@ApiModelProperty(value = "现居住地详情")
private String residenceDetails;
@ExcelProperty(value = "机场住宿情况", index = 13)
@ApiModelProperty(value = "机场住宿情况")
private String airportAccommodation;
@ExcelProperty(value = "联系电话", index = 14)
@ApiModelProperty(value = "手机")
private String mobilePhone;
@ExplicitConstraint(type = "RYZT", indexNum = 15, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "人员状态", index = 15)
@ApiModelProperty(value = "人员状态,在职/离职")
private String state;
@ExcelIgnore
@ApiModelProperty(value = "人员状态,在职/离职字典code")
private String stateCode;
@ExplicitConstraint(type = "GWMC", indexNum = 16, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "岗位名称", index = 16)
@ApiModelProperty(value = "岗位名称")
private String jobTitle;
@ExcelProperty(value = "紧急联系人姓名", index = 17)
@ApiModelProperty(value = "紧急联系人姓名")
private String emergencyContact;
@ExplicitConstraint(type = "RJGX", indexNum = 18, sourceClass = RoleNameExplicitConstraint.class) //动态下拉内容
@ExcelProperty(value = "与紧急联系人关系", index = 18)
@ApiModelProperty(value = "紧急联系人与本人所属关系")
private String relationship;
@ExcelProperty(value = "紧急联系人电话", index = 19)
@ApiModelProperty(value = "紧急联系人电话")
private String emergencyContactPhone;
@ExcelProperty(value = "身份证正面", index = 20)
@ApiModelProperty(value = "身份证正面")
private String idPositive;
@ExcelProperty(value = "身份证反面", index = 21)
@ApiModelProperty(value = "身份证反面")
private String idReverse;
@ExcelIgnore
@ApiModelProperty(value = "办公电话")
private String officeTelephone;
@ExcelIgnore
@ApiModelProperty(value = "互联网_电子信箱")
private String email;
@ExcelIgnore
@ApiModelProperty(value = "人员照片")
private String personnelPhotos;
@ExcelIgnore
@ApiModelProperty(value = "更新时间")
private Date updateTime;
@ExcelIgnore
@ApiModelProperty(value = "操作人名称")
private String recUserName;
@ExcelIgnore
@ApiModelProperty(value = "岗位资质")
private String postQualification;
@ExcelIgnore
@ApiModelProperty(value = "专家领域")
private String areasExpertise;
}
......@@ -14,5 +14,6 @@ public class ExcelSelectData {
"高山族"};
public static final String[] POLITICAL_OUTLOOK = {"中共党员", "中共预备党员", "共青团员", "民革会员", "民盟盟员", "民建会员", "民进会员",
"农工党党员", "致公党党员", "九三学社社员", "台盟盟员", "无党派人士", "群众"};
public static final String[] MARITAL_STATUS = {"未婚", "已婚", "离异", "丧偶", "再婚", "恋爱中"};
}
\ No newline at end of file
......@@ -3,6 +3,8 @@ package com.yeejoin.amos.boot.module.common.api.mapper;
import java.util.List;
import java.util.Map;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersExcelDto;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
......@@ -11,22 +13,23 @@ import com.yeejoin.amos.boot.module.common.api.dto.FirefightersDto;
import com.yeejoin.amos.boot.module.common.api.entity.Firefighters;
/**
* 消防队员 Mapper 接口
*
* @author tb
* @date 2021-06-07
*/
* 消防队员 Mapper 接口
*
* @author tb
* @date 2021-06-07
*/
public interface FirefightersMapper extends BaseMapper<Firefighters> {
List<Firefighters>getFirefighters(@Param("pageNum")int pageNum,@Param("pageSize")int pageSize,@Param("par")FirefightersDto par);
Map<String, Long>getFirefightersCount(@Param("pageNum")int pageNum,@Param("pageSize")int pageSize,@Param("par")FirefightersDto par);
Map<String, Object> listToSelectById(@Param("id")Long id);
List<FirefightersTreeDto> getFirefightersJobTitleCount();
List<Firefighters> getFirefighters(@Param("pageNum") int pageNum, @Param("pageSize") int pageSize,
@Param("par") FirefightersDto par);
Map<String, Long> getFirefightersCount(@Param("pageNum") int pageNum, @Param("pageSize") int pageSize, @Param(
"par") FirefightersDto par);
Map<String, Object> listToSelectById(@Param("id") Long id);
List<FirefightersTreeDto> getFirefightersJobTitleCount();
List<FirefightersExcelDto> exportToExcel(Boolean isDelete);
}
......@@ -5,19 +5,27 @@ import java.util.Map;
import com.yeejoin.amos.boot.biz.common.utils.Menu;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersDto;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersInfoDto;
import com.yeejoin.amos.boot.module.common.api.entity.Firefighters;
/**
* 消防队员 服务类
*
* @author tb
* @date 2021-06-07
*/
* 消防队员 服务类
*
* @author tb
* @date 2021-06-07
*/
public interface IFirefightersService {
List<Firefighters>getFirefighters(int pageNum,int pageSize,FirefightersDto par);
Map<String, Long>getFirefightersCount(int pageNum,int pageSize,FirefightersDto par);
Map<String, Object> listToSelectById(Long id);
List<Menu> getFirefightersJobTitleCount()throws Exception;
List<Firefighters> getFirefighters(int pageNum, int pageSize, FirefightersDto par);
Map<String, Long> getFirefightersCount(int pageNum, int pageSize, FirefightersDto par);
Map<String, Object> listToSelectById(Long id);
List<Menu> getFirefightersJobTitleCount() throws Exception;
void saveFirefighters(FirefightersInfoDto firefighters);
}
<?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.boot.module.common.api.mapper.FirefightersMapper">
namespace="com.yeejoin.amos.boot.module.common.api.mapper.FirefightersMapper">
<select id="getFirefightersJobTitleCount" resultType="com.yeejoin.amos.boot.biz.common.utils.FirefightersTreeDto">
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
</select>
<select id="getFirefighters"
resultType="com.yeejoin.amos.boot.module.common.api.entity.Firefighters">
select a.* from cb_firefighters a LEFT JOIN cb_firefighters_post b on
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= #{par.name}</if>
<if test='par.state!=null'>and a.state_code= #{par.state}</if>
<if test='par.fireTeamId!=null'>and a.fire_team_id= #{par.fireTeamId}</if>
<if test='par.jobTitle!=null'> and a.job_title_code =#{par.jobTitle}</if>
limit #{pageNum},#{pageSize}
</select>
<select id="getFirefighters"
resultType="com.yeejoin.amos.boot.module.common.api.entity.Firefighters">
select a.* from cb_firefighters a LEFT JOIN cb_firefighters_post b on
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= #{par.name}</if>
<if test='par.state!=null'>and a.state_code= #{par.state}</if>
<if test='par.fireTeamId!=null'>and a.fire_team_id= #{par.fireTeamId}</if>
<if test='par.jobTitle!=null'>and a.job_title_code =#{par.jobTitle}</if>
limit #{pageNum},#{pageSize}
</select>
<select id="getFirefightersCount" resultType="Map">
select COUNT(a.sequence_nbr) num from cb_firefighters a LEFT JOIN
cb_firefighters_post b on 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= #{par.name}</if>
<if test='par.state!=null'>and a.state_code= #{par.state}</if>
<if test='par.fireTeamId!=null'>and a.fire_team_id= #{par.fireTeamId}</if>
<if test='par.jobTitle!=null'>and a.job_title_code =#{par.jobTitle}</if>
</select>
<select id="getFirefightersCount" resultType="Map">
select COUNT(a.sequence_nbr) num from cb_firefighters a LEFT JOIN
cb_firefighters_post b on 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= #{par.name}</if>
<if test='par.state!=null'>and a.state_code= #{par.state}</if>
<if test='par.fireTeamId!=null'>and a.fire_team_id= #{par.fireTeamId}</if>
<if test='par.jobTitle!=null'> and a.job_title_code =#{par.jobTitle}</if>
</select>
<select id="listToSelectById" resultType="Map">
SELECT IFNULL(a.personnel_photos,'') personnelPhotos, a.sequence_nbr
sequenceNbr,IFNULL(a.`name`,'无')`name`, IFNULL(a.job_title,'无')
jobTitle, IFNULL(b.administrative_position,'无')
administrativePosition, IFNULL(c.`name`,'无') fireTeamName,
IFNULL(a.state,'无') state, IFNULL(b.employee_hierarchy,'无')
employeeHierarchy, IFNULL(b.areas_expertise,'无') areasExpertise,
IFNULL(a.gender,'无') gender, IFNULL(b.post_qualification,'无')
postQualification,year( from_days( datediff( now( ),
a.birthday_time))) age
FROM cb_firefighters a LEFT JOIN cb_firefighters_post b ON a.sequence_nbr
= 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}
</select>
<select id="getFirefightersJobTitleCount" resultType="com.yeejoin.amos.boot.biz.common.utils.FirefightersTreeDto">
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
</select>
<select id="listToSelectById" resultType="Map">
SELECT IFNULL(a.personnel_photos, '') personnelPhotos,
a.sequence_nbr
sequenceNbr,
IFNULL(a.`name`, '无') `name`,
IFNULL(a.job_title, '无')
jobTitle,
IFNULL(b.administrative_position, '无')
administrativePosition,
IFNULL(c.`name`, '无') fireTeamName,
IFNULL(a.state, '无') state,
IFNULL(b.employee_hierarchy, '无')
employeeHierarchy,
IFNULL(b.areas_expertise, '无') areasExpertise,
IFNULL(a.gender, '无') gender,
IFNULL(b.post_qualification, '无')
postQualification, year ( from_days( datediff( now( ),
a.birthday_time))) age
FROM cb_firefighters a LEFT JOIN cb_firefighters_post b
ON a.sequence_nbr
= 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}
</select>
<select id="exportToExcel" resultType="com.yeejoin.amos.boot.module.common.api.dto.FirefightersExcelDto">
select f.*, emergency_contact, relationship, emergency_contact_phone
from cb_firefighters f
left join cb_firefighters_contacts fc on f.sequence_nbr = fc.firefighters_id
where f.is_delete = #{isDelete}
</select>
</mapper>
......@@ -10,4 +10,5 @@ public class ExcelEnums {
public static final String HKQ = "HKQ";//("HKQ","航空器");
public static final String XFDW = "XFDW";//("XFDW","消防队伍")
public static final String WXXFZ = "WXXFZ";//("WXXFZ","微型消防站")
public static final String XFRY = "XFRY";//("XFRY","消防人员")
}
......@@ -4,21 +4,21 @@ import java.util.Collection;
import java.util.List;
import java.util.Map;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersExcelDto;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersInfoDto;
import com.yeejoin.amos.boot.module.common.api.entity.FirefightersContacts;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.rdbms.annotation.Condition;
import org.typroject.tyboot.core.rdbms.annotation.Operator;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yeejoin.amos.boot.biz.common.utils.FirefightersTreeDto;
import com.yeejoin.amos.boot.biz.common.utils.Menu;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.TreeParser;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersDto;
import com.yeejoin.amos.boot.module.common.api.entity.DataDictionary;
import com.yeejoin.amos.boot.module.common.api.entity.Firefighters;
import com.yeejoin.amos.boot.module.common.api.mapper.DataDictionaryMapper;
import com.yeejoin.amos.boot.module.common.api.mapper.FirefightersMapper;
import com.yeejoin.amos.boot.module.common.api.service.IFirefightersService;
......@@ -29,41 +29,63 @@ import com.yeejoin.amos.boot.module.common.api.service.IFirefightersService;
* @date 2021-06-07
*/
@Service
public class FirefightersServiceImpl extends BaseService<FirefightersDto, Firefighters, FirefightersMapper>
implements IFirefightersService {
@Autowired
FirefightersMapper firefightersMapper;
@Autowired
DataDictionaryServiceImpl iDataDictionaryService;
@Override
public List<Firefighters> getFirefighters(int pageNum, int pageSize, FirefightersDto par) {
return firefightersMapper.getFirefighters(pageNum, pageSize, par);
}
@Override
public Map<String, Long> getFirefightersCount(int pageNum, int pageSize, FirefightersDto par) {
// TODO Auto-generated method stub
return firefightersMapper.getFirefightersCount(pageNum, pageSize, par);
}
@Override
public Map<String, Object> listToSelectById(Long id) {
// TODO Auto-generated method stub
return firefightersMapper.listToSelectById(id);
}
@Override
public List<Menu> getFirefightersJobTitleCount() throws Exception {
QueryWrapper<DataDictionary> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("type", "GWMC");
queryWrapper.orderByAsc("sort_num");
Collection<DataDictionary> list = iDataDictionaryService.list(queryWrapper);
List<Menu> menus = TreeParser.getTree(null, list, DataDictionary.class.getName(), "getCode", 0, "getName",
"getParent", firefightersMapper.getFirefightersJobTitleCount());
return menus;
}
public class FirefightersServiceImpl extends BaseService<FirefightersDto, Firefighters, FirefightersMapper> implements IFirefightersService {
@Autowired
FirefightersMapper firefightersMapper;
@Autowired
DataDictionaryServiceImpl iDataDictionaryService;
@Autowired
FirefightersContactsServiceImpl firefightersContactsService;
@Override
public List<Firefighters> getFirefighters(int pageNum, int pageSize, FirefightersDto par) {
return firefightersMapper.getFirefighters(pageNum, pageSize, par);
}
@Override
public Map<String, Long> getFirefightersCount(int pageNum, int pageSize, FirefightersDto par) {
// TODO Auto-generated method stub
return firefightersMapper.getFirefightersCount(pageNum, pageSize, par);
}
@Override
public Map<String, Object> listToSelectById(Long id) {
// TODO Auto-generated method stub
return firefightersMapper.listToSelectById(id);
}
@Override
public void saveFirefighters(FirefightersInfoDto firefighters) {
Firefighters firefighter = firefighters.getFirefighters();
save(firefighter);
FirefightersContacts firefightersContact = firefighters.getFirefightersContacts();
firefightersContact.setFirefightersId(firefighter.getSequenceNbr());
firefightersContactsService.save(firefightersContact);
firefighters.setFirefightersContacts(firefightersContact);
firefighters.setFirefighters(firefighter);
}
/**
* 导出列表
*/
public List<FirefightersExcelDto> exportToExcel(@Condition(Operator.eq) Boolean isDelete) {
return firefightersMapper.exportToExcel(isDelete);
}
@Override
public List<Menu> getFirefightersJobTitleCount() throws Exception {
QueryWrapper<DataDictionary> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("type", "GWMC");
queryWrapper.orderByAsc("sort_num");
Collection<DataDictionary> list = iDataDictionaryService.list(queryWrapper);
List<Menu> menus = TreeParser.getTree(null, list, DataDictionary.class.getName(), "getCode", 0, "getName",
"getParent", firefightersMapper.getFirefightersJobTitleCount());
return menus;
}
}
......@@ -6,10 +6,8 @@ import java.util.List;
import javax.servlet.http.HttpServletResponse;
import com.yeejoin.amos.boot.module.common.api.dto.*;
import com.yeejoin.amos.boot.module.common.api.entity.FireExperts;
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.biz.service.impl.FireStationServiceImpl;
import com.yeejoin.amos.boot.module.common.api.entity.*;
import com.yeejoin.amos.boot.module.common.biz.service.impl.*;
import com.yeejoin.amos.boot.module.jcs.api.entity.Aircraft;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.FireTeamServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -23,11 +21,7 @@ import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.common.api.entity.FireChemical;
import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil;
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.WaterResourceServiceImpl;
import com.yeejoin.amos.boot.module.jcs.api.dto.AircraftDto;
import com.yeejoin.amos.boot.module.jcs.api.enums.ExcelEnums;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.AircraftServiceImpl;
......@@ -61,6 +55,8 @@ public class ExcelController extends BaseController {
FireTeamServiceImpl fireTeamService;
@Autowired
FireStationServiceImpl fireStationService;
@Autowired
FirefightersServiceImpl firefightersService;
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
......@@ -113,8 +109,12 @@ public class ExcelController extends BaseController {
case ExcelEnums.WXXFZ:
List<FireStationDto> fireStationDtoList = fireStationService.queryForFireStationList(false);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(),
fireStationDtoList,
FireStationDto.class, null, false);
fireStationDtoList, FireStationDto.class, null, false);
break;
case ExcelEnums.XFRY:
List<FirefightersExcelDto> firefightersExcelDtoList = firefightersService.exportToExcel(false);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(),
firefightersExcelDtoList, FirefightersExcelDto.class, null, false);
break;
}
} catch (Exception e) {
......@@ -147,6 +147,10 @@ public class ExcelController extends BaseController {
break;
case ExcelEnums.WXXFZ:
excelImportFireStation(multipartFile);
break;
case ExcelEnums.XFRY:
excelImportFirefighters(multipartFile);
break;
}
} catch (Exception e) {
e.printStackTrace();
......@@ -154,6 +158,44 @@ public class ExcelController extends BaseController {
}
}
private void excelImportFirefighters(MultipartFile multipartFile) throws Exception {
List<FirefightersExcelDto> excelDtoList = ExcelUtil.readFirstSheetExcel(multipartFile,
FirefightersExcelDto.class, 1);
excelDtoList.forEach(
item -> {
Firefighters firefighters = new Firefighters();
FirefightersContacts firefightersContacts = new FirefightersContacts();
firefighters = Bean.toPo(item, firefighters);
firefightersContacts = Bean.toPo(item, firefightersContacts);
if (item.getFireTeam() != null) {
Long fireTeamId = Long.valueOf(item.getFireTeam().split("@")[1]);
firefighters.setFireTeamId(fireTeamId);
}
if (firefighters.getCertificatesType() != null) {
String[] certificates = firefighters.getCertificatesType().split("@");
firefighters.setCertificatesType(certificates[0]);
firefighters.setCertificatesTypeCode(certificates[1]);
}
if (firefighters.getState() != null) {
String[] state = firefighters.getState().split("@");
firefighters.setState(state[0]);
firefighters.setStateCode(state[1]);
}
if (firefighters.getJobTitle() != null) {
String[] jobTitle = firefighters.getJobTitle().split("@");
firefighters.setJobTitle(jobTitle[0]);
firefighters.setJobTitleCode(jobTitle[1]);
}
if (firefightersContacts.getRelationship() != null) {
String relationship = firefightersContacts.getRelationship().split("@")[1];
firefightersContacts.setRelationship(relationship);
}
FirefightersInfoDto firefightersInfo = new FirefightersInfoDto(firefighters, firefightersContacts);
firefightersService.saveFirefighters(firefightersInfo);
}
);
}
private void excelImportFireStation(MultipartFile multipartFile) throws Exception {
List<FireStationDto> excelDtoList = ExcelUtil.readFirstSheetExcel(multipartFile, FireStationDto.class, 1);
List<FireStation> excelEntityList = new ArrayList<>();
......@@ -195,6 +237,10 @@ public class ExcelController extends BaseController {
fireTeam.setContactUser(contactUser[0]);
fireTeam.setContactUserId(Long.valueOf(contactUser[1]));
}
if (item.getParentName() != null) {
String[] parentName = item.getParentName().split("@");
fireTeam.setParent(Long.valueOf(parentName[1]));
}
excelEntityList.add(fireTeam);
}
);
......
package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.utils.MenuFrom;
import com.yeejoin.amos.boot.module.common.api.dto.FireTeamCardDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireTeamListDto;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgMenuDto;
import com.yeejoin.amos.boot.module.common.api.entity.DataDictionary;
......@@ -35,6 +39,8 @@ public class DataSourcesImpl implements DataSources {
OrgUsrServiceImpl orgUsrService;
@Autowired
FirefightersServiceImpl firefightersService;
@Autowired
FireTeamServiceImpl fireTeamService;
@Autowired
......@@ -83,11 +89,28 @@ public class DataSourcesImpl implements DataSources {
case "getBizCompanyList":
str = getBizCompanyList();
break;
case "getFireTeam":
str = getFireTeam();
break;
case "getMaritalStatus":
str = ExcelSelectData.MARITAL_STATUS;
}
}
return str;
}
private String[] getFireTeam() {
Page<FireTeamCardDto> pageBean = new Page<>(1, Integer.MAX_VALUE);
IPage<FireTeamCardDto> fireTeamCardDtoIPage = fireTeamService.listFireTeamByPage(pageBean,
new FireTeamListDto());
List<FireTeamCardDto> records = fireTeamCardDtoIPage.getRecords();
List<String> names = records.stream().map(item -> {
return item.getName() + "@" + item.getSequenceNbr();
}).collect(Collectors.toList());
String[] str = names.toArray(new String[names.size()]);
return str;
}
private String[] getBizCompanyList() throws Exception {
List<OrgMenuDto> orgUsrTree = orgUsrService.getTree(null, orgUsrService.selectCompanyDepartmentMsg(),
OrgUsr.class.getName(), "getSequenceNbr", 2, "getBizOrgName", "getParentId", "getBizOrgType");
......
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