装配报工、生产报工、异常排序

This commit is contained in:
Ledo 2025-01-18 12:02:34 +08:00
parent 4b96bdad5e
commit b1cb96d392
5 changed files with 28 additions and 45 deletions

View File

@ -168,7 +168,9 @@ public interface TaskDispatchDetailMapper extends BaseMapperX<TaskDispatchDetail
query.orderByDesc(TaskDispatchDetailDO::getDispatchId,TaskDispatchDetailDO::getSort);
}else {
//未完工升序
query.orderByAsc(TaskDispatchDetailDO::getDispatchId,TaskDispatchDetailDO::getSort)
query.eq(TaskDispatchDO::getDispatchStatus,2)
.orderByAsc(TaskDispatchDetailDO::getDispatchId,TaskDispatchDetailDO::getSort)
;
}
if (CollUtil.isNotEmpty(postIds)) {

View File

@ -5,6 +5,7 @@ import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
import com.chanko.yunxi.mes.module.heli.controller.admin.unqualifiednotification.vo.UnqualifiedNotificationPageReqVO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.composition.CompositionDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.customer.CustomerDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.plan.PlanDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.plansub.PlanSubDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.procedure.ProcedureDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.processbom.ProcessBomDetailDO;
@ -35,6 +36,7 @@ public interface UnqualifiedNotificationMapper extends BaseMapperX<UnqualifiedNo
.select("u1.nickname as ownerName", "u2.nickname as creatorName", "u3.nickname as auditorName")
.select("h.name as procedureName")
.leftJoin(PlanSubDO.class, "b", PlanSubDO::getProjectSubId, UnqualifiedNotificationDO::getProjectSubId)
.leftJoin(PlanDO.class,"p",PlanDO::getId,PlanSubDO::getProjectPlanId)
.leftJoin(ProjectOrderSubDO.class, "c", ProjectOrderSubDO::getId, UnqualifiedNotificationDO::getProjectSubId)
.leftJoin(ProjectOrderDO.class, "d", ProjectOrderDO::getId, UnqualifiedNotificationDO::getProjectId)
.leftJoin(CustomerDO.class, "e", CustomerDO::getId, ProjectOrderDO::getCustomerId)
@ -45,7 +47,8 @@ public interface UnqualifiedNotificationMapper extends BaseMapperX<UnqualifiedNo
.leftJoin(AdminUserDO.class, "u2", AdminUserDO::getId, UnqualifiedNotificationDO::getCreator)
.leftJoin(AdminUserDO.class, "u3", AdminUserDO::getId, UnqualifiedNotificationDO::getAuditor)
.disableSubLogicDel()
.orderByDesc(UnqualifiedNotificationDO::getId);
.eq(PlanDO::getStatus,2)
.orderByDesc(PlanDO::getId);
query.like(!StringUtils.isEmpty(reqVO.getCode()), UnqualifiedNotificationDO::getCode, reqVO.getCode())
.eq(!StringUtils.isEmpty(reqVO.getType()), UnqualifiedNotificationDO::getType, reqVO.getType())

View File

@ -160,9 +160,12 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
updateObj.setDispatchStatus(TaskDispatchStatusEnum.valueOf(updateReqVO.getActive()).getCode());
taskDispatchMapper.updateById(updateObj);
// 更新子表
if(operateTypeEnum != OperateTypeEnum.CANCEL_SUBMIT){
updateTaskDispatchDetailList(updateReqVO.getId(), updateReqVO.getTaskDispatchDetails());
}
}
@Override
@Transactional(rollbackFor = Exception.class)
public void deleteTaskDispatch(Long id) {
@ -357,31 +360,6 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
postIds.add(fpUserDetailDO.getPostId());
}
PageResult<TaskDispatchDetailDO> taskDispatchDetailDOPageResult = taskDispatchDetailMapper.selectPageWx(pageReqVO, postIds);
// List<TaskDispatchDetailDO> list = taskDispatchDetailDOPageResult.getList();
// List<TaskDispatchDetailDO> afterList = new ArrayList<>();
// if (CollUtil.isNotEmpty(list)){
// Map<String, List<TaskDispatchDetailDO>> collect ;
// if(pageReqVO.getProcedureStatusList().size()==1 && pageReqVO.getProcedureStatusList().get(0)==2){
// collect = list.stream()
// .collect(Collectors.groupingBy(
// TaskDispatchDetailDO::getDispatchCode,
// () -> new TreeMap<>(Comparator.reverseOrder()),
// Collectors.toList()
// ));
//
// }else {
// collect = list.stream()
// .collect(Collectors.groupingBy(
// TaskDispatchDetailDO::getDispatchCode,
// TreeMap::new,
// Collectors.toList()
// ));
// }
// collect.forEach((code,list2)->{
// afterList.addAll(list2);
// });
// }
// taskDispatchDetailDOPageResult.setList(afterList);
return taskDispatchDetailDOPageResult;
}
@Override

View File

@ -245,7 +245,7 @@ class="!w-260px" v-model="formData.createTime" type="date" value-format="x"
<div class="hl-card-info-icona"></div><span class="hl-card-info-text">派工明细</span>
</template>
<el-row>
<el-col v-if="active != 'detail' || !detailDisabled">
<el-col v-if=" (formData.dispatchStatus != 2 && active != 'detail') || !detailDisabled">
<el-button class="hl-addbutton" type="primary" size="large" @click="onAddItem">新增</el-button>
</el-col>
<el-col>
@ -260,7 +260,7 @@ ref="subFormRef" :model="formData.taskDispatchDetails" :rules="subFormRules"
<template #default="{ row, $index }">
<el-form-item :prop="`${$index}.procedureId`" :rules="subFormRules.procedureId" class="mb-0px!">
<ProcedureSelect
:disabled="detailDisabled || row.beginProduce != 0 || row.procedureStatus != 0"
:disabled="detailDisabled || row.procedureStatus != 0"
v-model="row.procedureId"
@update:new-value="(val) => { handleSelectedProcedure(row, val); }" />
</el-form-item>
@ -276,7 +276,7 @@ ref="subFormRef" :model="formData.taskDispatchDetails" :rules="subFormRules"
<el-form-item :prop="`${$index}.sort`" :rules="subFormRules.sort" class="mb-0px!">
<el-input-number
min="0" :precision="0" class="!w-240px"
:disabled="detailDisabled || row.beginProduce != 0 || row.procedureStatus != 0" v-model="row.sort"
:disabled="detailDisabled || (row.beginProduce != 0 && row.procedureStatus != 0)" v-model="row.sort"
placeholder="请输入顺序号" />
</el-form-item>
</template>
@ -288,7 +288,7 @@ min="0" :precision="0" class="!w-240px"
<!-- <UserSelect-->
<!--v-model="row.owner" :disabled="detailDisabled || row.procedureStatus != 0"-->
<!-- @update:new-value="handleSelectedUser($index, $event)" />-->
<el-select v-model="row.owner" :disabled="detailDisabled || row.beginProduce != 0 || row.procedureStatus != 0" @update:new-value="handleSelectedUser($index, $event)">
<el-select v-model="row.owner" :disabled="detailDisabled || (row.beginProduce != 0 && row.procedureStatus != 0)" @update:new-value="handleSelectedUser($index, $event)">
<el-option
v-for="dict in userInit" :key="dict.id"
:label="dict.username+' '+dict.nickname" :value="dict.id" />
@ -301,7 +301,7 @@ v-for="dict in userInit" :key="dict.id"
<template #default="{ row, $index }">
<el-form-item :prop="`${$index}.startTime`" :rules="subFormRules.startTime" class="mb-0px!">
<el-date-picker
:disabled="detailDisabled || row.beginProduce != 0 || row.procedureStatus != 0" v-model="row.startTime"
:disabled="detailDisabled " v-model="row.startTime"
type="date" value-format="x" placeholder="选择预计开始日期" />
</el-form-item>
</template>
@ -311,7 +311,7 @@ v-for="dict in userInit" :key="dict.id"
<template #default="{ row, $index }">
<el-form-item :prop="`${$index}.endTime`" :rules="subFormRules.endTime" class="mb-0px!">
<el-date-picker
:disabled="detailDisabled || row.beginProduce != 0 || row.procedureStatus != 0" v-model="row.endTime"
:disabled="detailDisabled " v-model="row.endTime"
type="date" value-format="x" placeholder="选择预计结束日期" />
</el-form-item>
</template>
@ -322,7 +322,7 @@ v-for="dict in userInit" :key="dict.id"
<el-form-item :prop="`${$index}.workTime`" :rules="subFormRules.workTime" class="mb-0px!">
<el-input-number
min="0" :precision="2" class="!w-240px"
:disabled="detailDisabled|| row.beginProduce != 0 || row.procedureStatus != 0" v-model="row.workTime"
:disabled="detailDisabled" v-model="row.workTime"
placeholder="请输入预计工时" />
</el-form-item>
</template>
@ -344,7 +344,7 @@ min="0" :precision="2" class="!w-240px"
<EquipmentSelect
v-model="row.deviceModel"
@update:new-value="handleSelectedequip($index, $event)"
:disabled="detailDisabled || row.beginProduce != 0 || row.procedureStatus != 0" />
:disabled="detailDisabled || (row.beginProduce != 0 && row.procedureStatus != 0)" />
</el-form-item>
</template>
</el-table-column>
@ -352,7 +352,7 @@ min="0" :precision="2" class="!w-240px"
<template #default="{ row, $index }">
<el-form-item :prop="`${$index}.summary`" class="mb-0px!">
<el-input
:disabled="detailDisabled || row.beginProduce != 0 || row.procedureStatus != 0" v-model="row.summary"
:disabled="detailDisabled ||(row.beginProduce != 0 && row.procedureStatus != 0)" v-model="row.summary"
placeholder="请输入工序要点" />
</el-form-item>
</template>
@ -366,7 +366,7 @@ min="0" :precision="2" class="!w-240px"
<el-table-column fixed="right" label="操作" align="center" min-width="100">
<template #default="scope">
<el-button
v-if="'detail' != active && scope.row.procedureStatus == 0" link type="danger"
v-if="'detail' != active && (scope.row.beginProduce == 0 && scope.row.procedureStatus == 0)" link type="danger"
size="small" @click.prevent="onDeleteItem(scope.$index)">
删除
</el-button>

View File

@ -296,7 +296,7 @@ v-model="row.owner" :disabled="detailDisabled || row.procedureStatus != 0"
<template #default="{ row, $index }">
<el-form-item :prop="`${$index}.startTime`" :rules="subFormRules.startTime" class="mb-0px!">
<el-date-picker
:disabled="detailDisabled || row.procedureStatus != 0" v-model="row.startTime"
:disabled="detailDisabled " v-model="row.startTime"
type="date" value-format="x" placeholder="选择预计开始日期" />
</el-form-item>
</template>
@ -306,7 +306,7 @@ v-model="row.owner" :disabled="detailDisabled || row.procedureStatus != 0"
<template #default="{ row, $index }">
<el-form-item :prop="`${$index}.endTime`" :rules="subFormRules.endTime" class="mb-0px!">
<el-date-picker
:disabled="detailDisabled || row.procedureStatus != 0" v-model="row.endTime"
:disabled=" detailDisabled" v-model="row.endTime"
type="date" value-format="x" placeholder="选择预计结束日期" />
</el-form-item>
</template>
@ -317,7 +317,7 @@ v-model="row.owner" :disabled="detailDisabled || row.procedureStatus != 0"
<el-form-item :prop="`${$index}.workTime`" :rules="subFormRules.workTime" class="mb-0px!">
<el-input-number
min="0" :precision="2" class="!w-240px"
:disabled="detailDisabled || row.beginProduce != 0 || row.procedureStatus != 0" v-model="row.workTime"
:disabled="detailDisabled " v-model="row.workTime"
placeholder="请输入预计工时" />
</el-form-item>
</template>
@ -367,7 +367,7 @@ v-model="row.deviceModel"
<el-table-column fixed="right" label="操作" align="center" min-width="90">
<template #default="scope">
<el-button
v-if="'detail' != active && scope.row.procedureStatus == 0" link type="danger"
v-if="'detail' != active && (scope.row.beginProduce == 0 && scope.row.procedureStatus == 0)" link type="danger"
size="small" @click.prevent="onDeleteItem(scope.row,scope.$index)">
删除
</el-button>
@ -459,10 +459,10 @@ v-if="formData.dispatchStatus == 2" @click="printHandle(formData.id)" :disabled=
</span>
<template #footer>
<span class="dialog-footer">
<el-button @click="centerDialogVisible = false">取消</el-button>
<el-button type="primary" @click="sureToCancle()">
确认
</el-button>
<el-button @click="centerDialogVisible = false">取消</el-button>
</span>
</template>
</el-dialog>
@ -1086,7 +1086,6 @@ const submitForm = async (operate) => {
}
}
const data = formData.value as unknown as TaskDispatchApi.TaskDispatchVO
console.log(data);
let dataId = await TaskDispatchApi.operateTaskDispatch(data)
message.success(t('common.operationSuccess'))
@ -1146,6 +1145,7 @@ const onAddItem = () => {
summary: undefined,
status: 1,
procedureStatus: 0,
beginProduce:0,
dispatchId: undefined,
procedureCode:'' ,
isReport:0 ,