Commit b97b703f authored by chenzhao's avatar chenzhao

机场人员 导出 导入 下载模板 部门级用户可查看本单位人员

parent c55931b6
...@@ -20,6 +20,7 @@ public enum ExcelEnums { ...@@ -20,6 +20,7 @@ public enum ExcelEnums {
KEYSITE ("重点部位", "重点部位", "com.yeejoin.amos.boot.module.common.api.dto.KeySiteExcleDto","KEYSITE"),//{"KEYSITE":} KEYSITE ("重点部位", "重点部位", "com.yeejoin.amos.boot.module.common.api.dto.KeySiteExcleDto","KEYSITE"),//{"KEYSITE":}
CLZQ ("车辆执勤", "车辆执勤", "com.yeejoin.amos.boot.module.common.api.dto.DutyCarExcelDto","CLZQ"),//("CLZQ","车辆执勤") CLZQ ("车辆执勤", "车辆执勤", "com.yeejoin.amos.boot.module.common.api.dto.DutyCarExcelDto","CLZQ"),//("CLZQ","车辆执勤")
JCDWRY ("单位人员", "单位人员", "com.yeejoin.amos.boot.module.common.api.dto.OrgUsrExcelDto","JCDWRY"),//("JCDW","机场单位") JCDWRY ("单位人员", "单位人员", "com.yeejoin.amos.boot.module.common.api.dto.OrgUsrExcelDto","JCDWRY"),//("JCDW","机场单位")
DLDWRY ("单位人员", "单位人员", "com.yeejoin.amos.boot.module.common.api.dto.OrgUsrDlExcelDto","DLDWRY"),//("JCDW","机场单位")
LDDW ("联动单位", "联动单位", "com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto","LDDW"),//("JCDW","机场单位") LDDW ("联动单位", "联动单位", "com.yeejoin.amos.boot.module.common.api.dto.LinkageUnitDto","LDDW"),//("JCDW","机场单位")
RYZB ("人员值班", "人员值班", "com.yeejoin.amos.boot.module.common.api.dto.DutyPersonDto","RYZB"),//("RYZB","人员值班") RYZB ("人员值班", "人员值班", "com.yeejoin.amos.boot.module.common.api.dto.DutyPersonDto","RYZB"),//("RYZB","人员值班")
// BUG 2455 相关代码 bykongfm // BUG 2455 相关代码 bykongfm
......
...@@ -80,6 +80,9 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp ...@@ -80,6 +80,9 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp
private static final String COMPANY_FIELD_CODE = "companyLocation,longitude,latitude"; private static final String COMPANY_FIELD_CODE = "companyLocation,longitude,latitude";
private static final String COMPANY_VALUE = "COMPANY"; private static final String COMPANY_VALUE = "COMPANY";
@Value("${logic}")
Boolean logic;
@Autowired @Autowired
DynamicFormInstanceServiceImpl alertFormValueServiceImpl; DynamicFormInstanceServiceImpl alertFormValueServiceImpl;
@Autowired @Autowired
...@@ -2859,9 +2862,18 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp ...@@ -2859,9 +2862,18 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp
@Override @Override
public List<OrgMenuDto> companyTreeByUserNumber(ReginParams reginParams) { public List<OrgMenuDto> companyTreeByUserNumber(ReginParams reginParams) {
Map<String, Object> param = new HashMap<>(); Map<String, Object> param = new HashMap<>();
String bizOrgCode = reginParams.getPersonIdentity().getBizOrgCode();
// 权限处理 // 权限处理
if (!logic){
OrgUsr orgUsr = orgUsrMapper.selectById(reginParams.getPersonIdentity().getCompanyId());
//判断登陆人是否已经是顶级节点单位
if (!ObjectUtils.isEmpty(orgUsr) && orgUsr.getParentId() != null) {
orgUsr = this.selectParentOrgUsr(orgUsr);
bizOrgCode = orgUsr.getBizOrgCode() != null? orgUsr.getBizOrgCode():bizOrgCode;
}
}
PermissionInterceptorContext.setDataAuthRule(authKey); PermissionInterceptorContext.setDataAuthRule(authKey);
param.put("bizOrgCode", reginParams.getPersonIdentity().getBizOrgCode()); param.put("bizOrgCode",bizOrgCode);
List<OrgUsr> list = orgUsrMapper.companyDeptListWithPersonCount(param); List<OrgUsr> list = orgUsrMapper.companyDeptListWithPersonCount(param);
return buildTreeParallel(list); return buildTreeParallel(list);
} }
......
...@@ -5,6 +5,7 @@ import java.util.Map; ...@@ -5,6 +5,7 @@ import java.util.Map;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
...@@ -55,6 +56,9 @@ public class ExcelController extends BaseController { ...@@ -55,6 +56,9 @@ public class ExcelController extends BaseController {
@Autowired @Autowired
Sequence sequence; Sequence sequence;
@Value("${logic}")
Boolean logic ;
private static final String NOT_DUTY = "休班"; private static final String NOT_DUTY = "休班";
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY) @TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
...@@ -74,6 +78,9 @@ public class ExcelController extends BaseController { ...@@ -74,6 +78,9 @@ public class ExcelController extends BaseController {
@GetMapping("/download/template/{type}") @GetMapping("/download/template/{type}")
public void downloadTemplate(HttpServletResponse response, @PathVariable(value = "type") String type) { public void downloadTemplate(HttpServletResponse response, @PathVariable(value = "type") String type) {
try { try {
if(type.equals("JCDWRY") && !logic){
type = "DLDWRY";
}
ExcelEnums excelEnums = ExcelEnums.getByKey(type); ExcelEnums excelEnums = ExcelEnums.getByKey(type);
ExcelDto excelDto = new ExcelDto(excelEnums.getFileName(), excelEnums.getSheetName(), ExcelDto excelDto = new ExcelDto(excelEnums.getFileName(), excelEnums.getSheetName(),
excelEnums.getClassUrl(), excelEnums.getType()); excelEnums.getClassUrl(), excelEnums.getType());
...@@ -100,6 +107,9 @@ public class ExcelController extends BaseController { ...@@ -100,6 +107,9 @@ public class ExcelController extends BaseController {
public void getFireStationFile(HttpServletResponse response, @PathVariable(value = "type") String type, public void getFireStationFile(HttpServletResponse response, @PathVariable(value = "type") String type,
@RequestParam Map par) { @RequestParam Map par) {
try { try {
if(type.equals("JCDWRY") && !logic){
type = "DLDWRY";
}
ExcelEnums excelEnums = ExcelEnums.getByKey(type); ExcelEnums excelEnums = ExcelEnums.getByKey(type);
ExcelDto excelDto = new ExcelDto(excelEnums.getFileName(), excelEnums.getSheetName(), ExcelDto excelDto = new ExcelDto(excelEnums.getFileName(), excelEnums.getSheetName(),
excelEnums.getClassUrl(), excelEnums.getType()); excelEnums.getClassUrl(), excelEnums.getType());
...@@ -119,6 +129,9 @@ public class ExcelController extends BaseController { ...@@ -119,6 +129,9 @@ public class ExcelController extends BaseController {
long uuid = sequence.nextId(); long uuid = sequence.nextId();
String uuidString = Long.toString(uuid); String uuidString = Long.toString(uuid);
redisUtils.set(uuidString, 0); redisUtils.set(uuidString, 0);
if(type.equals("JCDWRY") && !logic){
type = "DLDWRY";
}
ExcelEnums excelEnums = ExcelEnums.getByKey(type); ExcelEnums excelEnums = ExcelEnums.getByKey(type);
ExcelDto excelDto = new ExcelDto(excelEnums.getFileName(), excelEnums.getSheetName(), ExcelDto excelDto = new ExcelDto(excelEnums.getFileName(), excelEnums.getSheetName(),
excelEnums.getClassUrl(), excelEnums.getType()); excelEnums.getClassUrl(), excelEnums.getType());
......
...@@ -30,6 +30,7 @@ import org.slf4j.Logger; ...@@ -30,6 +30,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Async; import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -192,6 +193,9 @@ public class ExcelServiceImpl { ...@@ -192,6 +193,9 @@ public class ExcelServiceImpl {
@Autowired @Autowired
private OrgUsrMapper orgUsrMapper; private OrgUsrMapper orgUsrMapper;
@Value("${logic}")
Boolean logic;
@Autowired @Autowired
SignServiceImpl signServiceImpl; SignServiceImpl signServiceImpl;
...@@ -391,6 +395,19 @@ public class ExcelServiceImpl { ...@@ -391,6 +395,19 @@ public class ExcelServiceImpl {
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), orgUsrList, ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), orgUsrList,
OrgUsrExcelDto.class, null, false); OrgUsrExcelDto.class, null, false);
break; break;
case "DLDWRY":
if(!authFlag) {
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), null,
OrgUsrDlExcelDto.class, null, false);
break;
}
List<OrgUsrExcelDto> orgUsrDlList = orgUsrService.exportToExcel(par);
String content = JSONObject.toJSONString(orgUsrDlList);
List<OrgUsrDlExcelDto> dtoList = JSONObject.parseArray(content, OrgUsrDlExcelDto.class);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), dtoList,
OrgUsrDlExcelDto.class, null, false);
break;
case "LDDW": case "LDDW":
List<LinkageUnitDto> LinkageUnitDtoList = null; List<LinkageUnitDto> LinkageUnitDtoList = null;
String inAgreement = par.containsKey("inAgreement")&&!(par.get("inAgreement").toString()).equals("null")?par.get("inAgreement").toString():""; String inAgreement = par.containsKey("inAgreement")&&!(par.get("inAgreement").toString()).equals("null")?par.get("inAgreement").toString():"";
...@@ -489,6 +506,7 @@ public class ExcelServiceImpl { ...@@ -489,6 +506,7 @@ public class ExcelServiceImpl {
excelImportKeySite(multipartFile); excelImportKeySite(multipartFile);
break; break;
case "JCDWRY": case "JCDWRY":
case "DLDWRY":
// excelImportOrgUsrExcelDto(multipartFile); // excelImportOrgUsrExcelDto(multipartFile);
excelImportOrgUsrExcelDtoNew(multipartFile); excelImportOrgUsrExcelDtoNew(multipartFile);
break; break;
...@@ -755,7 +773,20 @@ public class ExcelServiceImpl { ...@@ -755,7 +773,20 @@ public class ExcelServiceImpl {
} }
private void excelImportOrgUsrExcelDtoNew(MultipartFile multipartFile) throws Exception { private void excelImportOrgUsrExcelDtoNew(MultipartFile multipartFile) throws Exception {
List<OrgUsrExcelDto> excelDtoList = ExcelUtil.readFirstSheetExcel(multipartFile, OrgUsrExcelDto.class, 1); List<OrgUsrExcelDto> excelDtoList = new ArrayList<>();
if (!logic){
List<OrgUsrDlExcelDto> list = ExcelUtil.readFirstSheetExcel(multipartFile, OrgUsrDlExcelDto.class, 1);
if (list.size() > 0) {
String s = JSONObject.toJSONString(list);
List<OrgUsrExcelDto> list1 = JSONObject.parseArray(s, OrgUsrExcelDto.class);
excelDtoList.addAll(list1);
}
}else {
List<OrgUsrExcelDto> list = ExcelUtil.readFirstSheetExcel(multipartFile, OrgUsrExcelDto.class, 1);
if (list.size() > 0){
excelDtoList.addAll(list);
}
}
if (!ObjectUtils.isEmpty(excelDtoList)) { if (!ObjectUtils.isEmpty(excelDtoList)) {
Set<String> set = new HashSet<>(); Set<String> set = new HashSet<>();
Set<String> set1 = new HashSet<>(); Set<String> set1 = new HashSet<>();
...@@ -811,7 +842,7 @@ public class ExcelServiceImpl { ...@@ -811,7 +842,7 @@ public class ExcelServiceImpl {
dynamicFormValue.forEach(dynamicFormInstanceDto -> { dynamicFormValue.forEach(dynamicFormInstanceDto -> {
String key = dynamicFormInstanceDto.getFieldCode(); String key = dynamicFormInstanceDto.getFieldCode();
if (map1.containsKey(key)){ if (map1.containsKey(key) && !ObjectUtils.isEmpty(map1.get(key))){
String value = map1.get(key).toString(); String value = map1.get(key).toString();
if (value.contains("@")) { if (value.contains("@")) {
String[] certificates = value.split("@"); String[] certificates = value.split("@");
...@@ -839,7 +870,7 @@ public class ExcelServiceImpl { ...@@ -839,7 +870,7 @@ public class ExcelServiceImpl {
DynamicFormInstance dynamicFormInstance = new DynamicFormInstance(); DynamicFormInstance dynamicFormInstance = new DynamicFormInstance();
BeanUtils.copyProperties(dynamicFormInstanceDto, dynamicFormInstance); BeanUtils.copyProperties(dynamicFormInstanceDto, dynamicFormInstance);
String fieldCode = dynamicFormInstance.getFieldCode(); String fieldCode = dynamicFormInstance.getFieldCode();
if (map1.containsKey(fieldCode.substring(0,fieldCode.length()-4))){ if (map1.containsKey(fieldCode.substring(0,fieldCode.length()-4)) && map1.get(fieldCode.substring(0,fieldCode.length()-4)) != null){
dynamicFormInstance.setFieldValueLabel(map1.get(fieldCode.substring(0,fieldCode.length()-4)).toString()); dynamicFormInstance.setFieldValueLabel(map1.get(fieldCode.substring(0,fieldCode.length()-4)).toString());
} }
if ("gender".equals(dynamicFormInstance.getFieldCode()) && !ObjectUtils.isEmpty(dynamicFormInstance.getFieldValue())){ if ("gender".equals(dynamicFormInstance.getFieldCode()) && !ObjectUtils.isEmpty(dynamicFormInstance.getFieldValue())){
......
...@@ -136,4 +136,7 @@ mqtt.topic.command.car.jw=carCoordinates ...@@ -136,4 +136,7 @@ mqtt.topic.command.car.jw=carCoordinates
management.security.enabled=true management.security.enabled=true
spring.security.user.name=admin spring.security.user.name=admin
spring.security.user.password=a1234560 spring.security.user.password=a1234560
\ No newline at end of file
##代码中有部分逻辑冲突需要处理 为区分机场和电力逻辑 增加开关 若为true 则为机场逻辑 为false 则为电力逻辑
logic=false
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