Commit 23ddcf6a authored by 张森's avatar 张森

备品备件问题需求开发 bug修复,细节优化

parent 3de22c55
...@@ -128,5 +128,14 @@ public class WlSpareEquipment extends BaseEntity implements Serializable { ...@@ -128,5 +128,14 @@ public class WlSpareEquipment extends BaseEntity implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private Integer pageSize; private Integer pageSize;
@TableField(exist = false)
private String equipmentClassificationCode;
@TableField(exist = false)
private String industryCode;
@TableField(exist = false)
private String code; // 装备定义code筛选字段
} }
...@@ -4,23 +4,29 @@ import cn.afterturn.easypoi.excel.ExcelImportUtil; ...@@ -4,23 +4,29 @@ import cn.afterturn.easypoi.excel.ExcelImportUtil;
import cn.afterturn.easypoi.excel.entity.ImportParams; import cn.afterturn.easypoi.excel.entity.ImportParams;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
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.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams; import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
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.excel.ExcelUtil; import com.yeejoin.amos.boot.biz.common.excel.ExcelUtil;
import com.yeejoin.equipmanage.common.entity.EquipmentCategory;
import com.yeejoin.equipmanage.common.entity.WlSpareEquipment; import com.yeejoin.equipmanage.common.entity.WlSpareEquipment;
import com.yeejoin.equipmanage.common.entity.vo.WlSpareEquipmentExportVo; import com.yeejoin.equipmanage.common.entity.vo.WlSpareEquipmentExportVo;
import com.yeejoin.equipmanage.common.enums.SingleEnum; import com.yeejoin.equipmanage.common.enums.SingleEnum;
import com.yeejoin.equipmanage.common.utils.CommonResponseUtil; import com.yeejoin.equipmanage.common.utils.CommonResponseUtil;
import com.yeejoin.equipmanage.common.utils.StringUtil;
import com.yeejoin.equipmanage.mapper.WlSpareEquipmentMapper; import com.yeejoin.equipmanage.mapper.WlSpareEquipmentMapper;
import com.yeejoin.equipmanage.service.IEquipmentCategoryService;
import com.yeejoin.equipmanage.service.WlSpareEquipmentService; import com.yeejoin.equipmanage.service.WlSpareEquipmentService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
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.core.io.ClassPathResource; import org.springframework.core.io.ClassPathResource;
import org.springframework.http.HttpHeaders; import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.util.UriUtils; import org.springframework.web.util.UriUtils;
...@@ -33,7 +39,9 @@ import java.io.IOException; ...@@ -33,7 +39,9 @@ import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
@RestController @RestController
@Api(tags = "设备平台备品备件管理api") @Api(tags = "设备平台备品备件管理api")
...@@ -46,6 +54,12 @@ public class WlSpareEquipmentController extends BaseController { ...@@ -46,6 +54,12 @@ public class WlSpareEquipmentController extends BaseController {
@Autowired @Autowired
WlSpareEquipmentMapper wlSpareEquipmentMapper; WlSpareEquipmentMapper wlSpareEquipmentMapper;
@Autowired
IEquipmentCategoryService equipmentCategoryService;
@Value("${equipment.hierarchy}")
private String hierarchy;
@RequestMapping(value = "/saveOrUpdateSpareEquipment", method = RequestMethod.POST) @RequestMapping(value = "/saveOrUpdateSpareEquipment", method = RequestMethod.POST)
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "POST", value = "新增/编辑", notes = "新增/编辑") @ApiOperation(httpMethod = "POST", value = "新增/编辑", notes = "新增/编辑")
...@@ -75,8 +89,49 @@ public class WlSpareEquipmentController extends BaseController { ...@@ -75,8 +89,49 @@ public class WlSpareEquipmentController extends BaseController {
@RequestMapping(value = "/listByPage", method = RequestMethod.POST) @RequestMapping(value = "/listByPage", method = RequestMethod.POST)
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "POST", value = "列表分页查询", notes = "列表分页查询") @ApiOperation(httpMethod = "POST", value = "列表分页查询", notes = "列表分页查询")
public ResponseModel<Page<WlSpareEquipment>> listByPage(@RequestBody WlSpareEquipment wlSpareEquipment) { public ResponseModel listByPage(@RequestBody WlSpareEquipment wlSpareEquipment) {
Page<WlSpareEquipment> wlSpareEquipmentPage = wlSpareEquipmentService.listByPage(wlSpareEquipment, new Page<>(wlSpareEquipment.getPageNum(), wlSpareEquipment.getPageSize())); String[] result = hierarchy.split(",");
Map<Integer, Integer> map = new HashMap<>();
for (int i = 0; i < result.length; i++) {
map.put(i, Integer.valueOf(result[i]));
}
if (StringUtil.isNotEmpty(wlSpareEquipment.getEquipmentClassificationCode())) {
QueryWrapper<EquipmentCategory> equipmentCategoryQueryWrapper = new QueryWrapper<>();
equipmentCategoryQueryWrapper.eq("code", wlSpareEquipment.getEquipmentClassificationCode());
equipmentCategoryQueryWrapper.eq("industry_code", wlSpareEquipment.getIndustryCode());
List<EquipmentCategory> equipmentCategoryList = equipmentCategoryService.list(equipmentCategoryQueryWrapper);
if (CollectionUtils.isEmpty(equipmentCategoryList)) {
throw new RuntimeException("装备定义code有误");
}
EquipmentCategory equipmentCategory = equipmentCategoryList.get(0);
int inhierarchy = 1;
int flag = 0;
for (int i = 0; i < result.length + 1; i++) {
//进来先判断是否默认就是空,如果为空第一层
if (equipmentCategory.getParentId() == null) {
//判断是否是最下面的子节点
if (i >= 4) {
inhierarchy = 8;
} else {
inhierarchy = map.get(i);
}
flag = i;
break;
} else {
//查找到循环几次为空
equipmentCategory = equipmentCategoryService.getById(equipmentCategory.getParentId());
}
}
if (flag == 0) {
String classificationCode = wlSpareEquipment.getEquipmentClassificationCode().replaceAll("0+$", "");
return CommonResponseUtil.success(wlSpareEquipmentService.listByPage(wlSpareEquipment, new Page<>(wlSpareEquipment.getPageNum(), wlSpareEquipment.getPageSize()), inhierarchy, classificationCode));
} else {
String classificationCode = wlSpareEquipment.getEquipmentClassificationCode().replaceAll("0+$", "");
return CommonResponseUtil.success(wlSpareEquipmentService.listByPage(wlSpareEquipment, new Page<>(wlSpareEquipment.getPageNum(), wlSpareEquipment.getPageSize()), inhierarchy, classificationCode.length() % 2 == 0 ? classificationCode : classificationCode + "0"));
}
}
Page<WlSpareEquipment> wlSpareEquipmentPage = wlSpareEquipmentService.listByPage(wlSpareEquipment, new Page<>(wlSpareEquipment.getPageNum(), wlSpareEquipment.getPageSize()), 0, null);
return CommonResponseUtil.success(wlSpareEquipmentPage); return CommonResponseUtil.success(wlSpareEquipmentPage);
} }
......
...@@ -7,6 +7,9 @@ import org.apache.ibatis.annotations.Param; ...@@ -7,6 +7,9 @@ import org.apache.ibatis.annotations.Param;
public interface WlSpareEquipmentMapper extends BaseMapper<WlSpareEquipment> { public interface WlSpareEquipmentMapper extends BaseMapper<WlSpareEquipment> {
Page<WlSpareEquipment> listByPage(@Param("page") Page page, @Param("dto") WlSpareEquipment dto); Page<WlSpareEquipment> listByPage(@Param("page") Page page,
@Param("dto") WlSpareEquipment dto,
@Param("hierarchy") int hierarchy,
@Param("codeHead") String codeHead);
} }
...@@ -22,7 +22,7 @@ public interface WlSpareEquipmentService { ...@@ -22,7 +22,7 @@ public interface WlSpareEquipmentService {
WlSpareEquipment getById(Long id); WlSpareEquipment getById(Long id);
Page<WlSpareEquipment> listByPage(WlSpareEquipment dto, Page page); Page<WlSpareEquipment> listByPage(WlSpareEquipment dto, Page page, int hierarchy, String codeHead);
void saveImportBatch(List<WlSpareEquipmentExportVo> list, ReginParams reginParams); void saveImportBatch(List<WlSpareEquipmentExportVo> list, ReginParams reginParams);
......
...@@ -71,6 +71,8 @@ public class WlSpareEquipmentServiceImpl extends ServiceImpl<WlSpareEquipmentMap ...@@ -71,6 +71,8 @@ public class WlSpareEquipmentServiceImpl extends ServiceImpl<WlSpareEquipmentMap
public WlSpareEquipment saveOrUpdateSpareEquipment(WlSpareEquipment wlSpareEquipment, ReginParams reginParams) { public WlSpareEquipment saveOrUpdateSpareEquipment(WlSpareEquipment wlSpareEquipment, ReginParams reginParams) {
wlSpareEquipment.setBizOrgName(reginParams.getPersonIdentity().getCompanyName()); wlSpareEquipment.setBizOrgName(reginParams.getPersonIdentity().getCompanyName());
wlSpareEquipment.setBizOrgCode(reginParams.getPersonIdentity().getCompanyBizOrgCode()); wlSpareEquipment.setBizOrgCode(reginParams.getPersonIdentity().getCompanyBizOrgCode());
WarehouseStructure warehouseStructure = warehouseStructureMapper.selectById(wlSpareEquipment.getWarehouseStructureId());
wlSpareEquipment.setWarehouseStructureCode(warehouseStructure.getCode());
if (ObjectUtils.isEmpty(wlSpareEquipment.getId())) { if (ObjectUtils.isEmpty(wlSpareEquipment.getId())) {
wlSpareEquipmentMapper.insert(wlSpareEquipment); wlSpareEquipmentMapper.insert(wlSpareEquipment);
} else { } else {
...@@ -80,8 +82,6 @@ public class WlSpareEquipmentServiceImpl extends ServiceImpl<WlSpareEquipmentMap ...@@ -80,8 +82,6 @@ public class WlSpareEquipmentServiceImpl extends ServiceImpl<WlSpareEquipmentMap
.eq(UploadFile::getObjectId, wlSpareEquipment.getId()); .eq(UploadFile::getObjectId, wlSpareEquipment.getId());
iUploadFileService.remove(queryWrapper); iUploadFileService.remove(queryWrapper);
} }
WarehouseStructure warehouseStructure = warehouseStructureMapper.selectById(wlSpareEquipment.getWarehouseStructureId());
wlSpareEquipment.setWarehouseStructureCode(warehouseStructure.getCode());
saveUploadFile(wlSpareEquipment); saveUploadFile(wlSpareEquipment);
return wlSpareEquipment; return wlSpareEquipment;
} }
...@@ -146,8 +146,8 @@ public class WlSpareEquipmentServiceImpl extends ServiceImpl<WlSpareEquipmentMap ...@@ -146,8 +146,8 @@ public class WlSpareEquipmentServiceImpl extends ServiceImpl<WlSpareEquipmentMap
} }
@Override @Override
public Page<WlSpareEquipment> listByPage(WlSpareEquipment dto, Page page) { public Page<WlSpareEquipment> listByPage(WlSpareEquipment dto, Page page, int hierarchy, String codeHead) {
return wlSpareEquipmentMapper.listByPage(page, dto); return wlSpareEquipmentMapper.listByPage(page, dto, hierarchy, codeHead);
} }
@Override @Override
......
...@@ -15,8 +15,17 @@ ...@@ -15,8 +15,17 @@
<if test="dto.name != null and dto.name != ''"> <if test="dto.name != null and dto.name != ''">
AND `name` LIKE CONCAT('%', #{dto.name}, '%') AND `name` LIKE CONCAT('%', #{dto.name}, '%')
</if> </if>
<if test="dto.position != null and dto.position != ''"> <if test="dto.code != null and dto.code != ''">
AND `position` LIKE concat(#{dto.position}, '%') AND `equip_model_code` LIKE concat('%', #{dto.code}, '%')
</if>
<if test="codeHead != null and codeHead != ''">
AND LEFT (equip_model_code, #{hierarchy}) = #{codeHead}
</if>
<if test="dto.manufacturerId != null">
AND manufacturer_id = #{dto.manufacturerId}
</if>
<if test="dto.warehouseStructureId != null">
AND warehouse_structure_id = #{dto.warehouseStructureId}
</if> </if>
</where> </where>
ORDER BY create_date DESC ORDER BY create_date DESC
......
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