Commit 7baf3beb authored by zhangyingbin's avatar zhangyingbin

修改技术参数接口逻辑

parent 77b5b0c0
......@@ -11,29 +11,33 @@ import java.util.Map;
public enum EightCategorySubformEnum {
//起重机械
SAFETYPROTECTIONDEVICE("safetyProtectionDevice", "mid_equip_protection_devices"),
MAINPART("mainPart", "mid_equip_main_parts"),
SAFETYPROTECTIONDEVICE("safetyProtectionDevice", "mid_equip_protection_devices","com.yeejoin.amos.api.openapi.face.orm.entity.ProtectionDevices","com.yeejoin.amos.api.openapi.face.service.ProtectionDevicesServiceImpl"),
MAINPART("mainPart", "mid_equip_main_parts","com.yeejoin.amos.api.openapi.face.orm.entity.MainParts","com.yeejoin.amos.api.openapi.face.service.MainPartsServiceImpl"),
//厂车
MAINPARTS("mainParts", "mid_equip_main_parts"),
MAINPARTS("mainParts", "mid_equip_main_parts","com.yeejoin.amos.api.openapi.face.orm.entity.MainParts","com.yeejoin.amos.api.openapi.face.service.MainPartsServiceImpl"),
//索道
MAINCOMPONENTS("mainComponents", "mid_equip_main_parts"),
MAINCOMPONENTS("mainComponents", "mid_equip_main_parts","com.yeejoin.amos.api.openapi.face.orm.entity.MainParts","com.yeejoin.amos.api.openapi.face.service.MainPartsServiceImpl"),
//锅炉
SAFETYACCESSORIESANDRELATEDDEVICES("safetyAccessoriesAndRelatedDevices", "mid_equip_protection_devices"),
SAFETYACCESSORIESANDRELATEDDEVICES("safetyAccessoriesAndRelatedDevices", "mid_equip_protection_devices","com.yeejoin.amos.api.openapi.face.orm.entity.ProtectionDevices","com.yeejoin.amos.api.openapi.face.service.ProtectionDevicesServiceImpl"),
//压力容器
FIXEDSAFETYACCESSORY("fixedSafetyAccessory", "mid_equip_protection_devices"),
GASCYLINDER("gasCylinder", "mid_equip_main_parts"),
GASCYLINDERACCESSORIES("gasCylinderAccessories", "mid_equip_protection_devices"),
FIXEDSAFETYACCESSORY("fixedSafetyAccessory", "mid_equip_protection_devices","com.yeejoin.amos.api.openapi.face.orm.entity.ProtectionDevices","com.yeejoin.amos.api.openapi.face.service.ProtectionDevicesServiceImpl"),
GASCYLINDER("gasCylinder", "mid_equip_main_parts","com.yeejoin.amos.api.openapi.face.orm.entity.MainParts","com.yeejoin.amos.api.openapi.face.service.MainPartsServiceImpl"),
GASCYLINDERACCESSORIES("gasCylinderAccessories", "mid_equip_protection_devices","com.yeejoin.amos.api.openapi.face.orm.entity.ProtectionDevices","com.yeejoin.amos.api.openapi.face.service.ProtectionDevicesServiceImpl"),
//压力管道
PIPEINFO("pipeInfo", "mid_equip_main_parts");
PIPEINFO("pipeInfo", "mid_equip_main_parts","com.yeejoin.amos.api.openapi.face.orm.entity.MainParts","com.yeejoin.amos.api.openapi.face.service.MainPartsServiceImpl");
String code;
String value;
public static Map<String,String> codeValue = new HashMap<>();
String classPath;
String servicePath;
public static Map<String,String> classPathmap = new HashMap<>();
public static Map<String,String> servicePathmap = new HashMap<>();
static {
for(EightCategorySubformEnum e: EightCategorySubformEnum.values()){
codeValue.put(e.code, e.value);
classPathmap.put(e.code, e.classPath);
servicePathmap.put(e.code, e.servicePath);
}
}
}
......@@ -10,26 +10,30 @@ import java.util.Map;
@AllArgsConstructor
@Getter
public enum EquipTypeEnum {
elevator("elevator","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamElevator","com.yeejoin.amos.api.openapi.face.service.EquipTechParamElevatorService"),
lifting("lifting","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamLifting","com.yeejoin.amos.api.openapi.face.service.EquipTechParamLiftingService"),
vehicle("vehicle","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamVehicle","com.yeejoin.amos.api.openapi.face.service.EquipTechParamVehicleService"),
ropeway("ropeway","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamRopeway","com.yeejoin.amos.api.openapi.face.service.EquipTechParamRopewayService"),
rides("rides","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamRides","com.yeejoin.amos.api.openapi.face.service.EquipTechParamRidesService"),
boiler("boiler","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamBoiler","com.yeejoin.amos.api.openapi.face.service.EquipTechParamBoilerService"),
vessel("vessel","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamVessel","com.yeejoin.amos.api.openapi.face.service.EquipTechParamVesselService"),
pipeline("pipeline","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamPipeline","com.yeejoin.amos.api.openapi.face.service.EquipTechParamPipelineService");
elevator("elevator","","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamElevator","com.yeejoin.amos.api.openapi.face.service.EquipTechParamElevatorService"),
lifting("lifting","safetyProtectionDevice,mainPart","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamLifting","com.yeejoin.amos.api.openapi.face.service.EquipTechParamLiftingService"),
vehicle("vehicle","mainParts","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamVehicle","com.yeejoin.amos.api.openapi.face.service.EquipTechParamVehicleService"),
ropeway("ropeway","mainComponents","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamRopeway","com.yeejoin.amos.api.openapi.face.service.EquipTechParamRopewayService"),
rides("rides","","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamRides","com.yeejoin.amos.api.openapi.face.service.EquipTechParamRidesService"),
boiler("boiler","safetyAccessoriesAndRelatedDevices","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamBoiler","com.yeejoin.amos.api.openapi.face.service.EquipTechParamBoilerService"),
vessel("vessel","fixedSafetyAccessory,gasCylinder,gasCylinderAccessories","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamVessel","com.yeejoin.amos.api.openapi.face.service.EquipTechParamVesselService"),
pipeline("pipeline","pipeInfo","com.yeejoin.amos.api.openapi.face.orm.entity.EquipTechParamPipeline","com.yeejoin.amos.api.openapi.face.service.EquipTechParamPipelineService");
String type;
String fileNames;
String classPath;
String servicePath;
public static Map<String,String> classPathmap = new HashMap<>();
public static Map<String,String> servicePathmap = new HashMap<>();
public static Map<String,String> serviceFileListmap = new HashMap<>();
static {
for(EquipTypeEnum e: EquipTypeEnum.values()){
classPathmap.put(e.type, e.classPath);
servicePathmap.put(e.type, e.servicePath);
serviceFileListmap.put(e.type,e.fileNames);
}
}
}
package com.yeejoin.amos.api.openapi.face.model;
import java.math.BigDecimal;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Dto
*
* @author duanwei
* @date 2023-04-10
*/
@Data
public class MainPartsModel extends AbstractBaseModel {
private static final long serialVersionUID = 1L;
/**
*
*/
private String supervisoryCode;
/**
*
*/
private String instanceId;
/**
*
*/
private String status;
/**
*
*/
private String mainPartNumber;
/**
*
*/
private String typeSpecification;
/**
*
*/
private String manufactureCompany;
/**
*
*/
private String identificatioProduct;
/**
*
*/
private Date manufacturingDate;
/**
*
*/
private String designation;
/**
*
*/
private String remarks;
/**
*
*/
private String model;
/**
*
*/
private String specification;
/**
*
*/
private String certificateNumber;
/**
*
*/
private String serialNumber;
/**
*
*/
private String batchNumber;
/**
*
*/
private String intraUnitNumber;
/**
*
*/
private BigDecimal weight;
/**
*
*/
private String pipeName;
/**
*
*/
private String pipelineNumber;
/**
*
*/
private String deviceLevel;
/**
*
*/
private String designCriterion;
/**
*
*/
private String figureNumber;
/**
*
*/
private String partName;
}
package com.yeejoin.amos.api.openapi.face.model;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Dto
*
* @author duanwei
* @date 2023-04-10
*/
@Data
public class ProtectionDevicesModel extends AbstractBaseModel {
private static final long serialVersionUID = 1L;
/**
*
*/
private String supervisoryCode;
/**
*
*/
private String instanceId;
/**
*
*/
private String status;
/**
*
*/
private String deviceNumber;
/**
*
*/
private String typeSpecification;
/**
*
*/
private String manufactureCompany;
/**
*
*/
private Date manufacturingDate;
/**
*
*/
private String code;
/**
*
*/
private String certificateNumber;
/**
*
*/
private String remark;
/**
*
*/
private Integer quantity;
/**
*
*/
private String designation;
/**
*
*/
private String model;
/**
*
*/
private String specification;
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.yeejoin.amos.api.openapi.face.orm.entity.MainParts;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* Mapper 接口
*
* @author duanwei
* @date 2023-04-10
*/
public interface MidEquipMainPartsMapper extends BaseMapper<MainParts> {
}
package com.yeejoin.amos.api.openapi.face.orm.dao;
import com.yeejoin.amos.api.openapi.face.orm.entity.ProtectionDevices;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* Mapper 接口
*
* @author duanwei
* @date 2023-04-10
*/
public interface MidEquipProtectionDevicesMapper extends BaseMapper<ProtectionDevices> {
}
package com.yeejoin.amos.api.openapi.face.orm.entity;
import java.math.BigDecimal;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
/**
*
*
* @author duanwei
* @date 2023-04-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value="MidEquipMainParts对象", description="")
@TableName(value = "mid_equip_main_parts")
public class MainParts extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
@TableField("\"SUPERVISORY_CODE\"")
private String supervisoryCode;
@TableField("\"INSTANCE_ID\"")
private String instanceId;
@TableField("\"STATUS\"")
private String status;
@TableField("\"MAIN_PART_NUMBER\"")
private String mainPartNumber;
@TableField("\"TYPE_SPECIFICATION\"")
private String typeSpecification;
@TableField("\"MANUFACTURE_COMPANY\"")
private String manufactureCompany;
@TableField("\"IDENTIFICATIO_PRODUCT\"")
private String identificatioProduct;
@TableField("\"MANUFACTURING_DATE\"")
private Date manufacturingDate;
@TableField("\"DESIGNATION\"")
private String designation;
@TableField("\"REMARKS\"")
private String remarks;
@TableField("\"MODEL\"")
private String model;
@TableField("\"SPECIFICATION\"")
private String specification;
@TableField("\"CERTIFICATE_NUMBER\"")
private String certificateNumber;
@TableField("\"SERIAL_NUMBER\"")
private String serialNumber;
@TableField("\"BATCH_NUMBER\"")
private String batchNumber;
@TableField("\"INTRA_UNIT_NUMBER\"")
private String intraUnitNumber;
@TableField("\"WEIGHT\"")
private BigDecimal weight;
@TableField("\"PIPE_NAME\"")
private String pipeName;
@TableField("\"PIPELINE_NUMBER\"")
private String pipelineNumber;
@TableField("\"DEVICE_LEVEL\"")
private String deviceLevel;
@TableField("\"DESIGN_CRITERION\"")
private String designCriterion;
@TableField("\"FIGURE_NUMBER\"")
private String figureNumber;
@TableField("\"PART_NAME\"")
private String partName;
}
package com.yeejoin.amos.api.openapi.face.orm.entity;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
/**
*
*
* @author duanwei
* @date 2023-04-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value="MidEquipProtectionDevices对象", description="")
@TableName(value = "mid_equip_protection_devices")
public class ProtectionDevices extends AbstractEquipBaseEntity {
private static final long serialVersionUID = 1L;
@TableField("\"SUPERVISORY_CODE\"")
private String supervisoryCode;
@TableField("\"INSTANCE_ID\"")
private String instanceId;
@TableField("\"STATUS\"")
private String status;
@TableField("\"DEVICE_NUMBER\"")
private String deviceNumber;
@TableField("\"TYPE_SPECIFICATION\"")
private String typeSpecification;
@TableField("\"MANUFACTURE_COMPANY\"")
private String manufactureCompany;
@TableField("\"MANUFACTURING_DATE\"")
private Date manufacturingDate;
@TableField("\"CODE\"")
private String code;
@TableField("\"CERTIFICATE_NUMBER\"")
private String certificateNumber;
@TableField("\"REMARK\"")
private String remark;
@TableField("\"QUANTITY\"")
private Integer quantity;
@TableField("\"DESIGNATION\"")
private String designation;
@TableField("\"MODEL\"")
private String model;
@TableField("\"SPECIFICATION\"")
private String specification;
}
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.MainPartsModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipMainPartsMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.MainParts;
/**
* 服务实现类
*
* @author duanwei
* @date 2023-04-10
*/
public class MainPartsServiceImpl extends AppBaseService<MainPartsModel, MainParts, MidEquipMainPartsMapper>{
}
package com.yeejoin.amos.api.openapi.face.service;
import com.yeejoin.amos.api.openapi.face.model.ProtectionDevicesModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.MidEquipProtectionDevicesMapper;
import com.yeejoin.amos.api.openapi.face.orm.entity.ProtectionDevices;
/**
* 服务实现类
*
* @author duanwei
* @date 2023-04-10
*/
public class ProtectionDevicesServiceImpl extends AppBaseService<ProtectionDevicesModel, ProtectionDevices, MidEquipProtectionDevicesMapper>{
}
package com.yeejoin.amos.api.openapi.face.service;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.api.common.restful.utils.ApplicationContextUtils;
import com.yeejoin.amos.api.openapi.constant.Constant;
import com.yeejoin.amos.api.openapi.enums.EightCategorySubformEnum;
import com.yeejoin.amos.api.openapi.enums.EquipTypeEnum;
import com.yeejoin.amos.api.openapi.face.model.BizTokenModel;
import com.yeejoin.amos.api.openapi.face.orm.dao.EquipTechParamBoilerMapper;
......@@ -27,24 +29,59 @@ public class TechInfoService {
public String saveTechInfo(List<JSONObject> techInfoList){
List<String> failSupervisoryCode = new ArrayList<>();
String appId = getAppId();
for (JSONObject techInfo: techInfoList) {
AbstractEquipBaseEntity entity = null;
String type = techInfo.getString("type");
String entityClasspath = EquipTypeEnum.classPathmap.get(type);
if(ValidationUtil.isEmpty(entityClasspath)){
failSupervisoryCode.add("type类型错误{"+"type:"+type+",supervisoryCode:"+techInfo.getString("supervisoryCode")+"}");
}
String serviceClasspath = EquipTypeEnum.servicePathmap.get(type);
try {
//存主表
String entityClasspath = EquipTypeEnum.classPathmap.get(type);
String serviceClasspath = EquipTypeEnum.servicePathmap.get(type);
if(ValidationUtil.isEmpty(entityClasspath)){
failSupervisoryCode.add("type类型错误{"+"type:"+type+",supervisoryCode:"+techInfo.getString("supervisoryCode")+"}");
continue;
}
Class entityClazz = Class.forName(entityClasspath);
Class serviceClazz = Class.forName(serviceClasspath);
BaseService service = (BaseService) ApplicationContextUtils.newAutoWiredInstance(serviceClazz);
AbstractEquipBaseEntity entity = (AbstractEquipBaseEntity) JSON.parseObject(JSON.toJSONString(techInfo),entityClazz);
entity = (AbstractEquipBaseEntity) JSON.parseObject(JSON.toJSONString(techInfo),entityClazz);
entity.setRecDate(new Date());
entity.setAppId(getAppId());
entity.setAppId(appId);
service.save(entity);
} catch (Exception e) {
e.printStackTrace();
failSupervisoryCode.add("数据错误{"+"type:"+type+",supervisoryCode:"+techInfo.getString("supervisoryCode")+"}");
continue;
}
try {
//存子表单
String fileNames = EquipTypeEnum.serviceFileListmap.get(type);
if(!ValidationUtil.isEmpty(fileNames)) {
String[] fileName = fileNames.split(",");
for (String file : fileName) {
String value = techInfo.getString(file);
if(!ValidationUtil.isEmpty(value)) {
String subFormEntitypath = EightCategorySubformEnum.classPathmap.get(file);
String subFormServicepath = EightCategorySubformEnum.servicePathmap.get(file);
Class subFormEntityClazz = Class.forName(subFormEntitypath);
Class subFormServiceClazz = Class.forName(subFormServicepath);
List<AbstractEquipBaseEntity> array = new ArrayList<>();
array = JSON.parseArray(value, subFormEntityClazz);
AbstractEquipBaseEntity finalEntity = entity;
array.forEach(e -> {
e.setAppId(appId);
e.setRecDate(new Date());
e.setSyncDate(finalEntity.getSyncDate());
e.setSyncState(finalEntity.getSyncState());
});
BaseService service = (BaseService) ApplicationContextUtils.newAutoWiredInstance(subFormServiceClazz);
service.saveBatch(array);
}
}
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
String result = "ok";
......
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