Compare commits
5 Commits
frx_export
...
dev
Author | SHA1 | Date | |
---|---|---|---|
![]() |
0f2366f8e6 | ||
55bc50afe2 | |||
![]() |
1144d4692a | ||
![]() |
4a295a4ec0 | ||
![]() |
5c08e5f5e2 |
@ -39,4 +39,6 @@ public class BpmTaskDonePageReqVO extends PageParam {
|
|||||||
@Schema(description = "部门编号")
|
@Schema(description = "部门编号")
|
||||||
private Long userId;
|
private Long userId;
|
||||||
|
|
||||||
|
@Schema(description = "任务状态")
|
||||||
|
private Integer result ;
|
||||||
}
|
}
|
||||||
|
@ -93,7 +93,7 @@ public interface BpmTaskExtMapper extends BaseMapperX<BpmTaskExtDO> {
|
|||||||
queryWrapperX.selectAs(BpmProcessInstanceExtDO::getStartUserId, BpmTaskDonePageRespVO::getStartUserId);
|
queryWrapperX.selectAs(BpmProcessInstanceExtDO::getStartUserId, BpmTaskDonePageRespVO::getStartUserId);
|
||||||
queryWrapperX.selectAs(BpmProcessInstanceExtDO::getProcessDefinitionId, BpmTaskDonePageRespVO::getProcessDefinitionId);
|
queryWrapperX.selectAs(BpmProcessInstanceExtDO::getProcessDefinitionId, BpmTaskDonePageRespVO::getProcessDefinitionId);
|
||||||
queryWrapperX.selectAs(BpmProcessInstanceExtDO::getCcids, BpmTaskDonePageRespVO::getCcUserIds);
|
queryWrapperX.selectAs(BpmProcessInstanceExtDO::getCcids, BpmTaskDonePageRespVO::getCcUserIds);
|
||||||
queryWrapperX.selectAs(BpmProcessInstanceExtDO::getResult, BpmTaskDonePageRespVO::getStatus ) ;
|
queryWrapperX.selectAs(BpmProcessInstanceExtDO::getStatus, BpmTaskDonePageRespVO::getStatus ) ;
|
||||||
|
|
||||||
queryWrapperX.innerJoin(BpmProcessInstanceExtDO.class, on -> on
|
queryWrapperX.innerJoin(BpmProcessInstanceExtDO.class, on -> on
|
||||||
.eq(BpmTaskExtDO::getProcessInstanceId, BpmProcessInstanceExtDO::getProcessInstanceId)
|
.eq(BpmTaskExtDO::getProcessInstanceId, BpmProcessInstanceExtDO::getProcessInstanceId)
|
||||||
@ -102,7 +102,10 @@ public interface BpmTaskExtMapper extends BaseMapperX<BpmTaskExtDO> {
|
|||||||
queryWrapperX.likeRight(BpmProcessInstanceExtDO::getProcessDefinitionId, "oa_");
|
queryWrapperX.likeRight(BpmProcessInstanceExtDO::getProcessDefinitionId, "oa_");
|
||||||
queryWrapperX.eq(BpmTaskExtDO::getAssigneeUserId, userId);
|
queryWrapperX.eq(BpmTaskExtDO::getAssigneeUserId, userId);
|
||||||
queryWrapperX.ne(BpmTaskExtDO::getReason, BpmConstants.AUTO_APPRAVAL);
|
queryWrapperX.ne(BpmTaskExtDO::getReason, BpmConstants.AUTO_APPRAVAL);
|
||||||
queryWrapperX.ne(BpmTaskExtDO::getResult,4); //还未开始审批,发起人主动撤销的流程,不显示
|
// queryWrapperX.ne(BpmTaskExtDO::getResult,4); //还未开始审批,发起人主动撤销的流程,不显示
|
||||||
|
if (pageVO.getResult() != null) {
|
||||||
|
queryWrapperX.eq(BpmTaskExtDO::getResult,pageVO.getResult());
|
||||||
|
}
|
||||||
queryWrapperX.betweenIfPresent(BpmTaskExtDO::getCreateTime, pageVO.getCreateTime());
|
queryWrapperX.betweenIfPresent(BpmTaskExtDO::getCreateTime, pageVO.getCreateTime());
|
||||||
queryWrapperX.orderByDesc(BpmTaskExtDO::getEndTime);
|
queryWrapperX.orderByDesc(BpmTaskExtDO::getEndTime);
|
||||||
|
|
||||||
|
@ -1,22 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao</artifactId>
|
|
||||||
<version>2.0.0-jdk8-snapshot</version>
|
|
||||||
</parent>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-module-crm</artifactId>
|
|
||||||
<version>2.0.0-jdk8-snapshot</version>
|
|
||||||
<packaging>pom</packaging>
|
|
||||||
<name>${project.artifactId}</name>
|
|
||||||
<description>infra 模块,主要提供两块能力:
|
|
||||||
1. 我们放基础设施的运维与管理,支撑上层的通用与核心业务。 例如说:定时任务的管理、服务器的信息等等
|
|
||||||
2. 研发工具,提升研发效率与质量。 例如说:代码生成器、接口文档等等</description>
|
|
||||||
<modules>
|
|
||||||
<module>yudao-module-crm-api</module>
|
|
||||||
<module>yudao-module-crm-biz</module>
|
|
||||||
</modules>
|
|
||||||
</project>
|
|
@ -1,36 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-module-crm</artifactId>
|
|
||||||
<version>2.0.0-jdk8-snapshot</version>
|
|
||||||
</parent>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-module-crm-api</artifactId>
|
|
||||||
<version>2.0.0-jdk8-snapshot</version>
|
|
||||||
<name>${project.artifactId}</name>
|
|
||||||
<description>infra 模块 API,暴露给其它模块调用</description>
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-common</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springdoc</groupId>
|
|
||||||
<artifactId>springdoc-openapi-ui</artifactId>
|
|
||||||
<scope>provided</scope>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-starter-validation</artifactId>
|
|
||||||
<optional>true</optional>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.cloud</groupId>
|
|
||||||
<artifactId>spring-cloud-starter-openfeign</artifactId>
|
|
||||||
<optional>true</optional>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
</project>
|
|
@ -1,153 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-module-crm</artifactId>
|
|
||||||
<version>2.0.0-jdk8-snapshot</version>
|
|
||||||
</parent>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-module-crm-biz</artifactId>
|
|
||||||
<version>2.0.0-jdk8-snapshot</version>
|
|
||||||
<name>${project.artifactId}</name>
|
|
||||||
<description>infra 模块,主要提供两块能力:
|
|
||||||
1. 我们放基础设施的运维与管理,支撑上层的通用与核心业务。 例如说:定时任务的管理、服务器的信息等等
|
|
||||||
2. 研发工具,提升研发效率与质量。 例如说:代码生成器、接口文档等等</description>
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.cloud</groupId>
|
|
||||||
<artifactId>spring-cloud-starter-bootstrap</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-module-crm-api</artifactId>
|
|
||||||
<version>${revision}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-module-product-api</artifactId>
|
|
||||||
<version>${revision}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-module-system-api</artifactId>
|
|
||||||
<version>${revision}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-banner</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-biz-operatelog</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-biz-tenant</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-biz-error-code</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-security</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-websocket</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-mybatis</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.baomidou</groupId>
|
|
||||||
<artifactId>mybatis-plus-generator</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-redis</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-rpc</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.alibaba.cloud</groupId>
|
|
||||||
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.alibaba.cloud</groupId>
|
|
||||||
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-job</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-mq</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-test</artifactId>
|
|
||||||
<scope>test</scope>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-excel</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.apache.velocity</groupId>
|
|
||||||
<artifactId>velocity-engine-core</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.smallbun.screw</groupId>
|
|
||||||
<artifactId>screw-core</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-monitor</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>de.codecentric</groupId>
|
|
||||||
<artifactId>spring-boot-admin-starter-server</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-file</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
|
||||||
<artifactId>yudao-module-bpm-api</artifactId>
|
|
||||||
<version>2.0.0-jdk8-snapshot</version>
|
|
||||||
<scope>compile</scope>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
<build>
|
|
||||||
<finalName>${project.artifactId}</finalName>
|
|
||||||
<plugins>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
||||||
<version>${spring.boot.version}</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<goals>
|
|
||||||
<goal>repackage</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
|
||||||
<artifactId>maven-compiler-plugin</artifactId>
|
|
||||||
<configuration>
|
|
||||||
<source>8</source>
|
|
||||||
<target>8</target>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
</plugins>
|
|
||||||
</build>
|
|
||||||
</project>
|
|
@ -41,5 +41,7 @@ public interface ErrorCodeConstants {
|
|||||||
ErrorCode CANNOT_FIND_THE_CORRESPONDING_FACTORY_HANDLING_SPECIFICATION = new ErrorCode(1_000_005_001, "找不到对应的工厂搬运规格");
|
ErrorCode CANNOT_FIND_THE_CORRESPONDING_FACTORY_HANDLING_SPECIFICATION = new ErrorCode(1_000_005_001, "找不到对应的工厂搬运规格");
|
||||||
ErrorCode FACTORY_HANDLING_SPECIFICATION_EXISTS = new ErrorCode(1_000_005_002, "工厂搬运规格已存在");
|
ErrorCode FACTORY_HANDLING_SPECIFICATION_EXISTS = new ErrorCode(1_000_005_002, "工厂搬运规格已存在");
|
||||||
ErrorCode SPECIFICATION_USER_AMOUNT_NOT_EXISTS = new ErrorCode(1_000_005_003, "工厂当前月份存在未分配人员数据!");
|
ErrorCode SPECIFICATION_USER_AMOUNT_NOT_EXISTS = new ErrorCode(1_000_005_003, "工厂当前月份存在未分配人员数据!");
|
||||||
|
ErrorCode ADDED_A_HANDLING_GROUP_WITH_DUPLICATE_DATA = new ErrorCode(1_000_005_004, "新增数据有重复的搬运组!");
|
||||||
|
ErrorCode NEW_DATA_AND_OLD_DATA_HAVE_DUPLICATE_HANDLING_GROUP = new ErrorCode(1_000_005_005, "新增数据与老数据有重复的搬运组!");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -7,6 +7,7 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
|||||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||||
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.dto.HandlingGroupAmountSpecificationsPageReqDTO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.dto.HandlingGroupAmountSpecificationsTotalNumDTO;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.dto.HandlingGroupAmountSpecificationsTotalNumDTO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo.*;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo.*;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupuseramount.vo.HandlingGroupUserAmountItemVO;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupuseramount.vo.HandlingGroupUserAmountItemVO;
|
||||||
@ -31,7 +32,6 @@ import java.util.Map;
|
|||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||||
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.getSumValue;
|
|
||||||
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT;
|
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT;
|
||||||
|
|
||||||
@Tag(name = "管理后台 - 搬运组工资规格关联")
|
@Tag(name = "管理后台 - 搬运组工资规格关联")
|
||||||
@ -87,11 +87,11 @@ public class HandlingGroupAmountSpecificationsController {
|
|||||||
@Parameter(name = "factoryId", description = "工厂id", required = true, example = "1024")
|
@Parameter(name = "factoryId", description = "工厂id", required = true, example = "1024")
|
||||||
@Parameter(name = "dateStr", description = "日期", required = true, example = "1024")
|
@Parameter(name = "dateStr", description = "日期", required = true, example = "1024")
|
||||||
@Parameter(name = "handlingGroupId", description = "搬运组id", required = true, example = "1024")
|
@Parameter(name = "handlingGroupId", description = "搬运组id", required = true, example = "1024")
|
||||||
public CommonResult<List<HandlingGroupAmountSpecificationsRespVO>> getHandlingGroupAmountSpecifications(@RequestParam Long factoryId,
|
public CommonResult<List<HandlingGroupAmountSpecificationsDetailsRespVO>> getHandlingGroupAmountSpecifications(@RequestParam Long factoryId,
|
||||||
@RequestParam String dateStr,
|
@RequestParam String dateStr,
|
||||||
@RequestParam Long handlingGroupId) {
|
@RequestParam Long handlingGroupId) {
|
||||||
List<HandlingGroupAmountSpecificationsDO> handlingGroupAmountSpecifications = handlingGroupAmountSpecificationsService.getHandlingGroupAmountSpecificationsList(factoryId, dateStr, handlingGroupId);
|
List<HandlingGroupAmountSpecificationsDO> handlingGroupAmountSpecifications = handlingGroupAmountSpecificationsService.getHandlingGroupAmountSpecificationsList(factoryId, dateStr, handlingGroupId);
|
||||||
return success(BeanUtils.toBean(handlingGroupAmountSpecifications, HandlingGroupAmountSpecificationsRespVO.class));
|
return success(BeanUtils.toBean(handlingGroupAmountSpecifications, HandlingGroupAmountSpecificationsDetailsRespVO.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/page")
|
@GetMapping("/page")
|
||||||
@ -109,8 +109,8 @@ public class HandlingGroupAmountSpecificationsController {
|
|||||||
}
|
}
|
||||||
for (HandlingGroupAmountSpecificationsRespVO handlingGroupAmountSpecificationsDO : result.getList()) {
|
for (HandlingGroupAmountSpecificationsRespVO handlingGroupAmountSpecificationsDO : result.getList()) {
|
||||||
String key = handlingGroupAmountSpecificationsDO.getFactoryId() + "_" + handlingGroupAmountSpecificationsDO.getHandlingGroupId() + "_" + handlingGroupAmountSpecificationsDO.getDateStr();
|
String key = handlingGroupAmountSpecificationsDO.getFactoryId() + "_" + handlingGroupAmountSpecificationsDO.getHandlingGroupId() + "_" + handlingGroupAmountSpecificationsDO.getDateStr();
|
||||||
handlingGroupAmountSpecificationsDO.setTotalAmount(getSumValue(map.get(key), HandlingGroupAmountSpecificationsRespVO::getAmount, BigDecimal::add));
|
// handlingGroupAmountSpecificationsDO.setTotalAmount(getSumValue(map.get(key), HandlingGroupAmountSpecificationsRespVO::getAmount, BigDecimal::add));
|
||||||
handlingGroupAmountSpecificationsDO.setTotalNum(getSumValue(map.get(key), HandlingGroupAmountSpecificationsRespVO::getTotalCount, Integer::sum));
|
// handlingGroupAmountSpecificationsDO.setTotalNum(getSumValue(map.get(key), HandlingGroupAmountSpecificationsRespVO::getTotalCount, Integer::sum));
|
||||||
List<HandlingGroupUserAmountDO> items = handlingGroupUserAmountMap.get(handlingGroupAmountSpecificationsDO.getHandlingGroupId());
|
List<HandlingGroupUserAmountDO> items = handlingGroupUserAmountMap.get(handlingGroupAmountSpecificationsDO.getHandlingGroupId());
|
||||||
if (CollUtil.isNotEmpty(items)) {
|
if (CollUtil.isNotEmpty(items)) {
|
||||||
List<HandlingGroupUserAmountItemVO> handlingGroupUserAmountItemVOS = BeanUtils.toBean(items, HandlingGroupUserAmountItemVO.class);
|
List<HandlingGroupUserAmountItemVO> handlingGroupUserAmountItemVOS = BeanUtils.toBean(items, HandlingGroupUserAmountItemVO.class);
|
||||||
@ -120,6 +120,14 @@ public class HandlingGroupAmountSpecificationsController {
|
|||||||
return success(result);
|
return success(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@GetMapping("/pageV2")
|
||||||
|
@Operation(summary = "获得搬运组工资规格关联分页")
|
||||||
|
public CommonResult<PageResult<HandlingGroupAmountSpecificationsRespVO>> getHandlingGroupAmountSpecificationsPageV2(@Valid HandlingGroupAmountSpecificationsPageReqDTO pageReqVO) {
|
||||||
|
PageResult<HandlingGroupAmountSpecificationsRespVO> pageResult = handlingGroupAmountSpecificationsService.getHandlingGroupAmountSpecificationsPageV2(pageReqVO);
|
||||||
|
return success(pageResult);
|
||||||
|
}
|
||||||
|
|
||||||
@GetMapping("/export-excel")
|
@GetMapping("/export-excel")
|
||||||
@Operation(summary = "导出搬运组工资规格关联 Excel")
|
@Operation(summary = "导出搬运组工资规格关联 Excel")
|
||||||
@OperateLog(type = EXPORT)
|
@OperateLog(type = EXPORT)
|
||||||
|
@ -0,0 +1,43 @@
|
|||||||
|
package cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.dto;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
import lombok.ToString;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
public class HandlingGroupAmountSpecificationsPageReqDTO extends PageParam {
|
||||||
|
|
||||||
|
@Schema(description = "工厂id", example = "23178")
|
||||||
|
private Long factoryId;
|
||||||
|
|
||||||
|
@Schema(description = "搬运组id", example = "23178")
|
||||||
|
private Long handlingGroupId;
|
||||||
|
|
||||||
|
@Schema(description = "叉车司机名称", example = "23178")
|
||||||
|
private String staffName;
|
||||||
|
|
||||||
|
@Schema(description = "搬运工名称", example = "23178")
|
||||||
|
private String porterName;
|
||||||
|
|
||||||
|
@Schema(description = "搬运规格id", example = "23178")
|
||||||
|
private Long handlingSpecificationsId;
|
||||||
|
|
||||||
|
@Schema(description = "创建时间")
|
||||||
|
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||||
|
private LocalDateTime[] createTime;
|
||||||
|
|
||||||
|
@Schema(description = "工厂ids", example = "23178")
|
||||||
|
private List<Long> factoryIds;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,77 @@
|
|||||||
|
package cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupuseramount.vo.HandlingGroupUserAmountItemVO;
|
||||||
|
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||||
|
import com.alibaba.excel.annotation.ExcelProperty;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ExcelIgnoreUnannotated
|
||||||
|
public class HandlingGroupAmountSpecificationsDetailsRespVO {
|
||||||
|
|
||||||
|
@Schema(description = "主键id", requiredMode = Schema.RequiredMode.REQUIRED, example = "9721")
|
||||||
|
@ExcelProperty("主键id")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@Schema(description = "工厂id", example = "23178")
|
||||||
|
private Long factoryId;
|
||||||
|
|
||||||
|
@Schema(description = "工厂名称", example = "23178")
|
||||||
|
private String factoryName;
|
||||||
|
|
||||||
|
@Schema(description = "搬运组id", example = "23178")
|
||||||
|
@ExcelProperty("搬运组id")
|
||||||
|
private Long handlingGroupId;
|
||||||
|
|
||||||
|
@Schema(description = "搬运组名称", example = "23178")
|
||||||
|
@ExcelProperty("搬运组名称")
|
||||||
|
private String handlingGroupName;
|
||||||
|
|
||||||
|
@Schema(description = "叉车司机名称", example = "23178")
|
||||||
|
@ExcelProperty("叉车司机名称")
|
||||||
|
private String staffName;
|
||||||
|
|
||||||
|
@Schema(description = "叉车司机id", example = "23178")
|
||||||
|
@ExcelProperty("叉车司机id")
|
||||||
|
private Long staffId;
|
||||||
|
|
||||||
|
@Schema(description = "搬运规格id", example = "23178")
|
||||||
|
@ExcelProperty("搬运规格id")
|
||||||
|
private Long handlingSpecificationsId;
|
||||||
|
|
||||||
|
@Schema(description = "搬运规格名称", example = "23178")
|
||||||
|
@ExcelProperty("搬运规格名称")
|
||||||
|
private String handlingSpecificationsName;
|
||||||
|
|
||||||
|
@Schema(description = "数量", example = "15611")
|
||||||
|
@ExcelProperty("数量")
|
||||||
|
private Integer totalCount;
|
||||||
|
|
||||||
|
@Schema(description = "日期 格式 yyyy-MM-dd")
|
||||||
|
@ExcelProperty("日期 格式 yyyy-MM-dd")
|
||||||
|
private String dateStr;
|
||||||
|
|
||||||
|
@Schema(description = "总金额(根据规格和总量计算出 该搬运组获得的总金额)")
|
||||||
|
@ExcelProperty("总金额(根据规格和总量计算出 该搬运组获得的总金额)")
|
||||||
|
private BigDecimal amount;
|
||||||
|
|
||||||
|
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
|
@ExcelProperty("创建时间")
|
||||||
|
private LocalDateTime createTime;
|
||||||
|
|
||||||
|
|
||||||
|
@Schema(description = "金额小计")
|
||||||
|
@ExcelProperty("金额小计")
|
||||||
|
private BigDecimal totalAmount;
|
||||||
|
@Schema(description = "数量小计")
|
||||||
|
@ExcelProperty("数量小计")
|
||||||
|
private Integer totalNum;
|
||||||
|
|
||||||
|
@Schema(description = "搬运工明细列表")
|
||||||
|
private List<HandlingGroupUserAmountItemVO> handlingGroupUserAmountItemVOS;
|
||||||
|
}
|
@ -1,7 +1,6 @@
|
|||||||
package cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo;
|
package cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo;
|
||||||
|
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupuseramount.vo.HandlingGroupUserAmountItemVO;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupuseramount.vo.HandlingGroupUserAmountItemVO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupuseramount.vo.HandlingGroupUserAmountRespVO;
|
|
||||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||||
import com.alibaba.excel.annotation.ExcelProperty;
|
import com.alibaba.excel.annotation.ExcelProperty;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
@ -42,26 +41,14 @@ public class HandlingGroupAmountSpecificationsRespVO {
|
|||||||
@ExcelProperty("叉车司机id")
|
@ExcelProperty("叉车司机id")
|
||||||
private Long staffId;
|
private Long staffId;
|
||||||
|
|
||||||
@Schema(description = "搬运规格id", example = "23178")
|
|
||||||
@ExcelProperty("搬运规格id")
|
|
||||||
private Long handlingSpecificationsId;
|
|
||||||
|
|
||||||
@Schema(description = "搬运规格名称", example = "23178")
|
@Schema(description = "搬运规格名称", example = "23178")
|
||||||
@ExcelProperty("搬运规格名称")
|
@ExcelProperty("搬运规格名称")
|
||||||
private String handlingSpecificationsName;
|
private List<SpecificationDetailVO> specificationDetails;
|
||||||
|
|
||||||
@Schema(description = "数量", example = "15611")
|
|
||||||
@ExcelProperty("数量")
|
|
||||||
private Integer totalCount;
|
|
||||||
|
|
||||||
@Schema(description = "日期 格式 yyyy-MM-dd")
|
@Schema(description = "日期 格式 yyyy-MM-dd")
|
||||||
@ExcelProperty("日期 格式 yyyy-MM-dd")
|
@ExcelProperty("日期 格式 yyyy-MM-dd")
|
||||||
private String dateStr;
|
private String dateStr;
|
||||||
|
|
||||||
@Schema(description = "总金额(根据规格和总量计算出 该搬运组获得的总金额)")
|
|
||||||
@ExcelProperty("总金额(根据规格和总量计算出 该搬运组获得的总金额)")
|
|
||||||
private BigDecimal amount;
|
|
||||||
|
|
||||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
@ExcelProperty("创建时间")
|
@ExcelProperty("创建时间")
|
||||||
private LocalDateTime createTime;
|
private LocalDateTime createTime;
|
||||||
@ -73,6 +60,10 @@ public class HandlingGroupAmountSpecificationsRespVO {
|
|||||||
@Schema(description = "数量小计")
|
@Schema(description = "数量小计")
|
||||||
@ExcelProperty("数量小计")
|
@ExcelProperty("数量小计")
|
||||||
private Integer totalNum;
|
private Integer totalNum;
|
||||||
|
/**
|
||||||
|
* 搬运规格id 逗号隔开
|
||||||
|
*/
|
||||||
|
private String handlingSpecificationsIds;
|
||||||
|
|
||||||
@Schema(description = "搬运工明细列表")
|
@Schema(description = "搬运工明细列表")
|
||||||
private List<HandlingGroupUserAmountItemVO> handlingGroupUserAmountItemVOS;
|
private List<HandlingGroupUserAmountItemVO> handlingGroupUserAmountItemVOS;
|
||||||
|
@ -0,0 +1,84 @@
|
|||||||
|
package cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupuseramount.vo.HandlingGroupUserAmountItemVO;
|
||||||
|
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||||
|
import com.alibaba.excel.annotation.ExcelProperty;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ExcelIgnoreUnannotated
|
||||||
|
public class HandlingGroupAmountSpecificationsRespVOV2 {
|
||||||
|
|
||||||
|
@Schema(description = "主键id", requiredMode = Schema.RequiredMode.REQUIRED, example = "9721")
|
||||||
|
@ExcelProperty("主键id")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@Schema(description = "工厂id", example = "23178")
|
||||||
|
private Long factoryId;
|
||||||
|
|
||||||
|
@Schema(description = "工厂名称", example = "23178")
|
||||||
|
private String factoryName;
|
||||||
|
|
||||||
|
@Schema(description = "搬运组id", example = "23178")
|
||||||
|
@ExcelProperty("搬运组id")
|
||||||
|
private Long handlingGroupId;
|
||||||
|
|
||||||
|
@Schema(description = "搬运组名称", example = "23178")
|
||||||
|
@ExcelProperty("搬运组名称")
|
||||||
|
private String handlingGroupName;
|
||||||
|
|
||||||
|
@Schema(description = "叉车司机名称", example = "23178")
|
||||||
|
@ExcelProperty("叉车司机名称")
|
||||||
|
private String staffName;
|
||||||
|
|
||||||
|
@Schema(description = "叉车司机id", example = "23178")
|
||||||
|
@ExcelProperty("叉车司机id")
|
||||||
|
private Long staffId;
|
||||||
|
|
||||||
|
@Schema(description = "日期 格式 yyyy-MM-dd")
|
||||||
|
@ExcelProperty("日期 格式 yyyy-MM-dd")
|
||||||
|
private String dateStr;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Schema(description = "搬运规格id", example = "23178")
|
||||||
|
@ExcelProperty("搬运规格id")
|
||||||
|
private Long handlingSpecificationsId;
|
||||||
|
|
||||||
|
@Schema(description = "搬运规格名称", example = "23178")
|
||||||
|
@ExcelProperty("搬运规格名称")
|
||||||
|
private String handlingSpecificationsName;
|
||||||
|
|
||||||
|
@Schema(description = "数量", example = "15611")
|
||||||
|
@ExcelProperty("数量")
|
||||||
|
private Integer totalCount;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Schema(description = "总金额(根据规格和总量计算出 该搬运组获得的总金额)")
|
||||||
|
@ExcelProperty("总金额(根据规格和总量计算出 该搬运组获得的总金额)")
|
||||||
|
private BigDecimal amount;
|
||||||
|
|
||||||
|
@Schema(description = "金额小计")
|
||||||
|
@ExcelProperty("金额小计")
|
||||||
|
private BigDecimal totalAmount;
|
||||||
|
|
||||||
|
@Schema(description = "数量小计")
|
||||||
|
@ExcelProperty("数量小计")
|
||||||
|
private Integer totalNum;
|
||||||
|
|
||||||
|
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
|
@ExcelProperty("创建时间")
|
||||||
|
private LocalDateTime createTime;
|
||||||
|
|
||||||
|
@Schema(description = "搬运工明细列表")
|
||||||
|
private List<HandlingGroupUserAmountItemVO> handlingGroupUserAmountItemVOS;
|
||||||
|
}
|
@ -0,0 +1,86 @@
|
|||||||
|
package cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||||
|
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import lombok.*;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 搬运组工资规格关联 DO
|
||||||
|
*
|
||||||
|
* @author 艾楷
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class HandlingGroupAmountSpecificationsVO extends BaseDO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 主键id
|
||||||
|
*/
|
||||||
|
@TableId
|
||||||
|
private Long id;
|
||||||
|
/**
|
||||||
|
* 工厂id
|
||||||
|
*/
|
||||||
|
private Long factoryId;
|
||||||
|
/**
|
||||||
|
* 搬运规格id
|
||||||
|
*/
|
||||||
|
private Long handlingSpecificationsId;
|
||||||
|
/**
|
||||||
|
* 搬运组id
|
||||||
|
*/
|
||||||
|
private Long handlingGroupId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 叉车司机id
|
||||||
|
*/
|
||||||
|
private Long staffId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 数量
|
||||||
|
*/
|
||||||
|
private Integer totalCount;
|
||||||
|
/**
|
||||||
|
* 日期 格式 yyyy-MM-dd
|
||||||
|
*/
|
||||||
|
private String dateStr;
|
||||||
|
/**
|
||||||
|
* 总金额(根据规格和总量计算出 该搬运组获得的总金额)
|
||||||
|
*/
|
||||||
|
private BigDecimal amount;
|
||||||
|
/**
|
||||||
|
* 金额合计
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private BigDecimal totalAmount;
|
||||||
|
/**
|
||||||
|
* 数量合计
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private Integer totalNum;
|
||||||
|
/**
|
||||||
|
* 工厂名称
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String factoryName;
|
||||||
|
/**
|
||||||
|
* 搬运组名称
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String handlingGroupName;
|
||||||
|
/**
|
||||||
|
* 叉车司机名称
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String staffName;
|
||||||
|
/**
|
||||||
|
* 搬运规格id 逗号隔开
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private List<SpecificationDetailVO> specificationDetails;
|
||||||
|
}
|
@ -0,0 +1,31 @@
|
|||||||
|
package cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo;
|
||||||
|
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class SpecificationDetailVO {
|
||||||
|
@Schema(description = "工厂搬运规格id", example = "23178")
|
||||||
|
private Long handlingSpecificationsId;
|
||||||
|
|
||||||
|
@Schema(description = "规格名称", example = "标准规格")
|
||||||
|
private String handlingSpecificationsName;
|
||||||
|
|
||||||
|
@Schema(description = "数量", example = "23178")
|
||||||
|
private Integer totalCount;
|
||||||
|
|
||||||
|
@Schema(description = "金额", example = "23178")
|
||||||
|
private BigDecimal amount;
|
||||||
|
|
||||||
|
public SpecificationDetailVO() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public SpecificationDetailVO(Long handlingSpecificationsId, String handlingSpecificationsName, Integer totalCount, BigDecimal amount) {
|
||||||
|
this.handlingSpecificationsId = handlingSpecificationsId;
|
||||||
|
this.handlingSpecificationsName = handlingSpecificationsName;
|
||||||
|
this.totalCount = totalCount;
|
||||||
|
this.amount = amount;
|
||||||
|
}
|
||||||
|
}
|
@ -18,9 +18,6 @@ public class StaffWagesPageDTO extends PageParam {
|
|||||||
@Schema(description = "工厂id", example = "12639")
|
@Schema(description = "工厂id", example = "12639")
|
||||||
private Long factoryId;
|
private Long factoryId;
|
||||||
|
|
||||||
@Schema(description = "搬运组工资规格关联id", example = "27617")
|
|
||||||
private Long handlingGroupAmountSpecificationsId;
|
|
||||||
|
|
||||||
@Schema(description = "日期 格式 yyyy-MM-dd")
|
@Schema(description = "日期 格式 yyyy-MM-dd")
|
||||||
private String dateStr;
|
private String dateStr;
|
||||||
|
|
||||||
|
@ -1,11 +1,13 @@
|
|||||||
package cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupuseramount.vo;
|
package cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupuseramount.vo;
|
||||||
|
|
||||||
import lombok.*;
|
|
||||||
import java.util.*;
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||||
import java.math.BigDecimal;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
import lombok.ToString;
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||||
@ -19,8 +21,8 @@ public class HandlingGroupUserAmountPageReqVO extends PageParam {
|
|||||||
@Schema(description = "用户id", example = "12639")
|
@Schema(description = "用户id", example = "12639")
|
||||||
private Long userId;
|
private Long userId;
|
||||||
|
|
||||||
@Schema(description = "搬运组工资规格关联id", example = "27617")
|
@Schema(description = "工厂id", example = "27617")
|
||||||
private Long handlingGroupAmountSpecificationsId;
|
private Long factoryId;
|
||||||
|
|
||||||
@Schema(description = "搬运组id", example = "27617")
|
@Schema(description = "搬运组id", example = "27617")
|
||||||
private Long handlingGroupId;
|
private Long handlingGroupId;
|
||||||
|
@ -25,10 +25,6 @@ public class HandlingGroupUserAmountRespVO {
|
|||||||
@ExcelProperty("用户名称")
|
@ExcelProperty("用户名称")
|
||||||
private String userName;
|
private String userName;
|
||||||
|
|
||||||
@Schema(description = "搬运组工资规格关联id", example = "27617")
|
|
||||||
@ExcelProperty("搬运组工资规格关联id")
|
|
||||||
private Long handlingGroupAmountSpecificationsId;
|
|
||||||
|
|
||||||
@Schema(description = "日期 格式 yyyy-MM-dd")
|
@Schema(description = "日期 格式 yyyy-MM-dd")
|
||||||
@ExcelProperty("日期 格式 yyyy-MM-dd")
|
@ExcelProperty("日期 格式 yyyy-MM-dd")
|
||||||
private String dateStr;
|
private String dateStr;
|
||||||
|
@ -1,10 +1,8 @@
|
|||||||
package cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupuseramount.vo;
|
package cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupuseramount.vo;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.*;
|
import lombok.Data;
|
||||||
import java.util.*;
|
|
||||||
import javax.validation.constraints.*;
|
|
||||||
import java.util.*;
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
@Schema(description = "管理后台 - 搬运组每日个人工资记录新增/修改 Request VO")
|
@Schema(description = "管理后台 - 搬运组每日个人工资记录新增/修改 Request VO")
|
||||||
@ -20,8 +18,8 @@ public class HandlingGroupUserAmountSaveReqVO {
|
|||||||
@Schema(description = "工厂id", example = "12639")
|
@Schema(description = "工厂id", example = "12639")
|
||||||
private Long factoryId;
|
private Long factoryId;
|
||||||
|
|
||||||
@Schema(description = "搬运组工资规格关联id", example = "27617")
|
@Schema(description = "搬运组id", example = "12639")
|
||||||
private Long handlingGroupAmountSpecificationsId;
|
private Long handlingGroupId;
|
||||||
|
|
||||||
@Schema(description = "日期 格式 yyyy-MM-dd")
|
@Schema(description = "日期 格式 yyyy-MM-dd")
|
||||||
private String dateStr;
|
private String dateStr;
|
||||||
|
@ -39,4 +39,9 @@ public class HandlingGroupDO extends BaseDO {
|
|||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String factoryName;
|
private String factoryName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 搬运日期
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String dateStr;
|
||||||
}
|
}
|
||||||
|
@ -1,15 +1,15 @@
|
|||||||
package cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroupamountspecifications;
|
package cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroupamountspecifications;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||||
import com.alibaba.excel.annotation.ExcelProperty;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo.SpecificationDetailVO;
|
||||||
import com.baomidou.mybatisplus.annotation.KeySequence;
|
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 搬运组工资规格关联 DO
|
* 搬运组工资规格关联 DO
|
||||||
@ -17,7 +17,8 @@ import java.math.BigDecimal;
|
|||||||
* @author 艾楷
|
* @author 艾楷
|
||||||
*/
|
*/
|
||||||
@TableName("sf_handling_group_amount_specifications")
|
@TableName("sf_handling_group_amount_specifications")
|
||||||
@KeySequence("sf_handling_group_amount_specifications_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
@KeySequence("sf_handling_group_amount_specifications_seq")
|
||||||
|
// 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = true)
|
@EqualsAndHashCode(callSuper = true)
|
||||||
@ToString(callSuper = true)
|
@ToString(callSuper = true)
|
||||||
@ -39,6 +40,11 @@ public class HandlingGroupAmountSpecificationsDO extends BaseDO {
|
|||||||
* 搬运规格id
|
* 搬运规格id
|
||||||
*/
|
*/
|
||||||
private Long handlingSpecificationsId;
|
private Long handlingSpecificationsId;
|
||||||
|
/**
|
||||||
|
* 搬运规格名称
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String handlingSpecificationsName;
|
||||||
/**
|
/**
|
||||||
* 搬运组id
|
* 搬运组id
|
||||||
*/
|
*/
|
||||||
@ -61,8 +67,16 @@ public class HandlingGroupAmountSpecificationsDO extends BaseDO {
|
|||||||
* 总金额(根据规格和总量计算出 该搬运组获得的总金额)
|
* 总金额(根据规格和总量计算出 该搬运组获得的总金额)
|
||||||
*/
|
*/
|
||||||
private BigDecimal amount;
|
private BigDecimal amount;
|
||||||
|
/**
|
||||||
|
* 金额合计
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private BigDecimal totalAmount;
|
||||||
|
/**
|
||||||
|
* 数量合计
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private Integer totalNum;
|
||||||
/**
|
/**
|
||||||
* 工厂名称
|
* 工厂名称
|
||||||
*/
|
*/
|
||||||
@ -79,8 +93,8 @@ public class HandlingGroupAmountSpecificationsDO extends BaseDO {
|
|||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String staffName;
|
private String staffName;
|
||||||
/**
|
/**
|
||||||
* 搬运规格名称
|
* 搬运规格id 逗号隔开
|
||||||
*/
|
*/
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String handlingSpecificationsName;
|
private List<SpecificationDetailVO> specificationDetails;
|
||||||
}
|
}
|
||||||
|
@ -40,11 +40,6 @@ public class HandlingGroupUserAmountDO extends BaseDO {
|
|||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String userName;
|
private String userName;
|
||||||
|
|
||||||
/**
|
|
||||||
* 搬运组工资规格关联id
|
|
||||||
*/
|
|
||||||
private Long handlingGroupAmountSpecificationsId;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 搬运组id
|
* 搬运组id
|
||||||
*/
|
*/
|
||||||
|
@ -1,16 +1,22 @@
|
|||||||
package cn.iocoder.yudao.module.smartfactory.dal.mysql.handlinggroup;
|
package cn.iocoder.yudao.module.smartfactory.dal.mysql.handlinggroup;
|
||||||
|
|
||||||
import java.util.*;
|
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroup.vo.HandlingGroupPageReqVO;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.dto.HandlingGroupAmountSpecificationsPageReqDTO;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo.HandlingGroupAmountSpecificationsVO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroup.HandlingGroupDO;
|
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroup.HandlingGroupDO;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroupamountspecifications.HandlingGroupAmountSpecificationsDO;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroup.vo.*;
|
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
import org.apache.ibatis.annotations.Result;
|
||||||
|
import org.apache.ibatis.annotations.Results;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 搬运组 Mapper
|
* 搬运组 Mapper
|
||||||
@ -30,10 +36,25 @@ public interface HandlingGroupMapper extends BaseMapperX<HandlingGroupDO> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* @param page
|
* @param page
|
||||||
* @param vo
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
IPage<HandlingGroupDO> selectPageList(@Param("page") Page<Object> page, @Param("vo") HandlingGroupPageReqVO vo);
|
IPage<HandlingGroupDO> selectPageList(@Param("page") Page<Object> page, @Param("vo") HandlingGroupPageReqVO vo);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据时间分组查询分页
|
||||||
|
*
|
||||||
|
* @param page
|
||||||
|
* @param vo
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
IPage<HandlingGroupAmountSpecificationsVO> selectPageListByDateStr(@Param("page") Page<Object> page, @Param("vo") HandlingGroupAmountSpecificationsPageReqDTO vo);
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param id
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
HandlingGroupDO getHandlingGroup(@Param("id") Long id);
|
||||||
}
|
}
|
||||||
|
@ -26,7 +26,6 @@ public interface HandlingGroupUserAmountMapper extends BaseMapperX<HandlingGroup
|
|||||||
default PageResult<HandlingGroupUserAmountDO> selectPage(HandlingGroupUserAmountPageReqVO reqVO) {
|
default PageResult<HandlingGroupUserAmountDO> selectPage(HandlingGroupUserAmountPageReqVO reqVO) {
|
||||||
return selectPage(reqVO, new LambdaQueryWrapperX<HandlingGroupUserAmountDO>()
|
return selectPage(reqVO, new LambdaQueryWrapperX<HandlingGroupUserAmountDO>()
|
||||||
.eqIfPresent(HandlingGroupUserAmountDO::getUserId, reqVO.getUserId())
|
.eqIfPresent(HandlingGroupUserAmountDO::getUserId, reqVO.getUserId())
|
||||||
.eqIfPresent(HandlingGroupUserAmountDO::getHandlingGroupAmountSpecificationsId, reqVO.getHandlingGroupAmountSpecificationsId())
|
|
||||||
.eqIfPresent(HandlingGroupUserAmountDO::getDateStr, reqVO.getDateStr())
|
.eqIfPresent(HandlingGroupUserAmountDO::getDateStr, reqVO.getDateStr())
|
||||||
.eqIfPresent(HandlingGroupUserAmountDO::getAmount, reqVO.getAmount())
|
.eqIfPresent(HandlingGroupUserAmountDO::getAmount, reqVO.getAmount())
|
||||||
.betweenIfPresent(HandlingGroupUserAmountDO::getCreateTime, reqVO.getCreateTime())
|
.betweenIfPresent(HandlingGroupUserAmountDO::getCreateTime, reqVO.getCreateTime())
|
||||||
@ -51,6 +50,7 @@ public interface HandlingGroupUserAmountMapper extends BaseMapperX<HandlingGroup
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取月工资列表
|
* 获取月工资列表
|
||||||
|
*
|
||||||
* @param factoryId
|
* @param factoryId
|
||||||
* @param dateList
|
* @param dateList
|
||||||
* @param name
|
* @param name
|
||||||
@ -60,21 +60,25 @@ public interface HandlingGroupUserAmountMapper extends BaseMapperX<HandlingGroup
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 列表
|
* 列表
|
||||||
|
*
|
||||||
* @param vo
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
List<HandlingGroupUserAmountDO> getHandlingGroupUserAmountList(@Param("vo") HandlingGroupUserAmountPageReqVO vo);
|
List<HandlingGroupUserAmountDO> getHandlingGroupUserAmountList(@Param("vo") HandlingGroupUserAmountPageReqVO vo);
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @param handlingGroupAmountSpecificationsIds
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
List<HandlingGroupUserAmountDO> getByHandlingGroupAmountSpecificationsId(@Param("handlingGroupAmountSpecificationsIds") List<Long> handlingGroupAmountSpecificationsIds);
|
|
||||||
|
|
||||||
List<HandlingGroupUserAmountDO> getByHandlingGroupIds(@Param("handlingGroupIds") List<Long> handlingGroupIds);
|
List<HandlingGroupUserAmountDO> getByHandlingGroupIds(@Param("handlingGroupIds") List<Long> handlingGroupIds);
|
||||||
|
|
||||||
List<HandlingGroupUserAmountDO> selectAmountSum(@Param("factoryId") Long factoryId, @Param("month") String month);
|
List<HandlingGroupUserAmountDO> selectAmountSum(@Param("factoryId") Long factoryId, @Param("month") String month);
|
||||||
|
|
||||||
Long selectIsExists(@Param("factoryId") Long factoryId, @Param("month") String month);
|
Long selectIsExists(@Param("factoryId") Long factoryId, @Param("month") String month);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过工厂列表ids 和日期列表 和 搬运组ids 获取
|
||||||
|
*
|
||||||
|
* @param factoryIds
|
||||||
|
* @param dateStrList
|
||||||
|
* @param handlingGroupIds
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<HandlingGroupUserAmountDO> getByFactorIdAndDateStrAndHandlingGroupId(@Param("factoryIds") List<Long> factoryIds, @Param("dateStrList") List<String> dateStrList, @Param("handlingGroupIds") List<Long> handlingGroupIds);
|
||||||
}
|
}
|
||||||
|
@ -44,4 +44,11 @@ public interface HandlingSpecificationsMapper extends BaseMapperX<HandlingSpecif
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
List<HandlingSpecificationsDO> getHandlingSpecificationsList(@Param("vo") HandlingSpecificationsPageReqVO vo);
|
List<HandlingSpecificationsDO> getHandlingSpecificationsList(@Param("vo") HandlingSpecificationsPageReqVO vo);
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param id
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
HandlingSpecificationsDO getHandlingSpecifications(@Param("id") Long id);
|
||||||
}
|
}
|
||||||
|
@ -51,7 +51,7 @@ public class HandlingGroupServiceImpl extends ServiceImpl<HandlingGroupMapper, H
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public HandlingGroupDO getHandlingGroup(Long id) {
|
public HandlingGroupDO getHandlingGroup(Long id) {
|
||||||
return handlingGroupMapper.selectById(id);
|
return handlingGroupMapper.getHandlingGroup(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -1,9 +1,12 @@
|
|||||||
package cn.iocoder.yudao.module.smartfactory.service.handlinggroupamountspecifications;
|
package cn.iocoder.yudao.module.smartfactory.service.handlinggroupamountspecifications;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.dto.HandlingGroupAmountSpecificationsPageReqDTO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.dto.HandlingGroupAmountSpecificationsTotalNumDTO;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.dto.HandlingGroupAmountSpecificationsTotalNumDTO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo.*;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroup.HandlingGroupDO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroupamountspecifications.HandlingGroupAmountSpecificationsDO;
|
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroupamountspecifications.HandlingGroupAmountSpecificationsDO;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
import javax.validation.Valid;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
@ -14,7 +17,7 @@ import java.util.List;
|
|||||||
*
|
*
|
||||||
* @author 艾楷
|
* @author 艾楷
|
||||||
*/
|
*/
|
||||||
public interface HandlingGroupAmountSpecificationsService {
|
public interface HandlingGroupAmountSpecificationsService extends IService<HandlingGroupAmountSpecificationsDO> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获得搬运组工资规格关联
|
* 获得搬运组工资规格关联
|
||||||
@ -66,16 +69,22 @@ public interface HandlingGroupAmountSpecificationsService {
|
|||||||
/**
|
/**
|
||||||
* 获取合计
|
* 获取合计
|
||||||
*
|
*
|
||||||
* @param factoryId
|
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
HandlingGroupAmountSpecificationsTotalNumVO getTotalNum(HandlingGroupAmountSpecificationsTotalNumDTO dto);
|
HandlingGroupAmountSpecificationsTotalNumVO getTotalNum(HandlingGroupAmountSpecificationsTotalNumDTO dto);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取金额小计
|
* 获取金额小计
|
||||||
|
*
|
||||||
* @param totalCount
|
* @param totalCount
|
||||||
* @param handlingSpecificationsId
|
* @param handlingSpecificationsId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
BigDecimal getAmountSubtotal(Integer totalCount, Long handlingSpecificationsId);
|
BigDecimal getAmountSubtotal(Integer totalCount, Long handlingSpecificationsId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param pageReqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
PageResult<HandlingGroupAmountSpecificationsRespVO> getHandlingGroupAmountSpecificationsPageV2(@Valid HandlingGroupAmountSpecificationsPageReqDTO pageReqVO);
|
||||||
}
|
}
|
||||||
|
@ -2,32 +2,42 @@ package cn.iocoder.yudao.module.smartfactory.service.handlinggroupamountspecific
|
|||||||
|
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.util.MyBatisUtils;
|
import cn.iocoder.yudao.framework.mybatis.core.util.MyBatisUtils;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroup.vo.HandlingGroupListVO;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroup.vo.HandlingGroupListVO;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.dto.HandlingGroupAmountSpecificationsPageReqDTO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.dto.HandlingGroupAmountSpecificationsTotalNumDTO;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.dto.HandlingGroupAmountSpecificationsTotalNumDTO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo.*;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupuseramount.vo.HandlingGroupUserAmountItemVO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroupamountspecifications.HandlingGroupAmountSpecificationsDO;
|
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroupamountspecifications.HandlingGroupAmountSpecificationsDO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroupuseramount.HandlingGroupUserAmountDO;
|
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroupuseramount.HandlingGroupUserAmountDO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlingspecifications.HandlingSpecificationsDO;
|
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlingspecifications.HandlingSpecificationsDO;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.dal.mysql.handlinggroup.HandlingGroupMapper;
|
||||||
import cn.iocoder.yudao.module.smartfactory.dal.mysql.handlinggroupamountspecifications.HandlingGroupAmountSpecificationsMapper;
|
import cn.iocoder.yudao.module.smartfactory.dal.mysql.handlinggroupamountspecifications.HandlingGroupAmountSpecificationsMapper;
|
||||||
import cn.iocoder.yudao.module.smartfactory.service.handlinggroupuseramount.HandlingGroupUserAmountService;
|
import cn.iocoder.yudao.module.smartfactory.service.handlinggroupuseramount.HandlingGroupUserAmountService;
|
||||||
import cn.iocoder.yudao.module.smartfactory.service.handlingspecifications.HandlingSpecificationsService;
|
import cn.iocoder.yudao.module.smartfactory.service.handlingspecifications.HandlingSpecificationsService;
|
||||||
import cn.iocoder.yudao.module.system.api.dept.DeptApi;
|
import cn.iocoder.yudao.module.system.api.dept.DeptApi;
|
||||||
import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
|
import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
|
||||||
import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
|
import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
|
||||||
|
import com.alibaba.druid.sql.visitor.functions.Lpad;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||||
import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
|
import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
|
||||||
|
import static cn.iocoder.yudao.module.smartfactory.enums.ErrorCodeConstants.ADDED_A_HANDLING_GROUP_WITH_DUPLICATE_DATA;
|
||||||
|
import static cn.iocoder.yudao.module.smartfactory.enums.ErrorCodeConstants.NEW_DATA_AND_OLD_DATA_HAVE_DUPLICATE_HANDLING_GROUP;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 搬运组工资规格关联 Service 实现类
|
* 搬运组工资规格关联 Service 实现类
|
||||||
@ -36,11 +46,13 @@ import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUti
|
|||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
@Validated
|
@Validated
|
||||||
public class HandlingGroupAmountSpecificationsServiceImpl implements HandlingGroupAmountSpecificationsService {
|
public class HandlingGroupAmountSpecificationsServiceImpl extends ServiceImpl<HandlingGroupAmountSpecificationsMapper, HandlingGroupAmountSpecificationsDO> implements HandlingGroupAmountSpecificationsService {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private HandlingGroupAmountSpecificationsMapper handlingGroupAmountSpecificationsMapper;
|
private HandlingGroupAmountSpecificationsMapper handlingGroupAmountSpecificationsMapper;
|
||||||
@Resource
|
@Resource
|
||||||
|
private HandlingGroupMapper handlingGroupMapper;
|
||||||
|
@Resource
|
||||||
private HandlingSpecificationsService handlingSpecificationsService;
|
private HandlingSpecificationsService handlingSpecificationsService;
|
||||||
@Resource
|
@Resource
|
||||||
private HandlingGroupUserAmountService handlingGroupUserAmountService;
|
private HandlingGroupUserAmountService handlingGroupUserAmountService;
|
||||||
@ -79,6 +91,26 @@ public class HandlingGroupAmountSpecificationsServiceImpl implements HandlingGro
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void batchCreate(HandlingGroupAmountSpecificationsBatchCreateVO vo) {
|
public void batchCreate(HandlingGroupAmountSpecificationsBatchCreateVO vo) {
|
||||||
|
List<Long> newHandlingGroupIds = vo.getHandlingGroupList().stream().map(HandlingGroupListVO::getHandlingGroupId).collect(Collectors.toList());
|
||||||
|
// -- 先判断 新增之中有没有冲突的搬运组
|
||||||
|
int num = newHandlingGroupIds.size();
|
||||||
|
List<Long> distinctList = newHandlingGroupIds.stream().distinct().collect(Collectors.toList());
|
||||||
|
if (num > distinctList.size()) {
|
||||||
|
throw exception(ADDED_A_HANDLING_GROUP_WITH_DUPLICATE_DATA);
|
||||||
|
}
|
||||||
|
// -- 再判断是否有重复的数据 - 同一天 同一个工厂 不可以出现两个相同的搬运组
|
||||||
|
List<HandlingGroupAmountSpecificationsDO> oldList = this.list(new LambdaQueryWrapper<HandlingGroupAmountSpecificationsDO>()
|
||||||
|
.eq(HandlingGroupAmountSpecificationsDO::getFactoryId, vo.getFactoryId())
|
||||||
|
.eq(HandlingGroupAmountSpecificationsDO::getDateStr, vo.getDateStr()));
|
||||||
|
List<Long> oldHandlingGroupIds = new ArrayList<>();
|
||||||
|
if (CollUtil.isNotEmpty(oldList)) {
|
||||||
|
oldHandlingGroupIds = oldList.stream().map(HandlingGroupAmountSpecificationsDO::getHandlingGroupId).collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
if (CollUtil.isNotEmpty(CollUtil.intersection(distinctList, oldHandlingGroupIds))) {
|
||||||
|
throw exception(NEW_DATA_AND_OLD_DATA_HAVE_DUPLICATE_HANDLING_GROUP);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
List<HandlingGroupAmountSpecificationsDO> list = new ArrayList<>();
|
List<HandlingGroupAmountSpecificationsDO> list = new ArrayList<>();
|
||||||
// -- 获取到所有的规格列表
|
// -- 获取到所有的规格列表
|
||||||
List<Long> handlingSpecificationsIds = vo.getHandlingGroupList().stream()
|
List<Long> handlingSpecificationsIds = vo.getHandlingGroupList().stream()
|
||||||
@ -163,9 +195,11 @@ public class HandlingGroupAmountSpecificationsServiceImpl implements HandlingGro
|
|||||||
handlingGroupAmountSpecificationsMapper.deleteBatchIds(ids);
|
handlingGroupAmountSpecificationsMapper.deleteBatchIds(ids);
|
||||||
|
|
||||||
handlingGroupUserAmountService.remove(new LambdaQueryWrapper<HandlingGroupUserAmountDO>()
|
handlingGroupUserAmountService.remove(new LambdaQueryWrapper<HandlingGroupUserAmountDO>()
|
||||||
.in(HandlingGroupUserAmountDO::getHandlingGroupAmountSpecificationsId, ids)
|
.eq(HandlingGroupUserAmountDO::getFactoryId, vo.getFactoryId())
|
||||||
);
|
.eq(HandlingGroupUserAmountDO::getHandlingGroupId, vo.getHandlingGroupId())
|
||||||
|
.eq(HandlingGroupUserAmountDO::getDateStr, vo.getDateStr()));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public HandlingGroupAmountSpecificationsTotalNumVO getTotalNum(HandlingGroupAmountSpecificationsTotalNumDTO dto) {
|
public HandlingGroupAmountSpecificationsTotalNumVO getTotalNum(HandlingGroupAmountSpecificationsTotalNumDTO dto) {
|
||||||
// 判断当前登录人是否属于工厂主管
|
// 判断当前登录人是否属于工厂主管
|
||||||
@ -189,4 +223,27 @@ public class HandlingGroupAmountSpecificationsServiceImpl implements HandlingGro
|
|||||||
}
|
}
|
||||||
return totalAmount;
|
return totalAmount;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResult<HandlingGroupAmountSpecificationsRespVO> getHandlingGroupAmountSpecificationsPageV2(HandlingGroupAmountSpecificationsPageReqDTO pageReqVO) {
|
||||||
|
IPage<HandlingGroupAmountSpecificationsVO> handlingGroupPage = handlingGroupMapper.selectPageListByDateStr(MyBatisUtils.buildPage(pageReqVO), pageReqVO);
|
||||||
|
// 搬运规格ids - 拼接 一起查询
|
||||||
|
PageResult<HandlingGroupAmountSpecificationsVO> resultPage = new PageResult<>(handlingGroupPage.getRecords(), handlingGroupPage.getTotal());
|
||||||
|
PageResult<HandlingGroupAmountSpecificationsRespVO> result = BeanUtils.toBean(resultPage, HandlingGroupAmountSpecificationsRespVO.class);
|
||||||
|
List<Long> factoryIds = result.getList().stream().map(HandlingGroupAmountSpecificationsRespVO::getFactoryId).distinct().collect(Collectors.toList());
|
||||||
|
List<String> dateStrList = result.getList().stream().map(HandlingGroupAmountSpecificationsRespVO::getDateStr).distinct().collect(Collectors.toList());
|
||||||
|
List<Long> handlingGroupIds = result.getList().stream().map(HandlingGroupAmountSpecificationsRespVO::getHandlingGroupId).distinct().collect(Collectors.toList());
|
||||||
|
if (CollUtil.isNotEmpty(factoryIds) && CollUtil.isNotEmpty(dateStrList) && CollUtil.isNotEmpty(handlingGroupIds)) {
|
||||||
|
// -- 工厂 - 时间 - 组
|
||||||
|
List<HandlingGroupUserAmountDO> handlingGroupUserAmountDOS = handlingGroupUserAmountService.getByFactorIdAndDateStrAndHandlingGroupId(factoryIds, dateStrList, handlingGroupIds);
|
||||||
|
Map<String, List<HandlingGroupUserAmountDO>> map = handlingGroupUserAmountDOS.stream().collect(Collectors.groupingBy(
|
||||||
|
a -> a.getFactoryId() + "-" + a.getDateStr() + "-" + a.getHandlingGroupId()
|
||||||
|
));
|
||||||
|
for (HandlingGroupAmountSpecificationsRespVO handlingGroupAmountSpecificationsRespVO : result.getList()) {
|
||||||
|
String key = handlingGroupAmountSpecificationsRespVO.getFactoryId() + "-" + handlingGroupAmountSpecificationsRespVO.getDateStr() + "-" + handlingGroupAmountSpecificationsRespVO.getHandlingGroupId();
|
||||||
|
handlingGroupAmountSpecificationsRespVO.setHandlingGroupUserAmountItemVOS(BeanUtils.toBean(map.get(key), HandlingGroupUserAmountItemVO.class));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -84,24 +84,29 @@ public interface HandlingGroupUserAmountService extends IService<HandlingGroupUs
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 列表
|
* 列表
|
||||||
|
*
|
||||||
* @param pageReqVO
|
* @param pageReqVO
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
List<HandlingGroupUserAmountDO> getHandlingGroupUserAmountList(HandlingGroupUserAmountPageReqVO pageReqVO);
|
List<HandlingGroupUserAmountDO> getHandlingGroupUserAmountList(HandlingGroupUserAmountPageReqVO pageReqVO);
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @param handlingGroupAmountSpecificationsIds
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
List<HandlingGroupUserAmountDO> getByHandlingGroupAmountSpecificationsId(List<Long> handlingGroupAmountSpecificationsIds);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 确认搬运工组薪资,确认后添加至员工薪资表
|
* 确认搬运工组薪资,确认后添加至员工薪资表
|
||||||
|
*
|
||||||
* @param factoryId
|
* @param factoryId
|
||||||
* @param month
|
* @param month
|
||||||
*/
|
*/
|
||||||
void confirmHandlingGroupUserAmount(Long factoryId, String month);
|
void confirmHandlingGroupUserAmount(Long factoryId, String month);
|
||||||
|
|
||||||
List<HandlingGroupUserAmountDO> getByHandlingGroupIds(List<Long> handlingGroupIds);
|
List<HandlingGroupUserAmountDO> getByHandlingGroupIds(List<Long> handlingGroupIds);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过工厂列表ids 和日期列表 和 搬运组ids 获取
|
||||||
|
*
|
||||||
|
* @param factoryIds
|
||||||
|
* @param dateStrList
|
||||||
|
* @param handlingGroupIds
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<HandlingGroupUserAmountDO> getByFactorIdAndDateStrAndHandlingGroupId(List<Long> factoryIds, List<String> dateStrList, List<Long> handlingGroupIds);
|
||||||
}
|
}
|
||||||
|
@ -108,9 +108,7 @@ public class HandlingGroupUserAmountServiceImpl extends ServiceImpl<HandlingGrou
|
|||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void createOrEdit(HandlingGroupUserAmountSaveReqVO createReqVO) {
|
public void createOrEdit(HandlingGroupUserAmountSaveReqVO createReqVO) {
|
||||||
HandlingGroupAmountSpecificationsDO handlingGroupAmountSpecificationsDO = handlingGroupAmountSpecificationsMapper.selectById(createReqVO.getHandlingGroupAmountSpecificationsId());
|
|
||||||
// 插入
|
// 插入
|
||||||
createReqVO.setFactoryId(handlingGroupAmountSpecificationsDO.getFactoryId());
|
|
||||||
HandlingGroupUserAmountDO handlingGroupUserAmount = BeanUtils.toBean(createReqVO, HandlingGroupUserAmountDO.class);
|
HandlingGroupUserAmountDO handlingGroupUserAmount = BeanUtils.toBean(createReqVO, HandlingGroupUserAmountDO.class);
|
||||||
handlingGroupUserAmountMapper.insertOrUpdate(handlingGroupUserAmount);
|
handlingGroupUserAmountMapper.insertOrUpdate(handlingGroupUserAmount);
|
||||||
}
|
}
|
||||||
@ -171,11 +169,6 @@ public class HandlingGroupUserAmountServiceImpl extends ServiceImpl<HandlingGrou
|
|||||||
return handlingGroupUserAmountMapper.getHandlingGroupUserAmountList(pageReqVO);
|
return handlingGroupUserAmountMapper.getHandlingGroupUserAmountList(pageReqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public List<HandlingGroupUserAmountDO> getByHandlingGroupAmountSpecificationsId(List<Long> handlingGroupAmountSpecificationsIds) {
|
|
||||||
return handlingGroupUserAmountMapper.getByHandlingGroupAmountSpecificationsId(handlingGroupAmountSpecificationsIds);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void confirmHandlingGroupUserAmount(Long factoryId, String month) {
|
public void confirmHandlingGroupUserAmount(Long factoryId, String month) {
|
||||||
|
|
||||||
@ -254,4 +247,9 @@ public class HandlingGroupUserAmountServiceImpl extends ServiceImpl<HandlingGrou
|
|||||||
return handlingGroupUserAmountMapper.getByHandlingGroupIds(handlingGroupIds);
|
return handlingGroupUserAmountMapper.getByHandlingGroupIds(handlingGroupIds);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<HandlingGroupUserAmountDO> getByFactorIdAndDateStrAndHandlingGroupId(List<Long> factoryIds, List<String> dateStrList, List<Long> handlingGroupIds) {
|
||||||
|
return handlingGroupUserAmountMapper.getByFactorIdAndDateStrAndHandlingGroupId(factoryIds, dateStrList, handlingGroupIds);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -64,7 +64,7 @@ public class HandlingSpecificationsServiceImpl extends ServiceImpl<HandlingSpeci
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public HandlingSpecificationsDO getHandlingSpecifications(Long id) {
|
public HandlingSpecificationsDO getHandlingSpecifications(Long id) {
|
||||||
return handlingSpecificationsMapper.selectById(id);
|
return handlingSpecificationsMapper.getHandlingSpecifications(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -50,6 +50,7 @@ public class HikServiceImpl implements HikService {
|
|||||||
String result = ArtemisHttpUtil
|
String result = ArtemisHttpUtil
|
||||||
.doPostStringArtemis(path, JSONUtil.toJsonStr(body), null, null, "application/json");
|
.doPostStringArtemis(path, JSONUtil.toJsonStr(body), null, null, "application/json");
|
||||||
log.info("{}监控查看预览地址返回:{}", JSONUtil.toJsonStr(body), result);
|
log.info("{}监控查看预览地址返回:{}", JSONUtil.toJsonStr(body), result);
|
||||||
|
//监控查看预览地址返回:{"code":"0","msg":"success","data":{"url":"ws://172.16.52.253:559/openUrl/ZZYpOFO"}}
|
||||||
if (StringUtils.isEmpty(result)) {
|
if (StringUtils.isEmpty(result)) {
|
||||||
// throw new ServiceException("监控查看预览地址返回为空");
|
// throw new ServiceException("监控查看预览地址返回为空");
|
||||||
System.out.println("监控查看预览地址返回为空");
|
System.out.println("监控查看预览地址返回为空");
|
||||||
@ -126,7 +127,7 @@ public class HikServiceImpl implements HikService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String operateCamera(CameraOperateDTO dto) {
|
public String operateCamera(CameraOperateDTO dto) {
|
||||||
final String operateUrlApi = ArtemisApiConstant.operateUrlApi;
|
final String operateUrlApi = ArtemisApiConstant.operateUrlApi;//artemis/api/video/v1/ptzs/controlling
|
||||||
Map<String, String> path = new HashMap<String, String>(1) {
|
Map<String, String> path = new HashMap<String, String>(1) {
|
||||||
{
|
{
|
||||||
put("https://", operateUrlApi);
|
put("https://", operateUrlApi);
|
||||||
|
@ -17,6 +17,8 @@
|
|||||||
from sf_handling_group a
|
from sf_handling_group a
|
||||||
left join sf_factory_info as b on a.factory_id = b.id
|
left join sf_factory_info as b on a.factory_id = b.id
|
||||||
<where>
|
<where>
|
||||||
|
a.deleted = 0
|
||||||
|
and b.deleted = 0
|
||||||
<if test="vo.factoryId != null">
|
<if test="vo.factoryId != null">
|
||||||
and a.factory_id = #{vo.factoryId}
|
and a.factory_id = #{vo.factoryId}
|
||||||
</if>
|
</if>
|
||||||
@ -25,4 +27,119 @@
|
|||||||
</if>
|
</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<resultMap id="handlingSummaryMap"
|
||||||
|
type="cn.iocoder.yudao.module.smartfactory.controller.admin.handlinggroupamountspecifications.vo.HandlingGroupAmountSpecificationsVO">
|
||||||
|
<!-- 基础字段映射 -->
|
||||||
|
<id property="id" column="id"/>
|
||||||
|
<result property="factoryId" column="factory_id"/>
|
||||||
|
<result property="handlingGroupId" column="handling_group_id"/>
|
||||||
|
<result property="handlingSpecificationsId" column="handling_specifications_id"/>
|
||||||
|
<result property="staffId" column="staff_id"/>
|
||||||
|
<result property="totalCount" column="total_count"/>
|
||||||
|
<result property="dateStr" column="date_str"/>
|
||||||
|
<result property="amount" column="amount"/>
|
||||||
|
<result property="creator" column="creator"/>
|
||||||
|
<result property="createTime" column="create_time"/>
|
||||||
|
<result property="updater" column="updater"/>
|
||||||
|
<result property="updateTime" column="update_time"/>
|
||||||
|
<result property="deleted" column="deleted"/>
|
||||||
|
|
||||||
|
<!-- 关联字段 -->
|
||||||
|
<result property="factoryName" column="factoryName"/>
|
||||||
|
<result property="handlingGroupName" column="handlingGroupName"/>
|
||||||
|
<result property="staffName" column="staffName"/>
|
||||||
|
|
||||||
|
<!-- 聚合字段 -->
|
||||||
|
<result property="totalAmount" column="totalAmount"/>
|
||||||
|
<result property="totalNum" column="totalNum"/>
|
||||||
|
|
||||||
|
<!-- 自定义对象列表 (JSON 映射) -->
|
||||||
|
<result property="specificationDetails" column="specificationDetails"
|
||||||
|
typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"
|
||||||
|
javaType="java.util.List"
|
||||||
|
/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<select id="selectPageListByDateStr"
|
||||||
|
resultMap="handlingSummaryMap">
|
||||||
|
SELECT
|
||||||
|
a.*,
|
||||||
|
b.short_name as factoryName,
|
||||||
|
d.handling_group_name as handlingGroupName,
|
||||||
|
c.nick_name as staffName,
|
||||||
|
SUM( a.amount ) AS totalAmount,
|
||||||
|
sum( a.total_count ) AS totalNum,
|
||||||
|
JSON_ARRAYAGG(
|
||||||
|
JSON_OBJECT(
|
||||||
|
'handlingSpecificationsId', a.handling_specifications_id,
|
||||||
|
'totalCount', a.total_count,
|
||||||
|
'amount', a.amount,
|
||||||
|
'handlingSpecificationsName', (
|
||||||
|
SELECT hs.specifications_name
|
||||||
|
FROM sf_handling_specifications as hs
|
||||||
|
WHERE hs.id = a.handling_specifications_id
|
||||||
|
)
|
||||||
|
)
|
||||||
|
) AS specificationDetails
|
||||||
|
FROM
|
||||||
|
sf_handling_group_amount_specifications AS a
|
||||||
|
left join sf_factory_info as b on a.factory_id = b.id
|
||||||
|
LEFT JOIN sf_staff AS c ON c.id = a.staff_id
|
||||||
|
left join sf_handling_group as d on a.handling_group_id = d.id
|
||||||
|
<where>
|
||||||
|
a.deleted = 0
|
||||||
|
and b.deleted = 0
|
||||||
|
<if test="vo.factoryId != null">
|
||||||
|
and a.factory_id = #{vo.factoryId}
|
||||||
|
</if>
|
||||||
|
<if test="vo.factoryIds != null and vo.factoryIds.size() > 0">
|
||||||
|
and a.factory_id in
|
||||||
|
<foreach collection="vo.factoryIds" item="item" open="(" separator="," close=")">
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
<if test="vo.handlingSpecificationsId != null">
|
||||||
|
AND a.handling_specifications_id = #{vo.handlingSpecificationsId}
|
||||||
|
</if>
|
||||||
|
<if test="vo.handlingGroupId != null">
|
||||||
|
and a.handling_group_id = #{vo.handlingGroupId}
|
||||||
|
</if>
|
||||||
|
<if test="vo.createTime != null and vo.createTime.length > 0">
|
||||||
|
<if test="vo.createTime[0] != null">
|
||||||
|
and STR_TO_DATE( c.date_str, '%Y-%m-%d' ) >= #{vo.createTime[0]}
|
||||||
|
</if>
|
||||||
|
<if test="vo.createTime[1] != null">
|
||||||
|
and STR_TO_DATE( a.date_str, '%Y-%m-%d' ) <= #{vo.createTime[1]}
|
||||||
|
</if>
|
||||||
|
</if>
|
||||||
|
<if test="vo.staffName != null and vo.staffName != ''">
|
||||||
|
and c.nick_name like concat('%', #{vo.staffName}, '%')
|
||||||
|
</if>
|
||||||
|
<if test="vo.porterName != null and vo.porterName != ''">
|
||||||
|
AND EXISTS (
|
||||||
|
select e.id from sf_handling_group_user_amount as e
|
||||||
|
left join sf_staff as g on g.id = e.user_id
|
||||||
|
where a.factory_id = e.factory_id
|
||||||
|
and a.date_str = e.date_str
|
||||||
|
and a.handling_group_id = e.handling_group_id
|
||||||
|
and g.nick_name like concat('%', #{vo.porterName}, '%')
|
||||||
|
and e.deleted = 0
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
GROUP BY
|
||||||
|
a.factory_id,
|
||||||
|
a.date_str,
|
||||||
|
a.handling_group_id
|
||||||
|
</select>
|
||||||
|
<select id="getHandlingGroup"
|
||||||
|
resultType="cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroup.HandlingGroupDO">
|
||||||
|
SELECT a.*,
|
||||||
|
b.short_name as factoryName
|
||||||
|
FROM sf_handling_group AS a
|
||||||
|
left join sf_factory_info as b on a.factory_id = b.id
|
||||||
|
WHERE a.deleted = 0
|
||||||
|
and a.id = #{id}
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
@ -24,6 +24,7 @@
|
|||||||
<where>
|
<where>
|
||||||
a.deleted = 0
|
a.deleted = 0
|
||||||
and b.deleted = 0
|
and b.deleted = 0
|
||||||
|
and d.deleted = 0
|
||||||
<if test="vo.handlingSpecificationsId != null">
|
<if test="vo.handlingSpecificationsId != null">
|
||||||
AND a.handling_specifications_id = #{vo.handlingSpecificationsId}
|
AND a.handling_specifications_id = #{vo.handlingSpecificationsId}
|
||||||
</if>
|
</if>
|
||||||
@ -46,7 +47,9 @@
|
|||||||
AND EXISTS (
|
AND EXISTS (
|
||||||
select e.id from sf_handling_group_user_amount as e
|
select e.id from sf_handling_group_user_amount as e
|
||||||
left join sf_staff as g on g.id = e.user_id
|
left join sf_staff as g on g.id = e.user_id
|
||||||
where a.id = e.handling_group_amount_specifications_id
|
where a.factory_id = e.factory_id
|
||||||
|
and a.date_str = e.date_str
|
||||||
|
and a.handling_group_id = e.handling_group_id
|
||||||
and g.nick_name like concat('%', #{vo.porterName}, '%')
|
and g.nick_name like concat('%', #{vo.porterName}, '%')
|
||||||
and e.deleted = 0
|
and e.deleted = 0
|
||||||
)
|
)
|
||||||
@ -132,7 +135,9 @@
|
|||||||
LEFT JOIN sf_staff AS d ON d.id = c.user_id
|
LEFT JOIN sf_staff AS d ON d.id = c.user_id
|
||||||
WHERE
|
WHERE
|
||||||
c.deleted = 0
|
c.deleted = 0
|
||||||
and a.id = c.handling_group_amount_specifications_id
|
and a.factory_id = c.factory_id
|
||||||
|
and a.date_str = c.date_str
|
||||||
|
and a.handling_group_id = c.handling_group_id
|
||||||
and d.nick_name like concat('%', #{dto.porterName}, '%')
|
and d.nick_name like concat('%', #{dto.porterName}, '%')
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
@ -24,9 +24,6 @@
|
|||||||
<if test="vo.handlingGroupId != null">
|
<if test="vo.handlingGroupId != null">
|
||||||
AND a.handling_group_id = #{vo.handlingGroupId}
|
AND a.handling_group_id = #{vo.handlingGroupId}
|
||||||
</if>
|
</if>
|
||||||
<if test="vo.handlingGroupAmountSpecificationsId != null">
|
|
||||||
AND a.handling_group_amount_specifications_id= #{vo.handlingGroupAmountSpecificationsId}
|
|
||||||
</if>
|
|
||||||
<if test="vo.dateStr != null and vo.dateStr != ''">
|
<if test="vo.dateStr != null and vo.dateStr != ''">
|
||||||
and a.dateStr like concat('%', #{vo.dateStr}, '%')
|
and a.dateStr like concat('%', #{vo.dateStr}, '%')
|
||||||
</if>
|
</if>
|
||||||
@ -57,9 +54,6 @@
|
|||||||
<if test="dto.factoryId != null">
|
<if test="dto.factoryId != null">
|
||||||
AND a.factory_id = #{dto.factoryId}
|
AND a.factory_id = #{dto.factoryId}
|
||||||
</if>
|
</if>
|
||||||
<if test="dto.handlingGroupAmountSpecificationsId != null">
|
|
||||||
AND b.handling_group_amount_specifications_id = #{dto.handlingGroupAmountSpecificationsId}
|
|
||||||
</if>
|
|
||||||
<if test="dto.dateStr != null and dto.dateStr != ''">
|
<if test="dto.dateStr != null and dto.dateStr != ''">
|
||||||
and b.date_str like concat('%', #{dto.dateStr}, '%')
|
and b.date_str like concat('%', #{dto.dateStr}, '%')
|
||||||
</if>
|
</if>
|
||||||
@ -113,14 +107,14 @@
|
|||||||
<if test="vo.userId != null">
|
<if test="vo.userId != null">
|
||||||
AND a.user_id = #{vo.userId}
|
AND a.user_id = #{vo.userId}
|
||||||
</if>
|
</if>
|
||||||
|
<if test="vo.factoryId != null">
|
||||||
|
and a.factory_id = #{vo.factoryId}
|
||||||
|
</if>
|
||||||
<if test="vo.handlingGroupId != null">
|
<if test="vo.handlingGroupId != null">
|
||||||
AND a.handling_group_id = #{vo.handlingGroupId}
|
AND a.handling_group_id = #{vo.handlingGroupId}
|
||||||
</if>
|
</if>
|
||||||
<if test="vo.handlingGroupAmountSpecificationsId != null">
|
|
||||||
AND a.handling_group_amount_specifications_id= #{vo.handlingGroupAmountSpecificationsId}
|
|
||||||
</if>
|
|
||||||
<if test="vo.dateStr != null and vo.dateStr != ''">
|
<if test="vo.dateStr != null and vo.dateStr != ''">
|
||||||
and a.dateStr like concat('%', #{vo.dateStr}, '%')
|
and a.date_str like concat('%', #{vo.dateStr}, '%')
|
||||||
</if>
|
</if>
|
||||||
<if test="vo.createTime != null and vo.createTime.length > 0">
|
<if test="vo.createTime != null and vo.createTime.length > 0">
|
||||||
<if test="vo.createTime[0] != null">
|
<if test="vo.createTime[0] != null">
|
||||||
@ -132,23 +126,6 @@
|
|||||||
</if>
|
</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
<select id="getByHandlingGroupAmountSpecificationsId"
|
|
||||||
resultType="cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroupuseramount.HandlingGroupUserAmountDO">
|
|
||||||
select a.*,
|
|
||||||
b.nick_name as userName
|
|
||||||
FROM sf_handling_group_user_amount as a
|
|
||||||
LEFT JOIN sf_staff as b on a.user_id = b.id
|
|
||||||
<where>
|
|
||||||
a.deleted = 0
|
|
||||||
and b.deleted = 0
|
|
||||||
<if test="handlingGroupAmountSpecificationsIds != null and handlingGroupAmountSpecificationsIds.size() > 0">
|
|
||||||
and a.handling_group_amount_specifications_id in
|
|
||||||
<foreach collection="handlingGroupAmountSpecificationsIds" item="id" open="(" separator="," close=")">
|
|
||||||
#{id}
|
|
||||||
</foreach>
|
|
||||||
</if>
|
|
||||||
</where>
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select id="selectAmountSum" resultType="cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroupuseramount.HandlingGroupUserAmountDO">
|
<select id="selectAmountSum" resultType="cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroupuseramount.HandlingGroupUserAmountDO">
|
||||||
SELECT
|
SELECT
|
||||||
@ -198,4 +175,33 @@
|
|||||||
</if>
|
</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
<select id="getByFactorIdAndDateStrAndHandlingGroupId"
|
||||||
|
resultType="cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlinggroupuseramount.HandlingGroupUserAmountDO">
|
||||||
|
select a.*,
|
||||||
|
b.nick_name as userName
|
||||||
|
FROM sf_handling_group_user_amount as a
|
||||||
|
LEFT JOIN sf_staff as b on a.user_id = b.id
|
||||||
|
<where>
|
||||||
|
a.deleted = 0
|
||||||
|
and b.deleted = 0
|
||||||
|
<if test="factoryIds != null and factoryIds.size() > 0 ">
|
||||||
|
and a.factory_id in
|
||||||
|
<foreach collection="factoryIds" item="id" open="(" separator="," close=")">
|
||||||
|
#{id}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
<if test="dateStrList != null and dateStrList.size() > 0 ">
|
||||||
|
and a.date_str in
|
||||||
|
<foreach collection="dateStrList" item="dateStr" open="(" separator="," close=")">
|
||||||
|
#{dateStr}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
<if test="handlingGroupIds != null and handlingGroupIds.size() > 0 ">
|
||||||
|
and a.handling_group_id in
|
||||||
|
<foreach collection="handlingGroupIds" item="id" open="(" separator="," close=")">
|
||||||
|
#{id}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
@ -51,4 +51,18 @@
|
|||||||
</if>
|
</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
<select id="getHandlingSpecifications"
|
||||||
|
resultType="cn.iocoder.yudao.module.smartfactory.dal.dataobject.handlingspecifications.HandlingSpecificationsDO">
|
||||||
|
select a.*,
|
||||||
|
b.short_name as factoryName
|
||||||
|
from sf_handling_specifications as a
|
||||||
|
left join sf_factory_info as b on a.factory_id = b.id
|
||||||
|
<where>
|
||||||
|
a.deleted = 0
|
||||||
|
and b.deleted = 0
|
||||||
|
<if test="id != null">
|
||||||
|
and a.id = #{id}
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
Loading…
Reference in New Issue
Block a user