进度跟踪,小程序修改

This commit is contained in:
Ledo 2025-01-27 01:28:27 +08:00
parent 806ae14a9a
commit 71697bcd0a
9 changed files with 137 additions and 88 deletions

View File

@ -4,6 +4,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*; import lombok.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import java.util.*; import java.util.*;
import com.alibaba.excel.annotation.*; import com.alibaba.excel.annotation.*;
@ -86,5 +87,7 @@ public class TrackRespVO {
@Schema(description = "完成状态") @Schema(description = "完成状态")
@ExcelProperty("完成状态") @ExcelProperty("完成状态")
private Integer isover; private Integer isover;
@Schema(description = "项目结束日期")
@ExcelProperty("项目结束日期")
private LocalDateTime projectEndTime;
} }

View File

@ -5,6 +5,8 @@ import com.chanko.yunxi.mes.framework.mybatis.core.dataobject.BaseDO;
import lombok.*; import lombok.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.Set; import java.util.Set;
/** /**
@ -111,9 +113,18 @@ public class ProjectOrderSubDO extends BaseDO {
@TableField(exist = false) @TableField(exist = false)
private String reportDateFormat; private String reportDateFormat;
@TableField(exist = false)
private String planCode;
@TableField(exist = false)
private Integer planType;
@TableField(exist = false) @TableField(exist = false)
private BigDecimal progress; private BigDecimal progress;
@TableField(exist = false)
private Integer totalReportAmount;
@TableField(exist = false)
private LocalDateTime projectEndTime;
// @TableField(exist = false)
// private Date projectStartTime;
@TableField(exist = false) @TableField(exist = false)
private Integer property; private Integer property;
} }

View File

@ -3,6 +3,7 @@ package com.chanko.yunxi.mes.module.heli.dal.dataobject.track;
import lombok.*; import lombok.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import com.chanko.yunxi.mes.framework.mybatis.core.dataobject.BaseDO; import com.chanko.yunxi.mes.framework.mybatis.core.dataobject.BaseDO;
@ -83,11 +84,11 @@ public class TrackDO extends BaseDO {
/** /**
* 总报工时间 * 总报工时间
*/ */
private BigDecimal reportAllHour; private Integer reportAllHour;
/** /**
* 总预计工时 * 总预计工时
*/ */
private BigDecimal reportPreviewHour; private Integer reportPreviewHour;
/** /**
* 总报工数量 * 总报工数量
*/ */
@ -96,5 +97,6 @@ public class TrackDO extends BaseDO {
* 完成状态 * 完成状态
*/ */
private Integer isover; private Integer isover;
private LocalDateTime projectEndTime;
} }

View File

@ -45,8 +45,14 @@ public interface ProcessDesignMapper extends BaseMapperX<ProcessDesignDO> {
.leftJoin("system_users u4 on u4.id = b.two_dim_owner") .leftJoin("system_users u4 on u4.id = b.two_dim_owner")
.leftJoin("system_users u5 on u5.id = b.three_dim_owner") .leftJoin("system_users u5 on u5.id = b.three_dim_owner")
.leftJoin("(select progress,process_design_id,blueprint_link FROM pro_process_design_progress where id in (select max(id) FROM pro_process_design_progress GROUP BY process_design_id) ) z on z.process_design_id = t.id") .leftJoin("(select progress,process_design_id,blueprint_link FROM pro_process_design_progress where id in (select max(id) FROM pro_process_design_progress GROUP BY process_design_id) ) z on z.process_design_id = t.id")
.orderByDesc(ProcessDesignDO::getId)
.disableSubLogicDel(); .disableSubLogicDel();
if(reqVO.getPgType() == 0){
query.orderByAsc(ProjectOrderDO::getCode);
}else {
query.orderByDesc(ProjectOrderDO::getCode);
}
query.like(!StringUtils.isEmpty(reqVO.getPlanCode()), PlanDO::getPlanNo, reqVO.getPlanCode()) query.like(!StringUtils.isEmpty(reqVO.getPlanCode()), PlanDO::getPlanNo, reqVO.getPlanCode())
.like(!StringUtils.isEmpty(reqVO.getProjectCode()), ProjectOrderDO::getCode, reqVO.getProjectCode()) .like(!StringUtils.isEmpty(reqVO.getProjectCode()), ProjectOrderDO::getCode, reqVO.getProjectCode())
.like(!StringUtils.isEmpty(reqVO.getCustomerName()), CustomerDO::getName, reqVO.getCustomerName()) .like(!StringUtils.isEmpty(reqVO.getCustomerName()), CustomerDO::getName, reqVO.getCustomerName())

View File

@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.generator.IFill;
import com.chanko.yunxi.mes.framework.common.pojo.PageResult; import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
import com.chanko.yunxi.mes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.chanko.yunxi.mes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX; import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
import com.chanko.yunxi.mes.module.heli.controller.admin.projectorder.vo.ProjectOrderSubPageReqVO;
import com.chanko.yunxi.mes.module.heli.controller.admin.taskdispatch.vo.TaskDispatchDetailPageReqVO; import com.chanko.yunxi.mes.module.heli.controller.admin.taskdispatch.vo.TaskDispatchDetailPageReqVO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.deliverorder.DeliverOrderSubDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.material.MaterialDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.material.MaterialDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.plan.PlanDO; 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.plansub.PlanSubDO;
@ -19,6 +21,7 @@ import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskdispatch.TaskDispatch
import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskdispatch.TaskDispatchDetailDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskdispatch.TaskDispatchDetailDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskreport.TaskReportDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskreport.TaskReportDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.track.TrackDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.track.TrackDO;
import com.chanko.yunxi.mes.module.heli.dal.mysql.projectorder.ProjectOrderSubMapper;
import com.chanko.yunxi.mes.module.heli.dal.mysql.taskdispatch.TaskDispatchDetailMapper; import com.chanko.yunxi.mes.module.heli.dal.mysql.taskdispatch.TaskDispatchDetailMapper;
import com.chanko.yunxi.mes.module.system.dal.dataobject.user.AdminUserDO; import com.chanko.yunxi.mes.module.system.dal.dataobject.user.AdminUserDO;
import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper;
@ -33,36 +36,36 @@ import com.chanko.yunxi.mes.module.heli.controller.admin.track.vo.*;
@Mapper @Mapper
public interface TrackMapper extends BaseMapperX<TrackDO> { public interface TrackMapper extends BaseMapperX<TrackDO> {
default PageResult<TaskDispatchDetailDO> selectPage(TrackPageReqVO reqVO, TaskDispatchDetailMapper taskDispatchDetailMapper) { default PageResult<ProjectOrderSubDO> selectPage(TrackPageReqVO reqVO, ProjectOrderSubMapper projectOrderSubMapper) {
TaskDispatchDetailPageReqVO dispatchDetailPageReqVO = new TaskDispatchDetailPageReqVO(); ProjectOrderSubPageReqVO projectOrderSubPageReqVO = new ProjectOrderSubPageReqVO();
dispatchDetailPageReqVO.setPageSize(reqVO.getPageSize()).setPageNo(reqVO.getPageNo()); projectOrderSubPageReqVO.setPageSize(reqVO.getPageSize()).setPageNo(reqVO.getPageNo());
MPJLambdaWrapper<TaskDispatchDetailDO> query = new MPJLambdaWrapper<>(); MPJLambdaWrapper<ProjectOrderSubDO> query = new MPJLambdaWrapper<>();
query.select(TaskDispatchDetailDO::getAmount) query.select(ProjectOrderSubDO::getAmount)
.select(TaskDispatchDetailDO::getWorkTime) .select(ProjectOrderSubDO::getName)
.select(TaskDispatchDetailDO::getProcedureId) .select("pod.code as projectCode,pod.project_name as projectName,pod.project_end_time as projectEndTime")
.select(TaskDispatchDetailDO::getProcedureStatus)
.select("pod.code as projectCode,pod.project_name as projectName")
.select("pl.plan_no as planCode,pl.status as planType") .select("pl.plan_no as planCode,pl.status as planType")
.select("tpd.bom_detail_id as bomDetailId") .select("ps.project_sub_code as projectSubCode")
.select("pos.name as projectSubName,ps.project_sub_code as projectSubCode") .leftJoin(ProjectOrderDO.class,"pod",ProjectOrderDO::getId,ProjectOrderSubDO::getProjectOrderId)
.leftJoin(TaskDispatchDO.class,"tpd",TaskDispatchDO::getId,TaskDispatchDetailDO::getDispatchId) .leftJoin(PlanSubDO.class,"ps",PlanSubDO::getProjectSubId,ProjectOrderSubDO::getId)
.leftJoin(ProjectOrderSubDO.class,"pos",ProjectOrderSubDO::getId,TaskDispatchDO::getProjectSubId) .leftJoin(PlanDO.class,"pl",PlanDO::getId,PlanSubDO::getProjectPlanId)
.leftJoin(ProjectOrderDO.class,"pod",ProjectOrderDO::getId,TaskDispatchDO::getProjectId) .leftJoin(DeliverOrderSubDO.class,"dos",DeliverOrderSubDO::getSaleOrderSubId,ProjectOrderSubDO::getId)
.leftJoin(PlanDO.class,"pl",PlanDO::getId,TaskDispatchDO::getPlanId) .eq(DeliverOrderSubDO::getCategory,"DELIVER_LIST")
.leftJoin(PlanSubDO.class,"ps",PlanSubDO::getProjectSubId,TaskDispatchDO::getProjectSubId) .selectSum(DeliverOrderSubDO::getAmount,"totalReportAmount")//总共发货数量
.leftJoin(TaskReportDO.class,"tr",TaskReportDO::getDispatchDetailId,TaskDispatchDetailDO::getId) // .leftJoin(AdminUserDO.class,"u",AdminUserDO::getId,TaskDispatchDetailDO::getOwner)
.leftJoin(AdminUserDO.class,"u",AdminUserDO::getId,TaskDispatchDetailDO::getOwner) // .leftJoin(ProcessBomDO.class,"pb",ProcessBomDO::getProjectSubId,TaskDispatchDO::getProjectSubId)
.leftJoin(ProcessBomDO.class,"pb",ProcessBomDO::getProjectSubId,TaskDispatchDO::getProjectSubId) // .ne(ProcessBomDO::getBomStatus,3)
.ne(ProcessBomDO::getBomStatus,3) // .selectSum(TaskReportDO::getAmount,"totalReportAmount").selectSum(TaskReportDO::getWorkTime,"totalWorkTime")
.selectSum(TaskReportDO::getAmount,"totalReportAmount").selectSum(TaskReportDO::getWorkTime,"totalWorkTime") .eq(ProjectOrderDO::getOrderStatus,32) //已启动
.ne(ProjectOrderDO::getStatus,3) .ne(ProjectOrderDO::getDeliveryStatus,3) //不为全部发货
.groupBy(TaskDispatchDetailDO::getId) .orderByDesc(ProjectOrderDO::getProjectEndTime)
.getSelectDistinct(); .isNotNull(DeliverOrderSubDO::getSaleOrderSubId)
.groupBy(ProjectOrderSubDO::getId);
// .getSelectDistinct();
if (reqVO.getProjectCode()!=null&&!reqVO.getProjectCode().trim().equals("")){ if (reqVO.getProjectCode()!=null&&!reqVO.getProjectCode().trim().equals("")){
query.like(ProjectOrderDO::getCode,reqVO.getProjectCode()); query.like(ProjectOrderDO::getCode,reqVO.getProjectCode());
} }
if (reqVO.getPlanCode()!=null && !reqVO.getPlanCode().trim().equals("")){ if (reqVO.getPlanCode()!=null && !reqVO.getPlanCode().trim().equals("")){
query.like(PlanDO::getPlanNo,reqVO.getPlanCode()); query.like(ProjectOrderDO::getProjectName,reqVO.getPlanCode());
} }
if (reqVO.getProjectOrderSubCode()!=null && !reqVO.getProjectOrderSubCode().trim().equals("")){ if (reqVO.getProjectOrderSubCode()!=null && !reqVO.getProjectOrderSubCode().trim().equals("")){
query.like(PlanSubDO::getProjectSubCode,reqVO.getProjectOrderSubCode()); query.like(PlanSubDO::getProjectSubCode,reqVO.getProjectOrderSubCode());
@ -70,15 +73,15 @@ public interface TrackMapper extends BaseMapperX<TrackDO> {
if (reqVO.getProjectOrderSubName()!=null && !reqVO.getProjectOrderSubName().trim().equals("")){ if (reqVO.getProjectOrderSubName()!=null && !reqVO.getProjectOrderSubName().trim().equals("")){
query.like(ProjectOrderSubDO::getName,reqVO.getProjectOrderSubName()); query.like(ProjectOrderSubDO::getName,reqVO.getProjectOrderSubName());
} }
if (reqVO.getBomDetailName()!=null && !reqVO.getBomDetailName().trim().equals("")){ // if (reqVO.getBomDetailName()!=null && !reqVO.getBomDetailName().trim().equals("")){
query .select("pbd.material_name as materialName") // query .select("pbd.material_name as materialName")
.leftJoin(ProcessBomDetailDO.class,"pbd",ProcessBomDetailDO::getId,TaskDispatchDO::getBomDetailId) // .leftJoin(ProcessBomDetailDO.class,"pbd",ProcessBomDetailDO::getId,TaskDispatchDO::getBomDetailId)
.like(ProcessBomDetailDO::getMaterialName,reqVO.getBomDetailName()); // .like(ProcessBomDetailDO::getMaterialName,reqVO.getBomDetailName());
} // }
if (reqVO.getOwner()!=null){ // if (reqVO.getOwner()!=null){
query.eq(AdminUserDO::getId,reqVO.getOwner()); // query.eq(AdminUserDO::getId,reqVO.getOwner());
} // }
return taskDispatchDetailMapper.selectPage(dispatchDetailPageReqVO, query); return projectOrderSubMapper.selectPage(projectOrderSubPageReqVO, query);
} }

View File

@ -412,6 +412,16 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
if(operate == TaskReportOperateEnum.END || operate == TaskReportOperateEnum.SUBMIT){ if(operate == TaskReportOperateEnum.END || operate == TaskReportOperateEnum.SUBMIT){
throw exception(TASK_DISPATCH_TASK_NO_PERMISSION_FOR_OPERATE); throw exception(TASK_DISPATCH_TASK_NO_PERMISSION_FOR_OPERATE);
} }
if(operate==TaskReportOperateEnum.START){
List<TaskReportDO> historyReportList = taskReportMapper.selectList(new LambdaQueryWrapper<TaskReportDO>() {{
eq(TaskReportDO::getDispatchDetailId, taskDispatchDetailDO.getId())
.ne(TaskReportDO::getAmount, 0);
}});
int historyReportAmount = historyReportList.stream().mapToInt(TaskReportDO::getAmount).sum();
if (taskDispatchDetailDO.getAmount() <= historyReportAmount){
throw exception(TASK_DISPATCH_TASK_IS_OVER);
}
}
lastReportDO = new TaskReportDO(); lastReportDO = new TaskReportDO();
}else{ }else{
// 如有 // 如有

View File

@ -3,17 +3,24 @@ package com.chanko.yunxi.mes.module.heli.service.track;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.material.MaterialDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.material.MaterialDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.procedure.ProcedureDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.procedure.ProcedureDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.processbom.ProcessBomDetailDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.processbom.ProcessBomDetailDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderSubDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskdispatch.TaskDispatchDetailDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskdispatch.TaskDispatchDetailDO;
import com.chanko.yunxi.mes.module.heli.dal.mysql.material.MaterialMapper; import com.chanko.yunxi.mes.module.heli.dal.mysql.material.MaterialMapper;
import java.time.format.DateTimeFormatter;
import java.time.temporal.ChronoUnit;
import com.chanko.yunxi.mes.module.heli.dal.mysql.procedure.ProcedureMapper; import com.chanko.yunxi.mes.module.heli.dal.mysql.procedure.ProcedureMapper;
import com.chanko.yunxi.mes.module.heli.dal.mysql.processbom.ProcessBomDetailMapper; import com.chanko.yunxi.mes.module.heli.dal.mysql.processbom.ProcessBomDetailMapper;
import com.chanko.yunxi.mes.module.heli.dal.mysql.projectorder.ProjectOrderSubMapper;
import com.chanko.yunxi.mes.module.heli.dal.mysql.taskdispatch.TaskDispatchDetailMapper; import com.chanko.yunxi.mes.module.heli.dal.mysql.taskdispatch.TaskDispatchDetailMapper;
import com.chanko.yunxi.mes.module.heli.dal.mysql.taskreport.TaskReportMapper; import com.chanko.yunxi.mes.module.heli.dal.mysql.taskreport.TaskReportMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import com.chanko.yunxi.mes.module.heli.controller.admin.track.vo.*; import com.chanko.yunxi.mes.module.heli.controller.admin.track.vo.*;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.track.TrackDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.track.TrackDO;
@ -38,7 +45,7 @@ public class TrackServiceImpl implements TrackService {
@Resource @Resource
private TrackMapper trackMapper; private TrackMapper trackMapper;
@Resource @Resource
private TaskDispatchDetailMapper taskDispatchDetailMapper; private ProjectOrderSubMapper projectOrderSubMapper;
@Resource @Resource
private ProcessBomDetailMapper processBomDetailDO; private ProcessBomDetailMapper processBomDetailDO;
@Resource @Resource
@ -84,50 +91,66 @@ public class TrackServiceImpl implements TrackService {
@Override @Override
public PageResult<TrackDO> getTrackPage(TrackPageReqVO pageReqVO) { public PageResult<TrackDO> getTrackPage(TrackPageReqVO pageReqVO) {
PageResult<TaskDispatchDetailDO> taskDispatchDetailDOPageResult = trackMapper.selectPage(pageReqVO, taskDispatchDetailMapper); PageResult<ProjectOrderSubDO> projectOrderSubDOPageResult = trackMapper.selectPage(pageReqVO, projectOrderSubMapper);
PageResult<TrackDO> pageResult = new PageResult<>(); PageResult<TrackDO> pageResult = new PageResult<>();
pageResult.setTotalPages(taskDispatchDetailDOPageResult.getTotalPages()); pageResult.setTotalPages(projectOrderSubDOPageResult.getTotalPages());
pageResult.setTotal(taskDispatchDetailDOPageResult.getTotal()); pageResult.setTotal(projectOrderSubDOPageResult.getTotal());
List<TaskDispatchDetailDO> list = taskDispatchDetailDOPageResult.getList(); List<ProjectOrderSubDO> list = projectOrderSubDOPageResult.getList();
List<TrackDO> trackDOS = new ArrayList<>(); List<TrackDO> trackDOS = new ArrayList<>();
// 当前时间
LocalDateTime currentTime = LocalDateTime.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
pageResult.setList(trackDOS); pageResult.setList(trackDOS);
//如果零件名字为空就查一下零 //如果零件名字为空就查一下零
for (TaskDispatchDetailDO to : list) { for (ProjectOrderSubDO to : list) {
// 计算两个时间之间的天数差异
long daysBetween = ChronoUnit.DAYS.between(currentTime, to.getProjectEndTime());
// 四舍五入到最接近的整数
BigDecimal daysDifference = BigDecimal.valueOf(daysBetween).setScale(0, RoundingMode.HALF_UP);
TrackDO trackDO = new TrackDO(); TrackDO trackDO = new TrackDO();
trackDOS.add(trackDO); trackDOS.add(trackDO);
trackDO.setProjectCode(to.getProjectCode()) trackDO.setProjectCode(to.getProjectCode())
.setProjectName(to.getProjectName()) .setProjectName(to.getProjectName())
.setPlanCode(to.getPlanCode()) .setPlanCode(to.getPlanCode())
.setPlanStatus(to.getPlanType()) .setPlanStatus(to.getPlanType())
.setProjectOrderSubName(to.getProjectSubName()) .setProjectOrderSubName(to.getName())
.setProjectOrderSubCode(to.getProjectSubCode()) .setProjectOrderSubCode(to.getProjectSubCode())
.setProcessId(to.getProcedureId()) .setDispatchAmount(to.getAmount()) //
.setReportAmount(to.getTotalReportAmount()) // .setReportAmount(to.getTotalReportAmount()) //已发货
.setDispatchAmount(to.getAmount()) .setProcessName(formatter.format(to.getProjectEndTime()))
.setReportPreviewHour(to.getWorkTime()) // .setProjectEndTime(to.getProjectEndTime())
.setReportAllHour(to.getTotalWorkTime()) .setReportAmount(daysDifference.intValue())//日期
// .setProcessId(to.getProcedureId())
.setReportAllHour(to.getTotalReportAmount()) //已发货数量
.setReportPreviewHour(to.getAmount()-to.getTotalReportAmount()); //未发货数量
// .setReportPreviewHour(to.getWorkTime())
// .setReportAllHour(to.getTotalWorkTime())
; ;
if (to.getProcedureStatus() == 2){ // if (to.getProcedureStatus() == 2){
trackDO.setIsover(2); // trackDO.setIsover(2);
}else { // }else {
trackDO.setIsover(1); // trackDO.setIsover(1);
} // }
//1.零件名字if (reqVO.getBomDetailName()!=null && !reqVO.getBomDetailName().trim().equals("")) //1.零件名字if (reqVO.getBomDetailName()!=null && !reqVO.getBomDetailName().trim().equals(""))
if (to.getBomDetailId()!=null && (pageReqVO.getBomDetailName() == null || pageReqVO.getBomDetailName().trim().equals(""))){ // if (to.getBomDetailId()!=null && (pageReqVO.getBomDetailName() == null || pageReqVO.getBomDetailName().trim().equals(""))){
ProcessBomDetailDO processBomDetailDO1 = processBomDetailDO.selectById(to.getBomDetailId()); // ProcessBomDetailDO processBomDetailDO1 = processBomDetailDO.selectById(to.getBomDetailId());
//
if(processBomDetailDO1!=null&&processBomDetailDO1.getMaterialName()!=null){ // if(processBomDetailDO1!=null&&processBomDetailDO1.getMaterialName()!=null){
trackDO.setBomDetailName(processBomDetailDO1.getMaterialName()); // trackDO.setBomDetailName(processBomDetailDO1.getMaterialName());
} // }
} // }
if (to.getProcedureId()!=null){ // if (to.getProcedureId()!=null){
ProcedureDO procedureDO = procedureMapper.selectById(to.getProcedureId()); // ProcedureDO procedureDO = procedureMapper.selectById(to.getProcedureId());
if (procedureDO!=null){ // if (procedureDO!=null){
trackDO.setProcessName(procedureDO.getName()); // trackDO.setProcessName(procedureDO.getName());
} // }
} // }
} }
return pageResult; return pageResult;

View File

@ -14,7 +14,6 @@ VITE_UPLOAD_BATCH_URL='http://127.0.0.1:8080/admin-api/infra/file/uploadBatch'
# 接口前缀 # 接口前缀
VITE_API_BASEPATH=/dev-api VITE_API_BASEPATH=/dev-api
# 接口地址 # 接口地址
VITE_API_URL=/admin-api VITE_API_URL=/admin-api

View File

@ -11,10 +11,10 @@
class="!w-240px" class="!w-240px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="生产计划单号" prop="planCode"> <el-form-item label="项目名称" prop="planCode">
<el-input <el-input
v-model="queryParams.planCode" v-model="queryParams.planCode"
placeholder="请输入生产计划单号" placeholder="项目名称"
clearable clearable
@keyup.enter="handleQuery" @keyup.enter="handleQuery"
class="!w-240px" class="!w-240px"
@ -38,7 +38,7 @@
class="!w-240px" class="!w-240px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="零件名称" prop="bomDetailName"> <!-- <el-form-item label="零件名称" prop="bomDetailName">
<el-input <el-input
v-model="queryParams.bomDetailName" v-model="queryParams.bomDetailName"
placeholder="请输入零件名称" placeholder="请输入零件名称"
@ -50,7 +50,7 @@
<el-form-item label="任务负责人" prop="owner"> <el-form-item label="任务负责人" prop="owner">
<UserSelect v-model="queryParams.owner" @update:new-value="handleSelectedUser1" class="!w-265px"/> <UserSelect v-model="queryParams.owner" @update:new-value="handleSelectedUser1" class="!w-265px"/>
</el-form-item> </el-form-item> -->
<el-form-item> <el-form-item>
<el-button type="primary" @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> </el-button> <el-button type="primary" @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> </el-button>
<el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> </el-button> <el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> </el-button>
@ -72,19 +72,11 @@
</el-table-column> </el-table-column>
<el-table-column label="子项目编号" align="center" prop="projectOrderSubCode" /> <el-table-column label="子项目编号" align="center" prop="projectOrderSubCode" />
<el-table-column label="子项目名称" align="center" prop="projectOrderSubName" width="120"/> <el-table-column label="子项目名称" align="center" prop="projectOrderSubName" width="120"/>
<el-table-column label="零件名称" align="center" prop="bomDetailName" width="120"/> <el-table-column label="订单数量" align="center" prop="dispatchAmount" width="120"/>
<el-table-column label="工序名称" align="center" prop="processName" width="110"/> <el-table-column label="已发货数量" align="center" prop="reportAllHour" width="120"/>
<el-table-column label="总派工数量" align="center" prop="dispatchAmount" width="120"/> <el-table-column label="未发货数量" align="center" prop="reportPreviewHour" width="120"/>
<el-table-column label="总报工时间" align="center" prop="reportAllHour" width="120"/> <el-table-column label="项目结束日期" align="center" prop="processName" width="150" />
<el-table-column label="总预计工时" align="center" prop="reportPreviewHour" width="120"/> <el-table-column label="剩余天数" align="center" prop="reportAmount" width="110"/>
<el-table-column label="总报工数量" align="center" prop="reportAmount" width="120" />
<el-table-column label="完成标志" align="center" prop="isover" width="110">
<template #default="scope">
<el-tag v-if="scope.row.isover==2">完成</el-tag>
<el-tag v-else class="ml-2" type="danger">未完成</el-tag>
<!-- <dict-tag :type="DICT_TYPE.HELI_YINGFU_MONEY" :value="scope.row.isover" /> -->
</template>
</el-table-column>
<!-- <el-table-column label="操作" align="center"> <!-- <el-table-column label="操作" align="center">
<template #default="scope"> <template #default="scope">
<el-button <el-button