Commit aa9868dc authored by wufeifan's avatar wufeifan

修改了添加装备、添加一级菜单

parent e64da6ba
......@@ -43,7 +43,7 @@ public class EquipmentFaultVO {
@ApiModelProperty(value = "处置措施")
private String measure;
@Excel(name = "发生时间",orderNum = "7")
@Excel(name = "发生时间",orderNum = "7", format = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "故障时间/发生时间")
private Date faultOccurTime;
......
......@@ -23,7 +23,6 @@ import java.util.List;
/**
* @Auther wff
* @Date 2022 09 05
* (这个Controller可以写在EquipmentDetailController)
**/
@RestController
@Api(tags = "故障管理 Api")
......@@ -51,7 +50,7 @@ public class EquipmentFaultController {
return psge;
}
@ApiOperation(value = "导出故障清单", notes = "导出故障清单")
@ApiOperation(value = "导出故障清单", notes = "导出故障清单", produces = "application/octet-stream")
@PostMapping(value = "/export",produces = "application/json;charset=UTF-8")
@TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
public void exportDangerList(@RequestBody List<EquipmentFaultVO> equipmentFaultVO, @RequestParam Integer prop, HttpServletResponse response) {
......@@ -59,10 +58,10 @@ public class EquipmentFaultController {
String format = formatter.format(new Date());
if(prop==1){//全部导出
equipmentFaultVO = iEquipmentFaultService.getAll();
FileHelper.exportExcel(equipmentFaultVO, "故障清单", "装备清单", EquipmentFaultVO.class, format + ".xls", response);
FileHelper.exportExcel(equipmentFaultVO, "故障清单", "故障清单", EquipmentFaultVO.class, format + ".xls", response);
}
else {//仅仅导出筛选结果的数据
FileHelper.exportExcel(equipmentFaultVO, "故障清单", "装备清单", EquipmentFaultVO.class, format + ".xls", response);
FileHelper.exportExcel(equipmentFaultVO, "故障清单", "故障清单", EquipmentFaultVO.class, format + ".xls", response);
}
}
......
......@@ -73,4 +73,7 @@ public interface EquipmentCategoryMapper extends BaseMapper<EquipmentCategory> {
List<Long> getAllChildCategoryIdList(@Param(value = "categoryId") Long categoryId);
List<EquipmentCategory> getColaEquipmentCategoryList(@Param(value = "head") Integer head, @Param(value = "industryCode") String industryCode);
String getMaxCode();
}
......@@ -85,88 +85,98 @@ public class EquipmentCategoryServiceImpl extends ServiceImpl<EquipmentCategoryM
String code = null;
Map<String, Object> map = new HashMap<>();
if (equipmentCategory.getParentId() == null){
/*if (equipmentCategory.getParentId() == null){
EquipmentCategory root = equipmentCategoryMapper.getEquipmentCategoryEquipmentList().get(0);
equipmentCategory.setParentId(root.getId());
}
Long id = equipmentCategory.getParentId();
}*/
if (equipmentCategory.getParentId() == null && eqc == null){ //新添加的一级菜单
//先查到最大的code
String maxCode = equipmentCategoryMapper.getMaxCode();
char[] maxCodeChars = maxCode.toCharArray();
int max = Integer.parseInt(String.valueOf(maxCodeChars[0])) + 1;
equipmentCategory.setCode(max + "0000000");
}else {
Long id = equipmentCategory.getParentId();
EquipmentCategory parentEqc = this.getById(id);
if (ObjectUtils.isEmpty(parentEqc)) {
throw new CommonException(0, "请先选择上级装备分类!");
}
if (parentEqc.getIsConsumptive() && !equipmentCategory.getIsConsumptive()) {
throw new CommonException(0, "父级为消耗型,子类别必须必须为消耗型!");
}
EquipmentCategory parentEqc = this.getById(id);
if (ObjectUtils.isEmpty(parentEqc)) {
throw new CommonException(0, "请先选择上级装备分类!");
}
// 级别
String parentCode = parentEqc.getCode();
Long parentId = parentEqc.getId();
String level = ObjectUtils.isEmpty(parentEqc.getParentId()) ? "1"
: (this.baseMapper.getEquipCategoryLevelByParentId(parentEqc.getId()) + "");
if (parentEqc.getIsConsumptive() && !equipmentCategory.getIsConsumptive()) {
throw new CommonException(0, "父级为消耗型,子类别必须必须为消耗型!");
}
if ("5".equals(level)) {
throw new CommonException(0, "该类下不允许插入装备分类信息,请重新选择上级分类!");
}
// 级别
String parentCode = parentEqc.getCode();
Long parentId = parentEqc.getId();
String level = ObjectUtils.isEmpty(parentEqc.getParentId()) ? "1"
: (this.baseMapper.getEquipCategoryLevelByParentId(parentEqc.getId()) + "");
if ("5".equals(level)) {
throw new CommonException(0, "该类下不允许插入装备分类信息,请重新选择上级分类!");
}
if (name != null && name.contains("其他")) {
QueryWrapper<EquipmentCategory> queryWrapper2 = new QueryWrapper<EquipmentCategory>();
queryWrapper2.lambda().eq(EquipmentCategory::getParentId, parentId).like(EquipmentCategory::getName, "其他");
List<EquipmentCategory> list = this.list(queryWrapper2);
if (!list.isEmpty()) {
throw new CommonException(0, "该级别下只能包含一种【其他】分类!");
}
switch (level) {
case "1":
code = String.valueOf(Long.valueOf(parentCode) + 9000000);
break;
case "2":
code = String.valueOf(Long.valueOf(parentCode) + 990000);
break;
case "3":
code = String.valueOf(Long.valueOf(parentCode) + 9900);
break;
case "4":
code = String.valueOf(Long.valueOf(parentCode) + 99);
break;
default:
throw new CommonException(0, "该类下不允许插入装备分类信息,请重新选择上级分类!");
}
equipmentCategory.setCode(code);
this.save(equipmentCategory);
return equipmentCategory;
}
if (name != null && name.contains("其他")) {
QueryWrapper<EquipmentCategory> queryWrapper2 = new QueryWrapper<EquipmentCategory>();
queryWrapper2.lambda().eq(EquipmentCategory::getParentId, parentId).like(EquipmentCategory::getName, "其他");
List<EquipmentCategory> list = this.list(queryWrapper2);
if (!list.isEmpty()) {
throw new CommonException(0, "该级别下只能包含一种【其他】分类!");
List<Map<String, Object>> result = this.baseMapper.getEquipCategoryCodeListByParentId(parentId);
if (result.isEmpty()) {
throw new CommonException(0, "编码生成错误,请重新选择上级分类!");
}
code = result.get(0).get("newCode").toString();
switch (level) {
case "1":
code = String.valueOf(Long.valueOf(parentCode) + 9000000);
if (String.valueOf(Long.valueOf(parentCode) + 9000000).equals(code)) {
throw new CommonException(0, "该级别下普通类别已达到上限!");
}
break;
case "2":
code = String.valueOf(Long.valueOf(parentCode) + 990000);
if (String.valueOf(Long.valueOf(parentCode) + 990000).equals(code)) {
throw new CommonException(0, "该级别下普通类别已达到上限!");
}
break;
case "3":
code = String.valueOf(Long.valueOf(parentCode) + 9900);
if (String.valueOf(Long.valueOf(parentCode) + 9900).equals(code)) {
throw new CommonException(0, "该级别下普通类别已达到上限!");
}
break;
case "4":
code = String.valueOf(Long.valueOf(parentCode) + 99);
if (String.valueOf(Long.valueOf(parentCode) + 99).equals(code)) {
throw new CommonException(0, "该级别下普通类别已达到上限!");
}
break;
default:
throw new CommonException(0, "该类下不允许插入装备分类信息,请重新选择上级分类!");
}
equipmentCategory.setCode(code);
this.save(equipmentCategory);
return equipmentCategory;
}
List<Map<String, Object>> result = this.baseMapper.getEquipCategoryCodeListByParentId(parentId);
if (result.isEmpty()) {
throw new CommonException(0, "编码生成错误,请重新选择上级分类!");
}
code = result.get(0).get("newCode").toString();
switch (level) {
case "1":
if (String.valueOf(Long.valueOf(parentCode) + 9000000).equals(code)) {
throw new CommonException(0, "该级别下普通类别已达到上限!");
}
break;
case "2":
if (String.valueOf(Long.valueOf(parentCode) + 990000).equals(code)) {
throw new CommonException(0, "该级别下普通类别已达到上限!");
}
break;
case "3":
if (String.valueOf(Long.valueOf(parentCode) + 9900).equals(code)) {
throw new CommonException(0, "该级别下普通类别已达到上限!");
}
break;
case "4":
if (String.valueOf(Long.valueOf(parentCode) + 99).equals(code)) {
throw new CommonException(0, "该级别下普通类别已达到上限!");
}
break;
}
equipmentCategory.setCode(code);
// 如果不传行业id则行业类型默认为消防设备
if (!StringUtil.isNotEmpty(equipmentCategory.getIndustryCode())) {
equipmentCategory.setIndustryCode(IndustryEnum.EQUIP.getCode());
......
......@@ -182,7 +182,16 @@ public class EquipmentDetailServiceImpl extends ServiceImpl<EquipmentDetailMappe
}
}
//2.更新Detail表
EquipmentCategory byId = equipmentCategoryService.getById(equipmentDetail.getCode());
String test = equipmentDetail.getCode();
String newTest = test.replace("\"", "");
String newTest2 = newTest.replace("[", "");
String newTest3 = newTest2.replace("]", "");
String[] split = newTest3.split(",");
String resultCode = split[split.length - 1];
// EquipmentCategory byId = equipmentCategoryService.getById(equipmentDetail.getCode());
EquipmentCategory byId = equipmentCategoryService.getById(resultCode);
equipmentDetail.setCode(byId.getCode());
equipmentDetailMapper.updateById(equipmentDetail);
//3.保存图片
......
......@@ -1183,7 +1183,16 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
equipmentSpecific.setStock(new Stock().setWarehouseId(0L));
EquipmentDetail equipmentDetail = equipmentData.getEquipmentDetail();
Equipment equipment = equipmentService.getById(equipmentDetail.getEquipmentId());
EquipmentCategory byId = equipmentCategoryService.getById(equipmentDetail.getCode());
String test = equipmentDetail.getCode();
String newTest = test.replace("\"", "");
String newTest2 = newTest.replace("[", "");
String newTest3 = newTest2.replace("]", "");
String[] split = newTest3.split(",");
String resultCode = split[split.length - 1];
// EquipmentCategory byId = equipmentCategoryService.getById(equipmentDetail.getCode());
EquipmentCategory byId = equipmentCategoryService.getById(resultCode);
if (equipment != null) {
String equipmentCode = equipment.getCode();
equipmentDetail.setCode(byId.getCode());
......
......@@ -387,4 +387,10 @@
AND wl_equipment_category.industry_code = #{industryCode}
</if>
</select>
<select id="getMaxCode" resultType="String">
SELECT max(code)
FROM `wl_equipment_category`
</select>
</mapper>
......@@ -12,20 +12,20 @@
wlef.type,
wlef.reason,
wlef.measure,
wlp.create_date AS faultOccurTime
wlep.create_date AS faultOccurTime
FROM
wl_equipment_detail wled
LEFT JOIN wl_equipment_specific wles ON wled.id = wles.equipment_detail_id
LEFT JOIN wl_equipment_params wlp ON wles.iot_code = wlp.detail_id
wl_equipment_params wlep
LEFT JOIN wl_equipment_fault_knowledge wlef ON wlep.fault_knowledge_id = wlef.type
LEFT JOIN wl_equipment_specific wles ON wlep.detail_id = wles.iot_code
LEFT JOIN wl_equipment_detail wled ON wles.equipment_detail_id = wled.id
LEFT JOIN wl_equipment_category wlec ON wled.code = wlec.code
LEFT JOIN wl_equipment_fault_knowledge wlef ON wlp.fault_knowledge_id = wlef.type
<where>
<if test="code != null and code != ''"> AND wlec.code LIKE CONCAT(#{code},'%' )</if>
<if test="eqCode != null and eqCode != ''"> AND wled.eq_code LIKE CONCAT('%',#{eqCode},'%' )</if>
<if test="name != null and name != ''"> AND wled.name LIKE CONCAT('%',#{name},'%' )</if>
<if test="faultOccurTime != null and faultOccurTime != ''"> AND wlp.create_date LIKE CONCAT('%',#{faultOccurTime},'%' )</if>
<if test="faultOccurTime != null and faultOccurTime != ''"> AND wlep.create_date LIKE CONCAT('%',#{faultOccurTime},'%' )</if>
</where>
ORDER BY wlp.create_date DESC
ORDER BY wlep.create_date DESC
LIMIT #{current},#{size}
</select>
......@@ -33,37 +33,37 @@
SELECT
COUNT(1)
FROM
wl_equipment_detail wled
LEFT JOIN wl_equipment_specific wles ON wled.id = wles.equipment_detail_id
LEFT JOIN wl_equipment_params wlp ON wles.iot_code = wlp.detail_id
wl_equipment_params wlep
LEFT JOIN wl_equipment_fault_knowledge wlef ON wlep.fault_knowledge_id = wlef.type
LEFT JOIN wl_equipment_specific wles ON wlep.detail_id = wles.iot_code
LEFT JOIN wl_equipment_detail wled ON wles.equipment_detail_id = wled.id
LEFT JOIN wl_equipment_category wlec ON wled.code = wlec.code
LEFT JOIN wl_equipment_fault_knowledge wlef ON wlp.fault_knowledge_id = wlef.type
<where>
<if test="code != null and code != ''"> AND wlec.code LIKE CONCAT(#{code},'%' )</if>
<if test="eqCode != null and eqCode != ''"> AND wled.eq_code LIKE CONCAT('%',#{eqCode},'%' )</if>
<if test="name != null and name != ''"> AND wled.name LIKE CONCAT('%',#{name},'%' )</if>
<if test="faultOccurTime != null and faultOccurTime != ''"> AND wlp.create_date LIKE CONCAT('%',#{faultOccurTime},'%' )</if>
<if test="faultOccurTime != null and faultOccurTime != ''"> AND wlep.create_date LIKE CONCAT('%',#{faultOccurTime},'%' )</if>
</where>
</select>
<select id="getAll" resultType="com.yeejoin.equipmanage.common.entity.vo.EquipmentFaultVO">
SELECT
wled.id,
wlec.code AS code,
wlec.name AS eq_name,
wled.eq_code,
wled.name,
wlef.type,
wlef.reason,
wlef.measure,
wlp.create_date AS faultOccurTime
wled.id,
wlec.code AS code,
wlec.name AS eq_name,
wled.eq_code,
wled.name,
wlef.type,
wlef.reason,
wlef.measure,
wlep.create_date AS faultOccurTime
FROM
wl_equipment_detail wled
LEFT JOIN wl_equipment_specific wles ON wled.id = wles.equipment_detail_id
LEFT JOIN wl_equipment_params wlp ON wles.iot_code = wlp.detail_id
LEFT JOIN wl_equipment_category wlec ON wled.code = wlec.code
LEFT JOIN wl_equipment_fault_knowledge wlef ON wlp.fault_knowledge_id = wlef.type
ORDER BY wlp.create_date DESC
wl_equipment_params wlep
LEFT JOIN wl_equipment_fault_knowledge wlef ON wlep.fault_knowledge_id = wlef.type
LEFT JOIN wl_equipment_specific wles ON wlep.detail_id = wles.iot_code
LEFT JOIN wl_equipment_detail wled ON wles.equipment_detail_id = wled.id
LEFT JOIN wl_equipment_category wlec ON wled.code = wlec.code
ORDER BY wlep.create_date DESC
</select>
</mapper>
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