diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/taskdispatch/TaskDispatchController.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/taskdispatch/TaskDispatchController.java index 9dd7fda..466f048 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/taskdispatch/TaskDispatchController.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/taskdispatch/TaskDispatchController.java @@ -149,7 +149,15 @@ public class TaskDispatchController { } } + @GetMapping("/task-dispatch-detail/list-by-dispatch-id-assembly") + @Operation(summary = "获得派工明细列表") + @Parameter(name = "dispatchId", description = "派工单id",required = true) + @Parameter(name = "dispatchType", description = "派工单类型",required = false) + @PreAuthorize("@ss.hasPermission('heli:task-dispatch:query')") + public CommonResult> getTaskDispatchDetailListByDispatchIdAssembly(@RequestParam("dispatchId") Long dispatchId) { + return success(taskDispatchService.getTaskDispatchDetailListByDispatchIdAssembly(dispatchId)); + } @DeleteMapping("/task-dispatch-detail/delete") @Operation(summary = "删除派工单") @Parameter(name = "id", description = "编号", required = true) diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatch/TaskDispatchDetailDO.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatch/TaskDispatchDetailDO.java index 1242832..39a9fba 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatch/TaskDispatchDetailDO.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatch/TaskDispatchDetailDO.java @@ -104,6 +104,8 @@ public class TaskDispatchDetailDO extends BaseDO { * 工序状态 默认 已提交 已完成 0 1 2 */ private Integer procedureStatus; + private Integer reportProcess; + private String matPlanProcess; @TableField(exist = false) private String projectName; @@ -236,6 +238,7 @@ public class TaskDispatchDetailDO extends BaseDO { private String nickname; @TableField(exist = false) private BigDecimal workingHours; + @TableField(exist = false) private LocalDateTime reportTime; private Integer reportStatus; @@ -243,4 +246,10 @@ public class TaskDispatchDetailDO extends BaseDO { private Integer flag; //是否泡沫, 是-Y 否 -N private String isFoam; + @TableField(exist = false) + private BigDecimal workingHour; + @TableField(exist = false) + private Long users; + @TableField(exist = false) + private BigDecimal bgWorkTimes; } diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchDetailMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchDetailMapper.java index 1f09a3d..a52b23c 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchDetailMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchDetailMapper.java @@ -388,7 +388,28 @@ public interface TaskDispatchDetailMapper extends BaseMapperX selectListByDispatchIdAssembly(Long dispatchId) { + MPJLambdaWrapper query = new MPJLambdaWrapper<>(); + query.selectAll(TaskDispatchDetailDO.class) + .select("a.is_report as is_report,a.code as procedure_code") + .select("count(b.amount) as numAmount") + .select("sum(CASE WHEN b.work_type = 1 THEN b.work_time ELSE 0 END) as workingHours") +// .select("sum(bg.work_time) as bgWorkTime") + .select("(SELECT SUM(bg.work_time) \n" + + " FROM quality_zj_pg_master_line p\n" + + " LEFT JOIN quality_zj_bg_master_line bg ON bg.zj_mx_id = p.id and p.deleted = 0 AND p.tenant_id = 2\n" + + " WHERE p.dispatch_detail_id = t.id) AS bgWorkTime") + .leftJoin(ProcedureDO.class,"a",ProcedureDO::getId,TaskDispatchDetailDO::getProcedureId) + .leftJoin(TaskReportDO.class,"b",TaskReportDO::getDispatchDetailId,TaskDispatchDetailDO::getId) +// .leftJoin(PgMasterLineDO.class,"p",PgMasterLineDO::getDispatchDetailId,TaskDispatchDetailDO::getId) +// .leftJoin("quality_pg_master_line p on p.dispatch_detail_id=t.id and p.deleted=0") +// .leftJoin("quality_bg_master_line bg on bg.zj_mx_id = p.id and bg.deleted=0") +// .leftJoin(BgMasterLineDO.class,"bg",BgMasterLineDO::getZjMxId,PgMasterLineDO::getId) + .disableSubLogicDel() + .groupBy(TaskDispatchDetailDO::getId) + .eq(TaskDispatchDetailDO::getDispatchId, dispatchId); + return selectList(query); + } default List selectListByDispatchIdNew(Long dispatchId) { MPJLambdaWrapper query = new MPJLambdaWrapper<>(); query.selectAll(TaskDispatchDetailDO.class) diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/materialplan/MaterialPlanServiceImpl.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/materialplan/MaterialPlanServiceImpl.java index 6932c3c..2e91c82 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/materialplan/MaterialPlanServiceImpl.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/materialplan/MaterialPlanServiceImpl.java @@ -251,6 +251,7 @@ public class MaterialPlanServiceImpl implements MaterialPlanService { lambdaUpdateWrapper.set(TaskDispatchDetailDO::getProjectMaterialPlanNo, null); lambdaUpdateWrapper.set(TaskDispatchDetailDO::getPlanStatus,0); lambdaUpdateWrapper.set(TaskDispatchDetailDO::getProjectMaterialPlanDetailId,null); + lambdaUpdateWrapper.set(TaskDispatchDetailDO::getMatPlanProcess,"N"); taskDispatchDetailMapper.update(lambdaUpdateWrapper); } materialPlanBoomMapper.delete(queryWrapper1); @@ -306,6 +307,7 @@ public class MaterialPlanServiceImpl implements MaterialPlanService { materialPlanBoomDOList.add(boomDO); taskDispatchDetailDO.setProjectMaterialPlanDetailId(boomDO.getId()); taskDispatchDetailDO.setPlanStatus(1); + taskDispatchDetailDO.setMatPlanProcess("Y"); taskDispatchDetailDO.setProjectMaterialPlanNo(planDO.getProjectMaterialPlanNo()); } // materialPlanBoomMapper.insertBatch(materialPlanBoomDOList); diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskdispatch/TaskDispatchService.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskdispatch/TaskDispatchService.java index e25d7a8..f6054ac 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskdispatch/TaskDispatchService.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskdispatch/TaskDispatchService.java @@ -97,4 +97,6 @@ public interface TaskDispatchService { boolean judgeHasOver(Long id); List getListJg(Long id, Long projectSubId); + + List getTaskDispatchDetailListByDispatchIdAssembly(Long dispatchId); } diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskdispatch/TaskDispatchServiceImpl.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskdispatch/TaskDispatchServiceImpl.java index 2e94ac8..2e36f29 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskdispatch/TaskDispatchServiceImpl.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskdispatch/TaskDispatchServiceImpl.java @@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.TypeReference; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.chanko.yunxi.mes.framework.common.exception.ErrorCode; import com.chanko.yunxi.mes.framework.common.pojo.PageResult; import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils; @@ -194,15 +195,23 @@ public class TaskDispatchServiceImpl implements TaskDispatchService { for (TaskDispatchDetailDO dispatchDetailDO : list) { TaskDispatchDetailDO taskDispatchDetailDO = taskDispatchDetailMapper.selectById(dispatchDetailDO.getId()); if (ObjectUtil.isNotEmpty(taskDispatchDetailDO)){ - if (isDetailChanged(taskDispatchDetailDO, dispatchDetailDO)) { - if (taskDispatchDetailDO.getPlanStatus()==1){ - ProcessBomDetailDO bomDetailDO = processBomDetailMapper.selectById(taskDispatchDO.getBomDetailId()); + if ("false".equals(dispatchDetailDO.getIsOutsourcing())){ + if ("Y".equals(taskDispatchDetailDO.getMatPlanProcess())){ ProcedureDO procedureDO = procedureMapper.selectById(dispatchDetailDO.getProcedureId()); - if (ObjectUtil.isNotEmpty(bomDetailDO)&&ObjectUtil.isNotEmpty(procedureDO)){ - throw exception(new ErrorCode(400,bomDetailDO.getMaterialName()+" "+procedureDO.getName()+"已做物料需求计划,不能更改,请确认")); + if (ObjectUtil.isNotEmpty(procedureDO)){ + throw exception(new ErrorCode(400,"该工序"+procedureDO.getName()+"已做物料需求计划,不允许去掉外协,请确认!")); } + } } - } +// if (isDetailChanged(taskDispatchDetailDO, dispatchDetailDO)) { +// if (taskDispatchDetailDO.getPlanStatus()==1){ +// ProcessBomDetailDO bomDetailDO = processBomDetailMapper.selectById(taskDispatchDO.getBomDetailId()); +// ProcedureDO procedureDO = procedureMapper.selectById(dispatchDetailDO.getProcedureId()); +// if (ObjectUtil.isNotEmpty(bomDetailDO)&&ObjectUtil.isNotEmpty(procedureDO)){ +// throw exception(new ErrorCode(400,bomDetailDO.getMaterialName()+" "+procedureDO.getName()+"已做物料需求计划,不能更改,请确认")); +// } +// } +// } } } @@ -520,12 +529,15 @@ public class TaskDispatchServiceImpl implements TaskDispatchService { @Override public void deleteTaskDispatchDetail(Long id) { TaskDispatchDetailDO taskDispatchDetailDO = taskDispatchDetailMapper.selectById(id); - if (ObjectUtil.isNotEmpty(taskDispatchDetailDO)&&taskDispatchDetailDO.getPlanStatus()==1){ - TaskDispatchDO taskDispatchDO = taskDispatchMapper.selectById(taskDispatchDetailDO.getDispatchId()); - ProcessBomDetailDO bomDetailDO = processBomDetailMapper.selectById(taskDispatchDO.getBomDetailId()); + if (ObjectUtil.isNotEmpty(taskDispatchDetailDO)&&("Y".equals(taskDispatchDetailDO.getMatPlanProcess())||taskDispatchDetailDO.getReportProcess()!=0)){ ProcedureDO procedureDO = procedureMapper.selectById(taskDispatchDetailDO.getProcedureId()); - if (ObjectUtil.isNotEmpty(bomDetailDO)&&ObjectUtil.isNotEmpty(procedureDO)){ - throw exception(new ErrorCode(400,bomDetailDO.getMaterialName()+" "+procedureDO.getName()+"已做物料需求计划,不能更改,请确认")); + if (ObjectUtil.isNotEmpty(procedureDO)){ + if ("Y".equals(taskDispatchDetailDO.getMatPlanProcess())){ + throw exception(new ErrorCode(400,"该工序"+procedureDO.getName()+"已做需求计划,不允许删除")); + }else { + throw exception(new ErrorCode(400,"该工序"+procedureDO.getName()+"已做报工,不允许删除")); + } + } } taskDispatchDetailMapper.deleteByDispatchId(id); @@ -736,7 +748,6 @@ public class TaskDispatchServiceImpl implements TaskDispatchService { if(operateReqVO.getOwnerId()!=null){ lastReportDO.setOwner(operateReqVO.getOwnerId()); taskDispatchDetailDO.setOwner(operateReqVO.getOwnerId()); - taskDispatchDetailMapper.updateById(taskDispatchDetailDO); }else{ lastReportDO.setOwner(taskDispatchDetailDO.getOwner()); } @@ -745,6 +756,8 @@ public class TaskDispatchServiceImpl implements TaskDispatchService { }else { lastReportDO.setWorkType("1"); } + taskDispatchDetailDO.setReportProcess(1); + taskDispatchDetailMapper.updateById(taskDispatchDetailDO); //更新生产计划单 if (planDO.getStatus() != 2 && planDO.getStatus()!=3){ planDO.setStatus(2); @@ -774,6 +787,7 @@ public class TaskDispatchServiceImpl implements TaskDispatchService { case FINISH: taskDispatchDetailDO.setProcedureStatus(TaskDispatchProcedureStatusEnum.COMPLETED.getCode()); + taskDispatchDetailDO.setReportProcess(2); //装配看看是不是多人,如果是多人,判断一下 boolean allReport = true; HashMap dispatchDetailDOHashMap = new HashMap<>(); @@ -787,27 +801,30 @@ public class TaskDispatchServiceImpl implements TaskDispatchService { } } if (CollUtil.isNotEmpty(dispatchDetailDOHashMap)){ - List> hashMaps = taskDispatchDetailMapper.sumAssembleReport(new ArrayList<>(dispatchDetailDOHashMap.keySet())); - HashMap reportMap = new HashMap<>(); - for (HashMap hashMap : hashMaps) { - reportMap.put(hashMap.get("detailId"),hashMap.get("amount")); - } - for (Long l : dispatchDetailDOHashMap.keySet()) { - if (!reportMap.containsKey(l)){ - msg = msg + dispatchDetailDOHashMap.get(l).getOwnerName() + ","; - allReport = false; - } - } - if (!msg.equals("")){ - msg = msg.substring(0,msg.length()-1) + "还没有报工,请确认"; - } - - +// List> hashMaps = taskDispatchDetailMapper.sumAssembleReport(new ArrayList<>(dispatchDetailDOHashMap.keySet())); +// HashMap reportMap = new HashMap<>(); +// for (HashMap hashMap : hashMaps) { +// reportMap.put(hashMap.get("detailId"),hashMap.get("amount")); +// } +// for (Long l : dispatchDetailDOHashMap.keySet()) { +// if (!reportMap.containsKey(l)){ +// msg = msg + dispatchDetailDOHashMap.get(l).getOwnerName() + ","; +// allReport = false; +// } +// } +// if (!msg.equals("")){ +// msg = msg.substring(0,msg.length()-1) + "还没有报工,请确认"; +// } + allReport = false; } if (!allReport){ - throw exception(new ErrorCode(1_009_019,msg)); +// throw exception(new ErrorCode(1_009_019,msg)); + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(TaskDispatchDetailDO::getId,taskDispatchDetailDO.getId()); + updateWrapper.set(TaskDispatchDetailDO::getProcedureStatus,TaskDispatchProcedureStatusEnum.COMPLETED.getCode()); + taskDispatchDetailMapper.update(updateWrapper); } if (allReport){ TaskDispatchDetailOwnerDO taskDispatchDetailOwnerDO = taskDispatchDetailOwnerMapper.selectById(taskDispatchDetailDO.getDetailOwnerId()); @@ -1008,6 +1025,33 @@ public class TaskDispatchServiceImpl implements TaskDispatchService { public List getListJg(Long id, Long projectSubId) { return taskDispatchMapper.getListJg(id,projectSubId); } + + @Override + public List getTaskDispatchDetailListByDispatchIdAssembly(Long dispatchId) { + List taskDispatchDetailDOS = taskDispatchDetailMapper.selectListByDispatchIdAssembly(dispatchId); + List result = taskDispatchDetailDOS.stream() + // 按procedureId分组 + .collect(Collectors.groupingBy(TaskDispatchDetailDO::getProcedureId)) + .values().stream() + // 处理每个分组 + .map(group -> { + if (group.size() >= 2) { + // 获取前两个元素 + TaskDispatchDetailDO first = group.get(0); + TaskDispatchDetailDO second = group.get(1); + + // 将第二个元素的属性赋值给第一个元素 + first.setBgWorkTimes(second.getBgWorkTime()); + first.setWorkingHour(second.getWorkingHours()); + first.setUsers(second.getOwner()); + } + // 始终返回每组第一个元素 + return group.get(0); + }) + .collect(Collectors.toList()); + + return result; } + private void updateAssembleDetail(OperateTypeEnum operateTypeEnum,Long dispatchId, List list) { list.forEach(o -> o.setDispatchId(dispatchId)); diff --git a/mes-ui/mes-ui-admin-vue3/.env.pro b/mes-ui/mes-ui-admin-vue3/.env.pro index a909bd4..392a4f0 100644 --- a/mes-ui/mes-ui-admin-vue3/.env.pro +++ b/mes-ui/mes-ui-admin-vue3/.env.pro @@ -4,14 +4,14 @@ NODE_ENV=production VITE_DEV=false # 请求路径https://nxhs.cjyx.cc/admin-api http://192.168.1.87:8080 https://star.hz-hl.com -VITE_BASE_URL='https://star.hz-hl.com' +VITE_BASE_URL='https://nxhs.cjyx.cc' # 上传路径 http://218.75.46.166:8080 -VITE_UPLOAD_URL='https://star.hz-hl.com/admin-api/infra/file/upload' +VITE_UPLOAD_URL='https://nxhs.cjyx.cc/admin-api/infra/file/upload' # 上传路径 -VITE_UPLOAD_BATCH_URL='https://star.hz-hl.com/admin-api/infra/file/uploadBatch' +VITE_UPLOAD_BATCH_URL='https://nxhs.cjyx.cc/admin-api/infra/file/uploadBatch' # 接口前缀 VITE_API_BASEPATH= diff --git a/mes-ui/mes-ui-admin-vue3/.vscode/settings.json b/mes-ui/mes-ui-admin-vue3/.vscode/settings.json index 1176874..f9e5ba8 100644 --- a/mes-ui/mes-ui-admin-vue3/.vscode/settings.json +++ b/mes-ui/mes-ui-admin-vue3/.vscode/settings.json @@ -86,7 +86,7 @@ "source.fixAll.eslint": "explicit" }, "[vue]": { - "editor.defaultFormatter": "stylelint.vscode-stylelint" + "editor.defaultFormatter": "octref.vetur" }, "i18n-ally.localesPaths": ["src/locales"], "i18n-ally.keystyle": "nested", diff --git a/mes-ui/mes-ui-admin-vue3/package.json b/mes-ui/mes-ui-admin-vue3/package.json index 9a10915..6fcf106 100644 --- a/mes-ui/mes-ui-admin-vue3/package.json +++ b/mes-ui/mes-ui-admin-vue3/package.json @@ -6,7 +6,7 @@ "private": false, "scripts": { "i": "pnpm install", - "dev": "vite --mode base", + "dev": "vite --mode dev", "front": "vite --mode front", "ts:check": "vue-tsc --noEmit", "build:pro": "node --max_old_space_size=8192 ./node_modules/vite/bin/vite.js build --mode pro", diff --git a/mes-ui/mes-ui-admin-vue3/src/api/heli/taskdispatch/index.ts b/mes-ui/mes-ui-admin-vue3/src/api/heli/taskdispatch/index.ts index 98db4b2..bb5d1c9 100644 --- a/mes-ui/mes-ui-admin-vue3/src/api/heli/taskdispatch/index.ts +++ b/mes-ui/mes-ui-admin-vue3/src/api/heli/taskdispatch/index.ts @@ -84,3 +84,7 @@ export const getAssmebleDispatchPage = async() => { export const judgeHasOver = async(id:number)=>{ return await request.get({url:`/heli/task-dispatch/task-dispatch-detail/judgeHasOver?id=`+id}) } +// 获得派工明细列表 +export const getTaskDispatchDetailListByDispatchIdAssembly = async (dispatchId) => { + return await request.get({ url: `/heli/task-dispatch/task-dispatch-detail/list-by-dispatch-id-assembly?dispatchId=` + dispatchId }) +} diff --git a/mes-ui/mes-ui-admin-vue3/src/utils/dict.ts b/mes-ui/mes-ui-admin-vue3/src/utils/dict.ts index 1c22a7b..242441c 100644 --- a/mes-ui/mes-ui-admin-vue3/src/utils/dict.ts +++ b/mes-ui/mes-ui-admin-vue3/src/utils/dict.ts @@ -296,5 +296,6 @@ export enum DICT_TYPE { MATERIAL_PLAN_BOOM_MPLAN_STATUS='material_plan_boom_mplan_status', HELI_PROJECT_PURCHASE_ORDER_NO_TYPE = 'heli_project_purchase_order_no_type',//采购单类型 HELI_DISPATCH_PRODUCTION_STATUS = 'heli_dispatch_production_status', // 派工单状态 + HELI_STORAGE_IN_STATUS = 'heli_storage_in_status',//入库出库状态 } diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/deliverorder/detail.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/deliverorder/detail.vue index 70d6f32..f4e325a 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/deliverorder/detail.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/deliverorder/detail.vue @@ -382,9 +382,12 @@ - - - + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/qualityfeedback/detail.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/qualityfeedback/detail.vue index 3340fa1..9cd3ff3 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/qualityfeedback/detail.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/qualityfeedback/detail.vue @@ -93,9 +93,10 @@ - - - + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/index.vue index 3905af8..aa66e39 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/index.vue @@ -75,7 +75,7 @@ - - - - + + + + + + + + + + + + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/storagein/detail.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/storagein/detail.vue index b2d34c7..c093838 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/storagein/detail.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/storagein/detail.vue @@ -44,7 +44,7 @@ @@ -340,7 +340,6 @@ function doPrint() { overflow-wrap: break-word !important; padding: 4px 2px; } - @@ -355,6 +354,7 @@ function doPrint() { iframe.contentWindow?.print() setTimeout(() => document.body.removeChild(iframe), 1000) } + StorageinApi.updateIsPrint(query.id); } @@ -486,18 +486,18 @@ const getList = async () => { margin: 0 auto; border: 2px solid #000 !important; } - + .print-table th, .print-table td { border: 1px solid #000 !important; -webkit-print-color-adjust: exact !important; color-adjust: exact !important; } - + .print-table th:last-child, .print-table td:last-child { border-right: 2px solid #000 !important; } } - \ No newline at end of file + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/ProductProcessPrint.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/ProductProcessPrint.vue index 2def0fd..ffdf4f5 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/ProductProcessPrint.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/ProductProcessPrint.vue @@ -15,13 +15,13 @@ 产品工艺流程卡 - +
项目编号
{{ formData.projectCode }}
- +
子项目编号:{{ formData.projectSubCode}} 项目交期:{{formatDate(new Date(formData.projectEndTime), 'YYYY-MM-DD')}} @@ -72,6 +72,7 @@ 磨床 数控1 数控2 + 线切割 火花 刻字 网格 @@ -95,6 +96,7 @@ {{item.polishing}} {{item.wire}} {{item.rough}} + {{item.cutting}} {{item.fashioning}} {{item.spark}} {{item.lettering}} @@ -104,7 +106,7 @@ - +
各工序工艺要点 @@ -114,7 +116,7 @@ {{item.name}} - {{item.data}} + {{item.data}} @@ -127,7 +129,7 @@ 开单人/日期: - + {{formData.userNickname}} {{ formatDate(new Date(formData.startTime), 'YYYY-MM-DD') }} @@ -200,6 +202,14 @@ const summarylist = ref([ name: undefined, data: undefined }, + { + name: undefined, + data: undefined + }, + { + name: undefined, + data: undefined + }, { name: undefined, data: undefined @@ -224,7 +234,8 @@ const formDataprocess = ref({ lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 2, @@ -243,7 +254,8 @@ const formDataprocess = ref({ lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 3, @@ -262,7 +274,8 @@ const formDataprocess = ref({ lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 4, @@ -281,7 +294,8 @@ const formDataprocess = ref({ lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 5, @@ -300,7 +314,8 @@ const formDataprocess = ref({ lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 6, @@ -319,7 +334,8 @@ const formDataprocess = ref({ lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 7, @@ -339,7 +355,8 @@ const formDataprocess = ref({ lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 8, @@ -358,7 +375,8 @@ const formDataprocess = ref({ lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 9, @@ -378,7 +396,8 @@ const formDataprocess = ref({ lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 10, @@ -398,7 +417,8 @@ const formDataprocess = ref({ lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 11, @@ -418,7 +438,8 @@ const formDataprocess = ref({ lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 12, @@ -645,7 +666,8 @@ const outopen = () => { lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 2, @@ -664,7 +686,8 @@ const outopen = () => { lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 3, @@ -683,7 +706,8 @@ const outopen = () => { lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 4, @@ -702,7 +726,8 @@ const outopen = () => { lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 5, @@ -721,7 +746,8 @@ const outopen = () => { lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 6, @@ -740,7 +766,8 @@ const outopen = () => { lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 7, @@ -760,7 +787,8 @@ const outopen = () => { lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 8, @@ -779,7 +807,8 @@ const outopen = () => { lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 9, @@ -799,7 +828,8 @@ const outopen = () => { lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 10, @@ -819,7 +849,8 @@ const outopen = () => { lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 11, @@ -839,7 +870,8 @@ const outopen = () => { lettering: undefined, electrowelding: undefined, drill: undefined, - polishing: undefined + polishing: undefined, + cutting:undefined }, { index: 12, @@ -1463,6 +1495,45 @@ const open = async (id?: number) => { if (taskitem.workingHours){ formDataprocess.value.tablename[5].polishing = taskitem.workingHours } + }else if (Procedure.name == '线切割') { + console.log() + summarylist.value[13].name = Procedure.name + if (!summarylist.value[13].data) { + summarylist.value[13].data = taskitem.summary + } else if (summarylist.value[13].data && taskitem.summary) { + summarylist.value[13].data = summarylist.value[13].data + ',' + taskitem.summary + } + if (!formDataprocess.value.tablename[0].cutting) { + formDataprocess.value.tablename[0].cutting = taskitem.sort + } else if (formDataprocess.value.tablename[0].cutting && taskitem.sort) { + formDataprocess.value.tablename[0].cutting = + formDataprocess.value.tablename[0].cutting + ',' + taskitem.sort + } + Procedata.list.forEach((item: any) => { + if (item.name == Procedure.name) { + formDataprocess.value.tablename[2].cutting = item.standard1Time + formDataprocess.value.tablename[3].cutting = item.standard2Time + } + }) + + if(taskitem.owner){ + const initialUser = await UserApi.getUser(taskitem.owner) + if (!formDataprocess.value.tablename[6].cutting) { + formDataprocess.value.tablename[6].cutting = initialUser.nickname + } else if ( + formDataprocess.value.tablename[6].cutting && + !formDataprocess.value.tablename[8].cutting + ) { + formDataprocess.value.tablename[8].cutting = initialUser.nickname + } else { + } + } + if (taskitem.bgWorkTime){ + formDataprocess.value.tablename[9].cutting = taskitem.bgWorkTime + } + if (taskitem.workingHours){ + formDataprocess.value.tablename[5].cutting = taskitem.workingHours + } } }) } @@ -1478,6 +1549,7 @@ const open = async (id?: number) => { const operateLogs = (await getOperateLogPage(logParams)).list[0] formData.value.userNickname = operateLogs.userNickname formData.value.startTime = operateLogs.startTime + console.log(formDataprocess.value.tablename) } } defineExpose({ open }) // 提供 open 方法,用于打开弹窗 diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/assemblyPrinting.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/assemblyPrinting.vue new file mode 100644 index 0000000..e1283e1 --- /dev/null +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/assemblyPrinting.vue @@ -0,0 +1,1171 @@ + + + + + + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/detail.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/detail.vue index e9ddc73..95c0a28 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/detail.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/detail.vue @@ -530,12 +530,8 @@ import { import { getOperateLogPage } from "@/api/system/operatelog"; -import ProcedureSelect from "@/views/heli/hlvuestyle/procedureSelect.vue"; -import UserSelect from '@/views/heli/hlvuestyle/userSelect.vue' -import EquipSelect from "@/views/heli/hlvuestyle/equipSelect.vue"; import EquipmentSelect from "@/views/heli/hlvuestyle/equipmentSelect.vue"; import ProductProcessPrint from "./ProductProcessPrint.vue"; -import * as EquipManufactureApi from '@/api/heli/equipmanufacture'; import { ElDialog, ElTable, diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/detailDialog.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/detailDialog.vue index 1303d44..0a1b4b7 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/detailDialog.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/taskdispatch/detailDialog.vue @@ -179,22 +179,22 @@ class="!w-260px" v-model="formData.requiredCompletedDate" type="date" value-form - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + +