|
|
|
@ -152,47 +152,48 @@ public class QcCheckTaskIncomeServiceImpl<QcCheckUnqualifiedService> implements
|
|
|
|
|
public int insertQcCheckTaskIncome(QcCheckTaskIncome qcCheckTaskIncome) {
|
|
|
|
|
logger.info("impl创建检验任务接收参数:"+JSONObject.toJSONString(qcCheckTaskIncome));
|
|
|
|
|
DynamicDataSourceContextHolder.push("ds_" + qcCheckTaskIncome.getFactoryCode());
|
|
|
|
|
String bpDD = DateUtils.parseDateToStr(DateUtils.YYYYMMDD, DateUtils.getNowDate());
|
|
|
|
|
int liushuiNum = qcCheckTaskIncomeMapper.getTodayMaxNum(qcCheckTaskIncome);
|
|
|
|
|
String liushuiStr = String.format("%04d", liushuiNum);
|
|
|
|
|
try {
|
|
|
|
|
String bpDD = DateUtils.parseDateToStr(DateUtils.YYYYMMDD, DateUtils.getNowDate());
|
|
|
|
|
int liushuiNum = qcCheckTaskIncomeMapper.getTodayMaxNum(qcCheckTaskIncome);
|
|
|
|
|
String liushuiStr = String.format("%04d", liushuiNum);
|
|
|
|
|
|
|
|
|
|
String createBy = SecurityUtils.getUsername();
|
|
|
|
|
Date nowDate= DateUtils.getNowDate();
|
|
|
|
|
//获取当前所选工厂
|
|
|
|
|
String factoryCode = qcCheckTaskIncome.getFactoryCode();
|
|
|
|
|
String createBy = SecurityUtils.getUsername();
|
|
|
|
|
Date nowDate= DateUtils.getNowDate();
|
|
|
|
|
//获取当前所选工厂
|
|
|
|
|
String factoryCode = qcCheckTaskIncome.getFactoryCode();
|
|
|
|
|
|
|
|
|
|
qcCheckTaskIncome.setCheckNo(bpDD+liushuiStr);
|
|
|
|
|
qcCheckTaskIncome.setCheckNo(bpDD+liushuiStr);
|
|
|
|
|
|
|
|
|
|
/**取检测项**/
|
|
|
|
|
QcCheckTypeProject qctp= new QcCheckTypeProject();
|
|
|
|
|
qctp.setTypeId(qcCheckTaskIncome.getCheckType());//生产过程检验
|
|
|
|
|
qctp.setMaterialCode(qcCheckTaskIncome.getMaterialCode());//特性
|
|
|
|
|
/**qc_check_type_project**///个性
|
|
|
|
|
List<QcCheckTaskDetail> items = qcCheckTypeProjectMapper.getTPByTypeMaterial(qctp);
|
|
|
|
|
/**qc_material_group_detail**/
|
|
|
|
|
QcMaterialGroupDetail group = qcMaterialGroupDetailMapper.getGroupByMaterial(qcCheckTaskIncome.getMaterialCode());
|
|
|
|
|
//共性
|
|
|
|
|
if(group == null){//默认
|
|
|
|
|
group = new QcMaterialGroupDetail();
|
|
|
|
|
QcProjectType initGroup = qcCheckTypeProjectMapper.getProductGroup(qcCheckTaskIncome.getMaterialCode());
|
|
|
|
|
if(initGroup != null){
|
|
|
|
|
group.setGroupId(initGroup.getGroupId());
|
|
|
|
|
}else{
|
|
|
|
|
/**取检测项**/
|
|
|
|
|
QcCheckTypeProject qctp= new QcCheckTypeProject();
|
|
|
|
|
qctp.setTypeId(qcCheckTaskIncome.getCheckType());//生产过程检验
|
|
|
|
|
qctp.setMaterialCode(qcCheckTaskIncome.getMaterialCode());//特性
|
|
|
|
|
/**qc_check_type_project**///个性
|
|
|
|
|
List<QcCheckTaskDetail> items = qcCheckTypeProjectMapper.getTPByTypeMaterial(qctp);
|
|
|
|
|
/**qc_material_group_detail**/
|
|
|
|
|
QcMaterialGroupDetail group = qcMaterialGroupDetailMapper.getGroupByMaterial(qcCheckTaskIncome.getMaterialCode());
|
|
|
|
|
//共性
|
|
|
|
|
if(group == null){//默认
|
|
|
|
|
group = new QcMaterialGroupDetail();
|
|
|
|
|
QcProjectType initGroup = qcCheckTypeProjectMapper.getProductGroup(qcCheckTaskIncome.getMaterialCode());
|
|
|
|
|
if(initGroup != null){
|
|
|
|
|
group.setGroupId(initGroup.getGroupId());
|
|
|
|
|
}else{
|
|
|
|
|
return 0;//没有找到检测项目
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
List<QcCheckTaskDetail> itemsGG = new ArrayList<>();
|
|
|
|
|
if(StringUtils.isNotBlank(group.getGroupId())){
|
|
|
|
|
qctp.setGroupId(group.getGroupId());
|
|
|
|
|
itemsGG = qcCheckTypeProjectMapper.getTPByTypeGroup(qctp);
|
|
|
|
|
}
|
|
|
|
|
items.addAll(itemsGG);
|
|
|
|
|
|
|
|
|
|
/**qc_check_task_detail**/
|
|
|
|
|
if(CollectionUtils.isEmpty(items)){
|
|
|
|
|
logger.info("检验任务创建参数缺失:"+qcCheckTaskIncome.getMaterialCode());
|
|
|
|
|
return 0;//没有找到检测项目
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
List<QcCheckTaskDetail> itemsGG = new ArrayList<>();
|
|
|
|
|
if(StringUtils.isNotBlank(group.getGroupId())){
|
|
|
|
|
qctp.setGroupId(group.getGroupId());
|
|
|
|
|
itemsGG = qcCheckTypeProjectMapper.getTPByTypeGroup(qctp);
|
|
|
|
|
}
|
|
|
|
|
items.addAll(itemsGG);
|
|
|
|
|
|
|
|
|
|
/**qc_check_task_detail**/
|
|
|
|
|
if(CollectionUtils.isEmpty(items)){
|
|
|
|
|
logger.info("检验任务创建参数缺失:"+qcCheckTaskIncome.getMaterialCode());
|
|
|
|
|
return 0;//没有找到检测项目
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// //抽样方案
|
|
|
|
|
// String sampleQua = this.getSampleQua(qcCheckTaskIncome);
|
|
|
|
@ -202,109 +203,113 @@ public class QcCheckTaskIncomeServiceImpl<QcCheckUnqualifiedService> implements
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**qc_check_task**/
|
|
|
|
|
String beLongId = IdUtils.fastSimpleUUID();
|
|
|
|
|
qcCheckTaskIncome.setRecordId(beLongId);
|
|
|
|
|
qcCheckTaskIncome.setFactoryCode(factoryCode);
|
|
|
|
|
qcCheckTaskIncome.setCreateTime(nowDate);
|
|
|
|
|
//String typeCode = qcCheckTaskIncomeMapper.getTypeCode(qcCheckTaskIncome.getCheckType());
|
|
|
|
|
qcCheckTaskIncome.setTypeCode("material");//大检验节点
|
|
|
|
|
/**qc_task_user start**/
|
|
|
|
|
List<QcUserMaterialDTO> users = null;
|
|
|
|
|
if(StringUtils.isNotBlank(qcCheckTaskIncome.getCheckManName())){//管理系统创建任务
|
|
|
|
|
String checkManName = qcCheckTaskIncome.getCheckManName();
|
|
|
|
|
String checkManCode = qcCheckTaskIncome.getCheckManCode();
|
|
|
|
|
qcCheckTaskIncome.setCheckManName("");
|
|
|
|
|
qcCheckTaskIncome.setCheckManCode("");
|
|
|
|
|
String[] splitNames = checkManName.split(",");
|
|
|
|
|
String[] splitCodes = checkManCode.split(",");
|
|
|
|
|
List<QcCheckTaskUser> qcCheckTaskUserList = new ArrayList<>();
|
|
|
|
|
for (int i = 0; i < splitNames.length; i++) {
|
|
|
|
|
QcCheckTaskUser qcCheckTaskUser = new QcCheckTaskUser();
|
|
|
|
|
qcCheckTaskUser.setCheckManName(splitNames[i]);
|
|
|
|
|
qcCheckTaskUser.setCheckManCode(splitCodes[i]);
|
|
|
|
|
qcCheckTaskUser.setCheckNo(qcCheckTaskIncome.getCheckNo());
|
|
|
|
|
qcCheckTaskUser.setBelongTo(beLongId);
|
|
|
|
|
qcCheckTaskUser.setFactoryCode(factoryCode);
|
|
|
|
|
/**qc_check_task**/
|
|
|
|
|
String beLongId = IdUtils.fastSimpleUUID();
|
|
|
|
|
qcCheckTaskIncome.setRecordId(beLongId);
|
|
|
|
|
qcCheckTaskIncome.setFactoryCode(factoryCode);
|
|
|
|
|
qcCheckTaskIncome.setCreateTime(nowDate);
|
|
|
|
|
//String typeCode = qcCheckTaskIncomeMapper.getTypeCode(qcCheckTaskIncome.getCheckType());
|
|
|
|
|
qcCheckTaskIncome.setTypeCode("material");//大检验节点
|
|
|
|
|
/**qc_task_user start**/
|
|
|
|
|
List<QcUserMaterialDTO> users = null;
|
|
|
|
|
if(StringUtils.isNotBlank(qcCheckTaskIncome.getCheckManName())){//管理系统创建任务
|
|
|
|
|
String checkManName = qcCheckTaskIncome.getCheckManName();
|
|
|
|
|
String checkManCode = qcCheckTaskIncome.getCheckManCode();
|
|
|
|
|
qcCheckTaskIncome.setCheckManName("");
|
|
|
|
|
qcCheckTaskIncome.setCheckManCode("");
|
|
|
|
|
String[] splitNames = checkManName.split(",");
|
|
|
|
|
String[] splitCodes = checkManCode.split(",");
|
|
|
|
|
List<QcCheckTaskUser> qcCheckTaskUserList = new ArrayList<>();
|
|
|
|
|
for (int i = 0; i < splitNames.length; i++) {
|
|
|
|
|
QcCheckTaskUser qcCheckTaskUser = new QcCheckTaskUser();
|
|
|
|
|
qcCheckTaskUser.setCheckManName(splitNames[i]);
|
|
|
|
|
qcCheckTaskUser.setCheckManCode(splitCodes[i]);
|
|
|
|
|
qcCheckTaskUser.setCheckNo(qcCheckTaskIncome.getCheckNo());
|
|
|
|
|
qcCheckTaskUser.setBelongTo(beLongId);
|
|
|
|
|
qcCheckTaskUser.setFactoryCode(factoryCode);
|
|
|
|
|
|
|
|
|
|
qcCheckTaskUserList.add(qcCheckTaskUser);
|
|
|
|
|
}
|
|
|
|
|
//检验人插入
|
|
|
|
|
qcCheckTaskUserService.insertQcCheckTaskUserPDA(qcCheckTaskUserList);
|
|
|
|
|
}else{
|
|
|
|
|
qcCheckTaskIncome.setCheckManName("");
|
|
|
|
|
qcCheckTaskIncome.setCheckManCode("");
|
|
|
|
|
/**qc_user_material取默认检查人**/
|
|
|
|
|
qcCheckTaskIncome.setBelongTo(group.getGroupId());
|
|
|
|
|
users = qcCheckTaskIncomeMapper.getCheckUserBelongStandar(qcCheckTaskIncome);
|
|
|
|
|
if(CollectionUtils.isEmpty(users)){
|
|
|
|
|
users = qcCheckTaskIncomeMapper.getCheckUser(qcCheckTaskIncome);
|
|
|
|
|
}
|
|
|
|
|
for(QcUserMaterialDTO user:users){
|
|
|
|
|
user.setId(IdUtils.fastSimpleUUID());
|
|
|
|
|
user.setBelongTo(beLongId);
|
|
|
|
|
user.setCheckNo(qcCheckTaskIncome.getCheckNo());
|
|
|
|
|
user.setCreateBy(createBy);
|
|
|
|
|
user.setFactoryCode(factoryCode);
|
|
|
|
|
user.setCreateTime(nowDate);
|
|
|
|
|
}
|
|
|
|
|
qcCheckTaskUserList.add(qcCheckTaskUser);
|
|
|
|
|
}
|
|
|
|
|
//检验人插入
|
|
|
|
|
qcCheckTaskUserService.insertQcCheckTaskUserPDA(qcCheckTaskUserList);
|
|
|
|
|
}else{
|
|
|
|
|
qcCheckTaskIncome.setCheckManName("");
|
|
|
|
|
qcCheckTaskIncome.setCheckManCode("");
|
|
|
|
|
/**qc_user_material取默认检查人**/
|
|
|
|
|
qcCheckTaskIncome.setBelongTo(group.getGroupId());
|
|
|
|
|
users = qcCheckTaskIncomeMapper.getCheckUserBelongStandar(qcCheckTaskIncome);
|
|
|
|
|
if(CollectionUtils.isEmpty(users)){
|
|
|
|
|
users = qcCheckTaskIncomeMapper.getCheckUser(qcCheckTaskIncome);
|
|
|
|
|
}
|
|
|
|
|
for(QcUserMaterialDTO user:users){
|
|
|
|
|
user.setId(IdUtils.fastSimpleUUID());
|
|
|
|
|
user.setBelongTo(beLongId);
|
|
|
|
|
user.setCheckNo(qcCheckTaskIncome.getCheckNo());
|
|
|
|
|
user.setCreateBy(createBy);
|
|
|
|
|
user.setFactoryCode(factoryCode);
|
|
|
|
|
user.setCreateTime(nowDate);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int m=qcCheckTaskIncomeMapper.addCheckUsers(users);
|
|
|
|
|
logger.info("检查人新增"+m+"成功");
|
|
|
|
|
int m=qcCheckTaskIncomeMapper.addCheckUsers(users);
|
|
|
|
|
logger.info("检查人新增"+m+"成功");
|
|
|
|
|
}
|
|
|
|
|
/** 不良品数据插入 */
|
|
|
|
|
BigDecimal noOkQuality = new BigDecimal(0);
|
|
|
|
|
List<QcCheckTaskDefect> defectList = qcCheckTaskIncome.getDefects();
|
|
|
|
|
if (!CollectionUtils.isEmpty(defectList)) {
|
|
|
|
|
for (QcCheckTaskDefect defect : defectList) {
|
|
|
|
|
defect.setBelongTo(beLongId);
|
|
|
|
|
//qcCheckTaskDefectService.insertQcCheckTaskDefect(defect);
|
|
|
|
|
noOkQuality = noOkQuality.add(defect.getNoOkQuality()==null?new BigDecimal("0"):defect.getNoOkQuality());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
qcCheckTaskIncome.setNoOkQuality(noOkQuality);
|
|
|
|
|
/**qc_check_task**///------------------zxl
|
|
|
|
|
qcCheckTaskIncomeMapper.insertQcCheckTaskIncome(qcCheckTaskIncome);
|
|
|
|
|
|
|
|
|
|
/**qc_check_task_detail**/
|
|
|
|
|
for(QcCheckTaskDetail item:items){
|
|
|
|
|
item.setRecordId(IdUtils.fastSimpleUUID());
|
|
|
|
|
item.setBelongTo(beLongId);
|
|
|
|
|
item.setCreateTime(nowDate);
|
|
|
|
|
item.setCreateBy(createBy);
|
|
|
|
|
item.setFactoryCode(factoryCode);
|
|
|
|
|
item.setStatus("Y");
|
|
|
|
|
}
|
|
|
|
|
int s = qcCheckTaskDetailMapper.addBatch(items);
|
|
|
|
|
|
|
|
|
|
//发企业微信--------------------开始
|
|
|
|
|
SysNoticeGroup noticeQo = new SysNoticeGroup();
|
|
|
|
|
noticeQo.setNoticeId(6L);
|
|
|
|
|
List<SysNoticeGroup> notices = qcCheckTaskIncomeMapper.getNoticesGroup(noticeQo);
|
|
|
|
|
if(!CollectionUtils.isEmpty(notices)) {
|
|
|
|
|
|
|
|
|
|
List<WechartDTO> wecharts = new ArrayList<>();
|
|
|
|
|
for (SysNoticeGroup noticedto : notices) {
|
|
|
|
|
WechartDTO wechart0 = new WechartDTO();
|
|
|
|
|
wechart0.setUserId(noticedto.getWxId());
|
|
|
|
|
String contentInfo = notices.get(0).getNoticeContent();
|
|
|
|
|
contentInfo = contentInfo.replace("${checkNo}", qcCheckTaskIncome.getCheckNo() + "\n");
|
|
|
|
|
Matcher m = p2.matcher(contentInfo);
|
|
|
|
|
contentInfo = m.replaceAll("");
|
|
|
|
|
wechart0.setText(contentInfo);
|
|
|
|
|
wecharts.add(wechart0);
|
|
|
|
|
}
|
|
|
|
|
logger.info("来料检验企业微信提醒请求:" + JSONObject.toJSONString(wecharts));
|
|
|
|
|
if (!CollectionUtils.isEmpty(wecharts)) {
|
|
|
|
|
CompletableFuture.runAsync(() -> {
|
|
|
|
|
System.out.println("异步执行企业微信发送");
|
|
|
|
|
AjaxResult result = remoteOpenService.sendWeChartMessage(wecharts);
|
|
|
|
|
logger.info("来料检验企业微信提醒结果:" + JSONObject.toJSONString(result));
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
//发企业微信--------------------结束
|
|
|
|
|
}
|
|
|
|
|
return s;
|
|
|
|
|
}finally {
|
|
|
|
|
DynamicDataSourceContextHolder.poll();
|
|
|
|
|
}
|
|
|
|
|
/** 不良品数据插入 */
|
|
|
|
|
BigDecimal noOkQuality = new BigDecimal(0);
|
|
|
|
|
List<QcCheckTaskDefect> defectList = qcCheckTaskIncome.getDefects();
|
|
|
|
|
if (!CollectionUtils.isEmpty(defectList)) {
|
|
|
|
|
for (QcCheckTaskDefect defect : defectList) {
|
|
|
|
|
defect.setBelongTo(beLongId);
|
|
|
|
|
//qcCheckTaskDefectService.insertQcCheckTaskDefect(defect);
|
|
|
|
|
noOkQuality = noOkQuality.add(defect.getNoOkQuality()==null?new BigDecimal("0"):defect.getNoOkQuality());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
qcCheckTaskIncome.setNoOkQuality(noOkQuality);
|
|
|
|
|
/**qc_check_task**///------------------zxl
|
|
|
|
|
qcCheckTaskIncomeMapper.insertQcCheckTaskIncome(qcCheckTaskIncome);
|
|
|
|
|
|
|
|
|
|
/**qc_check_task_detail**/
|
|
|
|
|
for(QcCheckTaskDetail item:items){
|
|
|
|
|
item.setRecordId(IdUtils.fastSimpleUUID());
|
|
|
|
|
item.setBelongTo(beLongId);
|
|
|
|
|
item.setCreateTime(nowDate);
|
|
|
|
|
item.setCreateBy(createBy);
|
|
|
|
|
item.setFactoryCode(factoryCode);
|
|
|
|
|
item.setStatus("Y");
|
|
|
|
|
}
|
|
|
|
|
int s = qcCheckTaskDetailMapper.addBatch(items);
|
|
|
|
|
|
|
|
|
|
//发企业微信--------------------开始
|
|
|
|
|
SysNoticeGroup noticeQo = new SysNoticeGroup();
|
|
|
|
|
noticeQo.setNoticeId(6L);
|
|
|
|
|
List<SysNoticeGroup> notices = qcCheckTaskIncomeMapper.getNoticesGroup(noticeQo);
|
|
|
|
|
if(!CollectionUtils.isEmpty(notices)) {
|
|
|
|
|
|
|
|
|
|
List<WechartDTO> wecharts = new ArrayList<>();
|
|
|
|
|
for (SysNoticeGroup noticedto : notices) {
|
|
|
|
|
WechartDTO wechart0 = new WechartDTO();
|
|
|
|
|
wechart0.setUserId(noticedto.getWxId());
|
|
|
|
|
String contentInfo = notices.get(0).getNoticeContent();
|
|
|
|
|
contentInfo = contentInfo.replace("${checkNo}", qcCheckTaskIncome.getCheckNo() + "\n");
|
|
|
|
|
Matcher m = p2.matcher(contentInfo);
|
|
|
|
|
contentInfo = m.replaceAll("");
|
|
|
|
|
wechart0.setText(contentInfo);
|
|
|
|
|
wecharts.add(wechart0);
|
|
|
|
|
}
|
|
|
|
|
logger.info("来料检验企业微信提醒请求:" + JSONObject.toJSONString(wecharts));
|
|
|
|
|
if (!CollectionUtils.isEmpty(wecharts)) {
|
|
|
|
|
CompletableFuture.runAsync(() -> {
|
|
|
|
|
System.out.println("异步执行企业微信发送");
|
|
|
|
|
AjaxResult result = remoteOpenService.sendWeChartMessage(wecharts);
|
|
|
|
|
logger.info("来料检验企业微信提醒结果:" + JSONObject.toJSONString(result));
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
//发企业微信--------------------结束
|
|
|
|
|
}
|
|
|
|
|
return s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
@ -845,41 +850,46 @@ public class QcCheckTaskIncomeServiceImpl<QcCheckUnqualifiedService> implements
|
|
|
|
|
if(StringUtils.isNotBlank(income.getFactoryCode())){
|
|
|
|
|
DynamicDataSourceContextHolder.push(income.getFactoryCode());
|
|
|
|
|
}
|
|
|
|
|
String recordIds = income.getRecordId();
|
|
|
|
|
int m = 1;
|
|
|
|
|
//检测是否有已经检验的任务
|
|
|
|
|
int checkedNum = qcCheckTaskIncomeMapper.checkedTask("'"+recordIds.replace(",","','")+"'");
|
|
|
|
|
if(checkedNum>0){
|
|
|
|
|
return 2;
|
|
|
|
|
}
|
|
|
|
|
//供应商、物料、送货日期是否一致
|
|
|
|
|
List<QcCheckTaskIncome> checkedInfo = qcCheckTaskIncomeMapper.checkedTaskInfo("'"+recordIds.replace(",","','")+"'");
|
|
|
|
|
if(!CollectionUtils.isEmpty(checkedInfo) && checkedInfo.size()>1){
|
|
|
|
|
return 3;
|
|
|
|
|
}
|
|
|
|
|
//合并任务,向最新任务合并
|
|
|
|
|
List<QcCheckTaskIncome> taskLists = qcCheckTaskIncomeMapper.getTaskList("'"+recordIds.replace(",","','")+"'");
|
|
|
|
|
BigDecimal qua = BigDecimal.ZERO;
|
|
|
|
|
String deleteIds = "";
|
|
|
|
|
for(int n=0;n<taskLists.size();n++){
|
|
|
|
|
QcCheckTaskIncome task = taskLists.get(n);
|
|
|
|
|
qua = qua.add(task.getQuality());
|
|
|
|
|
if(n!=0){
|
|
|
|
|
deleteIds+= task.getRecordId()+",";
|
|
|
|
|
try {
|
|
|
|
|
String recordIds = income.getRecordId();
|
|
|
|
|
int m = 1;
|
|
|
|
|
//检测是否有已经检验的任务
|
|
|
|
|
int checkedNum = qcCheckTaskIncomeMapper.checkedTask("'"+recordIds.replace(",","','")+"'");
|
|
|
|
|
if(checkedNum>0){
|
|
|
|
|
return 2;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
QcCheckTaskIncome lastTask = taskLists.get(0);
|
|
|
|
|
lastTask.setQuality(qua);
|
|
|
|
|
qcCheckTaskIncomeMapper.updateLastTask(lastTask);
|
|
|
|
|
//供应商、物料、送货日期是否一致
|
|
|
|
|
List<QcCheckTaskIncome> checkedInfo = qcCheckTaskIncomeMapper.checkedTaskInfo("'"+recordIds.replace(",","','")+"'");
|
|
|
|
|
if(!CollectionUtils.isEmpty(checkedInfo) && checkedInfo.size()>1){
|
|
|
|
|
return 3;
|
|
|
|
|
}
|
|
|
|
|
//合并任务,向最新任务合并
|
|
|
|
|
List<QcCheckTaskIncome> taskLists = qcCheckTaskIncomeMapper.getTaskList("'"+recordIds.replace(",","','")+"'");
|
|
|
|
|
BigDecimal qua = BigDecimal.ZERO;
|
|
|
|
|
String deleteIds = "";
|
|
|
|
|
for(int n=0;n<taskLists.size();n++){
|
|
|
|
|
QcCheckTaskIncome task = taskLists.get(n);
|
|
|
|
|
qua = qua.add(task.getQuality());
|
|
|
|
|
if(n!=0){
|
|
|
|
|
deleteIds+= task.getRecordId()+",";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
QcCheckTaskIncome lastTask = taskLists.get(0);
|
|
|
|
|
lastTask.setQuality(qua);
|
|
|
|
|
qcCheckTaskIncomeMapper.updateLastTask(lastTask);
|
|
|
|
|
|
|
|
|
|
//删除其它任务
|
|
|
|
|
deleteIds = "'"+
|
|
|
|
|
deleteIds.replace(",","','")
|
|
|
|
|
+"'";
|
|
|
|
|
qcCheckTaskIncomeMapper.deleteTask(deleteIds);
|
|
|
|
|
qcCheckTaskIncomeMapper.deleteTaskDetail(deleteIds);
|
|
|
|
|
qcCheckTaskIncomeMapper.deleteTaskUser(deleteIds);
|
|
|
|
|
return m;
|
|
|
|
|
}finally {
|
|
|
|
|
DynamicDataSourceContextHolder.poll();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//删除其它任务
|
|
|
|
|
deleteIds = "'"+
|
|
|
|
|
deleteIds.replace(",","','")
|
|
|
|
|
+"'";
|
|
|
|
|
qcCheckTaskIncomeMapper.deleteTask(deleteIds);
|
|
|
|
|
qcCheckTaskIncomeMapper.deleteTaskDetail(deleteIds);
|
|
|
|
|
qcCheckTaskIncomeMapper.deleteTaskUser(deleteIds);
|
|
|
|
|
return m;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@ -1330,7 +1340,12 @@ public class QcCheckTaskIncomeServiceImpl<QcCheckUnqualifiedService> implements
|
|
|
|
|
@Override
|
|
|
|
|
public List<QcCheckTaskIncome> getIncomeBatchList(String poolName) {
|
|
|
|
|
DynamicDataSourceContextHolder.push(poolName);//这是数据源的key
|
|
|
|
|
return qcCheckTaskIncomeMapper.getIncomeBatchList();
|
|
|
|
|
try {
|
|
|
|
|
return qcCheckTaskIncomeMapper.getIncomeBatchList();
|
|
|
|
|
}finally {
|
|
|
|
|
DynamicDataSourceContextHolder.poll();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|