派工单 负责人多选

dev
siontion 5 months ago
parent 441ba2cdc0
commit 3b7cc59187

@ -27,6 +27,8 @@ import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.io.IOException;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;

@ -8,6 +8,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.List;
@Schema(description = "管理后台 - 派工单 Response VO")
@Data
@ -130,5 +131,11 @@ public class TaskDispatchRespVO {
@Schema(description = "计划状态")
private Integer planStatus;
@Schema(description = "负责人")
private List<Long> owners;
@Schema(description = "负责人")
private List<String> ownerNames;
}

@ -6,6 +6,7 @@ import lombok.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
/**
* DO
@ -39,6 +40,11 @@ public class TaskDispatchDetailDO extends BaseDO {
*
*/
private Long owner;
@TableField(exist = false)
private List<Long> owners;
@TableField(exist = false)
private List<String> ownerNames;
private String ownerIds;
/**
*
*/

@ -29,6 +29,7 @@ import com.chanko.yunxi.mes.module.biz.enums.*;
import com.chanko.yunxi.mes.module.biz.manager.CrossOrderManager;
import com.chanko.yunxi.mes.module.biz.service.serialnumber.SerialNumberService;
import com.chanko.yunxi.mes.module.system.dal.dataobject.user.AdminUserDO;
import com.chanko.yunxi.mes.module.system.dal.mysql.user.AdminUserMapper;
import com.chanko.yunxi.mes.module.system.service.user.AdminUserService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -40,10 +41,7 @@ import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception;
@ -76,6 +74,8 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
@Resource
private WorkshopMapper workshopMapper;
@Resource
private AdminUserMapper adminUserMapper;
@Override
@Transactional(rollbackFor = Exception.class)
@ -227,7 +227,22 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
@Override
public List<TaskDispatchDetailDO> getTaskDispatchDetailListByDispatchId(Long dispatchId) {
return taskDispatchDetailMapper.selectListByDispatchId(dispatchId);
List<TaskDispatchDetailDO> result = taskDispatchDetailMapper.selectListByDispatchId(dispatchId);
result.forEach(map ->{
List<Long> ids = new ArrayList<>();
List<String> names = new ArrayList<>();
if(map.getOwnerIds() != null){
Arrays.stream(map.getOwnerIds().split(",")).forEach(item ->{
ids.add(Long.parseLong(item.trim()));
names.add(adminUserMapper.selectById(Long.parseLong(item.trim())).getNickname());
});
}
map.setOwners(ids);
map.setOwnerNames(names);
});
return result;
}
@Override
@ -380,7 +395,10 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
}
private void createTaskDispatchDetailList(Long dispatchId, List<TaskDispatchDetailDO> list) {
list.forEach(o -> o.setDispatchId(dispatchId));
list.forEach(o -> {
o.setDispatchId(dispatchId);
o.setOwnerIds(o.getOwners().toString().replace("[","").replace("]",""));
});
// 分组更新与插入
List<TaskDispatchDetailDO> updateList = list.stream().filter(o -> o.getId() != null).collect(Collectors.toList());
List<TaskDispatchDetailDO> insertList = list.stream().filter(o -> o.getId() == null).collect(Collectors.toList());

@ -245,3 +245,7 @@ CREATE TABLE `base_process_setting` (
`tenant_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '租户编号',
PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='工时工价表';
alter table pro_task_dispatch_detail add column `owner_ids` VARCHAR(128) null comment '多个负责人' after `owner`;
alter table pro_task_dispatch_detail modify column `owner` bigint(20) null comment '负责人' ;

Loading…
Cancel
Save