【派工单】派工报工

dev
siontion 4 months ago
parent 03b4b4cc2d
commit eaf19ed91a

@ -5,6 +5,7 @@ import com.chanko.yunxi.mes.module.biz.controller.admin.plan.vo.PlanRespVO;
import com.chanko.yunxi.mes.module.biz.controller.admin.plan.vo.PlanSaveReqVO; import com.chanko.yunxi.mes.module.biz.controller.admin.plan.vo.PlanSaveReqVO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.plan.PlanWorkshopDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.plan.PlanWorkshopDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.plansub.PlanSubDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.plansub.PlanSubDO;
import com.chanko.yunxi.mes.module.biz.dal.mysql.plan.PlanMapper;
import com.chanko.yunxi.mes.module.biz.service.plan.PlanService; import com.chanko.yunxi.mes.module.biz.service.plan.PlanService;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
@ -41,6 +42,9 @@ public class PlanController {
@Resource @Resource
private PlanService planService; private PlanService planService;
@Resource
private PlanMapper planMapper;
@PostMapping("/create") @PostMapping("/create")
@Operation(summary = "创建生产计划") @Operation(summary = "创建生产计划")
@PreAuthorize("@ss.hasPermission('biz:plan:create')") @PreAuthorize("@ss.hasPermission('biz:plan:create')")
@ -56,6 +60,16 @@ public class PlanController {
return success(true); return success(true);
} }
@PutMapping("/update-status")
@Operation(summary = "更新生产计划")
@PreAuthorize("@ss.hasPermission('biz:plan:update')")
public CommonResult<Boolean> updatePlanStatus(@Valid @RequestBody PlanSaveReqVO updateReqVO) {
PlanDO plan = planService.getPlan(updateReqVO.getId());
plan.setStatus(updateReqVO.getStatus());
planMapper.updateById(plan);
return success(true);
}
@DeleteMapping("/delete") @DeleteMapping("/delete")
@Operation(summary = "删除生产计划") @Operation(summary = "删除生产计划")
@Parameter(name = "id", description = "编号", required = true) @Parameter(name = "id", description = "编号", required = true)

@ -236,4 +236,12 @@ public class TaskDispatchController {
return success(taskDispatchDetailOwnerDO); return success(taskDispatchDetailOwnerDO);
} }
@GetMapping("/task-dispatch-procedure-detail/page")
@Operation(summary = "获得派工工序明细分页")
@PreAuthorize("@ss.hasPermission('biz:task-dispatch:query')")
public CommonResult<PageResult<TaskDispatchDetailOwnerDO>> getTaskDispatchProcedurePageDetail(@Valid TaskDispatchDetailPageReqVO pageReqVO) {
PageResult<TaskDispatchDetailOwnerDO> pageResult = taskDispatchService.getTaskDispatchProcedureDetailPage(pageReqVO);
return success(pageResult);
}
} }

@ -98,6 +98,9 @@ public class TaskDispatchDetailOwnerDO extends BaseDO {
@TableField(exist = false) @TableField(exist = false)
private String materialName; private String materialName;
@TableField(exist = false)
private String materialCode;
@TableField(exist = false) @TableField(exist = false)
private String procedureName; private String procedureName;

@ -92,4 +92,37 @@ public interface TaskDispatchDetailOwnerMapper extends BaseMapperX<TaskDispatchD
return selectOne(query); return selectOne(query);
} }
default PageResult<TaskDispatchDetailOwnerDO> selectProcedurePage(TaskDispatchDetailPageReqVO reqVO) {
MPJLambdaWrapper<TaskDispatchDetailOwnerDO> query = new MPJLambdaWrapper<>();
query.selectAll(TaskDispatchDetailOwnerDO.class)
.select("a.code as dispatchCode")
.select("b.code as projectCode")
.select("e.name as procedureName")
.select("COALESCE(sum(f.amount),0) as totalReportAmount")
.select("COALESCE(sum(f.work_time),0) as totalWorkTime")
.select("d.unit","d.spec", "d.name as projectSubName", "d.code as projectSubCode", "c.production_id, c.production_detail_id")
.select("g.name as workshopName")
.leftJoin(TaskDispatchDO.class, "a", TaskDispatchDO::getId, TaskDispatchDetailOwnerDO::getDispatchId)
.leftJoin(ProjectOrderDO.class, "b", ProjectOrderDO::getId, TaskDispatchDO::getProjectId)
.leftJoin(ProjectOrderSubDO.class, "c", ProjectOrderSubDO::getId, TaskDispatchDO::getProjectSubId)
.leftJoin(MaterialDO.class, "d", MaterialDO::getId, ProjectOrderSubDO::getMaterialId)
.leftJoin(ProcedureDO.class, "e", ProcedureDO::getId, TaskDispatchDetailOwnerDO::getProcedureId)
.leftJoin(TaskReportDO.class, "f", TaskReportDO::getDispatchDetailId, TaskDispatchDetailOwnerDO::getId)
.leftJoin(WorkshopDO.class, "g", WorkshopDO::getId, TaskDispatchDO::getWorkshopId)
.groupBy(TaskDispatchDetailOwnerDO::getId)
.orderByDesc(TaskDispatchDetailOwnerDO::getId)
.disableSubLogicDel();
query.in(CollUtil.isNotEmpty(reqVO.getProcedureStatusList()), TaskDispatchDetailOwnerDO::getProcedureStatus, reqVO.getProcedureStatusList())
.eq(reqVO.getIsReport() != null, ProcedureDO::getIsReport, reqVO.getIsReport())
.eq(!StringUtils.isEmpty(reqVO.getDispatchType()), TaskDispatchDO::getDispatchType, reqVO.getDispatchType())
.eq(reqVO.getTaskId() != null, TaskDispatchDO::getTaskId, reqVO.getTaskId())
.eq(reqVO.getBomDetailId() != null, TaskDispatchDO::getBomDetailId, reqVO.getBomDetailId())
.eq(reqVO.getDispatchStatus() != null, TaskDispatchDO::getDispatchStatus, reqVO.getDispatchStatus())
.apply(reqVO.getOwner() != null,"(t.owner={0} or INSTR(t.owner_ids,{0})>0)",reqVO.getOwner())
;
return selectPage(reqVO, query);
}
} }

@ -73,6 +73,8 @@ public interface TaskDispatchService {
PageResult<TaskDispatchDetailOwnerDO> getTaskDispatchDetailPage(TaskDispatchDetailPageReqVO pageReqVO); PageResult<TaskDispatchDetailOwnerDO> getTaskDispatchDetailPage(TaskDispatchDetailPageReqVO pageReqVO);
PageResult<TaskDispatchDetailOwnerDO> getTaskDispatchProcedureDetailPage(TaskDispatchDetailPageReqVO pageReqVO);
void operateDetail(TaskDispatchDetailVO operateReqVO); void operateDetail(TaskDispatchDetailVO operateReqVO);
TaskDispatchDetailOwnerDO getTaskDispatchDetail(Long id); TaskDispatchDetailOwnerDO getTaskDispatchDetail(Long id);

@ -297,6 +297,11 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
return taskDispatchDetailOwnerMapper.selectPage(pageReqVO); return taskDispatchDetailOwnerMapper.selectPage(pageReqVO);
} }
@Override
public PageResult<TaskDispatchDetailOwnerDO> getTaskDispatchProcedureDetailPage(TaskDispatchDetailPageReqVO pageReqVO) {
return taskDispatchDetailOwnerMapper.selectProcedurePage(pageReqVO);
}
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)

Loading…
Cancel
Save