修改供应商管理功能
This commit is contained in:
parent
75f1df3ab5
commit
f322b18b8c
|
|
@ -1,5 +1,7 @@
|
|||
package com.nflg.qms.admin.controller;
|
||||
|
||||
import com.nflg.qms.admin.service.BasdeSerialNumberControllerService;
|
||||
import com.nflg.qms.admin.service.ISendMessageService;
|
||||
import com.nflg.wms.common.pojo.ApiResult;
|
||||
import com.nflg.wms.common.pojo.PageData;
|
||||
import com.nflg.wms.common.pojo.qo.QmsCoaTaskAddQO;
|
||||
|
|
@ -9,6 +11,9 @@ import com.nflg.wms.common.pojo.qo.QmsCoaTaskUpdateQO;
|
|||
import com.nflg.wms.common.pojo.vo.QmsCoaTaskDetailVO;
|
||||
import com.nflg.wms.common.pojo.vo.QmsCoaTaskMaterialVO;
|
||||
import com.nflg.wms.common.pojo.vo.QmsCoaTaskVO;
|
||||
import com.nflg.wms.common.util.UserUtil;
|
||||
import com.nflg.wms.repository.entity.QmsCoaTask;
|
||||
import com.nflg.wms.repository.entity.QmsTodoItem;
|
||||
import com.nflg.wms.repository.service.IQmsCoaTaskService;
|
||||
import com.nflg.wms.starter.BaseController;
|
||||
import jakarta.annotation.Resource;
|
||||
|
|
@ -29,6 +34,12 @@ public class QmsCoaTaskController extends BaseController {
|
|||
@Resource
|
||||
private IQmsCoaTaskService coaTaskService;
|
||||
|
||||
@Resource
|
||||
private List<ISendMessageService> sendMessageServices;
|
||||
|
||||
@Resource
|
||||
private BasdeSerialNumberControllerService basdeSerialNumberControllerService;
|
||||
|
||||
/**
|
||||
* 新增COA通知任务
|
||||
* 状态默认为0(待发送)
|
||||
|
|
@ -69,6 +80,17 @@ public class QmsCoaTaskController extends BaseController {
|
|||
@PostMapping("publish")
|
||||
public ApiResult<Void> publish(@Valid @RequestBody QmsCoaTaskAddQO qo) {
|
||||
coaTaskService.publish(qo);
|
||||
|
||||
// 推送COA通知
|
||||
QmsTodoItem qmsTodoItem = new QmsTodoItem()
|
||||
.setCode(basdeSerialNumberControllerService.generateSerialNumber(32))
|
||||
.setIsRead(false)
|
||||
.setSourceTypeId(2046157760401182721L)
|
||||
.setSourceId(coaTaskService.lambdaQuery().eq(QmsCoaTask::getMaterialId,qo.getMaterialNo()).one().getId())
|
||||
.setCreateUserId(UserUtil.getUserId())
|
||||
.setCreateUserName(UserUtil.getUserName())
|
||||
.setCreateTime(java.time.LocalDateTime.now());
|
||||
sendMessageServices.forEach(service -> service.sendSystemMessage(qmsTodoItem));
|
||||
return ApiResult.success();
|
||||
}
|
||||
|
||||
|
|
@ -81,6 +103,16 @@ public class QmsCoaTaskController extends BaseController {
|
|||
@PostMapping("send")
|
||||
public ApiResult<Void> send(@RequestBody List<Long> ids) {
|
||||
coaTaskService.send(ids);
|
||||
// 推送COA通知
|
||||
QmsTodoItem qmsTodoItem = new QmsTodoItem()
|
||||
.setCode(basdeSerialNumberControllerService.generateSerialNumber(32))
|
||||
.setIsRead(false)
|
||||
.setSourceTypeId(2046157760401182721L)
|
||||
.setSourceId(0L)
|
||||
.setCreateUserId(UserUtil.getUserId())
|
||||
.setCreateUserName(UserUtil.getUserName())
|
||||
.setCreateTime(java.time.LocalDateTime.now());
|
||||
sendMessageServices.forEach(service -> service.sendSystemMessage(qmsTodoItem));
|
||||
return ApiResult.success();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ public class QmsSupplierSqeController extends BaseController {
|
|||
}
|
||||
|
||||
/**
|
||||
* 设置用户(为选中供应商绑定用户,多对多,以供应商为主体)
|
||||
* 设置用户(为选中供应商全量替换负责人,以供应商为主体)
|
||||
*/
|
||||
@Transactional
|
||||
@PostMapping("setUser")
|
||||
|
|
|
|||
|
|
@ -125,28 +125,25 @@ public class QmsSupplierSqeMapServiceImpl extends ServiceImpl<QmsSupplierSqeMapM
|
|||
@Transactional
|
||||
@Override
|
||||
public void setUser(Long supplierId, List<Long> userIds) {
|
||||
// 查询该供应商已存在的用户ID集合
|
||||
Set<Long> existUserIds = lambdaQuery()
|
||||
// 先删除该供应商所有负责人关联
|
||||
lambdaUpdate()
|
||||
.eq(QmsSupplierSqeMap::getSupplierId, supplierId)
|
||||
.list()
|
||||
.stream()
|
||||
.map(QmsSupplierSqeMap::getUserId)
|
||||
.collect(Collectors.toSet());
|
||||
// 只插入不存在的记录,跳过重复的
|
||||
String operator = UserUtil.getUserName();
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
List<QmsSupplierSqeMap> toAdd = userIds.stream()
|
||||
.filter(userId -> !existUserIds.contains(userId))
|
||||
.map(userId -> new QmsSupplierSqeMap()
|
||||
.setSupplierId(supplierId)
|
||||
.setUserId(userId)
|
||||
.setEnable(true)
|
||||
.setCreateBy(operator)
|
||||
.setCreateTime(now)
|
||||
.setUpdateBy(operator)
|
||||
.setUpdateTime(now))
|
||||
.collect(Collectors.toList());
|
||||
if (!toAdd.isEmpty()) {
|
||||
.remove();
|
||||
|
||||
// 再全量插入传入的用户列表
|
||||
if (!CollectionUtils.isEmpty(userIds)) {
|
||||
String operator = UserUtil.getUserName();
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
List<QmsSupplierSqeMap> toAdd = userIds.stream()
|
||||
.map(userId -> new QmsSupplierSqeMap()
|
||||
.setSupplierId(supplierId)
|
||||
.setUserId(userId)
|
||||
.setEnable(true)
|
||||
.setCreateBy(operator)
|
||||
.setCreateTime(now)
|
||||
.setUpdateBy(operator)
|
||||
.setUpdateTime(now))
|
||||
.collect(Collectors.toList());
|
||||
saveBatch(toAdd);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue