更新
This commit is contained in:
parent
31b8047cff
commit
34ef8ce13f
@ -124,7 +124,7 @@ public class InspectionMallPartnersController extends BaseController {
|
||||
}
|
||||
}else if (roles.contains("jcworker")){
|
||||
LambdaQueryWrapper<PartnerWorker> queryWrapperWork =new LambdaQueryWrapper<>();
|
||||
queryWrapperWork.eq(PartnerWorker::getUserId,user.getId());
|
||||
queryWrapperWork.eq(PartnerWorker::getUserId,user.getId()).last("limit 1");
|
||||
PartnerWorker worker = partnerWorkerService.getOne(queryWrapperWork);
|
||||
if (ObjectUtil.isEmpty(worker)){
|
||||
return error();
|
||||
@ -277,7 +277,7 @@ public class InspectionMallPartnersController extends BaseController {
|
||||
}
|
||||
}else if (roles.contains("jcworker")){
|
||||
LambdaQueryWrapper<PartnerWorker> queryWrapperWork =new LambdaQueryWrapper<>();
|
||||
queryWrapperWork.eq(PartnerWorker::getUserId,user.getId());
|
||||
queryWrapperWork.eq(PartnerWorker::getUserId,user.getId()).last("limit 1");
|
||||
PartnerWorker worker = partnerWorkerService.getOne(queryWrapperWork);
|
||||
if (ObjectUtil.isEmpty(worker)){
|
||||
return CommonResult.error(-1,"信息有误");
|
||||
|
@ -252,8 +252,8 @@ public class ShopInspectionGoodsController extends BaseController {
|
||||
partner.setPartnerId(worker.getPartnerId());
|
||||
}
|
||||
shopInspectionOrder.setPartnerId(partner.getPartnerId());
|
||||
shopInspectionOrder.setValidationTime(new Date());
|
||||
Page<OrderInfo> page = new Page<>(pageNo, pageSize);
|
||||
// shopInspectionOrder.setValidationTime(new Date());
|
||||
Page<OrderInfo> page = new Page<>(1, 10000000);
|
||||
orderInfoService.exportExcel(response, shopInspectionOrder, page);
|
||||
}
|
||||
|
||||
|
@ -1968,6 +1968,9 @@ public class AppInspectionPartnerServiceImpl extends ServiceImpl<AppInspectionPa
|
||||
query.setStartTime(query.getStartTime() + " 00:00:00");
|
||||
query.setEndTime(query.getEndTime() + " 23:59:59");
|
||||
}
|
||||
if (ObjectUtil.isNotNull(query.getCarYear()) && query.getCarYear().equals(0)) {
|
||||
query.setCarYear(null);
|
||||
}
|
||||
IPage<OrderTable> orderByDate = baseMapper.getOrderByDate(query, page);
|
||||
orderByDate.getRecords().forEach(orderTable -> {
|
||||
if (StringUtils.isNotEmpty(orderTable.getCarModel())) {
|
||||
@ -2026,6 +2029,12 @@ public class AppInspectionPartnerServiceImpl extends ServiceImpl<AppInspectionPa
|
||||
*/
|
||||
@Override
|
||||
public List<Map<String, Object>> queryInspectionSkuList(String startTime, String endTime) {
|
||||
if (StringUtils.isEmpty(startTime)) {
|
||||
startTime = DateUtil.format(new Date(), "yyyy-MM-dd");
|
||||
endTime = DateUtil.format(new Date(), "yyyy-MM-dd");
|
||||
}
|
||||
startTime = startTime + " 00:00:00";
|
||||
endTime = endTime + " 23:59:59";
|
||||
return baseMapper.queryInspectionSkuList(startTime, endTime);
|
||||
}
|
||||
|
||||
|
@ -133,7 +133,12 @@ public class InspectionStaffServiceImpl extends ServiceImpl<InspectionStaffMappe
|
||||
InspectionStaffSaveVo inspectionStaffSaveVo = baseMapper.get(id);
|
||||
// 查询用户角色集合
|
||||
List<UserRoleDTO> userRoleDTOS = permissionService.userRoleDTOList(Collections.singletonList(id));
|
||||
inspectionStaffSaveVo.setRoleIds(userRoleDTOS.stream().map(UserRoleDTO::getRoleId).collect(Collectors.toList()));
|
||||
inspectionStaffSaveVo.setRoleIds(userRoleDTOS.stream()
|
||||
.filter(role -> "jiance".equals(role.getServicePackageId())) // 修正此行
|
||||
.filter(role -> !"jcyh".equals(role.getRoleCode()))
|
||||
.map(UserRoleDTO::getRoleId)
|
||||
.collect(Collectors.toList()));
|
||||
|
||||
//将驾驶证类型转为数组
|
||||
if (ObjectUtil.isNotEmpty(inspectionStaffSaveVo.getDriverLicenseType())) {
|
||||
inspectionStaffSaveVo.setDriverLicenseTypeArr(Arrays.asList(inspectionStaffSaveVo.getDriverLicenseType().split(",")));
|
||||
@ -263,7 +268,6 @@ public class InspectionStaffServiceImpl extends ServiceImpl<InspectionStaffMappe
|
||||
}
|
||||
|
||||
|
||||
|
||||
//插入检测员工子表
|
||||
List<InspectionStaff> inspectionStaffList = new ArrayList<>();
|
||||
for (StaffImportExcelVO staffImportExcelVO : successList) {
|
||||
|
@ -122,21 +122,23 @@
|
||||
<select id="getStaffCount" resultType="java.util.Map"
|
||||
parameterType="cn.iocoder.yudao.module.inspection.entity.DlInspectionProject">
|
||||
SELECT
|
||||
iwn.deal_user_id, -- 处理人员ID
|
||||
su.nickname, -- 处理人员名称
|
||||
su.avatar, -- 处理人员头像
|
||||
COUNT(DISTINCT iwn.id) AS orderCount, -- 统计每个员工的唯一订单数量
|
||||
SUM(IFNULL(royalty.royalty_amount, 0) / 100) AS royaltyAmount, -- 计算每个员工的总佣金
|
||||
su.mobile, -- 处理人员手机号
|
||||
COALESCE(waijianCount, 0) AS waijianCount, -- 包含“外检”的订单数量
|
||||
COALESCE(anjianCount, 0) AS anjianCount, -- 包含“安检”的订单数量
|
||||
COALESCE(proj_stats.otherCount, 0) AS otherCount -- 其他订单数量(排除“外检”和“安检”)
|
||||
su.id AS deal_user_id, -- 处理人员ID
|
||||
su.nickname, -- 处理人员名称
|
||||
su.avatar, -- 处理人员头像
|
||||
COUNT(DISTINCT iwn.id) AS orderCount, -- 统计每个员工的唯一订单数量
|
||||
SUM(IFNULL(royalty.royalty_amount, 0)) / 100 AS royaltyAmount, -- 计算每个员工的总佣金
|
||||
su.mobile, -- 处理人员手机号
|
||||
COALESCE(proj_stats.waijianCount, 0) AS waijianCount, -- 包含“外检”的订单数量
|
||||
COALESCE(proj_stats.anjianCount, 0) AS anjianCount, -- 包含“安检”的订单数量
|
||||
COALESCE(proj_stats.otherCount, 0) AS otherCount -- 其他订单数量(排除“外检”和“安检”)
|
||||
FROM
|
||||
inspection_work_node iwn
|
||||
LEFT JOIN system_users su ON su.id = iwn.deal_user_id -- 处理人员信息
|
||||
LEFT JOIN inspection_info AS info ON iwn.inspection_info_id = info.id
|
||||
system_users su
|
||||
LEFT JOIN system_user_role sr ON su.id = sr.user_id
|
||||
LEFT JOIN system_role sr2 ON sr.role_id = sr2.id
|
||||
LEFT JOIN inspection_work_node iwn ON su.id = iwn.deal_user_id
|
||||
LEFT JOIN inspection_info info ON iwn.inspection_info_id = info.id
|
||||
LEFT JOIN order_info orders ON info.inspection_order_id = orders.id
|
||||
LEFT JOIN inspection_project_royalty AS royalty
|
||||
LEFT JOIN inspection_project_royalty royalty
|
||||
ON iwn.project_id = royalty.project_id
|
||||
AND orders.goods_id = royalty.goods_id
|
||||
LEFT JOIN (
|
||||
@ -153,28 +155,29 @@
|
||||
) AS otherCount -- 统计不包含“外检”和“安检”的订单
|
||||
FROM
|
||||
inspection_work_node iwn
|
||||
LEFT JOIN inspection_project AS proj ON iwn.project_id = proj.id
|
||||
LEFT JOIN inspection_info AS info ON iwn.inspection_info_id = info.id
|
||||
WHERE iwn.deleted = 0 -- 排除已删除的数据
|
||||
LEFT JOIN inspection_project proj ON iwn.project_id = proj.id
|
||||
LEFT JOIN inspection_info info ON iwn.inspection_info_id = info.id
|
||||
WHERE
|
||||
iwn.deleted = 0 -- 排除已删除的数据
|
||||
AND iwn.deal_user_id IS NOT NULL -- 排除 deal_user_id 为 NULL 的记录
|
||||
AND iwn.status = 2
|
||||
AND info.status = 1
|
||||
GROUP BY
|
||||
iwn.deal_user_id
|
||||
) proj_stats ON iwn.deal_user_id = proj_stats.deal_user_id -- 获取“外检”和“安检”的统计
|
||||
<where>
|
||||
iwn.deleted = 0 -- 排除已删除的数据
|
||||
AND iwn.deal_user_id IS NOT NULL -- 排除 deal_user_id 为 NULL 的记录
|
||||
AND iwn.status = 2
|
||||
AND info.status = 1
|
||||
<if test="id != null and id != ''">
|
||||
AND iwn.project_id = #{id} -- 只在这里加上id过滤
|
||||
</if>
|
||||
</where>
|
||||
) proj_stats ON su.id = proj_stats.deal_user_id -- 获取“外检”和“安检”的统计
|
||||
WHERE
|
||||
(sr2.service_package_id = 'jiance') -- 角色条件
|
||||
AND (sr2.code != 'jcyh') -- 排除特定角色
|
||||
AND (iwn.deleted = 0 OR iwn.deleted IS NULL) -- 排除已删除的数据
|
||||
AND (iwn.deal_user_id IS NOT NULL) -- 排除 deal_user_id 为 NULL 的记录
|
||||
AND (iwn.status = 2 OR iwn.status IS NULL)
|
||||
AND (info.status = 1 OR info.status IS NULL)
|
||||
<if test="id != null and id != ''">
|
||||
AND iwn.project_id = #{id} -- 只在这里加上id过滤
|
||||
</if>
|
||||
GROUP BY
|
||||
iwn.deal_user_id -- 根据处理人员ID进行分组
|
||||
su.id -- 根据处理人员ID进行分组
|
||||
ORDER BY
|
||||
orderCount DESC; -- 根据接单数量进行降序排序
|
||||
|
||||
orderCount DESC; -- 根据接单数量进行降序排序
|
||||
</select>
|
||||
</mapper>
|
||||
|
@ -307,7 +307,7 @@
|
||||
and oi.pay_time <![CDATA[<=]]> #{entity.endTime}
|
||||
</if>
|
||||
<if test="entity.carAge != null">
|
||||
AND car_register_date BETWEEN DATE_SUB(CURDATE(), INTERVAL #{nextCarAge} YEAR)
|
||||
AND info.car_register_date BETWEEN DATE_SUB(CURDATE(), INTERVAL #{entity.nextCarAge} YEAR)
|
||||
AND DATE_SUB(CURDATE(), INTERVAL #{entity.carAge} YEAR)
|
||||
</if>
|
||||
<if test="entity.partnerId!=null ">
|
||||
|
@ -7,4 +7,5 @@ public class UserRoleDTO {
|
||||
private Long userId;
|
||||
private String roleCode;
|
||||
private Long roleId;
|
||||
private String servicePackageId;
|
||||
}
|
||||
|
@ -41,7 +41,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</select>
|
||||
<select id="userCodes" resultType="cn.iocoder.yudao.module.system.api.user.dto.UserRoleDTO">
|
||||
SELECT
|
||||
su.id AS userId,sr.code AS roleCode,sr.id AS roleId
|
||||
su.id AS userId,sr.code AS roleCode,sr.id AS roleId, sr.service_package_id
|
||||
FROM
|
||||
system_users su
|
||||
LEFT JOIN system_user_role sur ON su.id = sur.user_id AND sur.deleted = 0
|
||||
|
Loading…
Reference in New Issue
Block a user