修改质检人员管理功能
This commit is contained in:
parent
904371dd49
commit
80d77a79fe
|
|
@ -43,14 +43,14 @@ public class QmsQualityInspectorController extends BaseController {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除质检人员(传入 userId,删除该用户所有关联记录,启用状态下不允许删除)
|
* 删除质检人员(传入 id,删除该用户所有关联记录,启用状态下不允许删除)
|
||||||
*
|
*
|
||||||
* @param userId 员工ID
|
* @param id 质检人员主表ID
|
||||||
*/
|
*/
|
||||||
@Transactional
|
@Transactional
|
||||||
@PostMapping("delete")
|
@PostMapping("delete")
|
||||||
public ApiResult<Void> delete(@NotNull Long userId) {
|
public ApiResult<Void> delete(@NotNull Long id) {
|
||||||
qualityInspectorService.delete(userId);
|
qualityInspectorService.delete(id);
|
||||||
return ApiResult.success();
|
return ApiResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -73,13 +73,13 @@ public class QmsQualityInspectorController extends BaseController {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 按员工ID查询质检人员详情(物料和物料类别分开返回,不分页)
|
* 按ID查询质检人员详情(物料和物料类别分开返回,不分页)
|
||||||
*
|
*
|
||||||
* @param userId 员工ID(user.id)
|
* @param id 质检人员主表ID
|
||||||
*/
|
*/
|
||||||
@GetMapping("detail")
|
@GetMapping("detail")
|
||||||
public ApiResult<QmsQualityInspectorDetailVO> detail(@NotNull Long userId) {
|
public ApiResult<QmsQualityInspectorDetailVO> detail(@NotNull Long id) {
|
||||||
return ApiResult.success(qualityInspectorService.getDetailByUserId(userId));
|
return ApiResult.success(qualityInspectorService.getDetailByUserId(id));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -88,7 +88,7 @@ public class QmsQualityInspectorController extends BaseController {
|
||||||
@Transactional
|
@Transactional
|
||||||
@PostMapping("updateStatus")
|
@PostMapping("updateStatus")
|
||||||
public ApiResult<Void> updateStatus(@Valid @RequestBody QmsQualityInspectorStatusQO request) {
|
public ApiResult<Void> updateStatus(@Valid @RequestBody QmsQualityInspectorStatusQO request) {
|
||||||
qualityInspectorService.updateStatus(request.getUserId(), request.getEnable());
|
qualityInspectorService.updateStatus(request.getId(), request.getEnable());
|
||||||
return ApiResult.success();
|
return ApiResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -105,12 +105,12 @@ public class QmsQualityInspectorController extends BaseController {
|
||||||
/**
|
/**
|
||||||
* 取消转办(将该质检人所有记录的转办人清空)
|
* 取消转办(将该质检人所有记录的转办人清空)
|
||||||
*
|
*
|
||||||
* @param userId 员工ID
|
* @param id 质检人员主表ID
|
||||||
*/
|
*/
|
||||||
@Transactional
|
@Transactional
|
||||||
@PostMapping("cancelTransfer")
|
@PostMapping("cancelTransfer")
|
||||||
public ApiResult<Void> cancelTransfer(@NotNull Long userId) {
|
public ApiResult<Void> cancelTransfer(@NotNull Long id) {
|
||||||
qualityInspectorService.cancelTransfer(userId);
|
qualityInspectorService.cancelTransfer(id);
|
||||||
return ApiResult.success();
|
return ApiResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -10,10 +10,10 @@ import lombok.Data;
|
||||||
public class QmsQualityInspectorStatusQO {
|
public class QmsQualityInspectorStatusQO {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 质检人ID,必传
|
* 质检人员主表ID,必传
|
||||||
*/
|
*/
|
||||||
@NotNull(message = "质检人ID不能为空")
|
@NotNull(message = "ID不能为空")
|
||||||
private Long userId;
|
private Long id;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 状态:true=启用,false=禁用
|
* 状态:true=启用,false=禁用
|
||||||
|
|
|
||||||
|
|
@ -31,9 +31,9 @@ public interface IQmsQualityInspectorService extends IService<QmsQualityInspecto
|
||||||
void add(QmsQualityInspectorAddQO request);
|
void add(QmsQualityInspectorAddQO request);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除质检人员(传入 userId,删除该用户所有关联记录,启用状态不允许删除)
|
* 删除质检人员(传入主表 id,删除该用户所有关联记录,启用状态不允许删除)
|
||||||
*/
|
*/
|
||||||
void delete(Long userId);
|
void delete(Long id);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改质检人员的物料/物料类别(追加或删除)
|
* 修改质检人员的物料/物料类别(追加或删除)
|
||||||
|
|
@ -46,14 +46,14 @@ public interface IQmsQualityInspectorService extends IService<QmsQualityInspecto
|
||||||
IPage<QmsQualityInspectorVO> search(QmsQualityInspectorSearchQO request);
|
IPage<QmsQualityInspectorVO> search(QmsQualityInspectorSearchQO request);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 按员工ID(user_id)查询质检人员详情,物料和物料类别分开返回(不分页)
|
* 按主表 id 查询质检人员详情,物料和物料类别分开返回(不分页)
|
||||||
*/
|
*/
|
||||||
QmsQualityInspectorDetailVO getDetailByUserId(Long userId);
|
QmsQualityInspectorDetailVO getDetailByUserId(Long id);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改状态(将该质检人的所有记录状态全改)
|
* 修改状态(将该质检人的所有记录状态全改)
|
||||||
*/
|
*/
|
||||||
void updateStatus(Long userId, Boolean enable);
|
void updateStatus(Long id, Boolean enable);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 转办(将该质检人所有记录设置转办人)
|
* 转办(将该质检人所有记录设置转办人)
|
||||||
|
|
@ -63,7 +63,7 @@ public interface IQmsQualityInspectorService extends IService<QmsQualityInspecto
|
||||||
/**
|
/**
|
||||||
* 取消转办(将该质检人所有记录的转办人清空)
|
* 取消转办(将该质检人所有记录的转办人清空)
|
||||||
*/
|
*/
|
||||||
void cancelTransfer(Long userId);
|
void cancelTransfer(Long id);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 按 userId 查询当前用户绑定的物料列表(支持物料编号/类别/描述过滤,分页)
|
* 按 userId 查询当前用户绑定的物料列表(支持物料编号/类别/描述过滤,分页)
|
||||||
|
|
|
||||||
|
|
@ -181,11 +181,9 @@ public class QmsQualityInspectorServiceImpl extends ServiceImpl<QmsQualityInspec
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
@Override
|
@Override
|
||||||
public void delete(Long userId) {
|
public void delete(Long id) {
|
||||||
// 查询主表记录
|
// 按主表 id 查主表记录
|
||||||
QmsQualityInspector inspector = lambdaQuery()
|
QmsQualityInspector inspector = getById(id);
|
||||||
.eq(QmsQualityInspector::getUserId, userId)
|
|
||||||
.one();
|
|
||||||
if (Objects.isNull(inspector)) {
|
if (Objects.isNull(inspector)) {
|
||||||
throw new NflgException(STATE.BusinessError, "该质检人员不存在");
|
throw new NflgException(STATE.BusinessError, "该质检人员不存在");
|
||||||
}
|
}
|
||||||
|
|
@ -193,16 +191,15 @@ public class QmsQualityInspectorServiceImpl extends ServiceImpl<QmsQualityInspec
|
||||||
if (Boolean.TRUE.equals(inspector.getEnable())) {
|
if (Boolean.TRUE.equals(inspector.getEnable())) {
|
||||||
throw new NflgException(STATE.BusinessError, "该质检人员处于启用状态,不允许删除,请先禁用后再删除");
|
throw new NflgException(STATE.BusinessError, "该质检人员处于启用状态,不允许删除,请先禁用后再删除");
|
||||||
}
|
}
|
||||||
Long inspectorId = inspector.getId();
|
|
||||||
// 删除两张明细表
|
// 删除两张明细表
|
||||||
materialItemService.lambdaUpdate()
|
materialItemService.lambdaUpdate()
|
||||||
.eq(QmsInspectorMaterialItem::getInspectorId, inspectorId)
|
.eq(QmsInspectorMaterialItem::getInspectorId, id)
|
||||||
.remove();
|
.remove();
|
||||||
materialCategoryItemService.lambdaUpdate()
|
materialCategoryItemService.lambdaUpdate()
|
||||||
.eq(QmsInspectorMaterialCategoryItem::getInspectorId, inspectorId)
|
.eq(QmsInspectorMaterialCategoryItem::getInspectorId, id)
|
||||||
.remove();
|
.remove();
|
||||||
// 删除主表
|
// 删除主表
|
||||||
removeById(inspectorId);
|
removeById(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
// ========================= 修改物料/物料类别 =========================
|
// ========================= 修改物料/物料类别 =========================
|
||||||
|
|
@ -326,15 +323,15 @@ public class QmsQualityInspectorServiceImpl extends ServiceImpl<QmsQualityInspec
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public QmsQualityInspectorDetailVO getDetailByUserId(Long userId) {
|
public QmsQualityInspectorDetailVO getDetailByUserId(Long id) {
|
||||||
// 按 user_id 查主表,取到 inspector.id 后再查两张明细表
|
// 按主表 id 查主表
|
||||||
QmsQualityInspector inspector = lambdaQuery()
|
QmsQualityInspector inspector = getById(id);
|
||||||
.eq(QmsQualityInspector::getUserId, userId)
|
|
||||||
.one();
|
|
||||||
if (Objects.isNull(inspector)) {
|
if (Objects.isNull(inspector)) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Long userId = inspector.getUserId();
|
||||||
|
|
||||||
// 查 user 信息
|
// 查 user 信息
|
||||||
User user = userService.getById(userId);
|
User user = userService.getById(userId);
|
||||||
|
|
||||||
|
|
@ -373,10 +370,9 @@ public class QmsQualityInspectorServiceImpl extends ServiceImpl<QmsQualityInspec
|
||||||
detail.setDeptLeaderName(null);
|
detail.setDeptLeaderName(null);
|
||||||
detail.setPositionName(positionName);
|
detail.setPositionName(positionName);
|
||||||
|
|
||||||
// 用主表 id(inspectorId)查明细表(明细表 inspector_id = qms_quality_inspector.id)
|
// 用主表 id 查明细表
|
||||||
Long inspectorId = inspector.getId();
|
detail.setMaterials(baseMapper.getMaterialsByInspectorId(id));
|
||||||
detail.setMaterials(baseMapper.getMaterialsByInspectorId(inspectorId));
|
detail.setCategories(baseMapper.getCategoriesByInspectorId(id));
|
||||||
detail.setCategories(baseMapper.getCategoriesByInspectorId(inspectorId));
|
|
||||||
|
|
||||||
return detail;
|
return detail;
|
||||||
}
|
}
|
||||||
|
|
@ -385,25 +381,22 @@ public class QmsQualityInspectorServiceImpl extends ServiceImpl<QmsQualityInspec
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
@Override
|
@Override
|
||||||
public void updateStatus(Long userId, Boolean enable) {
|
public void updateStatus(Long id, Boolean enable) {
|
||||||
// 仅在改为启用时做校验
|
// 仅在改为启用时做校验
|
||||||
if (Boolean.TRUE.equals(enable)) {
|
if (Boolean.TRUE.equals(enable)) {
|
||||||
QmsQualityInspector inspector = lambdaQuery()
|
QmsQualityInspector inspector = getById(id);
|
||||||
.eq(QmsQualityInspector::getUserId, userId)
|
|
||||||
.one();
|
|
||||||
if (Objects.isNull(inspector)) {
|
if (Objects.isNull(inspector)) {
|
||||||
throw new NflgException(STATE.BusinessError, "该质检人员不存在");
|
throw new NflgException(STATE.BusinessError, "该质检人员不存在");
|
||||||
}
|
}
|
||||||
Long inspectorId = inspector.getId();
|
|
||||||
|
|
||||||
// 查当前人员绑定的物料ID列表
|
// 查当前人员绑定的物料ID列表
|
||||||
List<QmsInspectorMaterialItem> myMaterials = materialItemService.lambdaQuery()
|
List<QmsInspectorMaterialItem> myMaterials = materialItemService.lambdaQuery()
|
||||||
.eq(QmsInspectorMaterialItem::getInspectorId, inspectorId)
|
.eq(QmsInspectorMaterialItem::getInspectorId, id)
|
||||||
.list();
|
.list();
|
||||||
|
|
||||||
// 查当前人员绑定的物料类别ID列表
|
// 查当前人员绑定的物料类别ID列表
|
||||||
List<QmsInspectorMaterialCategoryItem> myCategories = materialCategoryItemService.lambdaQuery()
|
List<QmsInspectorMaterialCategoryItem> myCategories = materialCategoryItemService.lambdaQuery()
|
||||||
.eq(QmsInspectorMaterialCategoryItem::getInspectorId, inspectorId)
|
.eq(QmsInspectorMaterialCategoryItem::getInspectorId, id)
|
||||||
.list();
|
.list();
|
||||||
|
|
||||||
// 校验物料是否已被其他启用的质检员接管
|
// 校验物料是否已被其他启用的质检员接管
|
||||||
|
|
@ -414,7 +407,7 @@ public class QmsQualityInspectorServiceImpl extends ServiceImpl<QmsQualityInspec
|
||||||
// 查其他人员中是否有相同物料绑定(排除自己)
|
// 查其他人员中是否有相同物料绑定(排除自己)
|
||||||
List<QmsInspectorMaterialItem> conflictItems = materialItemService.lambdaQuery()
|
List<QmsInspectorMaterialItem> conflictItems = materialItemService.lambdaQuery()
|
||||||
.in(QmsInspectorMaterialItem::getMaterialId, myMaterialIds)
|
.in(QmsInspectorMaterialItem::getMaterialId, myMaterialIds)
|
||||||
.ne(QmsInspectorMaterialItem::getInspectorId, inspectorId)
|
.ne(QmsInspectorMaterialItem::getInspectorId, id)
|
||||||
.list();
|
.list();
|
||||||
if (!conflictItems.isEmpty()) {
|
if (!conflictItems.isEmpty()) {
|
||||||
// 进一步判断接管人员是否处于启用状态
|
// 进一步判断接管人员是否处于启用状态
|
||||||
|
|
@ -439,7 +432,7 @@ public class QmsQualityInspectorServiceImpl extends ServiceImpl<QmsQualityInspec
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
List<QmsInspectorMaterialCategoryItem> conflictItems = materialCategoryItemService.lambdaQuery()
|
List<QmsInspectorMaterialCategoryItem> conflictItems = materialCategoryItemService.lambdaQuery()
|
||||||
.in(QmsInspectorMaterialCategoryItem::getMaterialCategoryId, myCategoryIds)
|
.in(QmsInspectorMaterialCategoryItem::getMaterialCategoryId, myCategoryIds)
|
||||||
.ne(QmsInspectorMaterialCategoryItem::getInspectorId, inspectorId)
|
.ne(QmsInspectorMaterialCategoryItem::getInspectorId, id)
|
||||||
.list();
|
.list();
|
||||||
if (!conflictItems.isEmpty()) {
|
if (!conflictItems.isEmpty()) {
|
||||||
List<Long> conflictInspectorIds = conflictItems.stream()
|
List<Long> conflictInspectorIds = conflictItems.stream()
|
||||||
|
|
@ -458,7 +451,7 @@ public class QmsQualityInspectorServiceImpl extends ServiceImpl<QmsQualityInspec
|
||||||
}
|
}
|
||||||
|
|
||||||
lambdaUpdate()
|
lambdaUpdate()
|
||||||
.eq(QmsQualityInspector::getUserId, userId)
|
.eq(QmsQualityInspector::getId, id)
|
||||||
.set(QmsQualityInspector::getEnable, enable)
|
.set(QmsQualityInspector::getEnable, enable)
|
||||||
.set(QmsQualityInspector::getUpdateBy, UserUtil.getUserName())
|
.set(QmsQualityInspector::getUpdateBy, UserUtil.getUserName())
|
||||||
.set(QmsQualityInspector::getUpdateTime, LocalDateTime.now())
|
.set(QmsQualityInspector::getUpdateTime, LocalDateTime.now())
|
||||||
|
|
@ -482,9 +475,9 @@ public class QmsQualityInspectorServiceImpl extends ServiceImpl<QmsQualityInspec
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
@Override
|
@Override
|
||||||
public void cancelTransfer(Long userId) {
|
public void cancelTransfer(Long id) {
|
||||||
lambdaUpdate()
|
lambdaUpdate()
|
||||||
.eq(QmsQualityInspector::getUserId, userId)
|
.eq(QmsQualityInspector::getId, id)
|
||||||
.set(QmsQualityInspector::getChangeUserId, null)
|
.set(QmsQualityInspector::getChangeUserId, null)
|
||||||
.set(QmsQualityInspector::getUpdateBy, UserUtil.getUserName())
|
.set(QmsQualityInspector::getUpdateBy, UserUtil.getUserName())
|
||||||
.set(QmsQualityInspector::getUpdateTime, LocalDateTime.now())
|
.set(QmsQualityInspector::getUpdateTime, LocalDateTime.now())
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue