库管维修绑定关系

This commit is contained in:
sxu 2024-11-04 14:18:36 +08:00
parent b345cb8e52
commit 793482f8ca
4 changed files with 115 additions and 113 deletions

View File

@ -53,13 +53,13 @@ public class TypeController extends BaseController {
return getDataTable(list);
}
@ApiOperation(value = "查询物资类型管理列表(无分页)")
@RequiresPermissions("ma:type:list")
@GetMapping("/listNoPage")
public AjaxResult listNoPage(MaTypeListVo type) {
List<MaTypeListVo> list = typeService.selectTypeListAndParentInfo(type);
return typeService.getMyTypeAndBindUsers(list);
}
// @ApiOperation(value = "查询物资类型管理列表(无分页)")
// @RequiresPermissions("ma:type:list")
// @GetMapping("/listNoPage")
// public AjaxResult listNoPage(MaTypeListVo type) {
// List<MaTypeListVo> list = typeService.selectTypeListAndParentInfo(type);
// return typeService.getMyTypeAndBindUsers(list);
// }
/**
* 根据左列表类型id查询右表格
@ -71,13 +71,13 @@ public class TypeController extends BaseController {
@GetMapping("/getListByMaType")
public AjaxResult getListByMaType(MaTypeListVo type) {
List<Integer> parentIds = typeService.selectParentId(type);
List<MaTypeListVo> listByMaType = new ArrayList<>();
List<MaTypeListVo> myTypeList = new ArrayList<>();
for (Integer parentId : parentIds) {
listByMaType.addAll(typeService.getListByParentId(parentId.longValue(), type));
myTypeList.addAll(typeService.getListByParentId(parentId.longValue(), type));
}
Integer pageIndex = Convert.toInt(ServletUtils.getParameter("pageNum"), 1);
Integer pageSize = Convert.toInt(ServletUtils.getParameter("pageSize"), 10);
return AjaxResult.success(ListPagingUtil.paging(pageIndex, pageSize, listByMaType));
return AjaxResult.success(ListPagingUtil.paging(pageIndex, pageSize, typeService.getMyTypeAndBindUsers(myTypeList)));
}
/**
@ -190,13 +190,13 @@ public class TypeController extends BaseController {
/**
* 查询物资类型配置右侧列表
*/
@ApiOperation(value = "查询物资类型配置右侧列表")
@RequiresPermissions("ma:typeConfig:list")
@GetMapping("/getMaTypeConfigList")
public AjaxResult getMaTypeConfigList(MaTypeConfigDto maTypeConfigDto) {
// 调用service处理业务逻辑
return typeService.getMaTypeConfigList(maTypeConfigDto);
}
// @ApiOperation(value = "查询物资类型配置右侧列表")
// @RequiresPermissions("ma:typeConfig:list")
// @GetMapping("/getMaTypeConfigList")
// public AjaxResult getMaTypeConfigList(MaTypeConfigDto maTypeConfigDto) {
// // 调用service处理业务逻辑
// return typeService.getMaTypeConfigList(maTypeConfigDto);
// }
/**

View File

@ -98,7 +98,7 @@ public interface ITypeService {
*/
List<Type> buildMaTypeTree(List<Type> maTypeList);
AjaxResult getMaTypeConfigList(MaTypeConfigDto maTypeConfigDto);
// AjaxResult getMaTypeConfigList(MaTypeConfigDto maTypeConfigDto);
AjaxResult getMyTypeAndBindUsers(List<MaTypeListVo> list);
List<MaTypeListVo> getMyTypeAndBindUsers(List<MaTypeListVo> list);
}

View File

@ -454,101 +454,101 @@ public class TypeServiceImpl implements ITypeService {
return !getChildList(list, t).isEmpty();
}
@Override
public AjaxResult getMaTypeConfigList(MaTypeConfigDto maTypeConfigDto) {
// 1.把所有物资类型查出来
List<MaTypeConfigVo> list = selectThreeFourLevelTypeListAndParent(new Type());
// 2.把维修配置信息查出来
List<TypeRepair> typeRepairList = typeRepairService.selectTypeRepairListAndUserName(new TypeRepair());
// 3.把库管配置信息查出来
List<TypeKeeper> typeKeeperList = typeKeeperService.selectTypeKeeperListAndUserName(new TypeKeeper());
// ------------------- 开启数据处理 ---------------------
// 4.循环所有物资类型,重型数据集合保障只循环一次减少性能损失
for (MaTypeConfigVo typeConfigVo1 : list) {
// 1.外层 先对比维修班组
for (TypeRepair typeRepair : typeRepairList) {
// 2.判断当前维修配置信息中的物资类型id是否等于当前物资类型配置信息中的物资类型id
if (Objects.nonNull(typeRepair.getTypeId()) && typeRepair.getTypeId().equals(typeConfigVo1.getTypeId())) {
// 3.如果相等把维修员信息设置到物资类型配置信息中
typeConfigVo1.setRepairUserId(typeRepair.getUserId());
typeConfigVo1.setRepairUserName(typeRepair.getUserName());
break;
}
}
// 1.外层 再对比库管班组
for (TypeKeeper typeKeeper : typeKeeperList) {
// 2.判断当前库管配置信息中的物资类型id是否等于当前物资类型配置信息中的物资类型id
if (Objects.nonNull(typeKeeper.getTypeId()) && typeKeeper.getTypeId().equals(typeConfigVo1.getTypeId())) {
// 3.如果相等把库管员信息设置到物资类型配置信息中
typeConfigVo1.setKeeperUserId(typeKeeper.getUserId());
typeConfigVo1.setKeeperUserName(typeKeeper.getUserName());
}
}
// 5.判断当前物资类型配置信息是否有子节点
if (typeConfigVo1.getChildren() != null) {
// 6.有子节点继续循环子节点判断子节点是否有维修配置信息
for (MaTypeConfigVo typeConfigVo2 : typeConfigVo1.getChildren()) {
// 7.有维修配置信息把维修员信息设置到子节点中
for (TypeRepair typeRepair : typeRepairList) {
if (Objects.nonNull(typeRepair.getTypeId()) && typeRepair.getTypeId().equals(typeConfigVo2.getTypeId())) {
typeConfigVo2.setRepairUserId(typeRepair.getUserId());
typeConfigVo2.setRepairUserName(typeRepair.getUserName());
}
}
}
// 8.有子节点继续循环子节点
for (MaTypeConfigVo typeConfigVo3 : typeConfigVo1.getChildren()) {
// 9.判断子节点是否有库管配置信息
for (TypeKeeper typeKeeper : typeKeeperList) {
if (Objects.nonNull(typeKeeper.getTypeId()) && typeKeeper.getTypeId().equals(typeConfigVo3.getTypeId())) {
typeConfigVo3.setKeeperUserId(typeKeeper.getUserId());
typeConfigVo3.setKeeperUserName(typeKeeper.getUserName());
}
}
}
}
}
// -------------------- 数据处理结束 ---------------------
// TODO: 先暂时取消后续过滤流程
if (true) {
return AjaxResult.success(list);
}
// ------------------- 数据过滤开始 ---------------------
if (maTypeConfigDto == null || maTypeConfigDto.getUserId() == null || maTypeConfigDto.getUserId() == 0L) {
// 如果参数无效则返回原始列表
return AjaxResult.success(list);
}
List<MaTypeConfigVo> filteredList = new ArrayList<>();
for (MaTypeConfigVo maTypeConfigVo : list) {
if (
maTypeConfigVo.getKeeperUserId().equals(maTypeConfigDto.getUserId()) ||
maTypeConfigVo.getRepairUserId().equals(maTypeConfigDto.getUserId())
)
{
filteredList.add(maTypeConfigVo);
}
}
// ------------------- 数据过滤结束 ---------------------
// 返回前端
return AjaxResult.success(filteredList);
}
// @Override
// public AjaxResult getMaTypeConfigList(MaTypeConfigDto maTypeConfigDto) {
// // 1.把所有物资类型查出来
// List<MaTypeConfigVo> list = selectThreeFourLevelTypeListAndParent(new Type());
// // 2.把维修配置信息查出来
// List<TypeRepair> typeRepairList = typeRepairService.selectTypeRepairListAndUserName(new TypeRepair());
// // 3.把库管配置信息查出来
// List<TypeKeeper> typeKeeperList = typeKeeperService.selectTypeKeeperListAndUserName(new TypeKeeper());
//
// // ------------------- 开启数据处理 ---------------------
//
// // 4.循环所有物资类型,重型数据集合保障只循环一次减少性能损失
// for (MaTypeConfigVo typeConfigVo1 : list) {
// // 1.外层 先对比维修班组
// for (TypeRepair typeRepair : typeRepairList) {
// // 2.判断当前维修配置信息中的物资类型id是否等于当前物资类型配置信息中的物资类型id
// if (Objects.nonNull(typeRepair.getTypeId()) && typeRepair.getTypeId().equals(typeConfigVo1.getTypeId())) {
// // 3.如果相等把维修员信息设置到物资类型配置信息中
// typeConfigVo1.setRepairUserId(typeRepair.getUserId());
// typeConfigVo1.setRepairUserName(typeRepair.getUserName());
// break;
// }
// }
// // 1.外层 再对比库管班组
// for (TypeKeeper typeKeeper : typeKeeperList) {
// // 2.判断当前库管配置信息中的物资类型id是否等于当前物资类型配置信息中的物资类型id
// if (Objects.nonNull(typeKeeper.getTypeId()) && typeKeeper.getTypeId().equals(typeConfigVo1.getTypeId())) {
// // 3.如果相等把库管员信息设置到物资类型配置信息中
// typeConfigVo1.setKeeperUserId(typeKeeper.getUserId());
// typeConfigVo1.setKeeperUserName(typeKeeper.getUserName());
// }
// }
//
// // 5.判断当前物资类型配置信息是否有子节点
// if (typeConfigVo1.getChildren() != null) {
// // 6.有子节点继续循环子节点判断子节点是否有维修配置信息
// for (MaTypeConfigVo typeConfigVo2 : typeConfigVo1.getChildren()) {
// // 7.有维修配置信息把维修员信息设置到子节点中
// for (TypeRepair typeRepair : typeRepairList) {
// if (Objects.nonNull(typeRepair.getTypeId()) && typeRepair.getTypeId().equals(typeConfigVo2.getTypeId())) {
// typeConfigVo2.setRepairUserId(typeRepair.getUserId());
// typeConfigVo2.setRepairUserName(typeRepair.getUserName());
// }
// }
// }
//
// // 8.有子节点继续循环子节点
// for (MaTypeConfigVo typeConfigVo3 : typeConfigVo1.getChildren()) {
// // 9.判断子节点是否有库管配置信息
// for (TypeKeeper typeKeeper : typeKeeperList) {
// if (Objects.nonNull(typeKeeper.getTypeId()) && typeKeeper.getTypeId().equals(typeConfigVo3.getTypeId())) {
// typeConfigVo3.setKeeperUserId(typeKeeper.getUserId());
// typeConfigVo3.setKeeperUserName(typeKeeper.getUserName());
// }
// }
// }
// }
//
// }
//
// // -------------------- 数据处理结束 ---------------------
//
// // TODO: 先暂时取消后续过滤流程
// if (true) {
// return AjaxResult.success(list);
// }
//
//
// // ------------------- 数据过滤开始 ---------------------
// if (maTypeConfigDto == null || maTypeConfigDto.getUserId() == null || maTypeConfigDto.getUserId() == 0L) {
// // 如果参数无效则返回原始列表
// return AjaxResult.success(list);
// }
//
// List<MaTypeConfigVo> filteredList = new ArrayList<>();
//
// for (MaTypeConfigVo maTypeConfigVo : list) {
// if (
// maTypeConfigVo.getKeeperUserId().equals(maTypeConfigDto.getUserId()) ||
// maTypeConfigVo.getRepairUserId().equals(maTypeConfigDto.getUserId())
// )
// {
// filteredList.add(maTypeConfigVo);
// }
// }
//
// // ------------------- 数据过滤结束 ---------------------
//
//
// // 返回前端
// return AjaxResult.success(filteredList);
// }
@Override
public AjaxResult getMyTypeAndBindUsers(List<MaTypeListVo> list) {
public List<MaTypeListVo> getMyTypeAndBindUsers(List<MaTypeListVo> list) {
List<TypeRepair> typeRepairList = typeRepairService.selectTypeRepairListAndUserName(new TypeRepair());
List<TypeKeeper> typeKeeperList = typeKeeperService.selectTypeKeeperListAndUserName(new TypeKeeper());
for (MaTypeListVo maTypeListVo : list) {
@ -570,7 +570,7 @@ public class TypeServiceImpl implements ITypeService {
}
}
}
return AjaxResult.success(list);
return list;
}

View File

@ -11,6 +11,7 @@ import lombok.EqualsAndHashCode;
import lombok.ToString;
import com.bonus.common.core.web.domain.BaseEntity;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
/**
@ -46,6 +47,7 @@ public class PurchaseCheckInfo extends BaseEntity {
/** 到货日期 */
@ApiModelProperty(value = "到货日期")
@NotNull(message = "到货日期不能为空")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@Excel(name = "到货日期", width = 30, dateFormat = "yyyy-MM-dd")
private Date arrivalTime;