功能修改

master
zhouxinyu 10 months ago
parent ad674601b1
commit 18c8b24514
  1. 35
      src/main/java/org/springblade/modules/business/contraller/DeviceTypeController.java
  2. 8
      src/main/java/org/springblade/modules/business/mapper/DeviceTypeMapper.java
  3. 16
      src/main/java/org/springblade/modules/business/mapper/DeviceTypeMapper.xml
  4. 3
      src/main/java/org/springblade/modules/business/pojo/dto/DeviceDTO.java
  5. 5
      src/main/java/org/springblade/modules/business/pojo/entity/Device.java
  6. 8
      src/main/java/org/springblade/modules/business/service/IDeviceTypeService.java
  7. 6
      src/main/java/org/springblade/modules/business/service/impl/DeviceTypeServiceImpl.java

@ -55,9 +55,10 @@ import java.util.stream.Collectors;
public class DeviceTypeController extends BladeController { public class DeviceTypeController extends BladeController {
private final IDeviceTypeService typeService; private final IDeviceTypeService typeService;
private final IDeviceService deviceService;
/** /**
* 设备表 详情 * 详情
*/ */
@GetMapping("/detail") @GetMapping("/detail")
@ApiOperationSupport(order = 1) @ApiOperationSupport(order = 1)
@ -83,7 +84,7 @@ public class DeviceTypeController extends BladeController {
/** /**
* 设备表 新增或修改 * 新增或修改
*/ */
@PostMapping("/submit") @PostMapping("/submit")
@ApiOperationSupport(order = 6) @ApiOperationSupport(order = 6)
@ -94,14 +95,42 @@ public class DeviceTypeController extends BladeController {
} }
/** /**
* 设备表 删除 * 删除
*/ */
@PostMapping("/remove") @PostMapping("/remove")
@ApiOperationSupport(order = 7) @ApiOperationSupport(order = 7)
public R remove(@RequestParam String ids) { public R remove(@RequestParam String ids) {
for (Long id : Func.toLongList(ids)) {
// 是否存在关联子项
LambdaQueryWrapper<DeviceType> wrapper = Wrappers.lambdaQuery(DeviceType.class);
wrapper.eq(DeviceType::getParentId,id);
List<DeviceType> list = typeService.list(wrapper);
if (list.size() > 0) {
DeviceType type = typeService.getById(id);
return R.fail(type.getTypeName() + "存在子项,请先解除设备类型关联再进行删除!");
}
// 是否存在设备已选择此类型
LambdaQueryWrapper<Device> queryWrapper = Wrappers.lambdaQuery(Device.class);
queryWrapper.like(Device::getType,id);
List<Device> deviceList = deviceService.list(queryWrapper);
if (deviceList.size() > 0) {
return R.fail("已有设备选择此类型,请勿删除");
}
}
return R.status(typeService.deleteLogic(Func.toLongList(ids))); return R.status(typeService.deleteLogic(Func.toLongList(ids)));
} }
/**
* 获取部门树形结构
*/
@GetMapping("/tree")
@ApiOperationSupport(order = 4)
@Operation(summary = "树形结构", description = "树形结构")
public R<List<DeviceTypeVO>> tree(String tenantId) {
List<DeviceTypeVO> tree = typeService.tree(tenantId);
return R.data(tree);
}
} }

@ -32,4 +32,12 @@ public interface DeviceTypeMapper extends BaseMapper<DeviceType> {
* @return * @return
*/ */
List<DeviceTypeVO> lazyList(Long parentId, Map<String, Object> param); List<DeviceTypeVO> lazyList(Long parentId, Map<String, Object> param);
/**
* 获取树形节点
*
* @param tenantId
* @return
*/
List<DeviceTypeVO> tree(String tenantId);
} }

@ -16,6 +16,15 @@
<result column="has_children" property="hasChildren"/> <result column="has_children" property="hasChildren"/>
</resultMap> </resultMap>
<resultMap id="treeNodeResultMap" type="org.springblade.core.tool.node.TreeNode">
<id column="id" property="id"/>
<result column="parent_id" property="parentId"/>
<result column="title" property="title"/>
<result column="value" property="value"/>
<result column="key" property="key"/>
<result column="has_children" property="hasChildren"/>
</resultMap>
<select id="lazyList" resultMap="deptVOResultMap"> <select id="lazyList" resultMap="deptVOResultMap">
SELECT SELECT
type.* , type.* ,
@ -42,4 +51,11 @@
ORDER BY type.sort ORDER BY type.sort
</select> </select>
<select id="tree" resultMap="treeNodeResultMap">
select id, parent_id, type_name as title, id as "value", id as "key" from lab_device_type where is_deleted = 0
<if test="_parameter!=null and _parameter!=''">
and tenant_id = #{_parameter}
</if>
ORDER BY sort
</select>
</mapper> </mapper>

@ -35,6 +35,9 @@ public class DeviceDTO extends Device {
// 设备类型 // 设备类型
private String type; private String type;
// 设备类型名称
private String typeName;
// 供应商 // 供应商
private String supplier; private String supplier;

@ -40,6 +40,11 @@ public class Device extends BaseEntity {
*/ */
private String type; private String type;
/**
* 设备类型名称
*/
private String typeName;
/** /**
* 设备位置 * 设备位置
*/ */

@ -33,4 +33,12 @@ public interface IDeviceTypeService extends BaseService<DeviceType> {
*/ */
List<DeviceTypeVO> lazyList(Long parentId, Map<String, Object> param); List<DeviceTypeVO> lazyList(Long parentId, Map<String, Object> param);
/**
* 树形结构
*
* @param tenantId
* @return
*/
List<DeviceTypeVO> tree(String tenantId);
} }

@ -59,8 +59,6 @@ public class DeviceTypeServiceImpl extends BaseServiceImpl<DeviceTypeMapper, Dev
@Override @Override
public List<DeviceTypeVO> lazyList(Long parentId, Map<String, Object> param) { public List<DeviceTypeVO> lazyList(Long parentId, Map<String, Object> param) {
Object o = param.get(PARENT_ID);
int size = param.size();
// 判断点击搜索但是没有查询条件的情况 // 判断点击搜索但是没有查询条件的情况
if (Func.isEmpty(param.get(PARENT_ID)) && param.size() == 1) { if (Func.isEmpty(param.get(PARENT_ID)) && param.size() == 1) {
parentId = 0L; parentId = 0L;
@ -80,4 +78,8 @@ public class DeviceTypeServiceImpl extends BaseServiceImpl<DeviceTypeMapper, Dev
return baseMapper.lazyList(parentId, param); return baseMapper.lazyList(parentId, param);
} }
@Override
public List<DeviceTypeVO> tree(String tenantId) {
return ForestNodeMerger.merge(baseMapper.tree(tenantId));
}
} }

Loading…
Cancel
Save