Commit 58a5849a authored by tangwei's avatar tangwei

机场单位人员导入

parent d4c32a46
...@@ -42,7 +42,7 @@ public class FirefightersExcelDto extends BaseDto { ...@@ -42,7 +42,7 @@ public class FirefightersExcelDto extends BaseDto {
@ApiModelProperty(value = "队伍") @ApiModelProperty(value = "队伍")
private String fireTeam; private String fireTeam;
@ExcelProperty(value = "所属部门", index = 3) @ExcelIgnore
@ApiModelProperty(value = "所属机构") @ApiModelProperty(value = "所属机构")
private String company; private String company;
...@@ -50,7 +50,8 @@ public class FirefightersExcelDto extends BaseDto { ...@@ -50,7 +50,8 @@ public class FirefightersExcelDto extends BaseDto {
@ApiModelProperty(value = "机构code") @ApiModelProperty(value = "机构code")
private String companyCode; private String companyCode;
@ExcelIgnore
@ExcelProperty(value = "所属部门", index = 3)
@ApiModelProperty(value = "机构名称") @ApiModelProperty(value = "机构名称")
private String companyName; private String companyName;
...@@ -134,11 +135,11 @@ public class FirefightersExcelDto extends BaseDto { ...@@ -134,11 +135,11 @@ public class FirefightersExcelDto extends BaseDto {
@ApiModelProperty(value = "紧急联系人电话") @ApiModelProperty(value = "紧急联系人电话")
private String emergencyContactPhone; private String emergencyContactPhone;
@ExcelProperty(value = "身份证正面", index = 20) @ExcelIgnore
@ApiModelProperty(value = "身份证正面") @ApiModelProperty(value = "身份证正面")
private String idPositive; private String idPositive;
@ExcelProperty(value = "身份证反面", index = 21) @ExcelIgnore
@ApiModelProperty(value = "身份证反面") @ApiModelProperty(value = "身份证反面")
private String idReverse; private String idReverse;
......
...@@ -69,7 +69,9 @@ ...@@ -69,7 +69,9 @@
</select> </select>
<select id="exportToExcel" resultType="com.yeejoin.amos.boot.module.common.api.dto.FirefightersExcelDto"> <select id="exportToExcel" resultType="com.yeejoin.amos.boot.module.common.api.dto.FirefightersExcelDto">
select f.*, emergency_contact, relationship, emergency_contact_phone select f.*,
(select cb_fire_team.name from cb_fire_team where cb_fire_team.sequence_nbr=f.fire_team_id) fireTeam,
emergency_contact, relationship, emergency_contact_phone
from cb_firefighters f from cb_firefighters f
left join cb_firefighters_contacts fc on f.sequence_nbr = fc.firefighters_id left join cb_firefighters_contacts fc on f.sequence_nbr = fc.firefighters_id
where f.is_delete = #{isDelete} where f.is_delete = #{isDelete}
......
...@@ -556,6 +556,33 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp ...@@ -556,6 +556,33 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp
saveOrgUsrDynamicFormInstance(orgUsr, OrgPersonVo.getDynamicFormValue()); saveOrgUsrDynamicFormInstance(orgUsr, OrgPersonVo.getDynamicFormValue());
} }
public void saveOrgPersonExcel(OrgUsrExcelDto OrgPersonVo) throws Exception {
OrgUsr orgUsr = new OrgUsr();
BeanUtils.copyProperties(OrgPersonVo, orgUsr);
orgUsr.setBizOrgType(CommonConstant.BIZ_ORG_TYPE_PERSON);
if (OrgPersonVo.getParentId() != null) {
OrgUsr parent = getById(OrgPersonVo.getParentId());
if (parent != null && ObjectUtils.isEmpty(OrgPersonVo.getBizOrgCode())) {
orgUsr.setBizOrgCode(parent.getBizOrgCode() + getOrgCodeStr());
}
} else {
orgUsr.setBizOrgCode(getOrgCodeStr());
}
if (!ObjectUtils.isEmpty(OrgPersonVo.getAmosOrgId())) {
AgencyUserModel user = Privilege.agencyUserClient.queryByUserId(OrgPersonVo.getAmosOrgId()).getResult();
OrgPersonVo.setAmosOrgCode(user.getRealName());
}
saveOrgUsrDynamicFormInstance(orgUsr, OrgPersonVo.getDynamicFormValue());
}
@Override @Override
public void updateByIdOrgUsr(OrgUsrDto OrgUsrVo, Long id) throws Exception { public void updateByIdOrgUsr(OrgUsrDto OrgUsrVo, Long id) throws Exception {
// 修改单位信息 // 修改单位信息
......
package com.yeejoin.amos.boot.module.jcs.biz.controller; package com.yeejoin.amos.boot.module.jcs.biz.controller;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.MenuFrom;
import com.yeejoin.amos.boot.module.common.api.dto.ExcelDto; import com.yeejoin.amos.boot.module.common.api.dto.ExcelDto;
import com.yeejoin.amos.boot.module.jcs.api.enums.ExcelEnums; import com.yeejoin.amos.boot.module.jcs.api.enums.ExcelEnums;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.ExcelServiceImpl; import com.yeejoin.amos.boot.module.jcs.biz.service.impl.ExcelServiceImpl;
...@@ -11,8 +12,11 @@ import org.springframework.web.bind.annotation.*; ...@@ -11,8 +12,11 @@ import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.util.List;
/** /**
* 导出导入 * 导出导入
...@@ -65,11 +69,12 @@ public class ExcelController extends BaseController { ...@@ -65,11 +69,12 @@ public class ExcelController extends BaseController {
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY) @TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导入公用") @ApiOperation(value = "导入公用")
@PostMapping("/upload/{type}") @PostMapping("/upload/{type}")
public void upload(@RequestPart("file") MultipartFile multipartFile, @PathVariable(value = "type") String type) { public ResponseModel<Object> upload(@RequestPart("file") MultipartFile multipartFile, @PathVariable(value = "type") String type) {
try { try {
ExcelEnums excelEnums= ExcelEnums.getByKey(type); ExcelEnums excelEnums= ExcelEnums.getByKey(type);
ExcelDto excelDto = new ExcelDto(excelEnums.getFileName(), excelEnums.getSheetName(), excelEnums.getClassUrl(), excelEnums.getType()); ExcelDto excelDto = new ExcelDto(excelEnums.getFileName(), excelEnums.getSheetName(), excelEnums.getClassUrl(), excelEnums.getType());
excelService.commonUpload(multipartFile, excelDto); excelService.commonUpload(multipartFile, excelDto);
return ResponseHelper.buildResponse(null);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
throw new RuntimeException("系统异常!"); throw new RuntimeException("系统异常!");
......
...@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.jcs.biz.service.impl; ...@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import com.alibaba.excel.support.ExcelTypeEnum; import com.alibaba.excel.support.ExcelTypeEnum;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Sequence; import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
...@@ -24,10 +25,13 @@ import com.yeejoin.amos.boot.module.jcs.api.dto.AircraftDto; ...@@ -24,10 +25,13 @@ import com.yeejoin.amos.boot.module.jcs.api.dto.AircraftDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.Aircraft; import com.yeejoin.amos.boot.module.jcs.api.entity.Aircraft;
import com.yeejoin.amos.boot.module.jcs.api.enums.ExcelEnums; import com.yeejoin.amos.boot.module.jcs.api.enums.ExcelEnums;
import org.apache.commons.beanutils.ConvertUtils; import org.apache.commons.beanutils.ConvertUtils;
import org.apache.ibatis.annotations.Case;
import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.elasticsearch.search.aggregations.metrics.ParsedSingleValueNumericMetricsAggregation;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
...@@ -92,7 +96,8 @@ public class ExcelServiceImpl { ...@@ -92,7 +96,8 @@ public class ExcelServiceImpl {
DutyShiftServiceImpl dutyShiftService; DutyShiftServiceImpl dutyShiftService;
@Autowired @Autowired
IDutyPersonService iDutyPersonService; IDutyPersonService iDutyPersonService;
@Autowired
DynamicFormColumnServiceImpl dynamicFormColumnServiceImpl;
@Autowired @Autowired
LinkageUnitServiceImpl linkageUnitServiceImpl; LinkageUnitServiceImpl linkageUnitServiceImpl;
...@@ -207,8 +212,10 @@ public class ExcelServiceImpl { ...@@ -207,8 +212,10 @@ public class ExcelServiceImpl {
break; break;
case "JCDWRY": case "JCDWRY":
excelImportOrgUsrExcelDto(multipartFile); excelImportOrgUsrExcelDto(multipartFile);
break;
case "LDDW": case "LDDW":
excelImportLinkageUnitZhDto(multipartFile); excelImportLinkageUnitZhDto(multipartFile);
break;
} }
return; return;
} }
...@@ -242,11 +249,136 @@ public class ExcelServiceImpl { ...@@ -242,11 +249,136 @@ public class ExcelServiceImpl {
} }
private void excelImportOrgUsrExcelDto(MultipartFile multipartFile) throws Exception { private void excelImportOrgUsrExcelDto(MultipartFile multipartFile) throws Exception {
List<OrgUsrExcelDto> excelDtoList = ExcelUtil.readFirstSheetExcel(multipartFile,
OrgUsrExcelDto.class, 1);
// keySiteService.saveExcel(excelDtoList);
}
List<OrgUsrExcelDto> excelDtoList = ExcelUtil.readFirstSheetExcel(multipartFile,
OrgUsrExcelDto.class, 1);
if(excelDtoList!=null&&excelDtoList.size()>0){
excelDtoList.forEach(orgUsrExcelDto->{
if(orgUsrExcelDto.getParentId()!=null){
String[] certificates = orgUsrExcelDto.getParentId().split("@");
orgUsrExcelDto.setParentId(certificates[1]);
}
// 动态字段填充
List<DynamicFormInitDto> dynamicFormColumn = dynamicFormColumnServiceImpl.getFormlist("246");
List<DynamicFormInstanceDto> dynamicFormValue =new ArrayList<>();
List<DynamicFormInstance> dynamicFormInstancelist =new ArrayList<>();
dynamicFormColumn.forEach(DynamicFormInitDto->{
dynamicFormValue.add(DynamicFormInitDto.getFormItemDescr());
});
dynamicFormValue.forEach(dynamicFormInstanceDto->{
switch (dynamicFormInstanceDto.getFieldCode()) {
case "administrativePositionCode":
if(orgUsrExcelDto.getAdministrativePositionCode()!=null){
String[] certificates = orgUsrExcelDto.getAdministrativePositionCode().split("@");
dynamicFormInstanceDto.setFieldValue(certificates[1]);
dynamicFormInstanceDto.setFieldValueLabel(certificates[0]);
}
break;
case "auditCycle":
if(orgUsrExcelDto.getAuditCycle()!=null){
String[] certificates = orgUsrExcelDto.getAuditCycle().split("@");
dynamicFormInstanceDto.setFieldValue(certificates[1]);
dynamicFormInstanceDto.setFieldValueLabel(certificates[0]);
}
break;
case "certificatesNumber":
dynamicFormInstanceDto.setFieldValue(orgUsrExcelDto.getCertificatesNumber());
break;
case "certificatesTypeCode":
if(orgUsrExcelDto.getCertificatesTypeCode()!=null){
String[] certificates = orgUsrExcelDto.getCertificatesTypeCode().split("@");
dynamicFormInstanceDto.setFieldValue(certificates[1]);
dynamicFormInstanceDto.setFieldValueLabel(certificates[0]);
}
break;
case "certificateType":
if(orgUsrExcelDto.getCertificateType()!=null){
String[] certificates = orgUsrExcelDto.getCertificateType().split("@");
dynamicFormInstanceDto.setFieldValue(certificates[1]);
dynamicFormInstanceDto.setFieldValueLabel(certificates[0]);
}
case "fireManagementPostCode":
if(orgUsrExcelDto.getFireManagementPostCode()!=null){
String[] certificates = orgUsrExcelDto.getFireManagementPostCode().split("@");
dynamicFormInstanceDto.setFieldValue(certificates[1]);
dynamicFormInstanceDto.setFieldValueLabel(certificates[0]);
}
break;
case "gender":
dynamicFormInstanceDto.setFieldValue(orgUsrExcelDto.getGender());
break;
case "internalPositionCode":
if(orgUsrExcelDto.getInternalPositionCode()!=null){
String[] certificates = orgUsrExcelDto.getInternalPositionCode().split("@");
dynamicFormInstanceDto.setFieldValue(certificates[1]);
dynamicFormInstanceDto.setFieldValueLabel(certificates[0]);
}
break;
case "personNumber":
dynamicFormInstanceDto.setFieldValue(orgUsrExcelDto.getPersonNumber());
break;
case "positionType":
if(orgUsrExcelDto.getPositionType()!=null){
String[] certificates = orgUsrExcelDto.getPositionType().split("@");
dynamicFormInstanceDto.setFieldValue(certificates[1]);
dynamicFormInstanceDto.setFieldValueLabel(certificates[0]);
}
break;
case "safetyTraining":
if(orgUsrExcelDto.getSafetyTraining()!=null){
String[] certificates = orgUsrExcelDto.getSafetyTraining().split("@");
dynamicFormInstanceDto.setFieldValue(certificates[1]);
dynamicFormInstanceDto.setFieldValueLabel(certificates[0]);
}
break;
case "stateCode":
if(orgUsrExcelDto.getStateCode()!=null){
String[] certificates = orgUsrExcelDto.getStateCode().split("@");
dynamicFormInstanceDto.setFieldValue(certificates[1]);
dynamicFormInstanceDto.setFieldValueLabel(certificates[0]);
}
break;
case "telephone":
dynamicFormInstanceDto.setFieldValue(orgUsrExcelDto.getTelephone());
break;
}
DynamicFormInstance dynamicFormInstance=new DynamicFormInstance();
BeanUtils.copyProperties(dynamicFormInstanceDto, dynamicFormInstance);
dynamicFormInstancelist.add(dynamicFormInstance);
});
orgUsrExcelDto.setDynamicFormValue(dynamicFormInstancelist);
try {
orgUsrService.saveOrgPersonExcel(orgUsrExcelDto);
} catch (Exception e) {
throw new RuntimeException("导入失败!");
}
});
}
}
......
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