更新0725
This commit is contained in:
parent
0eb106be5b
commit
692250c4ba
@ -8,6 +8,7 @@ import cn.iocoder.yudao.framework.common.exception.ErrorCode;
|
||||
import cn.iocoder.yudao.framework.common.exception.ServiceException;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||
import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
|
||||
import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder;
|
||||
import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
|
||||
import cn.iocoder.yudao.module.app.company.vo.CompanyToServerVO;
|
||||
import cn.iocoder.yudao.module.company.entity.Company;
|
||||
@ -89,6 +90,8 @@ public class CompanyServiceImpl extends ServiceImpl<CompanyMapper, Company> impl
|
||||
@DSTransactional // 多数据源,使用 @DSTransactional 保证本地事务,以及数据源的切换
|
||||
public void saveDataObj(CompanyRespVO companyRespVO) {
|
||||
try {
|
||||
//获取当前租户id
|
||||
Long tenantId = TenantContextHolder.getTenantId();
|
||||
/*1.保存企业信息*/
|
||||
this.save(companyRespVO);
|
||||
/*2.新增企业部门信息*/
|
||||
@ -104,7 +107,7 @@ public class CompanyServiceImpl extends ServiceImpl<CompanyMapper, Company> impl
|
||||
/*3.新增企业管理员用户信息并配置角色*/
|
||||
// 查询账号是否存在
|
||||
Long userId = null;
|
||||
AdminUserRespDTO adminUserRespDTO = adminUserApi.getUserByUsername(companyRespVO.getLoginAccount());
|
||||
AdminUserRespDTO adminUserRespDTO = adminUserApi.getUserByUsername(companyRespVO.getLoginAccount(),tenantId);
|
||||
if (adminUserRespDTO == null) {
|
||||
UserDTO userDTO = new UserDTO();
|
||||
userDTO.setUsername(companyRespVO.getLoginAccount());
|
||||
|
@ -24,9 +24,9 @@ import org.springframework.context.annotation.Lazy;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.error;
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
@ -98,6 +98,8 @@ public class ApiAppLoginServiceImpl implements ApiAppLoginService {
|
||||
throw new Exception(CommonErrorCodeConstants.LOGIN_ACCOUNT_NOT_AUTH.getMsg());
|
||||
}
|
||||
List<RoleReqDTO> roleList = roleApi.getRoleList();
|
||||
//当前登录人的所有角色
|
||||
List<RoleReqDTO> loginRoles = new ArrayList<>();
|
||||
//所拥有的角色code集和
|
||||
List<String> roleCodeList = new ArrayList<>();
|
||||
//所拥有的角色名称集和
|
||||
@ -106,8 +108,10 @@ public class ApiAppLoginServiceImpl implements ApiAppLoginService {
|
||||
if (roleIdsByUserId.contains(item.getId())) {
|
||||
roleCodeList.add(item.getCode());
|
||||
roleNames.add(item.getName());
|
||||
loginRoles.add(item);
|
||||
}
|
||||
}
|
||||
user.setRoleNames(String.join(",", roleNames));
|
||||
//默认无权限登录
|
||||
boolean flag = false;
|
||||
if (SystemEnum.REPAIR.getCode().equals(loginBody.getSysCode())) {
|
||||
@ -115,6 +119,17 @@ public class ApiAppLoginServiceImpl implements ApiAppLoginService {
|
||||
flag = this.checkRepairCanLogin(user, roleCodeList);
|
||||
} else if (SystemEnum.INSPECTION.getCode().equals(loginBody.getSysCode())) {
|
||||
//检测业务系统
|
||||
/*过滤出服务套餐为jiance的角色*/
|
||||
String newRoleNames = Optional.ofNullable(loginRoles)
|
||||
.orElse(Collections.emptyList())
|
||||
.stream()
|
||||
.filter(item -> "jiance".equals(item.getServicePackageId()))
|
||||
.map(RoleReqDTO::getName)
|
||||
.filter(Objects::nonNull)
|
||||
.filter(name -> !name.trim().isEmpty())
|
||||
.collect(Collectors.joining(","));
|
||||
|
||||
user.setRoleNames(newRoleNames);
|
||||
flag = true;
|
||||
} else if (SystemEnum.SCHOOL.getCode().equals(loginBody.getSysCode())) {
|
||||
//驾校业务系统
|
||||
|
@ -219,4 +219,12 @@ public class InspectionFileController extends BaseController {
|
||||
public CommonResult<?> queryTreeFolderForJx(){
|
||||
return success(inspectionFileService.queryTreeFolderForJx());
|
||||
}
|
||||
|
||||
/**
|
||||
* 提醒
|
||||
*/
|
||||
@RequestMapping("/warnReminder")
|
||||
public void warnReminder(){
|
||||
inspectionFileService.warnReminder();
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,41 @@
|
||||
package cn.iocoder.yudao.module.inspection.controller.admin;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.module.inspection.entity.InspectionBatchSettlementOrder;
|
||||
import cn.iocoder.yudao.module.inspection.entity.InspectionBatchSettlementOrderQuery;
|
||||
import cn.iocoder.yudao.module.inspection.service.IInspectionBatchSettlementOrderService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/batchSettlement")
|
||||
@RequiredArgsConstructor
|
||||
public class InspectionBatchSettlementOrderController {
|
||||
|
||||
private final IInspectionBatchSettlementOrderService batchSettlementOrderService;
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*
|
||||
* @param pageNo 页码
|
||||
* @param pageSize 每页数量
|
||||
* @param query 查询条件
|
||||
* @return 分页结果
|
||||
*/
|
||||
@GetMapping("/page")
|
||||
public CommonResult<?> page(@RequestParam(value = "pageNo", required = false, defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(value = "pageSize", required = false, defaultValue = "10") Integer pageSize,
|
||||
InspectionBatchSettlementOrderQuery query) {
|
||||
Page<InspectionBatchSettlementOrder> page = new Page<>(pageNo, pageSize);
|
||||
|
||||
return CommonResult.success(batchSettlementOrderService.pageVo(page, query));
|
||||
}
|
||||
|
||||
}
|
@ -43,4 +43,24 @@ public class InspectionBatchSettlementOrder extends TenantBaseDO implements Seri
|
||||
* 订单id集合
|
||||
*/
|
||||
private String orderIds;
|
||||
|
||||
/**
|
||||
* 支付方式
|
||||
*/
|
||||
private String payType;
|
||||
|
||||
/**
|
||||
* 出纳备注
|
||||
*/
|
||||
private String cashierConfirmRemark;
|
||||
|
||||
/**
|
||||
* 账务备注
|
||||
*/
|
||||
private String accountingConfirmRemark;
|
||||
|
||||
/**
|
||||
* 出纳确认 0-未到账 1-已到账 null-待确认
|
||||
*/
|
||||
private String accountingConfirm;
|
||||
}
|
||||
|
@ -0,0 +1,28 @@
|
||||
package cn.iocoder.yudao.module.inspection.entity;
|
||||
|
||||
import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 批量结算订单记录
|
||||
* </p>
|
||||
*
|
||||
* @author author
|
||||
* @since 2025-07-09
|
||||
*/
|
||||
@Data
|
||||
public class InspectionBatchSettlementOrderQuery extends InspectionBatchSettlementOrder implements Serializable {
|
||||
/**
|
||||
* 时间范围
|
||||
*/
|
||||
private List<String> datetimeRange;
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
package cn.iocoder.yudao.module.inspection.entity;
|
||||
|
||||
import cn.iocoder.yudao.module.payment.entity.OrderInfo;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 批量结算订单记录
|
||||
* </p>
|
||||
*
|
||||
* @author author
|
||||
* @since 2025-07-09
|
||||
*/
|
||||
@Data
|
||||
public class InspectionBatchSettlementOrderQueryVo extends InspectionBatchSettlementOrder implements Serializable {
|
||||
/**
|
||||
* 订单集合
|
||||
*/
|
||||
private List<OrderInfo> orderInfoList;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private String cashierName;
|
||||
}
|
@ -1,8 +1,15 @@
|
||||
package cn.iocoder.yudao.module.inspection.mapper;
|
||||
|
||||
import cn.iocoder.yudao.module.inspection.entity.InspectionBatchSettlementOrder;
|
||||
import cn.iocoder.yudao.module.inspection.entity.InspectionBatchSettlementOrderQuery;
|
||||
import cn.iocoder.yudao.module.inspection.entity.InspectionBatchSettlementOrderQueryVo;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
@ -15,4 +22,11 @@ import org.apache.ibatis.annotations.Mapper;
|
||||
@Mapper
|
||||
public interface InspectionBatchSettlementOrderMapper extends BaseMapper<InspectionBatchSettlementOrder> {
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
* @param page 分页参数
|
||||
* @param query 查询参数
|
||||
* @return 查询结果
|
||||
*/
|
||||
IPage<InspectionBatchSettlementOrderQueryVo> pageVo(Page<InspectionBatchSettlementOrder> page, @Param("query") InspectionBatchSettlementOrderQuery query);
|
||||
}
|
||||
|
@ -1,8 +1,14 @@
|
||||
package cn.iocoder.yudao.module.inspection.service;
|
||||
|
||||
import cn.iocoder.yudao.module.inspection.entity.InspectionBatchSettlementOrder;
|
||||
import cn.iocoder.yudao.module.inspection.entity.InspectionBatchSettlementOrderQuery;
|
||||
import cn.iocoder.yudao.module.inspection.entity.InspectionBatchSettlementOrderQueryVo;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 批量结算订单记录 服务类
|
||||
@ -13,4 +19,12 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
||||
*/
|
||||
public interface IInspectionBatchSettlementOrderService extends IService<InspectionBatchSettlementOrder> {
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*
|
||||
* @param page 分页参数
|
||||
* @param query 查询参数
|
||||
* @return List<InspectionBatchSettlementOrderQueryVo>
|
||||
*/
|
||||
IPage<InspectionBatchSettlementOrderQueryVo> pageVo(Page<InspectionBatchSettlementOrder> page, InspectionBatchSettlementOrderQuery query);
|
||||
}
|
||||
|
@ -124,8 +124,5 @@ public interface IInspectionFileService extends IService<InspectionFile> {
|
||||
List<TreeCommonResult> queryTreeFolder();
|
||||
List<TreeCommonResult> queryTreeFolderForJx();
|
||||
|
||||
/**
|
||||
* 文件提醒
|
||||
*/
|
||||
void warnReminder();
|
||||
}
|
||||
|
@ -2738,11 +2738,38 @@ public class AppInspectionPartnerServiceImpl extends ServiceImpl<AppInspectionPa
|
||||
.collect(Collectors.joining(",")));
|
||||
inspectionBatchSettlementOrder.setPayMoney(realPayMoney);
|
||||
inspectionBatchSettlementOrder.setReduceMoney(reduceMoney);
|
||||
inspectionBatchSettlementOrder.setPayType(query.getPayType());
|
||||
inspectionBatchSettlementOrder.setCashierConfirmRemark(query.getRemark());
|
||||
batchSettlementOrderService.save(inspectionBatchSettlementOrder);
|
||||
} else {
|
||||
if (query.getIds().isEmpty()) {
|
||||
throw new RuntimeException("请选择工单");
|
||||
}
|
||||
// 查询出批次ids
|
||||
List<InspectionBatchSettlementOrder> batchs = batchSettlementOrderService.list(Wrappers.<InspectionBatchSettlementOrder>lambdaQuery()
|
||||
.in(InspectionBatchSettlementOrder::getId, query.getIds()));
|
||||
|
||||
List<Long> newOrderIds = new ArrayList<>();
|
||||
batchs.stream().forEach(batch -> {
|
||||
batch.setAccountingConfirmRemark(query.getRemark());
|
||||
batch.setAccountingConfirm("1");
|
||||
// 将OrderIds以逗号隔开放入newOrderIds
|
||||
if (StringUtils.isNotEmpty(batch.getOrderIds())) {
|
||||
Arrays.stream(batch.getOrderIds().split(","))
|
||||
.map(String::trim)
|
||||
.filter(StringUtils::isNotEmpty)
|
||||
.forEach(orderId -> {
|
||||
newOrderIds.add(Long.valueOf(orderId));
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
//更新批次
|
||||
batchSettlementOrderService.saveOrUpdateBatch(batchs);
|
||||
|
||||
// 会计审核
|
||||
orderService.update(Wrappers.<OrderInfo>lambdaUpdate()
|
||||
.in(OrderInfo::getId, orderIds)
|
||||
.in(OrderInfo::getId, newOrderIds)
|
||||
.set(OrderInfo::getAccountingConfirm, "1")
|
||||
.set(ObjectUtil.isNotEmpty(query.getRemark()), OrderInfo::getAccountingConfirmRemark, query.getRemark())
|
||||
.set(OrderInfo::getAccountingConfirmTime, new Date())
|
||||
|
@ -1,11 +1,24 @@
|
||||
package cn.iocoder.yudao.module.inspection.service.impl;
|
||||
|
||||
import cn.hutool.core.util.ArrayUtil;
|
||||
import cn.iocoder.yudao.module.inspection.entity.InspectionBatchSettlementOrder;
|
||||
import cn.iocoder.yudao.module.inspection.entity.InspectionBatchSettlementOrderQuery;
|
||||
import cn.iocoder.yudao.module.inspection.entity.InspectionBatchSettlementOrderQueryVo;
|
||||
import cn.iocoder.yudao.module.inspection.mapper.InspectionBatchSettlementOrderMapper;
|
||||
import cn.iocoder.yudao.module.inspection.service.IInspectionBatchSettlementOrderService;
|
||||
import cn.iocoder.yudao.module.inspection.service.IInspectionInfoService;
|
||||
import cn.iocoder.yudao.module.payment.entity.OrderInfo;
|
||||
import cn.iocoder.yudao.module.payment.service.OrderInfoService;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 批量结算订单记录 服务实现类
|
||||
@ -15,6 +28,46 @@ import org.springframework.stereotype.Service;
|
||||
* @since 2025-07-09
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class InspectionBatchSettlementOrderServiceImpl extends ServiceImpl<InspectionBatchSettlementOrderMapper, InspectionBatchSettlementOrder> implements IInspectionBatchSettlementOrderService {
|
||||
|
||||
private final OrderInfoService orderInfoService;
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*
|
||||
* @param page 分页参数
|
||||
* @param query 查询参数
|
||||
* @return List<InspectionBatchSettlementOrderQueryVo>
|
||||
*/
|
||||
@Override
|
||||
public IPage<InspectionBatchSettlementOrderQueryVo> pageVo(Page<InspectionBatchSettlementOrder> page, InspectionBatchSettlementOrderQuery query) {
|
||||
IPage<InspectionBatchSettlementOrderQueryVo> pageResp = baseMapper.pageVo(page, query);
|
||||
|
||||
// 收集所有orderIds
|
||||
Set<Long> allOrderIds = new HashSet<>();
|
||||
for (InspectionBatchSettlementOrderQueryVo record : pageResp.getRecords()) {
|
||||
Set<Long> orderIds = ArrayUtil.mapToSet(record.getOrderIds().split(","), Long::parseLong);
|
||||
allOrderIds.addAll(orderIds);
|
||||
}
|
||||
|
||||
// 一次性批量查询所有订单信息
|
||||
if (!allOrderIds.isEmpty()) {
|
||||
Map<Long, OrderInfo> orderInfoMap = orderInfoService.queryByIds(allOrderIds)
|
||||
.stream()
|
||||
.collect(Collectors.toMap(OrderInfo::getId, Function.identity()));
|
||||
|
||||
// 填充订单信息
|
||||
for (InspectionBatchSettlementOrderQueryVo record : pageResp.getRecords()) {
|
||||
Set<Long> orderIds = ArrayUtil.mapToSet(record.getOrderIds().split(","), Long::parseLong);
|
||||
List<OrderInfo> orderInfos = orderIds.stream()
|
||||
.map(orderInfoMap::get)
|
||||
.filter(Objects::nonNull)
|
||||
.collect(Collectors.toList());
|
||||
record.setOrderInfoList(orderInfos);
|
||||
}
|
||||
}
|
||||
|
||||
return pageResp;
|
||||
}
|
||||
}
|
||||
|
@ -598,13 +598,13 @@ public class InspectionFileServiceImpl extends ServiceImpl<InspectionFileMapper,
|
||||
InspectionFile inspectionFile = baseMapper.selectOne(new LambdaQueryWrapper<InspectionFile>().eq(InspectionFile::getDefaultKey, InspectionFileEnum.INSPECTION_CUSTOMER.getType()));
|
||||
if (inspectionFile != null) {
|
||||
// 查询出code中所有带这个文件夹id的文件
|
||||
List<InspectionFile> inspectionFiles = baseMapper.selectList(new LambdaQueryWrapper<InspectionFile>().like(InspectionFile::getFileCode, inspectionFile.getId()).eq(InspectionFile::getFileType, InspectionConstants.INSPECTION_FILE));
|
||||
List<InspectionFile> inspectionFiles = baseMapper.selectList(Wrappers.<InspectionFile>lambdaQuery().like(InspectionFile::getFileCode, inspectionFile.getId()).eq(InspectionFile::getType, InspectionConstants.INSPECTION_FILE));
|
||||
// 判断获取提醒时间判断是否有过期的
|
||||
inspectionFiles.forEach(file -> {
|
||||
if (file.getWarnTime() != null && file.getWarnTime().before(new Date())) {
|
||||
if (file.getWarnTime() != null && DateUtil.isSameDay(file.getWarnTime(), new Date())) {
|
||||
String message = String.format(InspectionConstants.INSPECTION_NOTICE_TEMPLATE_USER_FILE_EXPIRE, file.getFileName());
|
||||
// 提醒
|
||||
noticeService.sentMessage(Long.valueOf(file.getCreator()), message);
|
||||
// 站内信
|
||||
noticeService.sentMessageToMember(Long.valueOf(file.getCreator()), message, null);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -203,7 +203,7 @@ public class InspectionStaffServiceImpl extends ServiceImpl<InspectionStaffMappe
|
||||
if (CollUtil.isEmpty(inspectionStaffVo.getAdminUsers())) {
|
||||
//新增system_users主表
|
||||
// 判断账号是否存在
|
||||
AdminUserDO one = userService.getOne(Wrappers.<AdminUserDO>lambdaQuery().eq(AdminUserDO::getUsername, inspectionStaffVo.getUsername()).eq(AdminUserDO::getTenantId, loginUser.getTenantId()).last("LIMIT 1"));
|
||||
AdminUserDO one = userService.getOne(Wrappers.<AdminUserDO>lambdaQuery().eq(AdminUserDO::getUsername, inspectionStaffVo.getUsername()).eq(AdminUserDO::getUserType, USER_TYPE_STAFF).last("LIMIT 1"));
|
||||
Long userId = null;
|
||||
if (one == null) {
|
||||
UserSaveReqVO userDTO = BeanUtil.copyProperties(inspectionStaffVo, UserSaveReqVO.class);
|
||||
|
@ -224,6 +224,21 @@ public class OrderInfo extends TenantBaseDO {
|
||||
@TableField(exist = false)
|
||||
private String type;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String carNum;
|
||||
|
||||
//客户来源
|
||||
@TableField(exist = false)
|
||||
private String customerSource;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String businessChannel;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String buyName;
|
||||
@TableField(exist = false)
|
||||
private String buyPhone;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
@ -13,6 +13,7 @@ import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* (OrderInfo)表数据库访问层
|
||||
@ -64,5 +65,7 @@ public interface OrderInfoMapper extends BaseMapper<OrderInfo> {
|
||||
IPage<commentVo> getCommentOrderList(Page<commentVo> page, @Param("tenantId") Long tenantId);
|
||||
|
||||
IPage<OrderInfo> orderListPc(Page<OrderInfo> page,@Param("vo") OrderInfo orderInfo);
|
||||
|
||||
List<OrderInfo> queryByIds(@Param("orderIds") Set<Long> orderIds);
|
||||
}
|
||||
|
||||
|
@ -17,6 +17,7 @@ import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* (OrderInfo)表服务接口
|
||||
@ -94,5 +95,7 @@ public interface OrderInfoService extends IService<OrderInfo> {
|
||||
* @param page 分页
|
||||
*/
|
||||
void exportExcel(HttpServletResponse response, OrderInfo shopInspectionOrder, Page<OrderInfo> page) throws IOException;
|
||||
|
||||
List<OrderInfo> queryByIds(Set<Long> orderIds);
|
||||
}
|
||||
|
||||
|
@ -1007,5 +1007,14 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
||||
.doWrite(data); // 写入数据
|
||||
}
|
||||
|
||||
/**
|
||||
* @param orderIds
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<OrderInfo> queryByIds(Set<Long> orderIds) {
|
||||
return baseMapper.queryByIds(orderIds);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -16,8 +16,11 @@ import cn.iocoder.yudao.module.reminder.service.IInspectionReminderConfigService
|
||||
import cn.iocoder.yudao.module.reminder.service.IInspectionReminderRecordService;
|
||||
import cn.iocoder.yudao.module.shop.entity.ShopUserCar;
|
||||
import cn.iocoder.yudao.module.shop.service.IShopUserCarService;
|
||||
import cn.iocoder.yudao.module.system.api.permission.PermissionApi;
|
||||
import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
|
||||
import cn.iocoder.yudao.module.system.api.user.dto.UserDTO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
|
||||
import cn.iocoder.yudao.module.system.service.permission.RoleService;
|
||||
import cn.iocoder.yudao.module.system.service.user.AdminUserService;
|
||||
import cn.iocoder.yudao.util.SendSmsUtil;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
@ -47,6 +50,7 @@ public class InspectionReminderConfigServiceImpl extends ServiceImpl<InspectionR
|
||||
private final InspectionNoticeService inspectionNoticeService;
|
||||
private final AdminUserService adminUserService;
|
||||
private final IInspectionReminderRecordService reminderRecordService;
|
||||
private final RoleService roleService;
|
||||
|
||||
|
||||
@Override
|
||||
@ -78,7 +82,7 @@ public class InspectionReminderConfigServiceImpl extends ServiceImpl<InspectionR
|
||||
.filter(ObjectUtil::isNotEmpty)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
|
||||
List<UserDTO> users = roleService.getUserListByCodes(Collections.singletonList("jcxxgly"));
|
||||
|
||||
// 发送站内信
|
||||
for (InspectionInfo inspectionInfo : inspectionInfos) {
|
||||
@ -129,6 +133,15 @@ public class InspectionReminderConfigServiceImpl extends ServiceImpl<InspectionR
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
// 提醒信息管理员
|
||||
if (CollUtil.isNotEmpty(users)) {
|
||||
for (UserDTO user : users) {
|
||||
String msgBoth = String.format(InspectionConstants.INSPECTION_NOTICE_TEMPLATE_USER_CAR_INSURANCE_EXPIRE, inspectionInfo.getCarNum(), formattedDate, inspectionInfo.getBuyPhone());
|
||||
inspectionNoticeService.sentMessageToMember(user.getId(), msgBoth, null);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
// 发送短信
|
||||
sendSmsByConfig(config, ownerPhones);
|
||||
@ -150,6 +163,8 @@ public class InspectionReminderConfigServiceImpl extends ServiceImpl<InspectionR
|
||||
.filter(ObjectUtil::isNotEmpty)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
List<UserDTO> users = roleService.getUserListByCodes(Collections.singletonList("jcxxgly"));
|
||||
|
||||
|
||||
|
||||
for (InspectionInfo inspectionInfo : inspectionInfos) {
|
||||
@ -195,6 +210,14 @@ public class InspectionReminderConfigServiceImpl extends ServiceImpl<InspectionR
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
// 提醒信息管理员
|
||||
if (CollUtil.isNotEmpty(users)) {
|
||||
for (UserDTO user : users) {
|
||||
String msgBoth = String.format(InspectionConstants.INSPECTION_NOTICE_TEMPLATE_USER_CAR_INSURANCE_EXPIRE, inspectionInfo.getCarNum(), formattedDate, inspectionInfo.getBuyPhone());
|
||||
inspectionNoticeService.sentMessageToMember(user.getId(), msgBoth, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
sendSmsByConfig(config, ownerPhones);
|
||||
}
|
||||
@ -228,8 +251,8 @@ public class InspectionReminderConfigServiceImpl extends ServiceImpl<InspectionR
|
||||
*/
|
||||
private void sendSmsByConfig(InspectionReminderConfig config, List<String> phoneNums) {
|
||||
if (CollUtil.isEmpty(phoneNums)) return;
|
||||
// String[] phoneArray = phoneNums.toArray(new String[0]);
|
||||
String[] phoneArray = {"19392873837"};
|
||||
String[] phoneArray = phoneNums.toArray(new String[0]);
|
||||
// String[] phoneArray = {"19392873837"};
|
||||
|
||||
switch (config.getReminderPeople()) {
|
||||
case 0: // 车主
|
||||
|
@ -2,4 +2,20 @@
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="cn.iocoder.yudao.module.inspection.mapper.InspectionBatchSettlementOrderMapper">
|
||||
|
||||
<select id="pageVo"
|
||||
resultType="cn.iocoder.yudao.module.inspection.entity.InspectionBatchSettlementOrderQueryVo">
|
||||
SELECT batch.* , user.nickname AS cashierName
|
||||
FROM inspection_batch_settlement_order batch
|
||||
LEFT JOIN system_users user ON batch.creator = user.id
|
||||
<where>
|
||||
<if test="query.accountingConfirm != null">
|
||||
AND batch.accounting_confirm != #{query.accountingConfirm}
|
||||
</if>
|
||||
<if test="query.datetimeRange != null">
|
||||
<if test="query.datetimeRange.size() == 2">
|
||||
AND batch.create_time BETWEEN CONCAT(#{query.datetimeRange[0]}, ' 00:00:00') AND CONCAT(#{query.datetimeRange[1]}, ' 23:59:59')
|
||||
</if>
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
</mapper>
|
||||
|
@ -326,4 +326,14 @@
|
||||
</if>
|
||||
order by oi.order_time desc
|
||||
</select>
|
||||
<select id="queryByIds" resultType="cn.iocoder.yudao.module.payment.entity.OrderInfo">
|
||||
SELECT oi.*, info.*
|
||||
FROM order_info AS oi
|
||||
LEFT JOIN inspection_info AS info ON info.inspection_order_id = oi.id
|
||||
WHERE oi.id IN
|
||||
<foreach item="item" collection="orderIds" separator="," open="(" close=")" index="">
|
||||
#{item}
|
||||
</foreach>
|
||||
|
||||
</select>
|
||||
</mapper>
|
||||
|
@ -31,5 +31,9 @@ public class RoleReqDTO {
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
/**
|
||||
* 服务套餐编号
|
||||
*/
|
||||
private String servicePackageId;
|
||||
|
||||
}
|
||||
|
@ -57,6 +57,14 @@ public interface AdminUserApi {
|
||||
* @return 用户对象信息
|
||||
*/
|
||||
AdminUserRespDTO getUserByUsername(String username);
|
||||
|
||||
/**
|
||||
* 通过用户 登录账户 查询用户---手动拼租户
|
||||
*
|
||||
* @param username 用户登录账户
|
||||
* @return 用户对象信息
|
||||
*/
|
||||
AdminUserRespDTO getUserByUsername(String username, Long tenantId);
|
||||
/**
|
||||
* 通过用户 登录账户 查询用户---不带租户
|
||||
*
|
||||
|
@ -14,6 +14,7 @@ import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
|
||||
import cn.iocoder.yudao.module.system.service.dept.DeptService;
|
||||
import cn.iocoder.yudao.module.system.service.user.AdminUserService;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
@ -96,6 +97,20 @@ public class AdminUserApiImpl implements AdminUserApi {
|
||||
AdminUserDO user = userService.getUserByUsername(username);
|
||||
return BeanUtils.toBean(user, AdminUserRespDTO.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过用户 登录账户 查询用户---手动拼租户
|
||||
*
|
||||
* @param username 用户登录账户
|
||||
* @return 用户对象信息
|
||||
*/
|
||||
@Override
|
||||
public AdminUserRespDTO getUserByUsername(String username, Long tenantId) {
|
||||
AdminUserDO user = userService.getOne(Wrappers.<AdminUserDO>lambdaQuery()
|
||||
.eq(AdminUserDO::getUsername, username)
|
||||
.eq(AdminUserDO::getTenantId, tenantId));
|
||||
return BeanUtils.toBean(user, AdminUserRespDTO.class);
|
||||
}
|
||||
/**
|
||||
* 通过用户 登录账户 查询用户---不带租户
|
||||
*
|
||||
|
@ -10,6 +10,7 @@ import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.framework.security.config.SecurityProperties;
|
||||
import cn.iocoder.yudao.framework.security.core.LoginUser;
|
||||
import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
|
||||
import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
|
||||
import cn.iocoder.yudao.module.system.api.permission.PermissionApi;
|
||||
import cn.iocoder.yudao.module.system.api.permission.RoleApi;
|
||||
import cn.iocoder.yudao.module.system.api.permission.dto.RoleReqDTO;
|
||||
@ -288,6 +289,7 @@ public class AuthController {
|
||||
@GetMapping("/getListByPhone")
|
||||
@PermitAll
|
||||
@Operation(summary = "根据用户手机号查询所在的所有租户--员工登录", description = "根据用户手机号查询所在的所有租户--员工登录")
|
||||
@TenantIgnore
|
||||
public CommonResult<?> getListByPhone(@RequestParam("phone") String phone) {
|
||||
List<AdminUserDO> list = userService.selectListByPhoneStaff(phone);
|
||||
List<TenantDO> tenants = new ArrayList<>();
|
||||
|
@ -307,6 +307,7 @@ yudao:
|
||||
- /admin-api/jx/**
|
||||
- /admin-api/jx/auth/getAppInfo
|
||||
- /admin-api/cos/**
|
||||
- /admin-api/system/auth/getListByPhone
|
||||
ignore-tables:
|
||||
- system_tenant
|
||||
- system_tenant_package
|
||||
|
Loading…
Reference in New Issue
Block a user