Commit f4d3e470 authored by lisong's avatar lisong

机场代码同步

parent 76e7172d
...@@ -754,147 +754,154 @@ public class ExcelServiceImpl { ...@@ -754,147 +754,154 @@ 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 = ExcelUtil.readFirstSheetExcel(multipartFile, OrgUsrExcelDto.class, 1);
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<>();
excelDtoList.forEach(orgUsrExcelDto -> { excelDtoList.forEach(orgUsrExcelDto -> {
if (orgUsrExcelDto.getParentId() != null) { if (orgUsrExcelDto.getParentId() != null) {
String[] certificates = orgUsrExcelDto.getParentId().split("@"); String[] certificates = orgUsrExcelDto.getParentId().split("@");
orgUsrExcelDto.setParentName(certificates[0]); orgUsrExcelDto.setParentName(certificates[0]);
orgUsrExcelDto.setParentId(certificates[1]); orgUsrExcelDto.setParentId(certificates[1]);
} }
if (orgUsrExcelDto.getAmosOrgCode() != null) { if (orgUsrExcelDto.getAmosOrgCode() != null) {
String[] certificates = orgUsrExcelDto.getAmosOrgCode().split("@"); String[] certificates = orgUsrExcelDto.getAmosOrgCode().split("@");
orgUsrExcelDto.setAmosOrgId(certificates[0]); orgUsrExcelDto.setAmosOrgId(certificates[0]);
orgUsrExcelDto.setAmosOrgCode(certificates[1]); orgUsrExcelDto.setAmosOrgCode(certificates[1]);
} }
// 动态字段填充 // 动态字段填充
List<DynamicFormInitDto> dynamicFormColumn = dynamicFormColumnServiceImpl.getFormlist("246"); List<DynamicFormInitDto> dynamicFormColumn = dynamicFormColumnServiceImpl.getFormlist("246");
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
// 获取对象属性和值 // 获取对象属性和值
Field[] fields = orgUsrExcelDto.getClass().getDeclaredFields(); Field[] fields = orgUsrExcelDto.getClass().getDeclaredFields();
for (Field field : fields) { for (Field field : fields) {
try { try{
field.setAccessible(true); field.setAccessible(true);
Object value = field.get(orgUsrExcelDto);
Object value = field.get(orgUsrExcelDto); String name = field.getName();
// 解析注解信息
String name = field.getName(); ExplicitConstraint explicitConstraint = field.getAnnotation(ExplicitConstraint.class);
if (!ObjectUtils.isEmpty(explicitConstraint)) {
// 解析注解信息 name = name + "@";
ExplicitConstraint explicitConstraint = field.getAnnotation(ExplicitConstraint.class); }
if (!ObjectUtils.isEmpty(explicitConstraint)) { map.put(name, value);
name = name + "@"; } catch (Exception ex){
} logger.error("获取{}字段值失败, {}", field.getName(), ex);
map.put(name, value); }
} catch (Exception ex) { }
logger.error("获取{}字段值失败, {}", field.getName(), ex); String s = JSONObject.toJSONString(orgUsrExcelDto);
} Map map1 = JSONObject.parseObject(s, Map.class);
} List<DynamicFormInstanceDto> dynamicFormValue = new ArrayList<>();
String s = JSONObject.toJSONString(orgUsrExcelDto); List<DynamicFormInstance> dynamicFormInstancelist = new ArrayList<>();
Map map1 = JSONObject.parseObject(s, Map.class);
List<DynamicFormInstanceDto> dynamicFormValue = new ArrayList<>(); dynamicFormColumn.forEach(DynamicFormInitDto -> {
List<DynamicFormInstance> dynamicFormInstancelist = new ArrayList<>(); if ("birthdayTime".equals(DynamicFormInitDto.getKey())) {
dynamicFormColumn.forEach(DynamicFormInitDto -> { DynamicFormInstanceDto formItemDescr = DynamicFormInitDto.getFormItemDescr();
if ("birthdayTime".equals(DynamicFormInitDto.getKey())) { formItemDescr.setFieldValue(null);
DynamicFormInstanceDto formItemDescr = DynamicFormInitDto.getFormItemDescr(); DynamicFormInitDto.setFormItemDescr(formItemDescr);
formItemDescr.setFieldValue(null); }
DynamicFormInitDto.setFormItemDescr(formItemDescr); dynamicFormValue.add(DynamicFormInitDto.getFormItemDescr());
} });
dynamicFormValue.add(DynamicFormInitDto.getFormItemDescr()); dynamicFormValue.forEach(dynamicFormInstanceDto -> {
String key = dynamicFormInstanceDto.getFieldCode();
});
dynamicFormValue.forEach(dynamicFormInstanceDto -> { if (map1.containsKey(key)){
String key = dynamicFormInstanceDto.getFieldCode(); String value = map1.get(key).toString();
if (map.containsKey(key) && map.get(key) != null) { if (value.contains("@")) {
String o = map.get(key).toString(); String[] certificates = value.split("@");
if ("birthdayTime".equals(key) && !ObjectUtils.isEmpty(o)) { dynamicFormInstanceDto.setFieldValue(certificates[1]);
SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); dynamicFormInstanceDto.setFieldValueLabel(certificates[0]);
try { } else {
String date = ft.format(o); dynamicFormInstanceDto.setFieldValue(value);
dynamicFormInstanceDto.setFieldValue(date); }
} catch (Exception e) { }
if (map.containsKey(key) && map.get(key) != null){
if ("birthdayTime".equals(key) || "holdingTime".equals(key) ) {
Date o = (Date) map.get(key);
SimpleDateFormat dtf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String format = dtf.format(o);
try {
// String date = ft.format(o);
dynamicFormInstanceDto.setFieldValue(format);
} catch (Exception e) {
logger.error("日期转换失败"); logger.error("日期转换失败");
throw new RuntimeException("出生日期格式不对!"); throw new RuntimeException("出生日期格式不对!");
} }
} }
} }
if (map1.containsKey(key)) {
String value = map1.get(key).toString(); DynamicFormInstance dynamicFormInstance = new DynamicFormInstance();
if (value.contains("@")) { BeanUtils.copyProperties(dynamicFormInstanceDto, dynamicFormInstance);
String[] certificates = value.split("@"); String fieldCode = dynamicFormInstance.getFieldCode();
dynamicFormInstanceDto.setFieldValue(certificates[1]); if (map1.containsKey(fieldCode.substring(0,fieldCode.length()-4))){
dynamicFormInstanceDto.setFieldValueLabel(certificates[0]); dynamicFormInstance.setFieldValueLabel(map1.get(fieldCode.substring(0,fieldCode.length()-4)).toString());
} else { }
dynamicFormInstanceDto.setFieldValue(value); if ("gender".equals(dynamicFormInstance.getFieldCode())){
} dynamicFormInstance.setFieldValueLabel("346".equals(String.valueOf(dynamicFormInstance.getFieldValue()))?"男":"女");
} }
DynamicFormInstance dynamicFormInstance = new DynamicFormInstance(); if ("positionType".equals(dynamicFormInstance.getFieldCode())){
BeanUtils.copyProperties(dynamicFormInstanceDto, dynamicFormInstance); dynamicFormInstance.setFieldValueLabel(dataDictionaryService.getById(dynamicFormInstance.getFieldValue()).getName());
if ("gender".equals(dynamicFormInstance.getFieldCode())) { }
if ("certificatesTypeCode".equals(fieldCode)){
dynamicFormInstance.setFieldValueLabel("346".equals(String.valueOf(dynamicFormInstance.getFieldValue())) ? "男" : "女"); String[] split = map1.get(fieldCode).toString().split("@");
} dynamicFormInstance.setFieldValue(split[1]);
if ("positionType".equals(dynamicFormInstance.getFieldCode())) { dynamicFormInstance.setFieldValueLabel(split[0]);}
dynamicFormInstance.setFieldValueLabel(dataDictionaryService.getById(dynamicFormInstance.getFieldValue()).getName()); if ("residenceDetailsCode".equals(fieldCode) && map1.get("residenceDetails") != null) {
} String[] residenceDetails = map1.get("residenceDetails").toString().split("@");
String fieldCode = dynamicFormInstance.getFieldCode(); dynamicFormInstance.setFieldValue(residenceDetails[1]);
if (map1.containsKey(fieldCode) && fieldCode.contains("Code")) { dynamicFormInstance.setFieldValueLabel(residenceDetails[0]);
String[] split = map1.get(fieldCode).toString().split("@"); }
dynamicFormInstance.setFieldValue(split[0]); if ("nativePlaceCode".equals(fieldCode)&& map1.get("nativePlace") != null){
} String[] split = map1.get("nativePlace").toString().split("@");
if ("certificatesTypeCode".equals(fieldCode)) { dynamicFormInstance.setFieldValue(split[1]);
String[] split = map1.get(fieldCode).toString().split("@"); dynamicFormInstance.setFieldValueLabel(split[0]);}
dynamicFormInstance.setFieldValue(split[1]);
dynamicFormInstance.setFieldValueLabel(split[0]); dynamicFormInstancelist.add(dynamicFormInstance);
} });
if (map1.containsKey(fieldCode.substring(0, fieldCode.length() - 4))) {
orgUsrExcelDto.setDynamicFormValue(dynamicFormInstancelist);
dynamicFormInstance.setFieldValueLabel(map1.get(fieldCode.substring(0, fieldCode.length() - 4)).toString()); Bean.toPo(getCurrentInfo(), orgUsrExcelDto);
} // 保存动态表单和人员单位表
dynamicFormInstancelist.add(dynamicFormInstance);
}); String[] split55 = orgUsrExcelDto.getCertificatesTypeCode().toString().split("@");
orgUsrExcelDto.setDynamicFormValue(dynamicFormInstancelist); if (!ObjectUtils.isEmpty(orgUsrExcelDto.getCertificatesNumber())&&split55[1].equals("120")) {
Bean.toPo(getCurrentInfo(), orgUsrExcelDto); if (!set.add(orgUsrExcelDto.getCertificatesNumber())) {
// 保存动态表单和人员单位表 throw new RuntimeException("身份证号码重复!");
String[] split55 = orgUsrExcelDto.getCertificatesTypeCode().toString().split("@"); } else {
if (!ObjectUtils.isEmpty(orgUsrExcelDto.getCertificatesNumber()) && split55[1].equals("120")) { boolean b = orgUsrService.checkCertificatesNumber(orgUsrExcelDto.getCertificatesNumber(), null);
if (!set.add(orgUsrExcelDto.getCertificatesNumber())) { if (b) {
throw new RuntimeException("身份证号码重复!"); throw new RuntimeException("身份证号码重复!");
} else { }
boolean b = orgUsrService.checkCertificatesNumber(orgUsrExcelDto.getCertificatesNumber(), null); }
if (b) { }
throw new RuntimeException("身份证号码重复!");
} //平台用户唯一效验
} if (!ObjectUtils.isEmpty(orgUsrExcelDto.getAmosOrgId())) {
} if (!set1.add(orgUsrExcelDto.getAmosOrgId())) {
//平台用户唯一效验 throw new RuntimeException("关联用户"+orgUsrExcelDto.getAmosOrgCode()+"重复!");
if (!ObjectUtils.isEmpty(orgUsrExcelDto.getAmosOrgId())) { } else {
if (!set1.add(orgUsrExcelDto.getAmosOrgId())) { int num = orgUsrMapper.amosIdExist(orgUsrExcelDto.getAmosOrgId(),null);
throw new RuntimeException("关联用户" + orgUsrExcelDto.getAmosOrgCode() + "重复!");
} else { if (num > 0) {
int num = orgUsrMapper.amosIdExist(orgUsrExcelDto.getAmosOrgId(), null); throw new RuntimeException("关联用户"+orgUsrExcelDto.getAmosOrgCode()+"重复!");
if (num > 0) { }
throw new RuntimeException("关联用户" + orgUsrExcelDto.getAmosOrgCode() + "重复!"); }
} }
} try {
} OrgUsrDto orgUsrDto = orgUsrService.saveOrgPersonExcel(orgUsrExcelDto);
try { if (!ObjectUtils.isEmpty(orgUsrDto)) {
OrgUsrDto orgUsrDto = orgUsrService.saveOrgPersonExcel(orgUsrExcelDto); // 保存其余项
if (!ObjectUtils.isEmpty(orgUsrDto)) { orgUsrExcelDto.setOrgUsrId(orgUsrDto.getSequenceNbr().toString());
// 保存其余项 savePeopleItem(orgUsrExcelDto);
orgUsrExcelDto.setOrgUsrId(orgUsrDto.getSequenceNbr().toString()); }
savePeopleItem(orgUsrExcelDto); } catch (Exception e) {
} e.printStackTrace();
} catch (Exception e) { throw new RuntimeException("导入失败!");
e.printStackTrace(); }
throw new RuntimeException("导入失败!"); });
} }
}); }
}
}
private void savePeopleItem(OrgUsrExcelDto item) { private void savePeopleItem(OrgUsrExcelDto item) {
FirefightersContacts firefightersContacts = new FirefightersContacts(); FirefightersContacts firefightersContacts = new FirefightersContacts();
......
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