作业中心修改

liweidong
pangyang 2 months ago
parent e3d805be3f
commit 71b9563240
  1. 7
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/pojo/entity/WorkCenter.java
  2. 20
      blade-service-api/blade-dict-api/src/main/java/org/springblade/system/cache/DictCache.java
  3. 18
      blade-service-api/blade-scheduling-api/src/main/java/org/springblade/scheduling/pojo/entity/CraftAbilityEntity.java
  4. 38
      blade-service-api/blade-system-api/src/main/java/org/springblade/system/cache/SysCache.java
  5. 52
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/controller/WorkCenterController.java
  6. 2
      blade-service/blade-system/src/main/java/org/springblade/system/controller/UserController.java
  7. 3
      blade-service/blade-system/src/main/java/org/springblade/system/mapper/UserMapper.java
  8. 40
      blade-service/blade-system/src/main/java/org/springblade/system/mapper/UserMapper.xml
  9. 3
      blade-service/blade-system/src/main/java/org/springblade/system/service/IUserService.java
  10. 8
      blade-service/blade-system/src/main/java/org/springblade/system/service/impl/UserServiceImpl.java

@ -9,6 +9,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.BaseEntity;
import org.springblade.scheduling.pojo.entity.CraftAbilityEntity;
import java.io.Serial;
import java.math.BigDecimal;
@ -57,6 +58,8 @@ public class WorkCenter extends BaseEntity {
* 班组
*/
public static final String COL_TEAM = "TEAM";
public static final String COL_TEAM_ID = "TEAM_ID";
/**
* 面积
*/
@ -208,7 +211,7 @@ public class WorkCenter extends BaseEntity {
* [交付中心]id
*/
@Schema(description = "[交付中心]id")
private Long jcId;
private String jcId;
/**
* 备注
*/
@ -219,6 +222,6 @@ public class WorkCenter extends BaseEntity {
private List<Long> teamIds;
@TableField(exist = false)
private List<Long> craftIds;
private List<CraftAbilityEntity> crafs;
}

@ -33,10 +33,12 @@ import org.springblade.system.pojo.entity.Dict;
import org.springblade.system.pojo.enums.DictEnum;
import org.springblade.system.feign.IDictClient;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
import static org.springblade.core.cache.constant.CacheConstant.DICT_CACHE;
import static org.springblade.core.cache.constant.CacheConstant.SYS_CACHE;
/**
* 字典缓存工具类
@ -122,10 +124,20 @@ public class DictCache {
* @return String
*/
public static String getValue(String code, Integer dictKey) {
return CacheUtil.get(DICT_CACHE, DICT_VALUE + code + StringPool.COLON, String.valueOf(dictKey), () -> {
R<String> result = getDictClient().getValue(code, String.valueOf(dictKey));
return result.getData();
}, TENANT_MODE);
// return CacheUtil.get(DICT_CACHE, DICT_VALUE + code + StringPool.COLON, String.valueOf(dictKey), () -> {
// R<String> result = getDictClient().getValue(code, String.valueOf(dictKey));
// return result.getData();
// }, TENANT_MODE);
try {
return CacheUtil.get(DICT_CACHE, DICT_VALUE + code + StringPool.COLON, String.valueOf(dictKey), () -> {
R<String> result = getDictClient().getValue(code, String.valueOf(dictKey));
return result.getData();
}, TENANT_MODE);
} catch (Exception e) {
// 返回默认值或空列表
return null;
}
}
/**

@ -68,20 +68,22 @@ public class CraftAbilityEntity extends BaseEntity {
@Schema(description = "能力类型")
private Long wtId;
/**
* 设备名称
* 镀种小类
*/
@Schema(description = "设备名称")
@Schema(description = "镀种小类")
private Long bpsId;
@TableField(exist = false)
private List<Long> ids;
@Schema(description = "面积")
private BigDecimal area;
/**
* 镀种小类
*/
@Schema(description = "镀种小类")
private String platingSmall;
@Schema(description = "数量")
private int quality;
@Schema(description = "批次")
private String batch;
@Schema(description = "饱和度")
private BigDecimal saturation;
}

@ -34,6 +34,7 @@ import org.springblade.system.feign.ISysClient;
import org.springblade.system.pojo.entity.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
@ -153,10 +154,21 @@ public class SysCache {
* @return 部门名
*/
public static List<String> getDeptNames(String deptIds) {
return CacheUtil.get(SYS_CACHE, DEPT_NAMES_ID, deptIds, () -> {
R<List<String>> result = getSysClient().getDeptNames(deptIds);
return result.getData();
});
// return CacheUtil.get(SYS_CACHE, DEPT_NAMES_ID, deptIds, () -> {
// R<List<String>> result = getSysClient().getDeptNames(deptIds);
// return result.getData();
// });
try {
return CacheUtil.get(SYS_CACHE, DEPT_NAMES_ID, deptIds, () -> {
R<List<String>> result = getSysClient().getDeptNames(deptIds);
return result.getData();
});
} catch (Exception e) {
// 记录日志并返回空列表或默认值
// log.error("Failed to deserialize department names from cache", e);
return Collections.emptyList(); // 或者返回默认值
}
}
/**
@ -257,10 +269,20 @@ public class SysCache {
* @return 岗位名
*/
public static List<String> getPostNames(String postIds) {
return CacheUtil.get(SYS_CACHE, POST_NAMES_ID, postIds, () -> {
R<List<String>> result = getSysClient().getPostNames(postIds);
return result.getData();
});
// return CacheUtil.get(SYS_CACHE, POST_NAMES_ID, postIds, () -> {
// R<List<String>> result = getSysClient().getPostNames(postIds);
// return result.getData();
// });
try {
return CacheUtil.get(SYS_CACHE, POST_NAMES_ID, postIds, () -> {
R<List<String>> result = getSysClient().getPostNames(postIds);
return result.getData();
});
} catch (Exception e) {
// 返回默认值或空列表
return Collections.emptyList();
}
}
/**

@ -37,13 +37,11 @@ import org.springblade.desk.basic.wrapper.WorkCenterWrapper;
import org.springblade.scheduling.pojo.entity.CraftAbilityEntity;
import org.springblade.scheduling.pojo.entity.TeamSetEntity;
import org.springframework.http.ResponseEntity;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
/**
@ -94,8 +92,12 @@ public class WorkCenterController extends BladeController {
QueryWrapper<WorkCenter> qw = Condition.getQueryWrapper(workCenter, WorkCenter.class);
qw.like(workCenter.containsKey("wcCode"), WorkCenter.COL_WC_CODE, Func.toStr(workCenter.get("wcCode")));
qw.like(workCenter.containsKey("wcName"), WorkCenter.COL_WC_NAME, Func.toInt(workCenter.get("wcName")));
qw.like(workCenter.containsKey("processes"), WorkCenter.COL_PROCESSES, Func.toInt(workCenter.get("processes")));
qw.like(workCenter.containsKey("wcName"), WorkCenter.COL_WC_NAME, Func.toStr(workCenter.get("wcName")));
qw.like(workCenter.containsKey("processes"), WorkCenter.COL_PROCESSES, Func.toStr(workCenter.get("processes")));
qw.like(workCenter.containsKey("sign"), WorkCenter.COL_SIGN, Func.toStr(workCenter.get("sign")));
qw.eq(workCenter.containsKey("leaderUser"), WorkCenter.COL_LEADER_USER, Func.toLong(workCenter.get("leaderUser")));
qw.like(workCenter.containsKey("team"), WorkCenter.COL_TEAM, Func.toStr(workCenter.get("team")));
qw.like(workCenter.containsKey("teamId"), WorkCenter.COL_TEAM_ID, Func.toStr(workCenter.get("teamId")));
IPage<WorkCenter> pages = service.page(Condition.getPage(query), qw);
IPage<WorkCenterVO> pagesVO = WorkCenterWrapper.build().pageVO(pages);
@ -218,18 +220,29 @@ public class WorkCenterController extends BladeController {
@PostMapping("/updateTeamId")
@ApiOperationSupport(order = 31)
@Operation(summary = "设置班组Id保存", description = "传入WorkCenter List")
@Transactional
public R updateTeamId(@Valid @RequestBody WorkCenter workCenter) {
QueryWrapper<WorkCenter> qw = Condition.getQueryWrapper(workCenter);
WorkCenter detail = service.getOne(qw);
List<Long> teamIds = workCenter.getTeamIds();
String result = null;
String team = null;
if(null != teamIds){
result = teamIds.stream()
.map(Object::toString) // 或者直接使用String::valueOf,效果相同
.collect(Collectors.joining(","));
QueryWrapper<TeamSet> queryWrapper = new QueryWrapper<>();
queryWrapper.in("id",teamIds);
List<TeamSet> teams = teamService.list(queryWrapper);
team= teams.stream()
.map(user -> String.valueOf(user.getTsName()))
.collect(Collectors.joining(","));
}
detail.setTeamId(result);
detail.setTeam(team);
service.updateById(detail);
return R.status(true);
}
@ -238,18 +251,37 @@ public class WorkCenterController extends BladeController {
@PostMapping("/updateCraftAbilityId")
@ApiOperationSupport(order = 31)
@Operation(summary = "设置工艺Id保存", description = "传入WorkCenter List")
@Transactional
public R updateCraftAbilityId(@Valid @RequestBody WorkCenter workCenter) {
QueryWrapper<WorkCenter> qw = Condition.getQueryWrapper(workCenter);
WorkCenter detail = service.getOne(qw);
List<Long> craftIds = workCenter.getCraftIds();
// List<Long> craftIds = workCenter.getCraftIds();
List<CraftAbilityEntity> crafs = workCenter.getCrafs();
String result = null;
if(null != craftIds){
result = craftIds.stream()
.map(Object::toString) // 或者直接使用String::valueOf,效果相同
String craftAbility = null;
if(null != crafs && crafs.size()>0){
for(CraftAbilityEntity craft:crafs){
craftAbilityService.updateById(craft);
}
// result= crafs.stream()
// .map(user -> String.valueOf(user.getId()))
// .collect(Collectors.joining(","));
result= crafs.stream()
.map(craf -> craf.getId())
.filter(Objects::nonNull) // 过滤 null 的 role_id
.map(String::valueOf) // 转换为 String 类型(适配 joining)
.collect(Collectors.joining(",")); // 用逗号拼接
craftAbility= crafs.stream()
.map(user -> String.valueOf(user.getCaName()))
.collect(Collectors.joining(","));
}
detail.setCraftAbilityId(result);
detail.setCraftAbility(craftAbility);
service.updateById(detail);
return R.status(true);
}

@ -136,6 +136,8 @@ public class UserController {
public R<IPage<UserVO>> page(@Parameter(hidden = true) User user, Query query, Long deptId, BladeUser bladeUser) {
IPage<User> pages = userService.selectUserPage(Condition.getPage(query), user, deptId, (bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? StringPool.EMPTY : bladeUser.getTenantId()));
return R.data(UserWrapper.build().pageVO(pages));
// IPage<UserVO> pages = userService.selectUserPageVo(Condition.getPage(query), user, deptId, (bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? StringPool.EMPTY : bladeUser.getTenantId()));
// return R.data(pages);
}
/**

@ -31,6 +31,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import org.springblade.system.pojo.entity.User;
import org.springblade.system.excel.UserExcel;
import org.springblade.system.pojo.vo.UserVO;
import java.util.List;
@ -52,6 +53,8 @@ public interface UserMapper extends BaseMapper<User> {
*/
List<User> selectUserPage(IPage<User> page, @Param("user") User user, @Param("deptIdList") List<Long> deptIdList, @Param("tenantId") String tenantId);
List<UserVO> selectUserPageVo(IPage<UserVO> page, @Param("user") User user, @Param("deptIdList") List<Long> deptIdList, @Param("tenantId") String tenantId);
/**
* 获取用户
*

@ -27,6 +27,46 @@
<result column="post_id" property="postId"/>
</resultMap>
<select id="selectUserPageVo" resultType="org.springblade.system.pojo.vo.UserVO">
select * from blade_user where is_deleted = 0
<if test="tenantId!=null and tenantId != ''">
and tenant_id = #{tenantId}
</if>
<if test="user.tenantId!=null and user.tenantId != ''">
and tenant_id = #{user.tenantId}
</if>
<if test="user.account!=null and user.account != ''">
and account = #{user.account}
</if>
<if test="user.roleId!=null and user.roleId != ''">
and role_id like '%' || #{user.roleId} || '%'
</if>
<if test="user.realName!=null and user.realName != ''">
and real_name = #{user.realName}
</if>
<if test="user.userType!=null and user.userType != ''">
and user_type = #{user.userType}
</if>
<if test="user.status!=null and user.status>=0">
and status = #{user.status}
</if>
<if test="deptIdList!=null and deptIdList.size>0">
and id in (
SELECT
user_id
FROM
blade_user_dept
WHERE
dept_id IN
<foreach collection="deptIdList" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
)
</if>
ORDER BY id
</select>
<select id="selectUserPage" resultMap="userResultMap">
select * from blade_user where is_deleted = 0
<if test="tenantId!=null and tenantId != ''">

@ -81,6 +81,9 @@ public interface IUserService extends BaseService<User> {
*/
IPage<User> selectUserPage(IPage<User> page, User user, Long deptId, String tenantId);
IPage<UserVO> selectUserPageVo(IPage<UserVO> page, User user, Long deptId, String tenantId);
/**
* 自定义分页
*

@ -192,6 +192,14 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, User> implement
return page.setRecords(baseMapper.selectUserPage(page, user, deptIdList, tenantId));
}
@Override
public IPage<UserVO> selectUserPageVo(IPage<UserVO> page, User user, Long deptId, String tenantId) {
List<Long> deptIdList = SysCache.getDeptChildIds(deptId);
// return page.setRecords(baseMapper.selectUserPage(page, user, deptIdList, tenantId));
return page.setRecords(baseMapper.selectUserPageVo(page, user, deptIdList, tenantId));
}
@Override
public IPage<UserVO> selectUserSearch(UserVO user, Query query) {
LambdaQueryWrapper<User> queryWrapper = Wrappers.<User>query().lambda();

Loading…
Cancel
Save