From 5e585c5c7416534299f7df81f4d1fce708fc77e1 Mon Sep 17 00:00:00 2001 From: z Date: Tue, 4 Mar 2025 16:06:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=A0=E5=B7=A5=E6=88=90=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../projectorder/ProjectOrderController.java | 11 ++ .../taskdispatch/TaskDispatchController.java | 8 + .../taskreport/TaskReportController.java | 2 + .../projectorder/ProjectOrderDO.java | 2 + .../taskdispatch/TaskDispatchDO.java | 11 ++ .../projectorder/ProjectOrderMapper.java | 3 +- .../taskdispatch/TaskDispatchMapper.java | 25 +++ .../mysql/taskreport/TaskReportMapper.java | 5 + .../taskdispatch/TaskDispatchService.java | 3 + .../taskdispatch/TaskDispatchServiceImpl.java | 6 + .../service/taskreport/TaskReportService.java | 110 ++++++------- .../taskreport/TaskReportServiceImpl.java | 150 +++++++++--------- .../src/api/heli/saleordercost/index.ts | 4 + .../src/views/heli/saleordercost/edit.vue | 31 ++-- 14 files changed, 232 insertions(+), 139 deletions(-) diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/projectorder/ProjectOrderController.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/projectorder/ProjectOrderController.java index 5bbe87c..41eb4b4 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/projectorder/ProjectOrderController.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/projectorder/ProjectOrderController.java @@ -14,12 +14,14 @@ import com.chanko.yunxi.mes.module.heli.dal.dataobject.deliverorder.DeliverOrder import com.chanko.yunxi.mes.module.heli.dal.dataobject.orderys.OrderYsDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderSubDO; +import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskdispatch.TaskDispatchDO; import com.chanko.yunxi.mes.module.heli.dal.mysql.orderys.OrderYsMapper; import com.chanko.yunxi.mes.module.heli.enums.BusinesTypeEnum; import com.chanko.yunxi.mes.module.heli.manager.CrossOrderManager; import com.chanko.yunxi.mes.module.heli.service.deliverorder.DeliverOrderService; import com.chanko.yunxi.mes.module.heli.service.orderys.OrderYsService; import com.chanko.yunxi.mes.module.heli.service.projectorder.ProjectOrderService; +import com.chanko.yunxi.mes.module.heli.service.taskdispatch.TaskDispatchService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; @@ -61,6 +63,8 @@ public class ProjectOrderController { private OrderYsService orderYsService; @Resource private DeliverOrderService deliverOrderService; + @Resource + private TaskDispatchService taskDispatchService; @PostMapping("/create") @Operation(summary = "创建项目订单") @PreAuthorize("@ss.hasPermission('heli:project-order:create')") @@ -150,6 +154,13 @@ public class ProjectOrderController { .reduce(BigDecimal.ZERO, BigDecimal::add); projectOrderDO.setYunFeiCost(totalAmount); } + List list= taskDispatchService.getListJg(projectOrderDO.getId(),projectOrderDO.getProjectSubId()); + if (list!=null&&list.size()>0){ + BigDecimal totalAmount = list.stream() + .map(TaskDispatchDO -> TaskDispatchDO.getZanGuMoney() != null ?new BigDecimal(TaskDispatchDO.getZanGuMoney()) : BigDecimal.ZERO) + .reduce(BigDecimal.ZERO, BigDecimal::add); + projectOrderDO.setJiaGongShiCost(totalAmount); + } } return success(BeanUtils.toBean(pageResult, ProjectOrderCostRespVO.class)); } 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 e3877dc..84d5e3f 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 @@ -12,6 +12,7 @@ import com.chanko.yunxi.mes.module.heli.controller.admin.taskdispatch.vo.*; import com.chanko.yunxi.mes.module.heli.dal.dataobject.fpuser.FpUserDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskdispatch.TaskDispatchDO; 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.mysql.fpuserdetail.FpUserDetailMapper; import com.chanko.yunxi.mes.module.heli.enums.BusinesTypeEnum; import com.chanko.yunxi.mes.module.heli.service.taskdispatch.TaskDispatchService; @@ -209,4 +210,11 @@ public class TaskDispatchController { List> owner = taskDispatchService.getOwner(id, type); return success(owner); } + @GetMapping("/getListJg") + @Operation(summary = "获得加工工时成本") + @PreAuthorize("@ss.hasPermission('heli:deliver-order:query')") + public CommonResult> getListJg(@RequestParam("id") Long id, @RequestParam("projectSubId") Long projectSubId ) { + List list= taskDispatchService.getListJg(id,projectSubId); + return success( list); + } } diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/taskreport/TaskReportController.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/taskreport/TaskReportController.java index 3942231..04e2e9c 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/taskreport/TaskReportController.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/taskreport/TaskReportController.java @@ -9,6 +9,7 @@ import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog; import com.chanko.yunxi.mes.module.heli.controller.admin.taskreport.vo.TaskReportPageReqVO; import com.chanko.yunxi.mes.module.heli.controller.admin.taskreport.vo.TaskReportRespVO; import com.chanko.yunxi.mes.module.heli.controller.admin.taskreport.vo.TaskReportSaveReqVO; +import com.chanko.yunxi.mes.module.heli.dal.dataobject.deliverorder.DeliverOrderDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskreport.TaskReportDO; import com.chanko.yunxi.mes.module.heli.service.taskreport.TaskReportService; import io.swagger.v3.oas.annotations.Operation; @@ -90,4 +91,5 @@ public class TaskReportController { BeanUtils.toBean(list, TaskReportRespVO.class)); } + } diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/projectorder/ProjectOrderDO.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/projectorder/ProjectOrderDO.java index c9ad9f2..5445b8c 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/projectorder/ProjectOrderDO.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/projectorder/ProjectOrderDO.java @@ -281,6 +281,8 @@ public class ProjectOrderDO extends BaseDO { * */ @TableField(exist = false) private BigDecimal yunFeiCost; + @TableField(exist = false) + private BigDecimal jiaGongShiCost; /** * 变更的字段列表 * */ diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatch/TaskDispatchDO.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatch/TaskDispatchDO.java index cb4fb7b..b8ee804 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatch/TaskDispatchDO.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/dataobject/taskdispatch/TaskDispatchDO.java @@ -9,6 +9,7 @@ import com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum; import com.chanko.yunxi.mes.module.heli.enums.TaskDispatchStatusEnum; import lombok.*; +import java.math.BigDecimal; import java.time.LocalDateTime; /** @@ -104,6 +105,16 @@ public class TaskDispatchDO extends BaseDO { @TableField(exist = false) private String materialName; + @TableField(exist = false) + private String materialType; + + + @TableField(exist = false) + private String shiJiMoney; + + @TableField(exist = false) + private String zanGuMoney; + @TableField(exist = false) private Long compositionId; diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/projectorder/ProjectOrderMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/projectorder/ProjectOrderMapper.java index da1cc5e..d348efb 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/projectorder/ProjectOrderMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/projectorder/ProjectOrderMapper.java @@ -49,7 +49,8 @@ public interface ProjectOrderMapper extends BaseMapperX { .like(!StringUtils.isEmpty(reqVO.getCustomerName()),"b.name",reqVO.getCustomerName()) .like(!StringUtils.isEmpty(reqVO.getProjectSubName()),"a.name",reqVO.getProjectSubName()) .eq(ProjectOrderDO::getOrderStatus,32) - .in(ProjectOrderDO::getIsSnapshot,0); + .in(ProjectOrderDO::getIsSnapshot,0) + .orderByDesc(ProjectOrderDO::getCreateTime); ; return selectPage(reqVO, query); } diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchMapper.java index 6fa52ea..4ce3779 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchMapper.java @@ -8,12 +8,17 @@ 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.plantask.PlanTaskDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.plantaskbom.PlanTaskBomDO; +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.processdesign.ProcessDesignDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderSubDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskdispatch.TaskDispatchDO; +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.enums.TaskDispatchTypeEnum; +import com.chanko.yunxi.mes.module.system.dal.dataobject.dept.PostDO; +import com.chanko.yunxi.mes.module.system.dal.dataobject.dept.UserPostDO; import com.chanko.yunxi.mes.module.system.dal.dataobject.user.AdminUserDO; import com.github.yulichang.wrapper.MPJLambdaWrapper; import org.apache.ibatis.annotations.Mapper; @@ -152,4 +157,24 @@ public interface TaskDispatchMapper extends BaseMapperX { return selectOne(query); } + default List getListJg(Long id, Long projectSubId){ + MPJLambdaWrapper query = new MPJLambdaWrapper<>(); + query.selectAll(TaskDispatchDO.class) + .select("z.name as materialName", "z.procedure_type as materialType", "SUM(COALESCE(d.work_time, 0)) as amount") + .select("p.grade_cost as shiJiMoney") + .select(" ROUND(SUM(COALESCE(d.work_time, 0)) * p.grade_cost, 2) as zanGuMoney") + .leftJoin(TaskDispatchDetailDO.class, "x", TaskDispatchDetailDO::getDispatchId,TaskDispatchDO::getId) + .leftJoin(ProcedureDO.class, "z", ProcedureDO::getId, TaskDispatchDetailDO::getProcedureId) + .leftJoin(TaskReportDO.class, "d", TaskReportDO::getDispatchDetailId,TaskDispatchDetailDO::getId) + .leftJoin(UserPostDO.class, "c", UserPostDO::getUserId, TaskReportDO::getOwner) + .leftJoin(PostDO.class,"p", PostDO::getId,UserPostDO::getPostId) + .groupBy(TaskDispatchDetailDO::getId) + .orderByDesc(TaskDispatchDO::getCreateTime) + .disableSubLogicDel(); + query.eq( TaskDispatchDO::getProjectId, id) + .eq(TaskDispatchDO::getProjectSubId,projectSubId) + .eq(TaskReportDO::getHasReport, 1); + return selectList(query); + } + } diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskreport/TaskReportMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskreport/TaskReportMapper.java index 7eb2e4f..f6bff5a 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskreport/TaskReportMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskreport/TaskReportMapper.java @@ -10,6 +10,8 @@ import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrder import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskdispatch.TaskDispatchDO; 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.system.dal.dataobject.dept.PostDO; +import com.chanko.yunxi.mes.module.system.dal.dataobject.dept.UserPostDO; import com.chanko.yunxi.mes.module.system.dal.dataobject.user.AdminUserDO; import com.github.yulichang.wrapper.MPJLambdaWrapper; import org.apache.ibatis.annotations.Mapper; @@ -27,6 +29,7 @@ import java.util.List; @Mapper public interface TaskReportMapper extends BaseMapperX { + default PageResult selectPage(TaskReportPageReqVO reqVO) { MPJLambdaWrapper query = new MPJLambdaWrapper<>(); query.selectAll(TaskReportDO.class) @@ -68,4 +71,6 @@ public interface TaskReportMapper extends BaseMapperX { query1.eq(TaskReportDO::getDispatchDetailId,dispatchDetailId); return selectCount(query1); } + + } 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 2d67852..31d6b8f 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 @@ -5,6 +5,7 @@ import com.chanko.yunxi.mes.module.heli.controller.admin.taskdispatch.vo.*; import com.chanko.yunxi.mes.module.heli.controller.admin.ygjx.vo.YgjxPageReqVO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskdispatch.TaskDispatchDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskdispatch.TaskDispatchDetailDO; +import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskreport.TaskReportDO; import javax.validation.Valid; import java.util.HashMap; @@ -90,4 +91,6 @@ public interface TaskDispatchService { List> getOwner(Long id,Long type); boolean judgeHasOver(Long id); + + List getListJg(Long id, Long projectSubId); } 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 46a63a0..b24f82a 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 @@ -633,6 +633,12 @@ public class TaskDispatchServiceImpl implements TaskDispatchService { public boolean judgeHasOver(Long id){ return taskDispatchDetailMapper.judgeHasOver(id); } + + @Override + public List getListJg(Long id, Long projectSubId) { + return taskDispatchMapper.getListJg(id,projectSubId); + } + private void createTaskDispatchDetailList(Long dispatchId, List list) { list.forEach(o -> o.setDispatchId(dispatchId)); // 分组更新与插入 diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskreport/TaskReportService.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskreport/TaskReportService.java index 3febeb9..68a3af5 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskreport/TaskReportService.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskreport/TaskReportService.java @@ -1,55 +1,55 @@ -package com.chanko.yunxi.mes.module.heli.service.taskreport; - -import java.util.*; -import javax.validation.*; -import com.chanko.yunxi.mes.module.heli.controller.admin.taskreport.vo.*; -import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskreport.TaskReportDO; -import com.chanko.yunxi.mes.framework.common.pojo.PageResult; -import com.chanko.yunxi.mes.framework.common.pojo.PageParam; - -/** - * 任务报工 Service 接口 - * - * @author 管理员 - */ -public interface TaskReportService { - - /** - * 创建任务报工 - * - * @param createReqVO 创建信息 - * @return 编号 - */ - Long createTaskReport(@Valid TaskReportSaveReqVO createReqVO); - - /** - * 更新任务报工 - * - * @param updateReqVO 更新信息 - */ - void updateTaskReport(@Valid TaskReportSaveReqVO updateReqVO); - - /** - * 删除任务报工 - * - * @param id 编号 - */ - void deleteTaskReport(Long id); - - /** - * 获得任务报工 - * - * @param id 编号 - * @return 任务报工 - */ - TaskReportDO getTaskReport(Long id); - - /** - * 获得任务报工分页 - * - * @param pageReqVO 分页查询 - * @return 任务报工分页 - */ - PageResult getTaskReportPage(TaskReportPageReqVO pageReqVO); - -} \ No newline at end of file +package com.chanko.yunxi.mes.module.heli.service.taskreport; + +import java.util.*; +import javax.validation.*; +import com.chanko.yunxi.mes.module.heli.controller.admin.taskreport.vo.*; +import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskreport.TaskReportDO; +import com.chanko.yunxi.mes.framework.common.pojo.PageResult; +import com.chanko.yunxi.mes.framework.common.pojo.PageParam; + +/** + * 任务报工 Service 接口 + * + * @author 管理员 + */ +public interface TaskReportService { + + /** + * 创建任务报工 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Long createTaskReport(@Valid TaskReportSaveReqVO createReqVO); + + /** + * 更新任务报工 + * + * @param updateReqVO 更新信息 + */ + void updateTaskReport(@Valid TaskReportSaveReqVO updateReqVO); + + /** + * 删除任务报工 + * + * @param id 编号 + */ + void deleteTaskReport(Long id); + + /** + * 获得任务报工 + * + * @param id 编号 + * @return 任务报工 + */ + TaskReportDO getTaskReport(Long id); + + /** + * 获得任务报工分页 + * + * @param pageReqVO 分页查询 + * @return 任务报工分页 + */ + PageResult getTaskReportPage(TaskReportPageReqVO pageReqVO); + +} diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskreport/TaskReportServiceImpl.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskreport/TaskReportServiceImpl.java index 8c4ba6b..72faaa1 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskreport/TaskReportServiceImpl.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/taskreport/TaskReportServiceImpl.java @@ -1,74 +1,76 @@ -package com.chanko.yunxi.mes.module.heli.service.taskreport; - -import org.springframework.stereotype.Service; -import javax.annotation.Resource; -import org.springframework.validation.annotation.Validated; -import org.springframework.transaction.annotation.Transactional; - -import java.util.*; -import com.chanko.yunxi.mes.module.heli.controller.admin.taskreport.vo.*; -import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskreport.TaskReportDO; -import com.chanko.yunxi.mes.framework.common.pojo.PageResult; -import com.chanko.yunxi.mes.framework.common.pojo.PageParam; -import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils; - -import com.chanko.yunxi.mes.module.heli.dal.mysql.taskreport.TaskReportMapper; - -import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception; -import static com.chanko.yunxi.mes.module.heli.enums.ErrorCodeConstants.*; - -/** - * 任务报工 Service 实现类 - * - * @author 管理员 - */ -@Service -@Validated -public class TaskReportServiceImpl implements TaskReportService { - - @Resource - private TaskReportMapper taskReportMapper; - - @Override - public Long createTaskReport(TaskReportSaveReqVO createReqVO) { - // 插入 - TaskReportDO taskReport = BeanUtils.toBean(createReqVO, TaskReportDO.class); - taskReportMapper.insert(taskReport); - // 返回 - return taskReport.getId(); - } - - @Override - public void updateTaskReport(TaskReportSaveReqVO updateReqVO) { - // 校验存在 - validateTaskReportExists(updateReqVO.getId()); - // 更新 - TaskReportDO updateObj = BeanUtils.toBean(updateReqVO, TaskReportDO.class); - taskReportMapper.updateById(updateObj); - } - - @Override - public void deleteTaskReport(Long id) { - // 校验存在 - validateTaskReportExists(id); - // 删除 - taskReportMapper.deleteById(id); - } - - private void validateTaskReportExists(Long id) { - if (taskReportMapper.selectById(id) == null) { - throw exception(TASK_REPORT_NOT_EXISTS); - } - } - - @Override - public TaskReportDO getTaskReport(Long id) { - return taskReportMapper.selectById(id); - } - - @Override - public PageResult getTaskReportPage(TaskReportPageReqVO pageReqVO) { - return taskReportMapper.selectPage(pageReqVO); - } - -} \ No newline at end of file +package com.chanko.yunxi.mes.module.heli.service.taskreport; + +import org.springframework.stereotype.Service; +import javax.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; +import com.chanko.yunxi.mes.module.heli.controller.admin.taskreport.vo.*; +import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskreport.TaskReportDO; +import com.chanko.yunxi.mes.framework.common.pojo.PageResult; +import com.chanko.yunxi.mes.framework.common.pojo.PageParam; +import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils; + +import com.chanko.yunxi.mes.module.heli.dal.mysql.taskreport.TaskReportMapper; + +import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception; +import static com.chanko.yunxi.mes.module.heli.enums.ErrorCodeConstants.*; + +/** + * 任务报工 Service 实现类 + * + * @author 管理员 + */ +@Service +@Validated +public class TaskReportServiceImpl implements TaskReportService { + + @Resource + private TaskReportMapper taskReportMapper; + + @Override + public Long createTaskReport(TaskReportSaveReqVO createReqVO) { + // 插入 + TaskReportDO taskReport = BeanUtils.toBean(createReqVO, TaskReportDO.class); + taskReportMapper.insert(taskReport); + // 返回 + return taskReport.getId(); + } + + @Override + public void updateTaskReport(TaskReportSaveReqVO updateReqVO) { + // 校验存在 + validateTaskReportExists(updateReqVO.getId()); + // 更新 + TaskReportDO updateObj = BeanUtils.toBean(updateReqVO, TaskReportDO.class); + taskReportMapper.updateById(updateObj); + } + + @Override + public void deleteTaskReport(Long id) { + // 校验存在 + validateTaskReportExists(id); + // 删除 + taskReportMapper.deleteById(id); + } + + private void validateTaskReportExists(Long id) { + if (taskReportMapper.selectById(id) == null) { + throw exception(TASK_REPORT_NOT_EXISTS); + } + } + + @Override + public TaskReportDO getTaskReport(Long id) { + return taskReportMapper.selectById(id); + } + + @Override + public PageResult getTaskReportPage(TaskReportPageReqVO pageReqVO) { + return taskReportMapper.selectPage(pageReqVO); + } + + + +} diff --git a/mes-ui/mes-ui-admin-vue3/src/api/heli/saleordercost/index.ts b/mes-ui/mes-ui-admin-vue3/src/api/heli/saleordercost/index.ts index dd96fed..bd5c758 100644 --- a/mes-ui/mes-ui-admin-vue3/src/api/heli/saleordercost/index.ts +++ b/mes-ui/mes-ui-admin-vue3/src/api/heli/saleordercost/index.ts @@ -27,3 +27,7 @@ export const getPlanCost = async (id: number,projectSubId: number) => { export const getListYf = async (id: number,projectSubId: number) => { return await request.get({ url: `/heli/deliver-order/getListYf?id=`+id+`&projectSubId=`+projectSubId }) } +//查询加工工时成本 +export const getListJg = async (id: number,projectSubId: number) => { + return await request.get({ url: `/heli/task-dispatch/getListJg?id=`+id+`&projectSubId=`+projectSubId }) +} diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/saleordercost/edit.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/saleordercost/edit.vue index 0bcf963..0ae52e5 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/saleordercost/edit.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/saleordercost/edit.vue @@ -200,13 +200,13 @@ - + + + - - - + @@ -260,6 +260,8 @@ import * as SaleeOrderCost from '@/api/heli/saleordercost' import {dateFormatter2} from "@/utils/formatTime"; + import {DICT_TYPE} from "@/utils/dict"; + import {number} from "vue-types"; const { t } = useI18n() // 国际化 const message = useMessage() // 消息弹窗 const { query } = useRoute() @@ -306,13 +308,24 @@ //查询运费成本 const listYfData = await SaleeOrderCost.getListYf(query.id,query.projectSubId) listYf.value=listYfData + const listJgData = await SaleeOrderCost.getListJg(query.id,query.projectSubId) + listJg.value=listJgData formData.value.yunFeiCost=0 - listYf.value.map((item)=>{ - formData.value.yunFeiCost+=item.yunFeiMoney - }) + formData.value.jiaGongShiCost=0 + if (listYf.value!=null){ + listYf.value.map((item)=>{ + formData.value.yunFeiCost+=item.yunFeiMoney + }) + } + if (listJg.value!=null){ + listJg.value.map((item)=>{ + formData.value.jiaGongShiCost+=Number(item.zanGuMoney) + }) + } }) +