diff --git a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/JAVA_TO_BOOT_MAPPING.md b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/JAVA_TO_BOOT_MAPPING.md deleted file mode 100644 index 175a46dd..00000000 --- a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/JAVA_TO_BOOT_MAPPING.md +++ /dev/null @@ -1,258 +0,0 @@ -# Java → wwjcloud-boot 能力映射表 - -> 本文档定义Java常用工具类/API与wwjcloud-boot框架能力的映射关系 -> -> **核心原则**: 不改业务逻辑,只替换Java写法为V1框架写法 - -## 📦 工具类映射 - -### 1. JSON处理 - -| Java | wwjcloud-boot | 导入路径 | 说明 | -|------|---------------|---------|------| -| `JSONUtil.parseObj(str)` | `JSON.parse(str)` | 原生JS | 解析JSON字符串 | -| `JSONUtil.toJsonStr(obj)` | `JSON.stringify(obj)` | 原生JS | 对象转JSON字符串 | -| `JSONUtil.toBean(json, Class)` | `Object.assign(new Class(), json)` | 原生JS | JSON转对象 | -| `JSONObject` | `Record` | 原生TS | JSON对象类型 | -| `JsonLoadUtils.loadJsonString(file, name)` | `JSON.parse(fs.readFileSync(path.join(file, name), 'utf-8'))` | `fs`, `path` | 读取JSON文件 | - -### 2. 字符串工具 - -| Java | wwjcloud-boot | 导入路径 | 说明 | -|------|---------------|---------|------| -| `StringUtils.isEmpty(str)` | `StringUtils.isEmpty(str)` | `@wwjBoot` | 字符串为空判断 | -| `StringUtils.isNotEmpty(str)` | `StringUtils.isNotEmpty(str)` | `@wwjBoot` | 字符串非空判断 | -| `StringUtils.isBlank(str)` | `StringUtils.isEmpty(str)` | `@wwjBoot` | 同isEmpty | -| `String.equals(str)` | `=== str` | 原生JS | 字符串相等 | -| `String.equalsIgnoreCase(str)` | `.toLowerCase() === str.toLowerCase()` | 原生JS | 忽略大小写相等 | -| `String.contains(str)` | `.includes(str)` | 原生JS | 包含字符串 | - -### 3. 集合工具 - -| Java | wwjcloud-boot | 导入路径 | 说明 | -|------|---------------|---------|------| -| `CollectionUtil.isEmpty(list)` | `StringUtils.isEmptyArray(list)` | `@wwjBoot` | 数组为空判断 | -| `CollectionUtil.isNotEmpty(list)` | `StringUtils.isNotEmptyArray(list)` | `@wwjBoot` | 数组非空判断 | -| `list.add(item)` | `list.push(item)` | 原生JS | 添加元素 | -| `list.size()` | `list.length` | 原生JS | 数组长度 | -| `list.isEmpty()` | `list.length === 0` | 原生JS | 数组为空 | - -### 4. 对象工具 - -| Java | wwjcloud-boot | 导入路径 | 说明 | -|------|---------------|---------|------| -| `ObjectUtil.isEmpty(obj)` | `!obj` | 原生JS | 对象为空 | -| `ObjectUtil.isNotEmpty(obj)` | `!!obj` | 原生JS | 对象非空 | -| `BeanUtils.copyProperties(src, dest)` | `Object.assign(dest, src)` | 原生JS | 属性复制 | - -### 5. 文件工具 - -| Java | wwjcloud-boot | 导入路径 | 说明 | -|------|---------------|---------|------| -| `Files.list(Paths.get(dir))` | `fs.readdirSync(dir)` | `fs` | 列出目录 | -| `Paths.get(path)` | `path.join(path)` | `path` | 路径拼接 | -| `file.exists()` | `fs.existsSync(file)` | `fs` | 文件是否存在 | -| `file.isDirectory()` | `fs.statSync(file).isDirectory()` | `fs` | 是否目录 | -| `file.getName()` | `path.basename(file)` | `path` | 文件名 | -| `file.listFiles()` | `fs.readdirSync(file)` | `fs` | 列出文件 | -| `FileUtils.cleanDirectory(dir)` | `fs.rmSync(dir, { recursive: true, force: true })` | `fs` | 清空目录 | -| `FileUtils.copyFile(src, dest)` | `fs.copyFileSync(src, dest)` | `fs` | 复制文件 | -| `FileUtils.deleteDirectory(dir)` | `fs.rmSync(dir, { recursive: true, force: true })` | `fs` | 删除目录 | -| `FileUtils.readFileToString(file)` | `fs.readFileSync(file, 'utf-8')` | `fs` | 读取文件 | -| `FileUtils.writeStringToFile(file, data)` | `fs.writeFileSync(file, data, 'utf-8')` | `fs` | 写入文件 | - -### 6. Stream API - -| Java | wwjcloud-boot | 导入路径 | 说明 | -|------|---------------|---------|------| -| `list.stream()` | `list` | 原生JS | 数组本身支持map/filter | -| `.filter(predicate)` | `.filter(predicate)` | 原生JS | 过滤 | -| `.map(mapper)` | `.map(mapper)` | 原生JS | 映射 | -| `.collect(Collectors.toList())` | 无需操作 | 原生JS | 数组方法返回数组 | -| `Collectors.toList()` | 无需操作 | 原生JS | 删除即可 | - -### 7. 断言工具 - -| Java | wwjcloud-boot | 导入路径 | 说明 | -|------|---------------|---------|------| -| `Assert.notNull(obj, msg)` | `if (!obj) throw new BadRequestException(msg)` | `@nestjs/common` | 非空断言 | -| `Assert.isTrue(condition, msg)` | `if (!condition) throw new BadRequestException(msg)` | `@nestjs/common` | 条件断言 | - -### 8. 系统工具 - -| Java | wwjcloud-boot | 导入路径 | 说明 | -|------|---------------|---------|------| -| `System.out.println(msg)` | `console.log(msg)` | 原生JS | 控制台输出 | -| `System.err.println(msg)` | `console.error(msg)` | 原生JS | 错误输出 | -| `System.currentTimeMillis()` | `Date.now()` | 原生JS | 当前时间戳(毫秒) | -| `System.currentTimeMillis() / 1000` | `Math.floor(Date.now() / 1000)` | 原生JS | 当前时间戳(秒) | - -### 9. 异常处理 - -| Java | wwjcloud-boot | 导入路径 | 说明 | -|------|---------------|---------|------| -| `throw new CommonException(msg)` | `throw new BadRequestException(msg)` | `@nestjs/common` | 业务异常 | -| `throw new AuthException(msg)` | `throw new UnauthorizedException(msg)` | `@nestjs/common` | 认证异常 | -| `catch (Exception e)` | `catch (e)` | 原生JS | 捕获异常 | -| `catch (IOException e)` | `catch (e)` | 原生JS | 捕获异常 | -| `e.getMessage()` | `e.message` | 原生JS | 异常消息 | -| `e.printStackTrace()` | `console.error(e)` | 原生JS | 打印堆栈 | - -### 10. 日期时间 - -| Java | wwjcloud-boot | 导入路径 | 说明 | -|------|---------------|---------|------| -| `LocalDateTime.now()` | `new Date()` | 原生JS | 当前时间 | -| `LocalDate.now()` | `new Date()` | 原生JS | 当前日期 | -| `Date` | `Date` | 原生JS | 日期类型 | -| `Timestamp` | `Date` | 原生JS | 时间戳类型 | - -## 🗄️ MyBatis → TypeORM 映射 - -### 1. 查询构造器 - -| Java (MyBatis) | wwjcloud-boot (TypeORM) | 说明 | -|----------------|------------------------|------| -| `QueryWrapper` | `查询条件对象` | 需要转换为TypeORM查询 | -| `new QueryWrapper<>()` | `{}` | 初始化为空对象 | -| `.eq("field", value)` | `{ field: value }` | 等于条件 | -| `.like("field", value)` | `{ field: Like(\`%${value}%\`) }` | 模糊查询 | -| `.in("field", list)` | `{ field: In(list) }` | IN查询 | - -### 2. 分页查询 - -| Java (MyBatis) | wwjcloud-boot (TypeORM) | 说明 | -|----------------|------------------------|------| -| `IPage` | `[Entity[], number]` | 分页结果 | -| `new Page<>(page, limit)` | `{ skip: (page-1)*limit, take: limit }` | 分页参数 | -| `mapper.selectPage(page, wrapper)` | `repository.findAndCount({ where, skip, take })` | 分页查询 | -| `iPage.getTotal()` | `total` | 总数 | -| `iPage.getRecords()` | `records` | 记录列表 | - -### 3. Mapper方法 - -| Java (MyBatis) | wwjcloud-boot (TypeORM) | 说明 | -|----------------|------------------------|------| -| `mapper.selectOne(wrapper)` | `repository.findOne({ where })` | 查询单条 | -| `mapper.selectList(wrapper)` | `repository.find({ where })` | 查询列表 | -| `mapper.insert(entity)` | `repository.save(entity)` | 插入 | -| `mapper.updateById(entity)` | `repository.save(entity)` | 更新 | -| `mapper.deleteById(id)` | `repository.delete(id)` | 删除 | -| `mapper.delete(wrapper)` | `repository.delete({ where })` | 条件删除 | -| `mapper.selectCount(wrapper)` | `repository.count({ where })` | 计数 | - -## 🎯 特殊业务工具映射 - -### Java特有工具 → Core层实现 - -以下Java工具是业务特定的,需要在Core层实现或标记TODO: - -| Java工具 | 处理方式 | 说明 | -|---------|---------|------| -| `ImageUtils.imageToBase64()` | TODO | 图片转Base64,需Core层实现 | -| `AddonInstallJavaTools` | TODO | 插件安装工具,需Core层实现 | -| `LocalMavenTools` | TODO | Maven工具,需Core层实现 | -| `niucloudService` | 注入Service | 业务Service,通过DI注入 | -| `coreAddonService` | 注入Service | 业务Service,通过DI注入 | - -## 🔄 转换示例 - -### 示例1: 文件操作 - -**Java代码**: -```java -String addonPath = WebAppEnvs.get().webRootDownAddon + addon + "/"; -if (!Files.exists(Paths.get(addonPath))) { - throw new CommonException("插件不存在"); -} -FileUtils.cleanDirectory(addonPath); -``` - -**V1代码**: -```typescript -const addonPath = this.appConfig.webRootDownAddon + addon + "/"; -if (!fs.existsSync(addonPath)) { - throw new BadRequestException("插件不存在"); -} -fs.rmSync(addonPath, { recursive: true, force: true }); -``` - -### 示例2: JSON操作 - -**Java代码**: -```java -JSONObject info = JSONUtil.parseObj(JsonLoadUtils.loadJsonString(file, "info.json")); -AddonInfo addonInfo = JSONUtil.toBean(info, AddonInfo.class); -``` - -**V1代码**: -```typescript -const info = JSON.parse(fs.readFileSync(path.join(file, "info.json"), 'utf-8')); -const addonInfo = Object.assign(new AddonInfo(), info); -``` - -### 示例3: 集合操作 - -**Java代码**: -```java -List localAddons = Files.list(Paths.get(addonPath)) - .filter(file -> file.isDirectory()) - .map(file -> file.getName()) - .collect(Collectors.toList()); - -if (CollectionUtil.isNotEmpty(searchParam.getSearch()) && list.size() > 0) { - list = list.stream() - .filter(item -> item.getTitle().contains(searchParam.getSearch())) - .collect(Collectors.toList()); -} -``` - -**V1代码**: -```typescript -const localAddons = fs.readdirSync(addonPath) - .filter(file => fs.statSync(path.join(addonPath, file)).isDirectory()); - -if (StringUtils.isNotEmpty(searchParam.getSearch()) && list.length > 0) { - list = list.filter(item => item.getTitle().includes(searchParam.getSearch())); -} -``` - -### 示例4: MyBatis查询 - -**Java代码**: -```java -QueryWrapper queryWrapper = new QueryWrapper<>(); -queryWrapper.eq("site_id", siteId); - -IPage iPage = addonLogMapper.selectPage( - new Page<>(page, limit), - queryWrapper -); - -return PageResult.build(page, limit, iPage.getTotal()).setData(iPage.getRecords()); -``` - -**V1代码**: -```typescript -const [records, total] = await this.addonLogRepository.findAndCount({ - where: { siteId }, - skip: (page - 1) * limit, - take: limit -}); - -return PageResult.build(page, limit, total).setData(records); -``` - -## 📌 转换优先级 - -1. **原生JS/TS能力** (最高优先级) -2. **wwjcloud-boot工具类** -3. **NestJS内置功能** -4. **TypeORM API** -5. **Core层业务实现** (最低优先级,标记TODO) - ---- - -**更新日期**: 2025-01-XX -**维护者**: Migration Tool Team - diff --git a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/JAVA_TO_V1_MAPPING.md b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/JAVA_TO_V1_MAPPING.md new file mode 100644 index 00000000..459268c5 --- /dev/null +++ b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/JAVA_TO_V1_MAPPING.md @@ -0,0 +1,294 @@ +# Java → V1框架能力映射表 + +## 📋 核心原则 +**不改业务逻辑,只换Java写法为V1写法** + +## 🔄 数据库访问层映射 + +### MyBatis → TypeORM + +| Java (MyBatis) | V1 (TypeORM) | 说明 | +|----------------|--------------|------| +| `QueryWrapper` | `Repository` | 查询构造器 → Repository | +| `new QueryWrapper<>()` | `this.xxxRepository` | 直接使用注入的Repository | +| `.eq("field", value)` | `.findOne({ where: { field: value } })` | 等值查询 | +| `.like("field", value)` | `.createQueryBuilder().where("field LIKE :value", { value: `%${value}%` })` | 模糊查询 | +| `.in("field", list)` | `.findBy({ field: In(list) })` | IN查询 | +| `.orderByAsc("field")` | `.find({ order: { field: 'ASC' } })` | 排序 | +| `IPage` | `[Entity[], number]` | 分页结果 | +| `new Page<>(page, limit)` | `.findAndCount({ skip, take })` | 分页查询 | +| `xxxMapper.selectPage()` | `this.xxxRepository.findAndCount()` | 分页方法 | +| `xxxMapper.selectOne()` | `this.xxxRepository.findOne()` | 单条查询 | +| `xxxMapper.selectList()` | `this.xxxRepository.find()` | 列表查询 | +| `xxxMapper.insert()` | `this.xxxRepository.save()` | 插入 | +| `xxxMapper.update()` | `this.xxxRepository.save()` | 更新 | +| `xxxMapper.delete()` | `this.xxxRepository.delete()` | 删除 | + +### 分页处理 + +```java +// Java +int page = pageParam.getPage(); +int limit = pageParam.getLimit(); +QueryWrapper qw = new QueryWrapper<>(); +IPage iPage = mapper.selectPage(new Page<>(page, limit), qw); +``` + +```typescript +// V1 +const { page, limit } = pageParam; +const skip = (page - 1) * limit; +const [list, total] = await this.xxxRepository.findAndCount({ + where: { /* conditions */ }, + skip, + take: limit, + order: { /* sorting */ } +}); +``` + +### 查询条件构建 + +```java +// Java +QueryWrapper qw = new QueryWrapper<>(); +qw.eq("site_id", siteId); +qw.like("name", keyword); +qw.in("status", Arrays.asList(1, 2, 3)); +``` + +```typescript +// V1 +const where: any = { + siteId: siteId, + name: Like(`%${keyword}%`), + status: In([1, 2, 3]) +}; +await this.xxxRepository.find({ where }); +``` + +## 🛠️ 工具类映射 + +### JSON处理 + +| Java | V1 | 说明 | +|------|-----|------| +| `JSONUtil.parseObj(str)` | `JsonUtils.parseObject(str)` | JSON字符串转对象 | +| `JSONUtil.toBean(json, Class)` | `JsonUtils.parseObject(JSON.stringify(json))` | JSON转Bean | +| `JSONObject` | `Record` | JSON对象类型 | +| `JsonLoadUtils.loadJsonString(file, name)` | `JsonUtils.parseObject(fs.readFileSync(path.join(file, name), 'utf-8'))` | 加载JSON文件 | + +### 对象工具 + +| Java | V1 | 说明 | +|------|-----|------| +| `ObjectUtil.isNotEmpty(obj)` | `CommonUtils.isNotEmpty(obj)` | 非空判断 | +| `ObjectUtil.isEmpty(obj)` | `CommonUtils.isEmpty(obj)` | 空判断 | +| `BeanUtils.copyProperties(src, dest)` | `Object.assign(dest, src)` | 对象复制 | + +### 集合工具 + +| Java | V1 | 说明 | +|------|-----|------| +| `CollectionUtil.isEmpty(list)` | `StringUtils.isEmptyArray(list)` | 数组空判断 | +| `CollectionUtil.isNotEmpty(list)` | `StringUtils.isNotEmptyArray(list)` | 数组非空判断 | +| `list.add(item)` | `list.push(item)` | 添加元素 | +| `list.size()` | `list.length` | 数组长度 | +| `list.stream()` | `list.map/filter/reduce` | Stream API | +| `.collect(Collectors.toList())` | (移除,直接使用数组) | 转列表 | + +### 字符串工具 + +| Java | V1 | 说明 | +|------|-----|------| +| `StringUtils.isEmpty(str)` | `StringUtils.isEmpty(str)` | ✅ 已有 | +| `StringUtils.isNotEmpty(str)` | `StringUtils.isNotEmpty(str)` | ✅ 已有 | +| `str.equals(other)` | `str === other` | 字符串比较 | +| `str.equalsIgnoreCase(other)` | `str.toLowerCase() === other.toLowerCase()` | 忽略大小写比较 | +| `str.contains(substr)` | `str.includes(substr)` | 包含判断 | + +### 文件工具 + +| Java | V1 | 说明 | +|------|-----|------| +| `Files.list(path)` | `fs.readdirSync(path)` | 列出文件 | +| `Paths.get(str)` | `path.join(str)` | 路径拼接 | +| `file.exists()` | `fs.existsSync(file)` | 文件存在 | +| `file.isDirectory()` | `fs.statSync(file).isDirectory()` | 是否目录 | +| `file.getName()` | `path.basename(file)` | 文件名 | +| `file.listFiles()` | `fs.readdirSync(file)` | 列出文件 | +| `FileUtils.cleanDirectory(dir)` | `fs.rmSync(dir, { recursive: true, force: true })` | 清空目录 | +| `FileUtils.copyFile(src, dest)` | `fs.copyFileSync(src, dest)` | 复制文件 | +| `FileUtils.deleteDirectory(dir)` | `fs.rmSync(dir, { recursive: true, force: true })` | 删除目录 | +| `FileUtils.readFileToString(file)` | `fs.readFileSync(file, 'utf-8')` | 读取文件 | +| `FileUtils.writeStringToFile(file, str)` | `fs.writeFileSync(file, str, 'utf-8')` | 写入文件 | + +### 断言工具 + +| Java | V1 | 说明 | +|------|-----|------| +| `Assert.notNull(obj, msg)` | `if (!obj) throw new BadRequestException(msg)` | 非空断言 | +| `Assert.isTrue(bool, msg)` | `if (!bool) throw new BadRequestException(msg)` | 真值断言 | + +### 系统工具 + +| Java | V1 | 说明 | +|------|-----|------| +| `System.out.println(msg)` | `console.log(msg)` | 控制台输出 | +| `System.currentTimeMillis()` | `Date.now()` | 当前时间戳(毫秒) | +| `System.currentTimeMillis() / 1000` | `Math.floor(Date.now() / 1000)` | 当前时间戳(秒) | + +### 图片工具 + +| Java | V1 | 说明 | +|------|-----|------| +| `ImageUtils.imageToBase64(path)` | `fs.readFileSync(path, 'base64')` | 图片转Base64 | + +## ⚙️ 配置访问映射 + +| Java | V1 | 说明 | +|------|-----|------| +| `GlobalConfig.tablePrefix` | `this.appConfig.tablePrefix` | 表前缀 | +| `GlobalConfig.runActive` | `this.appConfig.runActive` | 运行环境 | +| `WebAppEnvs.get().projectRoot` | `this.appConfig.projectRoot` | 项目根目录 | +| `WebAppEnvs.get().webRoot` | `this.appConfig.webRoot` | Web根目录 | + +## 🎯 请求上下文映射 + +| Java | V1 | 说明 | +|------|-----|------| +| `RequestUtils.siteId()` | `this.requestContext.getSiteId()` | 站点ID | +| `RequestUtils.adminId()` | `this.requestContext.getAdminId()` | 管理员ID | +| `RequestUtils.adminSiteId()` | `this.requestContext.getSiteId()` | 站点ID | +| `RequestUtils.getRequest()` | `this.requestContext.getRequest()` | 请求对象 | + +## ❌ 异常处理映射 + +| Java | V1 | 说明 | +|------|-----|------| +| `throw new CommonException(msg)` | `throw new BadRequestException(msg)` | 通用异常 | +| `throw new AuthException(msg)` | `throw new UnauthorizedException(msg)` | 认证异常 | +| `throw new RuntimeException(msg)` | `throw new Error(msg)` | 运行时异常 | +| `catch (Exception e)` | `catch (e)` | 捕获异常 | +| `catch (IOException e)` | `catch (e)` | IO异常 | +| `e.getMessage()` | `e.message` | 异常消息 | +| `e.printStackTrace()` | `console.error(e)` | 打印堆栈 | + +## 🔧 类型映射 + +| Java | TypeScript | 说明 | +|------|------------|------| +| `int`, `Integer` | `number` | 整数 | +| `long`, `Long` | `number` | 长整数 | +| `double`, `Double` | `number` | 双精度 | +| `float`, `Float` | `number` | 浮点数 | +| `boolean`, `Boolean` | `boolean` | 布尔值 | +| `String` | `string` | 字符串 | +| `Date`, `LocalDateTime` | `Date` | 日期时间 | +| `List`, `ArrayList` | `T[]` | 数组 | +| `Map`, `HashMap` | `Record` | 对象 | +| `Set`, `HashSet` | `Set` | 集合 | +| `void` | `void` | 无返回值 | +| `Id` | `number` | ID类型 | + +## 📦 依赖注入映射 + +```java +// Java +@Autowired +private XxxMapper xxxMapper; + +@Autowired +private YyyService yyyService; +``` + +```typescript +// V1 +constructor( + @InjectRepository(XxxEntity) + private readonly xxxRepository: Repository, + + private readonly yyyService: YyyService, +) {} +``` + +## 🎯 完整示例 + +### 示例1:分页查询 + +```java +// Java +public PageResult getPage(PageParam pageParam) { + int page = pageParam.getPage(); + int limit = pageParam.getLimit(); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("site_id", RequestUtils.siteId()); + + IPage iPage = addonLogMapper.selectPage( + new Page<>(page, limit), + queryWrapper + ); + + List list = new ArrayList<>(); + for (AddonLog item : iPage.getRecords()) { + AddonLogListVo vo = new AddonLogListVo(); + BeanUtils.copyProperties(item, vo); + list.add(vo); + } + + return PageResult.build(page, limit, iPage.getTotal()).setData(list); +} +``` + +```typescript +// V1 +async getPage(pageParam: PageParamDto): Promise> { + const { page, limit } = pageParam; + const skip = (page - 1) * limit; + + const [records, total] = await this.addonLogRepository.findAndCount({ + where: { siteId: this.requestContext.getSiteId() }, + skip, + take: limit + }); + + const list = records.map(item => { + const vo = new AddonLogListVo(); + Object.assign(vo, item); + return vo; + }); + + return PageResult.build(page, limit, total).setData(list); +} +``` + +### 示例2:文件操作 + +```java +// Java +String addonPath = WebAppEnvs.get().webRootDownAddon + addon + "/"; +if (!new File(addonPath).exists()) { + throw new CommonException("插件不存在"); +} +FileUtils.cleanDirectory(new File(addonPath)); +``` + +```typescript +// V1 +const addonPath = path.join(this.appConfig.webRootDownAddon, addon, '/'); +if (!fs.existsSync(addonPath)) { + throw new BadRequestException("插件不存在"); +} +fs.rmSync(addonPath, { recursive: true, force: true }); +``` + +## ✅ 转换原则总结 + +1. **数据库访问**: MyBatis QueryWrapper → TypeORM Repository +2. **工具类**: Java Utils → V1 Boot层Utils +3. **配置访问**: GlobalConfig/WebAppEnvs → AppConfigService +4. **请求上下文**: RequestUtils → RequestContextService +5. **异常处理**: Java异常 → NestJS异常 +6. **类型系统**: Java类型 → TypeScript类型 +7. **依赖注入**: @Autowired → Constructor注入 + diff --git a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/java-to-v1-mapper.js b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/java-to-v1-mapper.js deleted file mode 100644 index be1e6b1e..00000000 --- a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/java-to-v1-mapper.js +++ /dev/null @@ -1,300 +0,0 @@ -/** - * Java → wwjcloud-boot V1框架 全局映射器 - * - * 核心原则:不改业务逻辑,只替换Java写法为V1框架写法 - * - * 参考文档:JAVA_TO_BOOT_MAPPING.md - */ -class JavaToV1Mapper { - constructor() { - this.bootImports = new Set(); - this.nodeModules = new Set(); - this.typeormImports = new Set(); - this.nestjsImports = new Set(); - } - - /** - * 核心转换方法 - */ - convert(javaCode) { - let tsCode = javaCode; - - // 执行转换(按依赖顺序) - tsCode = this.convertTypes(tsCode); - tsCode = this.convertMyBatis(tsCode); - tsCode = this.convertJavaUtils(tsCode); - tsCode = this.convertStreamAPI(tsCode); - tsCode = this.convertExceptions(tsCode); - tsCode = this.convertSystemCalls(tsCode); - - return tsCode; - } - - /** - * 1. 类型转换 - */ - convertTypes(code) { - let result = code; - - // 基础类型 - result = result.replace(/\bInteger\b/g, 'number'); - result = result.replace(/\bLong\b/g, 'number'); - result = result.replace(/\bDouble\b/g, 'number'); - result = result.replace(/\bFloat\b/g, 'number'); - result = result.replace(/\bBoolean\b/g, 'boolean'); - - // 集合类型 - result = result.replace(/List<([^>]+)>/g, '$1[]'); - result = result.replace(/ArrayList<([^>]+)>/g, '$1[]'); - result = result.replace(/LinkedList<([^>]+)>/g, '$1[]'); - result = result.replace(/Set<([^>]+)>/g, '$1[]'); - result = result.replace(/HashSet<([^>]+)>/g, '$1[]'); - result = result.replace(/Map<([^,]+),\s*([^>]+)>/g, 'Record<$1, $2>'); - result = result.replace(/HashMap<([^,]+),\s*([^>]+)>/g, 'Record<$1, $2>'); - - // JSON类型 - result = result.replace(/\bJSONObject\b/g, 'Record'); - - // 日期类型 - result = result.replace(/\bLocalDateTime\b/g, 'Date'); - result = result.replace(/\bLocalDate\b/g, 'Date'); - result = result.replace(/\bTimestamp\b/g, 'Date'); - - // ID类型 - result = result.replace(/\bId\b/g, 'number'); - - return result; - } - - /** - * 2. MyBatis → TypeORM - */ - convertMyBatis(code) { - let result = code; - - // QueryWrapper - result = result.replace(/QueryWrapper<[^>]+>\s*/g, ''); - result = result.replace(/new\s+QueryWrapper<[^>]*>\(\)/g, '{}'); - - // Page/IPage - result = result.replace(/IPage<[^>]+>\s*/g, ''); - result = result.replace(/new\s+Page<[^>]*>\([^)]+\)/g, '{ /* pagination */ }'); - - // Mapper调用 → Repository调用 - // xxxMapper.selectOne() → this.xxxRepository.findOne() - result = result.replace(/(\w+)Mapper\.selectOne\(/g, 'this.$1Repository.findOne('); - result = result.replace(/(\w+)Mapper\.selectList\(/g, 'this.$1Repository.find('); - result = result.replace(/(\w+)Mapper\.selectPage\(/g, 'this.$1Repository.findAndCount('); - result = result.replace(/(\w+)Mapper\.insert\(/g, 'this.$1Repository.save('); - result = result.replace(/(\w+)Mapper\.updateById\(/g, 'this.$1Repository.save('); - result = result.replace(/(\w+)Mapper\.deleteById\(/g, 'this.$1Repository.delete('); - result = result.replace(/(\w+)Mapper\.delete\(/g, 'this.$1Repository.delete('); - result = result.replace(/(\w+)Mapper\.selectCount\(/g, 'this.$1Repository.count('); - - // PageResult保持不变(来自@wwjBoot) - // iPage.getTotal() → total - result = result.replace(/(\w+)\.getTotal\(\)/g, 'total'); - result = result.replace(/(\w+)\.getRecords\(\)/g, 'records'); - - this.bootImports.add('PageResult'); - - return result; - } - - /** - * 3. Java工具类 → V1框架工具类 - */ - convertJavaUtils(code) { - let result = code; - - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 【JSON工具】 - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - // JSONUtil.parseObj() → JSON.parse() - result = result.replace(/JSONUtil\.parseObj\(/g, 'JSON.parse('); - - // JSONUtil.toJsonStr() → JSON.stringify() - result = result.replace(/JSONUtil\.toJsonStr\(/g, 'JSON.stringify('); - - // JSONUtil.toBean(json, Class.class) → Object.assign(new Class(), json) - result = result.replace(/JSONUtil\.toBean\(([^,]+),\s*(\w+)\.class\)/g, 'Object.assign(new $2(), $1)'); - - // JsonLoadUtils.loadJsonString(file, name) → JSON.parse(fs.readFileSync(path.join(file, name), 'utf-8')) - if (result.includes('JsonLoadUtils.loadJsonString')) { - result = result.replace(/JsonLoadUtils\.loadJsonString\(([^,]+),\s*([^)]+)\)/g, - 'JSON.parse(fs.readFileSync(path.join($1, $2), \'utf-8\'))'); - this.nodeModules.add('fs'); - this.nodeModules.add('path'); - } - - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 【Bean工具】 - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - // BeanUtils.copyProperties() → Object.assign() - result = result.replace(/BeanUtils\.copyProperties\(([^,]+),\s*([^)]+)\)/g, 'Object.assign($2, $1)'); - - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 【断言工具】 - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - // Assert.notNull(obj, msg) → if (!obj) throw new BadRequestException(msg) - result = result.replace(/Assert\.notNull\(([^,]+),\s*([^)]+)\);?/g, - 'if (!$1) throw new BadRequestException($2);'); - - // Assert.isTrue(condition, msg) → if (!condition) throw new BadRequestException(msg) - result = result.replace(/Assert\.isTrue\(([^,]+),\s*([^)]+)\);?/g, - 'if (!($1)) throw new BadRequestException($2);'); - - this.nestjsImports.add('BadRequestException'); - - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 【文件工具】(已在file.converter.js中处理) - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - // Files.list(Paths.get()) → fs.readdirSync() - if (result.includes('Files.list(Paths.get(')) { - result = result.replace(/Files\.list\(Paths\.get\(([^)]+)\)\)/g, 'fs.readdirSync($1)'); - this.nodeModules.add('fs'); - } - - // Paths.get() → path.join() - result = result.replace(/Paths\.get\(/g, 'path.join('); - if (result.includes('path.join')) { - this.nodeModules.add('path'); - } - - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 【对象工具】 - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - // ObjectUtil.isEmpty() → !obj - result = result.replace(/ObjectUtil\.isEmpty\(([^)]+)\)/g, '!$1'); - - // ObjectUtil.isNotEmpty() → !!obj - result = result.replace(/ObjectUtil\.isNotEmpty\(([^)]+)\)/g, '!!$1'); - - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 【字符串工具】保留StringUtils from wwjBoot - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - // StringUtils保持不变,已在string.converter.js中处理 - if (result.includes('StringUtils.')) { - this.bootImports.add('StringUtils'); - } - - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 【集合工具】保留StringUtils from wwjBoot - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - // CollectionUtil转换为StringUtils (已在collection.converter.js中处理) - // CollectionUtil.isEmpty() → StringUtils.isEmptyArray() - // CollectionUtil.isNotEmpty() → StringUtils.isNotEmptyArray() - - return result; - } - - /** - * 4. Stream API → 数组方法 - */ - convertStreamAPI(code) { - let result = code; - - // list.stream() → 移除 - result = result.replace(/\.stream\(\)/g, ''); - - // .collect(Collectors.toList()) → 移除 - result = result.replace(/\.collect\(Collectors\.toList\(\)\)/g, ''); - - // .filter() / .map() 保持不变(JS原生支持) - - // list.add() → list.push() - result = result.replace(/(\w+)\.add\(/g, '$1.push('); - - // list.size() → list.length - result = result.replace(/(\w+)\.size\(\)/g, '$1.length'); - - // list.isEmpty() → list.length === 0 - result = result.replace(/(\w+)\.isEmpty\(\)/g, '$1.length === 0'); - - // !list.isEmpty() → list.length > 0 - result = result.replace(/!(\w+)\.length === 0/g, '$1.length > 0'); - - return result; - } - - /** - * 5. 异常处理 - */ - convertExceptions(code) { - let result = code; - - // throw new CommonException() → throw new BadRequestException() - result = result.replace(/throw new CommonException\(/g, 'throw new BadRequestException('); - - // throw new AuthException() → throw new UnauthorizedException() - result = result.replace(/throw new AuthException\(/g, 'throw new UnauthorizedException('); - - // catch (Exception e) → catch (e) - // catch (IOException e) → catch (e) - result = result.replace(/catch\s*\(\s*\w+Exception\s+(\w+)\s*\)/g, 'catch ($1)'); - - // e.getMessage() → e.message - result = result.replace(/(\w+)\.getMessage\(\)/g, '$1.message'); - - // e.printStackTrace() → console.error(e) - result = result.replace(/(\w+)\.printStackTrace\(\);?/g, 'console.error($1);'); - - this.nestjsImports.add('BadRequestException'); - this.nestjsImports.add('UnauthorizedException'); - - return result; - } - - /** - * 6. 系统调用 - */ - convertSystemCalls(code) { - let result = code; - - // System.out.println() → console.log() - result = result.replace(/System\.out\.println\(/g, 'console.log('); - - // System.err.println() → console.error() - result = result.replace(/System\.err\.println\(/g, 'console.error('); - - // System.currentTimeMillis() / 1000 → Math.floor(Date.now() / 1000) - result = result.replace(/System\.currentTimeMillis\(\)\s*\/\s*1000/g, 'Math.floor(Date.now() / 1000)'); - - // System.currentTimeMillis() → Date.now() - result = result.replace(/System\.currentTimeMillis\(\)/g, 'Date.now()'); - - return result; - } - - /** - * 获取所有需要导入的模块 - */ - getImports() { - return { - boot: Array.from(this.bootImports), - typeorm: Array.from(this.typeormImports), - nestjs: Array.from(this.nestjsImports), - nodeModules: Array.from(this.nodeModules) - }; - } - - /** - * 重置imports - */ - resetImports() { - this.bootImports.clear(); - this.nodeModules.clear(); - this.typeormImports.clear(); - this.nestjsImports.clear(); - } -} - -module.exports = JavaToV1Mapper; - diff --git a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/mybatis/mapper.converter.js b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/mybatis/mapper.converter.js index c0b7a24f..edf36830 100644 --- a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/mybatis/mapper.converter.js +++ b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/mybatis/mapper.converter.js @@ -1,60 +1,97 @@ /** - * Mapper转换器 + * Mapper调用转换器 * * MyBatis Mapper → TypeORM Repository + * + * 映射关系: + * - xxxMapper.selectPage() → this.xxxRepository.findAndCount() + * - xxxMapper.selectOne() → this.xxxRepository.findOne() + * - xxxMapper.selectList() → this.xxxRepository.find() + * - xxxMapper.insert() → this.xxxRepository.save() + * - xxxMapper.update() → this.xxxRepository.save() + * - xxxMapper.delete() → this.xxxRepository.delete() */ class MapperConverter { /** - * 转换Mapper调用 + * 转换Mapper方法调用 */ - convert(javaCode, context = {}) { + convert(javaCode) { let tsCode = javaCode; - // xxxMapper.selectOne() → this.xxxRepository.findOne() - tsCode = tsCode.replace(/(\w+Mapper)\.selectOne\(/g, (match, mapperName) => { - const repoName = mapperName.replace('Mapper', 'Repository'); - const camelRepoName = this.toCamelCase(repoName); - return `this.${camelRepoName}.findOne(`; - }); + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【Mapper查询方法】→ Repository查询方法 + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // xxxMapper.selectList() → this.xxxRepository.find() - tsCode = tsCode.replace(/(\w+Mapper)\.selectList\(/g, (match, mapperName) => { - const repoName = mapperName.replace('Mapper', 'Repository'); - const camelRepoName = this.toCamelCase(repoName); - return `this.${camelRepoName}.find(`; - }); + // xxxMapper.selectPage(...) → this.xxxRepository.findAndCount(...) + // 注意:参数需要手工调整 + tsCode = tsCode.replace( + /(\w+)Mapper\.selectPage\(([^)]*)\)/g, + 'this.$1Repository.findAndCount({ /* TODO: 将MyBatis分页参数改为TypeORM的skip/take */ })' + ); - // xxxMapper.insert() → this.xxxRepository.save() - tsCode = tsCode.replace(/(\w+Mapper)\.insert\(/g, (match, mapperName) => { - const repoName = mapperName.replace('Mapper', 'Repository'); - const camelRepoName = this.toCamelCase(repoName); - return `this.${camelRepoName}.save(`; - }); + // xxxMapper.selectOne(...) → this.xxxRepository.findOne(...) + tsCode = tsCode.replace( + /(\w+)Mapper\.selectOne\(([^)]*)\)/g, + 'this.$1Repository.findOne({ /* TODO: 将QueryWrapper改为where条件 */ })' + ); - // xxxMapper.update() → this.xxxRepository.save() - tsCode = tsCode.replace(/(\w+Mapper)\.update\(/g, (match, mapperName) => { - const repoName = mapperName.replace('Mapper', 'Repository'); - const camelRepoName = this.toCamelCase(repoName); - return `this.${camelRepoName}.save(`; - }); + // xxxMapper.selectList(...) → this.xxxRepository.find(...) + tsCode = tsCode.replace( + /(\w+)Mapper\.selectList\(([^)]*)\)/g, + 'this.$1Repository.find({ /* TODO: 将QueryWrapper改为where条件 */ })' + ); - // xxxMapper.delete() → this.xxxRepository.delete() - tsCode = tsCode.replace(/(\w+Mapper)\.delete\(/g, (match, mapperName) => { - const repoName = mapperName.replace('Mapper', 'Repository'); - const camelRepoName = this.toCamelCase(repoName); - return `this.${camelRepoName}.delete(`; - }); + // xxxMapper.selectCount(...) → this.xxxRepository.count(...) + tsCode = tsCode.replace( + /(\w+)Mapper\.selectCount\(([^)]*)\)/g, + 'this.$1Repository.count({ /* TODO: 将QueryWrapper改为where条件 */ })' + ); + + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【Mapper修改方法】→ Repository修改方法 + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + // xxxMapper.insert(model) → this.xxxRepository.save(model) + tsCode = tsCode.replace( + /(\w+)Mapper\.insert\(([^)]*)\)/g, + 'this.$1Repository.save($2)' + ); + + // xxxMapper.update(model) → this.xxxRepository.save(model) + tsCode = tsCode.replace( + /(\w+)Mapper\.update\(([^)]*)\)/g, + 'this.$1Repository.save($2)' + ); + + // xxxMapper.delete(...) → this.xxxRepository.delete(...) + tsCode = tsCode.replace( + /(\w+)Mapper\.delete\(([^)]*)\)/g, + 'this.$1Repository.delete({ /* TODO: 将QueryWrapper改为where条件 */ })' + ); + + // xxxMapper.deleteById(id) → this.xxxRepository.delete(id) + tsCode = tsCode.replace( + /(\w+)Mapper\.deleteById\(([^)]*)\)/g, + 'this.$1Repository.delete($2)' + ); return tsCode; } /** - * 转换为camelCase + * 分析需要的imports */ - toCamelCase(str) { - return str.charAt(0).toLowerCase() + str.slice(1); + analyzeImports(tsCode) { + const imports = new Set(); + + // 检查是否使用了Repository + if (tsCode.includes('Repository')) { + imports.add('typeorm:Repository'); + imports.add('typeorm:InjectRepository'); + } + + return Array.from(imports); } } module.exports = MapperConverter; - diff --git a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/mybatis/pagination.converter.js b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/mybatis/pagination.converter.js index ae46f0d7..4dc78723 100644 --- a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/mybatis/pagination.converter.js +++ b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/mybatis/pagination.converter.js @@ -1,30 +1,76 @@ /** - * 分页转换器 + * 分页类转换器 * * MyBatis分页 → TypeORM分页 + * + * 映射关系: + * - IPage → [T[], number] + * - Page → { skip, take } + * - PageResult → PageResult (V1已有) */ class PaginationConverter { /** - * 转换分页 + * 转换分页类 */ convert(javaCode) { let tsCode = javaCode; - // IPage → TODO: 需要手动处理 - tsCode = tsCode.replace(/IPage<(\w+)>/g, '/* TODO: Paginated<$1> */any'); + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【IPage】MyBatis分页结果 → TypeORM返回的元组 + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // new Page(page, limit) → TODO - tsCode = tsCode.replace(/new\s+Page<(\w+)>\(([^,]+),\s*([^)]+)\)/g, '/* TODO: { page: $2, limit: $3 } */'); + // IPage iPage = ... → const [records, total] = await ... + // 注意:这个转换比较复杂,暂时只转换类型声明 + tsCode = tsCode.replace( + /(?:const|let|var)?\s*(\w+):\s*IPage<(\w+)>\s*=/g, + 'const [$1Records, $1Total] = await /* TODO: IPage转TypeORM findAndCount */ ' + ); - // selectPage() → find() with pagination - tsCode = tsCode.replace(/\.selectPage\(/g, '/* TODO: .find() with take/skip */'); + // IPage → [Entity[], number] + tsCode = tsCode.replace(/IPage<(\w+)>/g, '[$1[], number]'); - // PageResult.build() → new PageResult() - tsCode = tsCode.replace(/PageResult\.build\(([^,]+),\s*([^,]+),\s*([^)]+)\)/g, 'new PageResult({ currentPage: $1, perPage: $2, total: $3 })'); + // iPage.getRecords() → iPageRecords + tsCode = tsCode.replace(/(\w+)\.getRecords\(\)/g, '$1Records'); + + // iPage.getTotal() → iPageTotal + tsCode = tsCode.replace(/(\w+)\.getTotal\(\)/g, '$1Total'); + + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【Page】MyBatis分页参数 → TypeORM的skip/take + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + // new Page(page, limit) → { skip: (page-1)*limit, take: limit } + // 注意:这个需要手工调整,暂时标记TODO + tsCode = tsCode.replace( + /new\s+Page<(\w+)>\(([^,]+),\s*([^)]+)\)/g, + '{ skip: ($2 - 1) * $3, take: $3 } /* TODO: Page<$1>分页参数 */' + ); + + // Page → any + tsCode = tsCode.replace(/Page<(\w+)>/g, 'any /* TODO: Page<$1> */'); + + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【PageResult】V1框架已有,保持不变 + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + // PageResult.build() 保持不变,V1框架已实现 return tsCode; } + + /** + * 分析需要的imports + */ + analyzeImports(tsCode) { + const imports = new Set(); + + // 检查是否使用了PageResult + if (tsCode.includes('PageResult')) { + imports.add('boot:PageResult'); // 从@wwjBoot导入 + } + + return Array.from(imports); + } } module.exports = PaginationConverter; - diff --git a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/mybatis/query-wrapper.converter.js b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/mybatis/query-wrapper.converter.js index c1dea1c3..a5aaba79 100644 --- a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/mybatis/query-wrapper.converter.js +++ b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/mybatis/query-wrapper.converter.js @@ -1,33 +1,36 @@ /** * QueryWrapper转换器 * - * MyBatis QueryWrapper → 移除(TypeORM直接使用where对象) + * 策略:MyBatis QueryWrapper → 删除并标记TODO,需手工用TypeORM Repository重写 * - * 策略:QueryWrapper是MyBatis的查询构造器,在TypeORM中直接使用where条件对象即可 + * 重要:不自动转换复杂的查询逻辑,保留业务完整性 */ class QueryWrapperConverter { /** - * 转换QueryWrapper + * 转换QueryWrapper声明和使用 */ convert(javaCode) { let tsCode = javaCode; // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 【策略】直接移除QueryWrapper相关代码,简化为where条件 + // 【删除QueryWrapper,保留业务逻辑作为TODO注释】 // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 1. 移除QueryWrapper类型声明 - // QueryWrapper → 删除 - tsCode = tsCode.replace(/QueryWrapper<[^>]+>\s*/g, ''); + // QueryWrapper queryWrapper = new QueryWrapper<>(); + // → // TODO: 将QueryWrapper查询改写为TypeORM Repository.find() + tsCode = tsCode.replace( + /(?:const|let|var)?\s*(\w+):\s*QueryWrapper<(\w+)>\s*=\s*new\s+QueryWrapper<>?\(\);?/g, + '// TODO: $1查询需用TypeORM Repository.find()重写 (查询$2实体)' + ); - // 2. 移除new QueryWrapper<>() - // new QueryWrapper<>() → {} - // new QueryWrapper() → {} - tsCode = tsCode.replace(/new\s+QueryWrapper<[^>]*>\(\)/g, '{}'); + // new QueryWrapper() → /* TODO: TypeORM where条件 */ + tsCode = tsCode.replace( + /new\s+QueryWrapper<(\w+)>\(\)/g, + '/* TODO: QueryWrapper<$1>需改写为TypeORM的where条件对象 */' + ); - // 3. 简化链式调用 - // queryWrapper.eq("field", value) → 保留但简化处理 - // 实际在mapper.converter.js中会将整个查询转换为TypeORM findOne/find + // QueryWrapper → any (类型占位) + tsCode = tsCode.replace(/QueryWrapper<(\w+)>/g, 'any /* TODO: QueryWrapper<$1> */'); return tsCode; } @@ -36,9 +39,10 @@ class QueryWrapperConverter { * 分析需要的imports */ analyzeImports(tsCode) { - // QueryWrapper不需要额外import + // QueryWrapper转换后不需要额外的import,都是TODO标记 return []; } } module.exports = QueryWrapperConverter; + diff --git a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/service-method-converter.js b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/service-method-converter.js index 9a85f8c1..054712e6 100644 --- a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/service-method-converter.js +++ b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/service-method-converter.js @@ -10,29 +10,49 @@ * 4. 分析需要的imports */ -// 导入全局映射器(新) -const JavaToV1Mapper = require('./java-to-v1-mapper'); - -// 导入各个转换器(保留用于特定场景) +// 导入各个转换器 const BasicSyntaxConverter = require('./syntax/basic-syntax.converter'); +const TypeConverter = require('./syntax/type.converter'); +const ExceptionConverter = require('./syntax/exception.converter'); + const ConfigConverter = require('./utils/config.converter'); const FileConverter = require('./utils/file.converter'); const StringConverter = require('./utils/string.converter'); const CollectionConverter = require('./utils/collection.converter'); +const JsonConverter = require('./utils/json.converter'); +const ObjectConverter = require('./utils/object.converter'); + +const QueryWrapperConverter = require('./mybatis/query-wrapper.converter'); +const MapperConverter = require('./mybatis/mapper.converter'); +const PaginationConverter = require('./mybatis/pagination.converter'); + +const GetterSetterConverter = require('./method/getter-setter.converter'); +const MethodCallConverter = require('./method/method-call.converter'); +const StreamApiConverter = require('./method/stream-api.converter'); const PostProcessor = require('./post-processor'); class ServiceMethodConverter { constructor() { - // 初始化全局映射器(优先使用) - this.v1Mapper = new JavaToV1Mapper(); - - // 初始化特定转换器(用于特殊场景) + // 初始化所有转换器 this.basicSyntax = new BasicSyntaxConverter(); + this.type = new TypeConverter(); + this.exception = new ExceptionConverter(); + this.config = new ConfigConverter(); this.file = new FileConverter(); this.string = new StringConverter(); this.collection = new CollectionConverter(); + this.json = new JsonConverter(); + this.object = new ObjectConverter(); + + this.queryWrapper = new QueryWrapperConverter(); + this.mapper = new MapperConverter(); + this.pagination = new PaginationConverter(); + + this.getterSetter = new GetterSetterConverter(); + this.methodCall = new MethodCallConverter(); + this.streamApi = new StreamApiConverter(); this.postProcessor = new PostProcessor(); } @@ -52,26 +72,52 @@ class ServiceMethodConverter { let tsBody = javaMethodBody; // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 【核心转换】使用全局映射器(Java → V1框架) + // 【阶段1】基础语法转换 // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - this.v1Mapper.resetImports(); - tsBody = this.v1Mapper.convert(tsBody); + tsBody = this.basicSyntax.convert(tsBody); // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 【补充转换】特定场景处理 + // 【阶段2】类型转换 // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - tsBody = this.basicSyntax.convert(tsBody); // Lambda、for-each等语法 - tsBody = this.config.convert(tsBody); // WebAppEnvs/GlobalConfig → AppConfigService - tsBody = this.file.convert(tsBody); // 文件操作补充转换 - tsBody = this.string.convert(tsBody); // String工具补充 - tsBody = this.collection.convert(tsBody); // Collection工具补充 + tsBody = this.type.convert(tsBody); // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 【后处理】清理与格式化 + // 【阶段3】工具类转换 + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + tsBody = this.config.convert(tsBody); + tsBody = this.file.convert(tsBody); + tsBody = this.string.convert(tsBody); + tsBody = this.collection.convert(tsBody); + tsBody = this.json.convert(tsBody); + tsBody = this.object.convert(tsBody); + + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【阶段4】MyBatis → TypeORM转换 + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + tsBody = this.queryWrapper.convert(tsBody); + tsBody = this.mapper.convert(tsBody, context); + tsBody = this.pagination.convert(tsBody); + + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【阶段5】方法调用转换 + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + tsBody = this.streamApi.convert(tsBody); + tsBody = this.methodCall.convert(tsBody); + tsBody = this.getterSetter.convert(tsBody); // 最后转换getter/setter + + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【阶段6】异常处理转换 + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + tsBody = this.exception.convert(tsBody); + + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【阶段7】后处理清理 // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ tsBody = this.postProcessor.process(tsBody); - // 添加缩进 + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【阶段8】添加缩进 + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ tsBody = tsBody.split('\n').map(line => ' ' + line).join('\n'); return tsBody; @@ -84,42 +130,49 @@ class ServiceMethodConverter { * @returns {object} 需要导入的模块 */ analyzeImports(convertedBody) { - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 【核心】从全局映射器获取imports - // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - const v1Imports = this.v1Mapper.getImports(); - const imports = { - nestjs: new Set(v1Imports.nestjs), - boot: new Set(v1Imports.boot), - typeorm: new Set(v1Imports.typeorm), - nodeModules: new Set(v1Imports.nodeModules) + nestjs: new Set(), + boot: new Set(), + nodeModules: new Set() }; // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 【补充】从特定转换器获取额外imports + // 【NestJS异常】 + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + const nestjsImports = this.exception.analyzeImports(convertedBody); + nestjsImports.forEach(imp => imports.nestjs.add(imp)); + + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【Node.js模块】 + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + const nodeModules = this.file.analyzeNodeModules(convertedBody); + nodeModules.forEach(mod => imports.nodeModules.add(mod)); + + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【Boot层工具类】 // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // AppConfigService (from config.converter.js) - const configImports = this.config.analyzeImports(convertedBody); - configImports.forEach(imp => imports.boot.add(imp)); - - // StringUtils (from string.converter.js) + // StringUtils const stringImports = this.string.analyzeImports(convertedBody); stringImports.forEach(imp => imports.boot.add(imp)); - // Collection utils (from collection.converter.js) + // Collection判空(可能需要StringUtils) const collectionImports = this.collection.analyzeImports(convertedBody); collectionImports.forEach(imp => imports.boot.add(imp)); - // Node modules (from file.converter.js) - const nodeModules = this.file.analyzeNodeModules(convertedBody); - nodeModules.forEach(mod => imports.nodeModules.add(mod)); + // JsonUtils + const jsonImports = this.json.analyzeImports(convertedBody); + jsonImports.forEach(imp => imports.boot.add(imp)); + + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【配置访问】AppConfigService (Boot层) + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + const configImports = this.config.analyzeImports(convertedBody); + configImports.forEach(imp => imports.boot.add(imp)); return { nestjs: Array.from(imports.nestjs), boot: Array.from(imports.boot), - typeorm: Array.from(imports.typeorm), nodeModules: Array.from(imports.nodeModules) }; } diff --git a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/utils/json.converter.js b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/utils/json.converter.js index b0126eaf..dbe37643 100644 --- a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/utils/json.converter.js +++ b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/utils/json.converter.js @@ -1,24 +1,55 @@ /** - * JSON工具类转换器 + * JSON工具转换器 * - * JSONUtil / JSON相关 → Boot层JsonUtils或TypeScript JSON + * Java JSON utils → V1 JsonUtils (from @wwjBoot) + * + * 映射关系(参考JAVA_TO_V1_MAPPING.md): + * - JSONUtil.parseObj(str) → JsonUtils.parseObject(str) + * - JSONUtil.toBean(json, Class) → Object.assign(new Class(), json) + * - JSONObject → Record + * - JsonLoadUtils.loadJsonString(file, name) → JsonUtils.parseObject(fs.readFileSync(...)) */ class JsonConverter { /** - * 转换JSON工具类 + * 转换JSON工具 */ convert(javaCode) { let tsCode = javaCode; - // 1. JSONUtil.parseObj() → JSON.parse() (简单内联) - tsCode = tsCode.replace(/JSONUtil\.parseObj\(([^)]+)\)/g, 'JSON.parse($1)'); - - // 2. ✅ JSONUtil.toBean() → 暂时保留TODO(需要手动处理泛型转换) - tsCode = tsCode.replace(/JSONUtil\.toBean\(([^,]+),\s*([^)]+)\.class\)/g, '/* TODO: JSONUtil.toBean($1, $2) */Object.assign(new $2(), JSON.parse(JSON.stringify($1)))'); + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【JSONUtil】→ JsonUtils (@wwjBoot) + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 3. JSONObject → Record (TypeScript标准) + // JSONUtil.parseObj(str) → JsonUtils.parseObject(str) + tsCode = tsCode.replace( + /JSONUtil\.parseObj\(([^)]+)\)/g, + 'JsonUtils.parseObject($1)' + ); + + // JSONUtil.toBean(json, SomeClass.class) → Object.assign(new SomeClass(), json) + tsCode = tsCode.replace( + /JSONUtil\.toBean\(([^,]+),\s*(\w+)\.class\)/g, + 'Object.assign(new $2(), $1) /* TODO: 检查$2构造函数 */' + ); + + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【JSONObject】→ Record + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + // JSONObject → Record tsCode = tsCode.replace(/JSONObject/g, 'Record'); + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【JsonLoadUtils】→ fs + JsonUtils + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + // JsonLoadUtils.loadJsonString(file, "info.json") + // → JsonUtils.parseObject(fs.readFileSync(path.join(file, "info.json"), 'utf-8')) + tsCode = tsCode.replace( + /JsonLoadUtils\.loadJsonString\(([^,]+),\s*([^)]+)\)/g, + 'JsonUtils.parseObject(fs.readFileSync(path.join($1, $2), \'utf-8\'))' + ); + return tsCode; } @@ -28,9 +59,9 @@ class JsonConverter { analyzeImports(tsCode) { const imports = new Set(); - // 检查是否使用了JsonUtils(暂时未直接使用,未来可能需要) - if (tsCode.includes('JsonUtils.')) { - imports.add('JsonUtils'); + // 检查是否使用了JsonUtils + if (tsCode.includes('JsonUtils')) { + imports.add('JsonUtils'); // 从@wwjBoot/vendor/utils导入 } return Array.from(imports); @@ -38,4 +69,3 @@ class JsonConverter { } module.exports = JsonConverter; - diff --git a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/utils/object.converter.js b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/utils/object.converter.js index 0986dfe1..53e2ad3b 100644 --- a/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/utils/object.converter.js +++ b/wwjcloud-nest-v1/tools/java-to-nestjs-migration/converters/utils/object.converter.js @@ -1,38 +1,113 @@ /** - * 对象工具类转换器 + * Object工具转换器 * - * ObjectUtil / BeanUtils等 → TypeScript对象操作 + * Java Object utils → V1 CommonUtils (from @wwjBoot) + * + * 映射关系(参考JAVA_TO_V1_MAPPING.md): + * - ObjectUtil.isNotEmpty(obj) → CommonUtils.isNotEmpty(obj) + * - ObjectUtil.isEmpty(obj) → CommonUtils.isEmpty(obj) + * - BeanUtils.copyProperties(src, dest) → Object.assign(dest, src) + * - Assert.notNull(obj, msg) → if (!obj) throw new BadRequestException(msg) + * - Assert.isTrue(bool, msg) → if (!bool) throw new BadRequestException(msg) */ class ObjectConverter { /** - * 转换对象工具类 + * 转换Object工具 */ convert(javaCode) { let tsCode = javaCode; - // 1. ObjectUtil.isNotEmpty() → value && ... - tsCode = tsCode.replace(/ObjectUtil\.isNotEmpty\(([^)]+)\)/g, '($1 && Object.keys($1).length > 0)'); - tsCode = tsCode.replace(/ObjectUtil\.isEmpty\(([^)]+)\)/g, '(!$1 || Object.keys($1).length === 0)'); + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【ObjectUtil】→ CommonUtils (@wwjBoot) + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - // 2. ObjectUtil.defaultIfNull(a, b) → a ?? b - tsCode = tsCode.replace(/ObjectUtil\.defaultIfNull\(([^,]+),\s*([^)]+)\)/g, '$1 ?? $2'); + // ObjectUtil.isNotEmpty(obj) → CommonUtils.isNotEmpty(obj) + tsCode = tsCode.replace( + /ObjectUtil\.isNotEmpty\(([^)]+)\)/g, + 'CommonUtils.isNotEmpty($1)' + ); - // 3. BeanUtils.copyProperties(src, dest) → Object.assign(dest, src) - tsCode = tsCode.replace(/BeanUtils\.copyProperties\(([^,]+),\s*([^)]+)\)/g, 'Object.assign($2, $1)'); + // ObjectUtil.isEmpty(obj) → CommonUtils.isEmpty(obj) + tsCode = tsCode.replace( + /ObjectUtil\.isEmpty\(([^)]+)\)/g, + 'CommonUtils.isEmpty($1)' + ); - // 4. System.out.println() → console.log() - tsCode = tsCode.replace(/System\.out\.println\(/g, 'console.log('); - tsCode = tsCode.replace(/System\.err\.println\(/g, 'console.error('); + // ObjectUtils.isNotEmpty(obj) → CommonUtils.isNotEmpty(obj) + tsCode = tsCode.replace( + /ObjectUtils\.isNotEmpty\(([^)]+)\)/g, + 'CommonUtils.isNotEmpty($1)' + ); - // 5. System.currentTimeMillis() → Date.now() - tsCode = tsCode.replace(/System\.currentTimeMillis\(\)/g, 'Date.now()'); + // ObjectUtils.isEmpty(obj) → CommonUtils.isEmpty(obj) + tsCode = tsCode.replace( + /ObjectUtils\.isEmpty\(([^)]+)\)/g, + 'CommonUtils.isEmpty($1)' + ); - // 6. Assert.notNull() → if (!x) throw new Error() - tsCode = tsCode.replace(/Assert\.notNull\(([^,]+),\s*([^)]+)\)/g, 'if (!$1) throw new BadRequestException($2)'); + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【BeanUtils】→ Object.assign (TypeScript 原生) + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + // BeanUtils.copyProperties(src, dest) → Object.assign(dest, src) + tsCode = tsCode.replace( + /BeanUtils\.copyProperties\(([^,]+),\s*([^)]+)\)/g, + 'Object.assign($2, $1)' + ); + + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【Assert】→ if + throw BadRequestException + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + // Assert.notNull(obj, "msg") → if (!obj) throw new BadRequestException("msg") + tsCode = tsCode.replace( + /Assert\.notNull\(([^,]+),\s*([^)]+)\);?/g, + 'if (!$1) throw new BadRequestException($2);' + ); + + // Assert.isTrue(condition, "msg") → if (!condition) throw new BadRequestException("msg") + tsCode = tsCode.replace( + /Assert\.isTrue\(([^,]+),\s*([^)]+)\);?/g, + 'if (!($1)) throw new BadRequestException($2);' + ); + + // Assert.isFalse(condition, "msg") → if (condition) throw new BadRequestException("msg") + tsCode = tsCode.replace( + /Assert\.isFalse\(([^,]+),\s*([^)]+)\);?/g, + 'if ($1) throw new BadRequestException($2);' + ); + + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + // 【ImageUtils】→ fs.readFileSync (Node.js 原生) + // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + // ImageUtils.imageToBase64(path) → fs.readFileSync(path, 'base64') + tsCode = tsCode.replace( + /ImageUtils\.imageToBase64\(([^)]+)\)/g, + 'fs.readFileSync($1, \'base64\')' + ); return tsCode; } + + /** + * 分析需要的imports + */ + analyzeImports(tsCode) { + const imports = new Set(); + + // 检查是否使用了CommonUtils + if (tsCode.includes('CommonUtils')) { + imports.add('CommonUtils'); // 从@wwjBoot导入 + } + + // 检查是否使用了BadRequestException + if (tsCode.includes('BadRequestException')) { + imports.add('nestjs:BadRequestException'); + } + + return Array.from(imports); + } } module.exports = ObjectConverter; - diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-develop-build-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-develop-build-service-impl.service.ts index bf87f7df..176ec258 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-develop-build-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-develop-build-service-impl.service.ts @@ -1,14 +1,13 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as fs from 'fs'; import * as path from 'path'; @Injectable() export class AddonDevelopBuildServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -16,21 +15,21 @@ export class AddonDevelopBuildServiceImplService { * build */ async build(...args: any[]): Promise { - if (this.config.get('runActive') !== "dev") throw new BadRequestException("只有在开发环境下才可以进行打包操作"); + if (this.appConfig.runActive !== "dev") throw new BadRequestException("只有在开发环境下才可以进行打包操作"); - if (!fs.existsSync(this.config.get('projectNiucloudAddon' + addon))) throw new BadRequestException("插件不存在"); - const infoFile: string = this.config.get('projectNiucloudAddon' + addon + "/src/main/resources/info.json"); + if (!this.appConfig.projectNiucloudAddon + fs.existsSync(addon)) throw new BadRequestException("插件不存在"); + const infoFile: string = this.appConfig.projectNiucloudAddon + addon + "/src/main/resources/info.json"; if (!fs.existsSync(infoFile)) throw new BadRequestException("插件不存在"); this.addon = addon; - this.addonPath = this.config.get('webRootDownAddon') + addon + "/"; + this.addonPath = this.appConfig.webRootDownAddon + addon + "/"; try { for (const child of fs.readdirSync(addonPath)) { if (fs.lstatSync(child).isDirectory() && path.basename(child) !== "sql") fs.rmSync(child, { recursive: true, force: true }); } fs.copyFileSync(infoFile, this.addonPath + "info.json"); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } @@ -52,8 +51,8 @@ export class AddonDevelopBuildServiceImplService { * download */ async download(...args: any[]): Promise { - const file: string = this.config.get('webRootDownResource' + "temp/" + key + ".zip"); + const file: string = this.appConfig.webRootDownResource + "temp/" + key + ".zip"; if (!fs.existsSync(file)) throw new BadRequestException("请先打包插件"); - return file.replace(this.config.get('projectRoot'), ""); + return file.replace(this.appConfig.projectRoot, ""); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-develop-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-develop-service-impl.service.ts index 3589a56d..61250c7b 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-develop-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-develop-service-impl.service.ts @@ -1,14 +1,13 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as fs from 'fs'; import * as path from 'path'; @Injectable() export class AddonDevelopServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -16,35 +15,35 @@ export class AddonDevelopServiceImplService { * list */ async list(...args: any[]): Promise { - const list: AddonDevelopListVo[] = []; + AddonDevelopListVo[] list = []; try { // 获取已安装的插件 - const installAddonList: Record = coreAddonService.getInstallAddonList(); + const installAddonList: Record = coreAddonService.getInstallAddonList(); // 获取本地所有的插件 - const localAddons: string[] = Files.list(Paths.get(this.config.get('webRootDownAddon'))) + File[] localAddons = Files.list(path.join(this.appConfig.webRootDownAddon)) .map(path => path.toFile()) .filter(file => fs.lstatSync(file).isDirectory()) - .collect(Collectors.toList()); + ; for (const file of localAddons) { - if (file, "info.json".exists()) { - const info: Record = JSONUtil.parseObj(JsonLoadUtils.loadJsonString(file, "info.json")); + if (fs.existsSync(path.join(file, "info.json"))) { + const info: Record = JSON.parse(JSON.parse(fs.readFileSync(path.join(file, "info.json", 'utf-8')))); const addon: string = info.getStr("key"); - const addonDevelopListVo: AddonDevelopListVo = JSONUtil.toBean(info, AddonDevelopListVo.class); + const addonDevelopListVo: AddonDevelopListVo = Object.assign(new AddonDevelopListVo(), info); if (installAddonList.get(addon) != null) addonDevelopListVo.setInstallInfo(installAddonList.get(addon)); addonDevelopListVo.setIcon(ImageUtils.imageToBase64(file + "/resource/icon.png")); addonDevelopListVo.setCover(ImageUtils.imageToBase64(file + "/resource/cover.png")); - list.add(addonDevelopListVo); + list.push(addonDevelopListVo); } } - if (ObjectUtil.isNotEmpty(searchParam.getSearch()) && list.size() > 0) { - list = list.stream().filter(addonDevelopListVo => addonDevelopListVo.getTitle().includes(searchParam.getSearch())).toList(); + if (!!searchParam.getSearch() && list.length > 0) { + list = list.filter(addonDevelopListVo => addonDevelopListVo.getTitle().includes(searchParam.getSearch())).toList(); } - } catch (IOException e) { - e.printStackTrace(); + } catch (e) { + console.error(e); } return list; @@ -54,11 +53,11 @@ export class AddonDevelopServiceImplService { * info */ async info(...args: any[]): Promise { - const infoFile: string = this.config.get('webRootDownAddon' + key + "/info.json"); + const infoFile: string = this.appConfig.webRootDownAddon + key + "/info.json"; if (!fs.existsSync(infoFile)) return null; - const info: Record = JSONUtil.parseObj(JsonLoadUtils.loadJsonString(infoFile)); - const addonDevelopInfoVo: AddonDevelopInfoVo = JSONUtil.toBean(info, AddonDevelopInfoVo.class); + const info: Record = JSON.parse(JSON.parse(fs.readFileSync(path.join(infoFile)); + const addonDevelopInfoVo: AddonDevelopInfoVo = Object.assign(new AddonDevelopInfoVo(), info), 'utf-8')); return addonDevelopInfoVo; } @@ -67,7 +66,7 @@ export class AddonDevelopServiceImplService { * add */ async add(...args: any[]): Promise { - const infoFile: string = this.config.get('webRootDownAddon' + param.getKey() + "/info.json"); + const infoFile: string = this.appConfig.webRootDownAddon + param.getKey( + "/info.json"); if (fs.existsSync(infoFile)) throw new BadRequestException("已存在相同插件标识的应用"); this.generateFile(param); @@ -77,7 +76,7 @@ export class AddonDevelopServiceImplService { * edit */ async edit(...args: any[]): Promise { - const infoFile: string = this.config.get('webRootDownAddon' + param.getKey() + "/info.json"); + const infoFile: string = this.appConfig.webRootDownAddon + param.getKey( + "/info.json"); if (!fs.existsSync(infoFile)) throw new BadRequestException("插件不存在"); this.generateFile(param); @@ -100,16 +99,16 @@ export class AddonDevelopServiceImplService { * del */ async del(...args: any[]): Promise { - const infoFile: string = this.config.get('webRootDownAddon' + key + "/info.json"); + const infoFile: string = this.appConfig.webRootDownAddon + key + "/info.json"; if (!fs.existsSync(infoFile)) throw new BadRequestException("插件不存在"); const addon: Addon = coreAddonService.getInfoByKey(key); if (addon != null) throw new BadRequestException("已安装的插件不允许删除"); try { - fs.rmSync(this.config.get('webRootDownAddon', { recursive: true, force: true } + key)); - } catch (e) { - e.printStackTrace(); + fs.rmSync(this.appConfig.webRootDownAddon + key, { recursive: true, force: true }); + } catch (Exception e) { + console.error(e); } } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-log-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-log-service-impl.service.ts index 817b260c..a851d086 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-log-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-log-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -16,33 +16,33 @@ export class AddonLogServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("id"); - const iPage: IPage = addonLogMapper.selectPage(new Page(page, limit), queryWrapper); + iPage = this.addonLogRepository.findAndCount({ /* pagination */ }, queryWrapper); - const list: AddonLogListVo[] = []; - for (const item of iPage.getRecords()) { + AddonLogListVo[] list = []; + for (const item of records) { const vo: AddonLogListVo = new AddonLogListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page,limit, iPage.getTotal()).setData(list); + return PageResult.build(page,limit, total).setData(list); } /** * detail */ async detail(...args: any[]): Promise { - const model: AddonLog = addonLogMapper.selectOne( - new QueryWrapper() + const model: AddonLog = this.addonLogRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: AddonLogInfoVo = new AddonLogInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -55,21 +55,21 @@ export class AddonLogServiceImplService { model.setKey(AddonLogParam.getKey()); model.setFromVersion(AddonLogParam.getFromVersion()); model.setToVersion(AddonLogParam.getToVersion()); - model.setCreateTime(System.currentTimeMillis() / 1000); - addonLogMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.addonLogRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - const model: AddonLog = addonLogMapper.selectOne( - new QueryWrapper() + const model: AddonLog = this.addonLogRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); - addonLogMapper.delete(new QueryWrapper().eq("id", id)); + this.addonLogRepository.delete(new ().eq("id", id)); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-service-impl.service.ts index bc71b319..4db8eca8 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/addon/impl/addon-service-impl.service.ts @@ -1,14 +1,13 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as fs from 'fs'; import * as path from 'path'; @Injectable() export class AddonServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -18,13 +17,13 @@ export class AddonServiceImplService { async getLocalAddonList(...args: any[]): Promise { const vo: LocalAddonListVo = new LocalAddonListVo(); - const list: Record = {}; + const list: Record = new HashRecord<>(); // 获取已安装的插件 const installAddonList: Record = iCoreAddonService.getInstallAddonList(); try { - const moduleList: ModuleListVo[] = niucloudService.getModuleList(); + ModuleListVo[] moduleList = niucloudService.getModuleList(); for (const item of moduleList) { ModuleListVo.const app: App = item.getApp(); @@ -43,14 +42,14 @@ export class AddonServiceImplService { } // 获取本地所有的插件 - const localAddons: string[] = Files.list(Paths.get(this.config.get('webRootDownAddon'))) + File[] localAddons = Files.list(path.join(this.appConfig.webRootDownAddon)) .map(path => path.toFile()) .filter(file => fs.lstatSync(file).isDirectory()) - .collect(Collectors.toList()); + ; for (const file of localAddons) { - if (file, "info.json".exists()) { - const info: Record = JSONUtil.parseObj(JsonLoadUtils.loadJsonString(file, "info.json")); + if (fs.existsSync(path.join(file, "info.json"))) { + const info: Record = JSON.parse(JSON.parse(fs.readFileSync(path.join(file, "info.json", 'utf-8')))); const addon: string = info.getStr("key"); if (list.get(addon) != null) { const addonInfoVo: LocalAddonInfoVo = list.get(addon); @@ -61,7 +60,7 @@ export class AddonServiceImplService { } list.put(addon, addonInfoVo); } else { - const localAddonInfoVo: LocalAddonInfoVo = JSONUtil.toBean(info, LocalAddonInfoVo.class); + const localAddonInfoVo: LocalAddonInfoVo = Object.assign(new LocalAddonInfoVo(), info); localAddonInfoVo.setIsLocal(true); localAddonInfoVo.setIsDownload(true); if (installAddonList.get(addon) != null) @@ -72,8 +71,8 @@ export class AddonServiceImplService { } } } - } catch (IOException e) { - e.printStackTrace(); + } catch (e) { + console.error(e); vo.setError(e.message); } @@ -88,31 +87,31 @@ export class AddonServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("id"); - const iPage: IPage = addonMapper.selectPage(new Page(page, limit), queryWrapper); - const list: AddonListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.addonRepository.findAndCount({ /* pagination */ }, queryWrapper); + AddonListVo[] list = []; + for (const item of records) { const vo: AddonListVo = new AddonListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * info */ async info(...args: any[]): Promise { - const model: Addon = addonMapper.selectOne( - new QueryWrapper() + const model: Addon = this.addonRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: AddonInfoVo = new AddonInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -122,23 +121,23 @@ export class AddonServiceImplService { async add(...args: any[]): Promise { const model: Addon = new Addon(); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setInstallTime(addonParam.getInstallTime()); - model.setUpdateTime(System.currentTimeMillis() / 1000); + model.setUpdateTime(Math.floor(Date.now() / 1000)); model.setCover(addonParam.getCover()); model.setType(addonParam.getType()); model.setSupportApp(addonParam.getSupportApp()); model.setIsStar(addonParam.getIsStar()); model.setCompile(String.join(",", addonParam.getCompile())); // BeanUtil.copyProperties(sysPositionEditParam, sysPosition); - addonMapper.insert(model); + this.addonRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - addonMapper.delete(new QueryWrapper().eq("id", id)); + this.addonRepository.delete(new ().eq("id", id)); } /** @@ -189,9 +188,9 @@ export class AddonServiceImplService { async getTitleListByKey(...args: any[]): Promise { const jsonKey: JSONArray = JSONUtil.parseArray(keys); const jsonArray: JSONArray = new JSONArray(); - if(jsonKey.size()>0){ - const keyList: string[] = jsonKey.toList(String.class); - const addonList: Addon[] = addonMapper.selectList(new QueryWrapper().in("`key`", keyList)); + if(jsonKey.length>0){ + String[] keyList=jsonKey.toList(String.class); + Addon[] addonList=this.addonRepository.find(new ().in("`key`", keyList)); for (const addon of addonList) { jsonArray.put(addon.getTitle()); } @@ -205,14 +204,14 @@ export class AddonServiceImplService { async getAddonListByKeys(...args: any[]): Promise { return cached.rememberObject(useCache, cacheTagName, Arrays.asList("getAddonListByKeys", addonKeys, type), uniqueKey => { - const query: QueryWrapper = new QueryWrapper<>(); + query = {}; if(type === "") { query.in("`key`", addonKeys); }else{ query.in("`key`", addonKeys).eq("type", type); } - return addonMapper.selectList(query); + return this.addonRepository.find(query); }); } @@ -222,7 +221,7 @@ export class AddonServiceImplService { async download(...args: any[]): Promise { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const actionQuery: Record = {}; + const actionQuery: Record = new HashRecord<>(); actionQuery.put("data[app_key]", addon); actionQuery.put("data[version]", version); actionQuery.put("data[product_key]", instance.getProductKey()); @@ -238,7 +237,7 @@ export class AddonServiceImplService { const totalLength: string = headResponse.header("Content-range"); const length: string = totalLength.split("/")[1]; - const downloadDir: string = this.config.get('webRootDownResource') + "download/"; + const downloadDir: string = this.appConfig.webRootDownResource + "download/"; FileTools.createDirs(downloadDir); const file: string = downloadDir + addon + ".zip"; @@ -248,9 +247,9 @@ export class AddonServiceImplService { try (const fos: FileOutputStream = new FileOutputStream(file)) { fos.write(response.bodyBytes()); - ZipUtil.unzip(file, this.config.get('webRootDownAddon'), Charset.forName(System.getProperty("sun.jnu.encoding"))); - } catch (e) { - e.printStackTrace(); + ZipUtil.unzip(file, this.appConfig.webRootDownAddon, Charset.forName(System.getProperty("sun.jnu.encoding"))); + } catch (Exception e) { + console.error(e); throw new BadRequestException(e.message); } } @@ -259,7 +258,7 @@ export class AddonServiceImplService { * getIndexAddonList */ async getIndexAddonList(...args: any[]): Promise { - const params: Record = {}; + const params: Record = {}; const config: NiucloudConfigVo = coreNiucloudConfigService.getNiucloudConfig(); params.put("code", config.getAuthCode()); params.put("secret", config.getAuthSecret()); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/auth/impl/auth-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/auth/impl/auth-service-impl.service.ts index 602af7f8..703b2cd1 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/auth/impl/auth-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/auth/impl/auth-service-impl.service.ts @@ -1,13 +1,12 @@ import { Injectable, BadRequestException, UnauthorizedException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as path from 'path'; @Injectable() export class AuthServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -43,11 +42,11 @@ export class AuthServiceImplService { async isSuperAdmin(...args: any[]): Promise { const siteId: number = RequestUtils.defaultSiteId(); const uid: number = RequestUtils.uid(); - const superAdminUid: number = cached.tag("adminAuth").get("superAdminUid"); - if (ObjectUtil.isNotNull(superAdminUid) && ObjectUtil.isNotEmpty(superAdminUid) && superAdminUid > 0) { + const superAdminUid: number = (number) cached.tag("adminAuth").get("superAdminUid"); + if (ObjectUtil.isNotNull(superAdminUid) && !!superAdminUid && superAdminUid > 0) { return superAdminUid === uid; } else { - const sysUserRole: SysUserRole = sysUserRoleMapper.selectOne(new QueryWrapper().eq("site_id", siteId).eq("is_admin", 1).last(" limit 1")); + const sysUserRole: SysUserRole = this.sysUserRoleRepository.findOne(new ().eq("site_id", siteId).eq("is_admin", 1).last(" limit 1")); cached.tag("adminAuth").put("superAdminUid", sysUserRole.getUid()); return sysUserRole.getUid() === uid; } @@ -72,20 +71,20 @@ export class AuthServiceImplService { } } - const allMenuList: Record = sysMenuService.getAllApiList(RequestUtils.appType(), 100); - const menulist: string[] = allMenuList.get(method); + Record allMenuList = sysMenuService.getAllApiList(RequestUtils.appType(), 100); + String[] menulist = allMenuList.get(method); const is_exists: number = menulist.indexOf(rule); //判断当前访问的接口是否收到权限的限制 if (is_exists < 0) { - const otherMenuList: Record = sysMenuService.getAllApiList(RequestUtils.appType() === AppTypeEnum.path.basename(ADMIN) ? AppTypeEnum.path.basename(SITE) : AppTypeEnum.path.basename(ADMIN), 100); - const methodMenuList: string[] = otherMenuList.get(method); + Record otherMenuList = sysMenuService.getAllApiList(RequestUtils.appType() === AppTypeEnum.path.basename(ADMIN) ? AppTypeEnum.path.basename(SITE) : AppTypeEnum.path.basename(ADMIN), 100); + String[] methodMenuList = otherMenuList.get(method); const is_method_exists: number = methodMenuList.indexOf(rule); if (is_method_exists > 0) { throw new UnauthorizedException("NO_PERMISSION", 400); } } - const roleMenuList: Record = this.getAuthApiList(); + Record roleMenuList = this.getAuthApiList(); /*if(roleMenuList.get(method).size()<=0 || roleMenuList.get(method).indexOf(rule)<=0){ throw new UnauthorizedException("NO_PERMISSION"); }*/ @@ -97,7 +96,7 @@ export class AuthServiceImplService { async checkIsDemo(...args: any[]): Promise { const method: string = RequestUtils.getRequestMethod(); - if (method !== "get" && this.config.get('isDemo')) { + if (method !== "get" && this.appConfig.isDemo) { throw new BadRequestException("演示环境不允许操作"); } } @@ -110,9 +109,9 @@ export class AuthServiceImplService { const siteId: number = RequestUtils.siteId(); const uid: number = RequestUtils.uid(); const appType: string = RequestUtils.appType(); - const authApi: Record = {}; + Record authApi = new HashRecord<>(); const sysUserRoleInfoVo: SysUserRoleInfoVo = new SysUserRoleInfoVo(); - const menuList: SysMenu[] = []; + SysMenu[] menuList = []; if (isSuperAdmin()) { isAdmin = 1; } else { @@ -125,8 +124,8 @@ export class AuthServiceImplService { if (isAdmin > 0) { menuList = sysMenuService.getMenuListByCondition(appType, siteId, 1, 0, [], addon); } else { - const roleIdList: string[] = JSONUtil.toList(JSONUtil.parseArray(sysUserRoleInfoVo.getRoleIds()), String.class); - const menuKeyList: string[] = sysRoleService.getMenuIdsByRoleIds(siteId, roleIdList); + String[] roleIdList = JSONUtil.toList(JSONUtil.parseArray(sysUserRoleInfoVo.getRoleIds()), String.class); + String[] menuKeyList = sysRoleService.getMenuIdsByRoleIds(siteId, roleIdList); menuList = sysMenuService.getMenuListByCondition(appType, siteId, 100, 0, menuKeyList, addon); } @@ -145,10 +144,10 @@ export class AuthServiceImplService { const vo: AuthUserInfoVo = new AuthUserInfoVo(); BeanUtil.copyProperties(userInfo, vo); return vo; - // const userRoleMPJQueryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); + // MPJuserRoleMPJQueryWrapper = new MPJQueryWrapper<>(); // userRoleMPJQueryWrapper.select("sur.id, su.username, su.head_img, su.real_name, su.last_ip, su.last_time, su.login_count, sur.uid, sur.site_id, sur.role_ids, sur.create_time, sur.is_admin, sur.status") // .setAlias("sur") - // .leftJoin("?_sys_user su ON sur.uid = su.uid".replace("?_", this.config.get('tablePrefix'))); + // .leftJoin("?_sys_user su ON sur.uid = su.uid".replace("?_", this.appConfig.tablePrefix)); // userRoleMPJQueryWrapper.eq("sur.uid", uid); // userRoleMPJQueryWrapper.eq("sur.site_id", siteId); // const authUserInfoVo: AuthUserInfoVo = sysUserRoleMapper.selectJoinOne(AuthUserInfoVo.class, userRoleMPJQueryWrapper); @@ -164,7 +163,7 @@ export class AuthServiceImplService { * editAuth */ async editAuth(...args: any[]): Promise { - if (ObjectUtil.isNotNull(editAuthUserParam.getPassword()) && ObjectUtil.isNotEmpty(editAuthUserParam.getPassword())) { + if (ObjectUtil.isNotNull(editAuthUserParam.getPassword()) && !!editAuthUserParam.getPassword()) { const sysUser: SysUser = sysUserService.find(RequestUtils.uid()); if (!PasswordEncipher.matche(editAuthUserParam.getOriginalPassword(), sysUser.getPassword())) { throw new UnauthorizedException("OLD_PASSWORD_ERROR"); @@ -192,10 +191,10 @@ export class AuthServiceImplService { model.setUrl(RequestUtils.getReqeustURI()); model.setParams("{}"); model.setType(RequestUtils.getRequestMethod()); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setOperation(getDescription(request)); - sysUserLogMapper.insert(model); - } catch (e) { + this.sysUserLogRepository.save(model); + } catch (Exception e) { } } @@ -203,6 +202,6 @@ export class AuthServiceImplService { * setIsAllowChangeSite */ async setIsAllowChangeSite(...args: any[]): Promise { - coreConfigService.setConfig(0,"IS_ALLOW_CHANGE_SITE", JSONUtil.parseObj(param)); + coreConfigService.setConfig(0,"IS_ALLOW_CHANGE_SITE", JSON.parse(param)); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/auth/impl/config-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/auth/impl/config-service-impl.service.ts index ff1e0b87..add799b4 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/auth/impl/config-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/auth/impl/config-service-impl.service.ts @@ -16,7 +16,7 @@ export class ConfigServiceImplService { async getLoginConfig(...args: any[]): Promise { const defaultSiteId: number = RequestUtils.defaultSiteId(); const sysConfig: Record = coreConfigService.getConfigValue(defaultSiteId, ConfigKeyEnum.path.basename(ADMIN_LOGIN)); - return JSONUtil.toBean(sysConfig, LoginConfigVo.class); + return Object.assign(new LoginConfigVo(), sysConfig); } /** diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/channel/impl/admin-app-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/channel/impl/admin-app-service-impl.service.ts index 3d8e8f02..0923f556 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/channel/impl/admin-app-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/channel/impl/admin-app-service-impl.service.ts @@ -27,9 +27,9 @@ export class AdminAppServiceImplService { * getVersionPage */ async getVersionPage(...args: any[]): Promise { - const page: Page = new Page<>(pageParam.getPage(), pageParam.getLimit()); + const page: Page = { /* pagination */ }, pageParam.getLimit()); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); if (param.getPlatform() != null) { @@ -37,13 +37,13 @@ export class AdminAppServiceImplService { } queryWrapper.orderByDesc("create_time"); - const resultPage: Page = appVersionMapper.selectPage(page, queryWrapper); + const resultPage: Page = this.appVersionRepository.findAndCount(page, queryWrapper); - const list: AppVersionListVo[] = new LinkedList(); - for (const item of resultPage.getRecords()) { + AppVersionListVo[] list = new LinkedList(); + for (const item of records) { const vo: AppVersionListVo = new AppVersionListVo(); BeanUtil.copyProperties(item, vo); - list.add(vo); + list.push(vo); } return PageResult.build(resultPage, list); @@ -53,8 +53,8 @@ export class AdminAppServiceImplService { * getVersionInfo */ async getVersionInfo(...args: any[]): Promise { - const appVersion: AppVersion = appVersionMapper.selectOne( - new QueryWrapper() + const appVersion: AppVersion = this.appVersionRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId()) ); @@ -72,16 +72,16 @@ export class AdminAppServiceImplService { * addVersion */ async addVersion(...args: any[]): Promise { - const notRelease: AppVersion = appVersionMapper.selectOne( - new QueryWrapper() + const notRelease: AppVersion = this.appVersionRepository.findOne( + new () .eq("site_id", RequestUtils.siteId()) .eq("release_time", 0) .last("limit 1") ); Assert.isNull(notRelease, "当前已存在未发布的版本"); - const lastVersion: AppVersion = appVersionMapper.selectOne( - new QueryWrapper() + const lastVersion: AppVersion = this.appVersionRepository.findOne( + new () .eq("site_id", RequestUtils.siteId()) .orderByDesc("id") .last("limit 1") @@ -102,22 +102,22 @@ export class AdminAppServiceImplService { appVersion.setStatus(AppDict.StatusEnum.STATUS_UPLOAD_SUCCESS.getValue()); } - return appVersionMapper.insert(appVersion) > 0; + return this.appVersionRepository.save(appVersion) > 0; } /** * editVersion */ async editVersion(...args: any[]): Promise { - const appVersion: AppVersion = appVersionMapper.selectOne( - new QueryWrapper() + const appVersion: AppVersion = this.appVersionRepository.findOne( + new () .eq("site_id", RequestUtils.siteId()) .eq("id", id) ); - Assert.notNull(appVersion, "版本不存在"); + if (!appVersion) throw new BadRequestException("版本不存在"); - const lastVersion: AppVersion = appVersionMapper.selectOne( - new QueryWrapper() + const lastVersion: AppVersion = this.appVersionRepository.findOne( + new () .eq("site_id", RequestUtils.siteId()) .ne("id", id) .orderByDesc("id") @@ -138,14 +138,14 @@ export class AdminAppServiceImplService { appVersion.setStatus(AppDict.StatusEnum.STATUS_UPLOAD_SUCCESS.getValue()); } - return appVersionMapper.updateById(appVersion) > 0; + return this.appVersionRepository.save(appVersion) > 0; } /** * delVersion */ async delVersion(...args: any[]): Promise { - appVersionMapper.delete(new QueryWrapper() + this.appVersionRepository.delete(new () .eq("id", id) .eq("site_id", RequestUtils.siteId())); } @@ -178,12 +178,12 @@ export class AdminAppServiceImplService { * release */ async release(...args: any[]): Promise { - const appVersion: AppVersion = appVersionMapper.selectOne( - new QueryWrapper() + const appVersion: AppVersion = this.appVersionRepository.findOne( + new () .eq("site_id", RequestUtils.siteId()) .eq("id", id) ); - Assert.notNull(appVersion, "版本不存在"); + if (!appVersion) throw new BadRequestException("版本不存在"); if (appVersion.getStatus() !== AppDict.StatusEnum.STATUS_UPLOAD_SUCCESS.getValue()) { throw new BadRequestException("版本未上传成功"); } @@ -193,6 +193,6 @@ export class AdminAppServiceImplService { appVersion.setStatus(AppDict.StatusEnum.STATUS_PUBLISHED.getValue()); appVersion.setReleaseTime(DateUtils.currTime()); - return appVersionMapper.updateById(appVersion) > 0; + return this.appVersionRepository.save(appVersion) > 0; } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/dict/impl/dict-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/dict/impl/dict-service-impl.service.ts index 35fc2024..3bd0abd3 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/dict/impl/dict-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/dict/impl/dict-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -17,41 +17,41 @@ export class DictServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; //查询条件判断组装 - if (ObjectUtil.isNotEmpty(path.basename(searchParam))) { + if (!!path.basename(searchParam)) { queryWrapper.like("name", path.basename(searchParam)); } - if (ObjectUtil.isNotEmpty(searchParam.getKey())) { + if (!!searchParam.getKey()) { queryWrapper.eq("`key`", searchParam.getKey()); } queryWrapper.orderByDesc("id"); - const iPage: IPage = dictMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: DictListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.dictRepository.findAndCount({ /* pagination */ }, queryWrapper); + DictListVo[] list = []; + for (const item of records) { const vo: DictListVo = new DictListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * info */ async info(...args: any[]): Promise { - const model: SysDict = dictMapper.selectOne( - new QueryWrapper() + const model: SysDict = this.dictRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: DictInfoVo = new DictInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -64,59 +64,59 @@ export class DictServiceImplService { model.setKey(addParam.getKey()); model.setMemo(addParam.getMemo()); model.setDictionary("[]"); - model.setCreateTime(System.currentTimeMillis() / 1000); - model.setUpdateTime(System.currentTimeMillis() / 1000); - dictMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + model.setUpdateTime(Math.floor(Date.now() / 1000)); + this.dictRepository.save(model); } /** * edit */ async edit(...args: any[]): Promise { - const model: SysDict = dictMapper.selectOne( - new QueryWrapper() + const model: SysDict = this.dictRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); model.setId(id); model.setName(path.basename(editParam)); model.setKey(editParam.getKey()); model.setMemo(editParam.getMemo()); - model.setUpdateTime(System.currentTimeMillis() / 1000); - dictMapper.updateById(model); + model.setUpdateTime(Math.floor(Date.now() / 1000)); + this.dictRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - const model: SysDict = dictMapper.selectOne( - new QueryWrapper() + const model: SysDict = this.dictRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); - dictMapper.deleteById(model); + this.dictRepository.delete(model); } /** * getAll */ async getAll(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("id"); - const voList: SysDict[] = dictMapper.selectList(queryWrapper); - const list: DictListVo[] = []; + SysDict[] voList = this.dictRepository.find(queryWrapper); + DictListVo[] list = []; for (const item of voList) { const vo: DictListVo = new DictListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } return list; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy/impl/diy-route-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy/impl/diy-route-service-impl.service.ts index 48c446d0..5da15baa 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy/impl/diy-route-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy/impl/diy-route-service-impl.service.ts @@ -15,7 +15,7 @@ export class DiyRouteServiceImplService { */ async list(...args: any[]): Promise { const linkEnum: Record = LinkEnum.getLink(); - const routerList: DiyRouteListVo[] = []; + DiyRouteListVo[] routerList = []; const sort: number = 0; for (const key of linkEnum.keySet()) { @@ -33,15 +33,15 @@ export class DiyRouteServiceImplService { * getInfoByName */ async getInfoByName(...args: any[]): Promise { - const model: DiyRoute = diyRouteMapper.selectOne( - new QueryWrapper() + const model: DiyRoute = this.diyRouteRepository.findOne( + new () .eq("name", name) .eq("site_id", RequestUtils.siteId()) .last("limit 1")); if (model == null) return null; const vo: DiyRouteInfoVo = new DiyRouteInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -50,20 +50,20 @@ export class DiyRouteServiceImplService { * modifyShare */ async modifyShare(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper() + const queryWrapper: QueryWrapper = new () .eq("name", path.basename(editParam)) .eq("site_id", RequestUtils.siteId()) .last("limit 1"); - const model: DiyRoute = diyRouteMapper.selectOne(queryWrapper); + const model: DiyRoute = this.diyRouteRepository.findOne(queryWrapper); if (model != null) { - BeanUtils.copyProperties(editParam, model); + Object.assign(model, editParam); diyRouteMapper.update(model, queryWrapper); } else { const insertModel: DiyRoute = new DiyRoute(); - BeanUtils.copyProperties(editParam, insertModel); + Object.assign(insertModel, editParam); insertModel.setSiteId(RequestUtils.siteId()); - diyRouteMapper.insert(insertModel); + this.diyRouteRepository.save(insertModel); } } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy/impl/diy-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy/impl/diy-service-impl.service.ts index c980e85c..16cd4231 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy/impl/diy-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy/impl/diy-service-impl.service.ts @@ -17,56 +17,56 @@ export class DiyServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); queryWrapper.orderByDesc("id"); - if (ObjectUtil.isNotEmpty(searchParam.getTitle())) queryWrapper.like("title", searchParam.getTitle()); - if (ObjectUtil.isNotEmpty(searchParam.getMode())) queryWrapper.eq("mode", searchParam.getMode()); - if (ObjectUtil.isNotEmpty(searchParam.getType())) queryWrapper.eq("type", searchParam.getType()); + if (!!searchParam.getTitle()) queryWrapper.like("title", searchParam.getTitle()); + if (!!searchParam.getMode()) queryWrapper.eq("mode", searchParam.getMode()); + if (!!searchParam.getType()) queryWrapper.eq("type", searchParam.getType()); const template: Record = TemplateEnum.getTemplate(); - const templateAddon: Record[] = TemplateEnum.getTemplateAddons((RequestUtils.siteId())); - const iPage: IPage = diyPageMapper.selectPage(new Page(page, limit), queryWrapper); - const list: DiyPageListVo[] = []; - for (const item of iPage.getRecords()) { + Record templateAddon = TemplateEnum.getTemplateAddons((RequestUtils.siteId())); + iPage = this.diyPageRepository.findAndCount({ /* pagination */ }, queryWrapper); + DiyPageListVo[] list = []; + for (const item of records) { const vo: DiyPageListVo = new DiyPageListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); vo.setTypeName(ObjectUtil.defaultIfNull(template.getByPath(vo.getType() + ".title", String.class), "")); vo.setTypePage(ObjectUtil.defaultIfNull(template.getByPath(vo.getType() + ".page", String.class), "")); - const addonName: string = templateAddon.stream() + const addonName: string = templateAddon .filter(temp => vo.getType() != null && vo.getType() === temp.get("type")) .findFirst() .map(addon => ObjectUtil.defaultIfNull(addon.get("title"), "").toString()) .orElse(""); vo.setAddonName(addonName); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * allList */ async allList(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); queryWrapper.orderByDesc("id"); - if (ObjectUtil.isNotEmpty(searchParam.getTitle())) queryWrapper.like("title", searchParam.getTitle()); - if (ObjectUtil.isNotEmpty(searchParam.getMode())) queryWrapper.eq("mode", searchParam.getMode()); - if (ObjectUtil.isNotEmpty(searchParam.getType())) { - const type: string[] = Arrays.stream(searchParam.getType()).collect(Collectors.toList()); + if (!!searchParam.getTitle()) queryWrapper.like("title", searchParam.getTitle()); + if (!!searchParam.getMode()) queryWrapper.eq("mode", searchParam.getMode()); + if (!!searchParam.getType()) { + String[] type = Arrays.stream(searchParam.getType()); queryWrapper.in("type", type); } - const pages: DiyPage[] = diyPageMapper.selectList(queryWrapper); - const list: DiyPageListVo[] = []; + DiyPage[] pages = this.diyPageRepository.find(queryWrapper); + DiyPageListVo[] list = []; for (const item of pages) { const vo: DiyPageListVo = new DiyPageListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } return list; } @@ -75,15 +75,15 @@ export class DiyServiceImplService { * info */ async info(...args: any[]): Promise { - const model: DiyPage = diyPageMapper.selectOne( - new QueryWrapper() + const model: DiyPage = this.diyPageRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId())); if (model == null) return null; const vo: DiyPageInfoVo = new DiyPageInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -92,8 +92,8 @@ export class DiyServiceImplService { * infoByName */ async infoByName(...args: any[]): Promise { - const model: DiyPage = diyPageMapper.selectOne( - new QueryWrapper() + const model: DiyPage = this.diyPageRepository.findOne( + new () .eq("name", name) .eq("is_default", 1) .eq("site_id", RequestUtils.siteId())); @@ -101,7 +101,7 @@ export class DiyServiceImplService { if (model == null) return null; const vo: DiyPageInfoVo = new DiyPageInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -111,50 +111,50 @@ export class DiyServiceImplService { */ async add(...args: any[]): Promise { const model: DiyPage = new DiyPage(); - BeanUtils.copyProperties(addParam, model); + Object.assign(model, addParam); model.setSiteId(addParam.getSiteId() == null ? RequestUtils.siteId() : addParam.getSiteId()); - model.setCreateTime(System.currentTimeMillis() / 1000); - diyPageMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.diyPageRepository.save(model); } /** * edit */ async edit(...args: any[]): Promise { - const model: DiyPage = diyPageMapper.selectOne( - new QueryWrapper() + const model: DiyPage = this.diyPageRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); - BeanUtils.copyProperties(editParam, model); - model.setUpdateTime(System.currentTimeMillis() / 1000); - diyPageMapper.updateById(model); + Object.assign(model, editParam); + model.setUpdateTime(Math.floor(Date.now() / 1000)); + this.diyPageRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - diyPageMapper.delete(new QueryWrapper().eq("id", id).eq("site_id", RequestUtils.siteId())); + this.diyPageRepository.delete(new ().eq("id", id).eq("site_id", RequestUtils.siteId())); } /** * setUse */ async setUse(...args: any[]): Promise { - const model: DiyPage = diyPageMapper.selectOne(new QueryWrapper().eq("id", id).eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "页面不存在!"); + const model: DiyPage = this.diyPageRepository.findOne(new ().eq("id", id).eq("site_id", RequestUtils.siteId())); + if (!model) throw new BadRequestException("页面不存在!"); const update: DiyPage = new DiyPage(); update.setIsDefault(0); - diyPageMapper.update(update, new QueryWrapper().eq("name", path.basename(model)).eq("site_id", RequestUtils.siteId())); + diyPageMapper.update(update, new ().eq("name", path.basename(model)).eq("site_id", RequestUtils.siteId())); update.setId(id); update.setIsDefault(1); - update.setUpdateTime(System.currentTimeMillis() / 1000); - diyPageMapper.updateById(update); + update.setUpdateTime(Math.floor(Date.now() / 1000)); + this.diyPageRepository.save(update); } /** @@ -167,16 +167,16 @@ export class DiyServiceImplService { item.put("name", key); - if (!"DIY_PAGE" === key && item.containsKey("child_list")) { + if (!"DIY_PAGE".equals(key) && item.containsKey("child_list")) { const childList: JSONArray = item.getJSONArray("child_list"); - for (const i of number = 0; i < childList.size(); i++) { + for (const i of number = 0; i < childList.length; i++) { const child: Record = childList.getJSONObject(i); child.put("parent", key); } } if (key === "DIY_PAGE") { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()) .and(wrapper => wrapper .eq("type", "DIY_PAGE") @@ -186,14 +186,14 @@ export class DiyServiceImplService { ) .orderByDesc("update_time"); - const pageList: DiyPage[] = diyPageMapper.selectList(queryWrapper); + DiyPage[] pageList = this.diyPageRepository.find(queryWrapper); const newChildList: JSONArray = new JSONArray(); for (const diyPage of pageList) { const child: Record = new Record(); child.put("name", path.basename(diyPage)); child.put("title", diyPage.getPageTitle()); child.put("url", "/app/pages/index/diy?id=" + diyPage.getId()); - newChildList.add(child); + newChildList.push(child); } item.put("child_list", newChildList); } @@ -220,7 +220,7 @@ export class DiyServiceImplService { if (StringUtils.isNotBlank(path.basename(param))) { const startConfig: StartUpPageConfigVo = coreDiyConfigService.getStartUpPageConfig(RequestUtils.siteId(), path.basename(param)); if (startConfig != null) { - if ("DIY_PAGE" === startConfig.getParent()) { + if ("DIY_PAGE".equals(startConfig.getParent())) { const page: string = startConfig.getPage(); const id: number = number.parseInt(page.replace("/app/pages/index/diy?id=", "")); info = this.info(id); @@ -252,7 +252,7 @@ export class DiyServiceImplService { info.setPage(page.getStr("page")); } } else { - const time: number = System.currentTimeMillis() / 1000; + const time: number = Math.floor(Date.now() / 1000); const pageTitle: string = ObjectUtil.defaultIfBlank(param.getTitle(), "页面" + time); const type: string = ObjectUtil.defaultIfBlank(param.getType(), "DIY_PAGE"); const name: string = type === "DIY_PAGE" ? "DIY_PAGE_RANDOM_" + time : type; @@ -284,7 +284,7 @@ export class DiyServiceImplService { typeName = pageObj.getStr("title"); pageRoute = pageObj.getStr("page"); - const count: number = diyPageMapper.selectCount(new LambdaQueryWrapper() + const count: number = this.diyPageRepository.count(new Lambda() .eq(DiyPage::getSiteId, RequestUtils.siteId()) .eq(DiyPage::getType, param.getType())); if (count == 0) { @@ -294,7 +294,7 @@ export class DiyServiceImplService { // 页面标题(用于前台展示) const title: string = pageTitle; - if (!"DIY_PAGE" === type) { + if (!"DIY_PAGE".equals(type)) { title = typeName; } @@ -338,7 +338,7 @@ export class DiyServiceImplService { // 安全遍历顶层数据 const categoryIterator: Iterator = data.keySet().iterator(); - const categoryToRemove: string[] = []; + String[] categoryToRemove = []; while (categoryIterator.hasNext()) { const categoryKey: string = categoryIterator.next(); @@ -349,7 +349,7 @@ export class DiyServiceImplService { const sortMap: Record = new Record(); // 安全遍历组件列表 - const keysToRemove: string[] = []; + String[] keysToRemove = []; for (const componentKey of new ArrayList<>(componentList.keySet())) { const component: Record = componentList.getJSONObject(componentKey); const supportPage: JSONArray = component.getJSONArray("support_page"); @@ -361,7 +361,7 @@ export class DiyServiceImplService { component.remove("sort"); component.remove("support_page"); } else { - keysToRemove.add(componentKey); + keysToRemove.push(componentKey); } } @@ -370,7 +370,7 @@ export class DiyServiceImplService { componentList.remove(key); } if (componentList.length === 0) { - categoryToRemove.add(categoryKey); + categoryToRemove.push(categoryKey); } else { sortComponentsBySortValues(componentList, sortMap); } @@ -465,8 +465,8 @@ export class DiyServiceImplService { const diyRouteSearchParam: DiyRouteSearchParam = new DiyRouteSearchParam(); diyRouteSearchParam.setUrl(useTemplate.getStr("page")); - const otherPage: DiyRouteListVo[] = diyRouteService.list(diyRouteSearchParam); - if (otherPage.size() > 0) { + DiyRouteListVo[] otherPage = diyRouteService.list(diyRouteSearchParam); + if (otherPage.length > 0) { const route: DiyRouteListVo = otherPage.get(0); useTemplate.set("title", route.getTitle()); useTemplate.set("name", path.basename(route)); @@ -493,7 +493,7 @@ export class DiyServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper() + queryWrapper = new () .eq("site_id", RequestUtils.siteId()) .eq("type", "DIY_PAGE") .notIn("value", Arrays.asList("top_fixed", "right_fixed", "bottom_fixed", "left_fixed", "fixed")) @@ -504,14 +504,14 @@ export class DiyServiceImplService { .notIn("value", Arrays.asList("top_fixed", "right_fixed", "bottom_fixed", "left_fixed", "fixed")) .orderByDesc("id"); - const iPage: IPage = diyPageMapper.selectPage(new Page(page, limit), queryWrapper); - const list: DiyPageListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.diyPageRepository.findAndCount({ /* pagination */ }, queryWrapper); + DiyPageListVo[] list = []; + for (const item of records) { const vo: DiyPageListVo = new DiyPageListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** @@ -531,7 +531,7 @@ export class DiyServiceImplService { addonTemplateParam.setAddon(param.getAddon()); addonTemplateParam.setType(param.getType()); const addonTemplate: Record = getTemplate(addonTemplateParam); - if (addonTemplate != null && addonTemplate.length !== 0) { + if (addonTemplate != null && addonTemplate.length > 0) { addonFlag = addonTemplate.keySet().iterator().next(); template = addonTemplate.getJSONObject(addonFlag); } @@ -543,7 +543,7 @@ export class DiyServiceImplService { const pageKey: string = pages.keySet().iterator().next(); const page: Record = pages.getJSONObject(pageKey); - const info: DiyPage = diyPageMapper.selectOne(new QueryWrapper() + const info: DiyPage = this.diyPageRepository.findOne(new () .eq("name", addonFlag) .eq("site_id", param.getSiteId()) .eq("is_default", 1) @@ -561,13 +561,13 @@ export class DiyServiceImplService { addParam.setMode(page.getStr("mode", "")); addParam.setIsDefault(1); addParam.setIsChange(0); - this.add(addParam); + this.push(addParam); } else { if (path.basename(info) === "DIY_INDEX" && info.getType() === "DIY_INDEX") { const update: DiyPage = new DiyPage(); update.setId(info.getId()); update.setValue(page.getJSONObject("data").toString()); - diyPageMapper.updateById(update); + this.diyPageRepository.save(update); } } @@ -586,7 +586,7 @@ export class DiyServiceImplService { * copy */ async copy(...args: any[]): Promise { - const page: DiyPage = diyPageMapper.selectOne(new QueryWrapper().eq("id", id).eq("site_id", RequestUtils.siteId())); + const page: DiyPage = this.diyPageRepository.findOne(new ().eq("id", id).eq("site_id", RequestUtils.siteId())); if (page == null) throw new BadRequestException("页面不存在"); page.setId(null); @@ -594,8 +594,8 @@ export class DiyServiceImplService { page.setIsChange(0); page.setIsDefault(0); page.setShare(""); - page.setCreateTime(System.currentTimeMillis() / 1000); - diyPageMapper.insert(page); + page.setCreateTime(Math.floor(Date.now() / 1000)); + this.diyPageRepository.save(page); } /** @@ -605,21 +605,21 @@ export class DiyServiceImplService { // 获取参数 const mainAppStr: string = params.get("main_app").toString(); const mainApp: JSONArray = JSONUtil.parseArray(mainAppStr); - const count: number = mainApp.size(); - const tag: string = params.getOrDefault("tag", "add"); - const siteId: number = params.get("site_id"); + const count: number = mainApp.length; + const tag: string = (String) params.getOrDefault("tag", "add"); + const siteId: number = (number) params.get("site_id"); // 创建addon数组,在开头添加空字符串 const addon: JSONArray = new JSONArray(); - addon.add(""); + addon.push(""); addon.addAll(mainApp); // 遍历处理 - for (const k of number = 0; k < addon.size(); k++) { + for (const k of number = 0; k < addon.length; k++) { const v: string = addon.get(k).toString(); int isStart; - if ("add" === tag) { + if ("add".equals(tag)) { if (count > 1) { // 站点多应用,使用系统的页面 isStart = (k == 0) ? 1 : 0; @@ -660,21 +660,21 @@ export class DiyServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper() + queryWrapper = new () .eq("site_id", RequestUtils.siteId()) .and(i => i.eq("type", "DIY_PAGE").or().ne("type", "DIY_PAGE").eq("is_default", 0)) .orderByDesc("update_time"); const templates: Record = TemplateEnum.getTemplate(new TemplateParam()); - const iPage: IPage = diyPageMapper.selectPage(new Page(page, limit), queryWrapper); - const list: DiyPageListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.diyPageRepository.findAndCount({ /* pagination */ }, queryWrapper); + DiyPageListVo[] list = []; + for (const item of records) { const vo: DiyPageListVo = new DiyPageListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); vo.setTypeName(templates.getByPath(item.getType() + ".title", String.class)); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy/impl/diy-theme-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy/impl/diy-theme-service-impl.service.ts index 2d7a87f7..f1ea8ca6 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy/impl/diy-theme-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy/impl/diy-theme-service-impl.service.ts @@ -15,25 +15,25 @@ export class DiyThemeServiceImplService { async getDiyTheme(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); const siteCache: SiteInfoVo = coreSiteService.getSiteCache(siteId); - const themeDataList: DiyTheme[] = diyThemeMapper.selectList(new QueryWrapper().eq("site_id", siteId).eq("type", "app").eq("is_selected", 1)); - const themeData: Record = {}; - if (themeDataList.length !== 0){ - themeData = themeDataList.stream().collect(Collectors.toMap(theme => theme.getAddon(), theme => theme)); + DiyTheme[] themeDataList = this.diyThemeRepository.find(new ().eq("site_id", siteId).eq("type", "app").eq("is_selected", 1)); + const themeData: Record = new HashRecord<>(); + if (themeDataList.length > 0){ + themeData = themeDataList.collect(Collectors.toMap(theme => theme.getAddon(), theme => theme)); } const systemTheme: Record = coreDiyService.getDefaultThemeColor("app"); const appTheme: Record = new Record(); const appThemeObj: Record = new Record(); - appThemeObj.set("id", ObjectUtil.isNotEmpty(themeData.get("app")) ? themeData.get("app").getId() : ""); + appThemeObj.set("id", !!themeData.get("app") ? themeData.get("app").getId() : ""); appThemeObj.set("icon", ""); appThemeObj.set("addon_title", "系统"); - appThemeObj.set("title", ObjectUtil.isNotEmpty(themeData.get("app")) ? themeData.get("app").getTitle() : (systemTheme.length !== 0 ? systemTheme.getJSONArray("theme_color").getJSONObject(0).get("title") : "")); + appThemeObj.set("title", !!themeData.get("app") ? themeData.get("app").getTitle() : (systemTheme.length > 0 ? systemTheme.getJSONArray("theme_color").getJSONObject(0).get("title") : "")); - const themeValue: any = ObjectUtil.isNotEmpty(themeData.get("app")) ? + const themeValue: any = !!themeData.get("app") ? themeData.get("app").getTheme() : - (systemTheme.length !== 0 ? systemTheme.getJSONArray("theme_color").getJSONObject(0).get("theme") : ""); + (systemTheme.length > 0 ? systemTheme.getJSONArray("theme_color").getJSONObject(0).get("theme") : ""); if (themeValue instanceof String) { - appThemeObj.set("theme", JSONUtil.parseObj(themeValue)); + appThemeObj.set("theme", JSON.parse(themeValue)); } else { appThemeObj.set("theme", themeValue); } @@ -41,22 +41,22 @@ export class DiyThemeServiceImplService { appTheme.putOpt("app", appThemeObj); const data: Record = new Record(); - const appsAndAddons: Addon[] = siteCache.getApps(); + Addon[] appsAndAddons = siteCache.getApps(); appsAndAddons.addAll(siteCache.getSiteAddons()); for (const value of appsAndAddons) { const addonTheme: Record = coreDiyService.getDefaultThemeColor(value.getKey()); - if (addonTheme.length !== 0 && addonTheme.containsKey("theme_color")) { + if (addonTheme.length > 0 && addonTheme.containsKey("theme_color")) { const addonData: Record = new Record(); - addonData.set("id", ObjectUtil.isNotEmpty(themeData.get(value.getKey())) ? themeData.get(value.getKey()).getId() : ""); + addonData.set("id", !!themeData.get(value.getKey()) ? themeData.get(value.getKey()).getId() : ""); addonData.set("icon", value.getIcon() != null ? value.getIcon() : ""); addonData.set("addon_title", value.getTitle() != null ? value.getTitle() : ""); - addonData.set("title", ObjectUtil.isNotEmpty(themeData.get(value.getKey())) ? themeData.get(value.getKey()).getTitle() : addonTheme.getJSONArray("theme_color").getJSONObject(0).get("title")); + addonData.set("title", !!themeData.get(value.getKey()) ? themeData.get(value.getKey()).getTitle() : addonTheme.getJSONArray("theme_color").getJSONObject(0).get("title")); - const addonThemeValue: any = ObjectUtil.isNotEmpty(themeData.get(value.getKey())) ? + const addonThemeValue: any = !!themeData.get(value.getKey()) ? themeData.get(value.getKey()).getTheme() : addonTheme.getJSONArray("theme_color").getJSONObject(0).get("theme"); if (addonThemeValue instanceof String) { - addonData.set("theme", JSONUtil.parseObj(addonThemeValue)); + addonData.set("theme", JSON.parse(addonThemeValue)); } else { addonData.set("theme", addonThemeValue); } @@ -89,12 +89,12 @@ export class DiyThemeServiceImplService { async setDiyTheme(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); const diyTheme: DiyTheme = diyThemeMapper.selectById(data.getId()); - if (ObjectUtil.isEmpty(diyTheme)) { + if (!diyTheme) { throw new BadRequestException("主题色不存在"); } - const addonData: Addon[] = addonMapper.selectList(new QueryWrapper().eq("support_app", data.getAddon())); - const addonSaveData: DiyTheme[] = []; - if(ObjectUtil.isNotEmpty(addonData)){ + Addon[] addonData = this.addonRepository.find(new ().eq("support_app", data.getAddon())); + DiyTheme[] addonSaveData = []; + if(!!addonData){ for (const addon of addonData) { const saveData: DiyTheme = new DiyTheme(); saveData.setSiteId(siteId); @@ -104,20 +104,20 @@ export class DiyThemeServiceImplService { saveData.setTheme(data.getTheme().toString()); saveData.setNewTheme(data.getNewTheme().toString()); saveData.setIsSelected(1); - saveData.setUpdateTime(System.currentTimeMillis() / 1000); - addonSaveData.add(saveData); + saveData.setUpdateTime(Math.floor(Date.now() / 1000)); + addonSaveData.push(saveData); } } diyThemeMapper.update(null, new UpdateWrapper().eq("site_id", siteId).eq("addon", data.getAddon()).eq("type", "addon").set("is_selected", 0)); const model: DiyTheme = new DiyTheme(); - BeanUtils.copyProperties(data, model); + Object.assign(model, data); model.setIsSelected(1); - model.setUpdateTime(System.currentTimeMillis() / 1000); - diyThemeMapper.updateById(model); + model.setUpdateTime(Math.floor(Date.now() / 1000)); + this.diyThemeRepository.save(model); - if (!ObjectUtil.isNotEmpty(addonSaveData)) { + if (!!!addonSaveData) { for (const saveData of addonSaveData) { diyThemeMapper.update(null, new UpdateWrapper().eq("site_id", siteId).eq("addon", saveData.getAddon()).eq("type", "addon").set("is_selected", 0)); @@ -131,16 +131,16 @@ export class DiyThemeServiceImplService { */ async getDefaultThemeColor(...args: any[]): Promise { const addon: string = data.getAddon(); - const themeList: DiyTheme[] = diyThemeMapper.selectList(new QueryWrapper().eq("site_id", RequestUtils.siteId()).eq("addon", addon)); - const voList: DiyThemeInfoVo[] = []; + DiyTheme[] themeList = this.diyThemeRepository.find(new ().eq("site_id", RequestUtils.siteId()).eq("addon", addon)); + DiyThemeInfoVo[] voList = []; for (const theme of themeList) { const vo: DiyThemeInfoVo = new DiyThemeInfoVo(); - BeanUtils.copyProperties(theme, vo); + Object.assign(vo, theme); const addonTheme: Record = coreDiyService.getDefaultThemeColor(theme.getAddon()); - if (addonTheme.length !== 0 && addonTheme.containsKey("theme_field")) { + if (addonTheme.length > 0 && addonTheme.containsKey("theme_field")) { vo.setThemeField(addonTheme.getJSONArray("theme_field")); } - voList.add(vo); + voList.push(vo); } return voList; @@ -151,9 +151,9 @@ export class DiyThemeServiceImplService { */ async addDiyTheme(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const addonData: Addon[] = addonMapper.selectList(new QueryWrapper().eq("support_app", data.getAddon())); - const addonSaveData: DiyTheme[] = []; - if (addonData.length !== 0) { + Addon[] addonData = this.addonRepository.find(new ().eq("support_app", data.getAddon())); + DiyTheme[] addonSaveData = []; + if (addonData.length > 0) { for (const addon of addonData) { const diyTheme: DiyTheme = new DiyTheme(); @@ -165,20 +165,20 @@ export class DiyThemeServiceImplService { diyTheme.setNewTheme(data.getNewTheme().toString()); diyTheme.setDefaultTheme(data.getDefaultTheme().toString()); diyTheme.setThemeType("diy"); - diyTheme.setCreateTime(System.currentTimeMillis() / 1000); - addonSaveData.add(diyTheme); + diyTheme.setCreateTime(Math.floor(Date.now() / 1000)); + addonSaveData.push(diyTheme); } } const model: DiyTheme = new DiyTheme(); - BeanUtils.copyProperties(data, model); + Object.assign(model, data); model.setType("app"); model.setThemeType("diy"); - model.setCreateTime(System.currentTimeMillis() / 1000); - addonSaveData.add(model); - if (ObjectUtil.isNotEmpty(addonSaveData)) { + model.setCreateTime(Math.floor(Date.now() / 1000)); + addonSaveData.push(model); + if (!!addonSaveData) { for (const diyTheme of addonSaveData) { - diyThemeMapper.insert(diyTheme); + this.diyThemeRepository.save(diyTheme); } } } @@ -188,12 +188,12 @@ export class DiyThemeServiceImplService { */ async editDiyTheme(...args: any[]): Promise { const diyThemeInfo: DiyTheme = diyThemeMapper.selectById(id); - if (ObjectUtil.isEmpty(diyThemeInfo)) { - throw new Error("主题色不存在"); + if (!diyThemeInfo) { + throw new RuntimeException("主题色不存在"); } - const addonData: DiyTheme[] = diyThemeMapper.selectList(new QueryWrapper().eq("type", "addon").eq("title", diyThemeInfo.getTitle())); - const addonSaveData: DiyTheme[] = []; - if (ObjectUtil.isNotEmpty(addonData)) { + DiyTheme[] addonData = this.diyThemeRepository.find(new ().eq("type", "addon").eq("title", diyThemeInfo.getTitle())); + DiyTheme[] addonSaveData = []; + if (!!addonData) { for (const diyTheme of addonData) { const saveData: DiyTheme = new DiyTheme(); saveData.setId(diyTheme.getId()); @@ -201,19 +201,19 @@ export class DiyThemeServiceImplService { saveData.setTitle(diyTheme.getTitle()); saveData.setTheme(data.getTheme().toString()); saveData.setNewTheme(data.getNewTheme().toString()); - saveData.setUpdateTime(System.currentTimeMillis() / 1000); + saveData.setUpdateTime(Math.floor(Date.now() / 1000)); - addonSaveData.add(saveData); + addonSaveData.push(saveData); } } - BeanUtils.copyProperties(data, diyThemeInfo); - diyThemeInfo.setUpdateTime(System.currentTimeMillis() / 1000); + Object.assign(diyThemeInfo, data); + diyThemeInfo.setUpdateTime(Math.floor(Date.now() / 1000)); - diyThemeMapper.updateById(diyThemeInfo); + this.diyThemeRepository.save(diyThemeInfo); - if (ObjectUtil.isNotEmpty(addonSaveData)) { + if (!!addonSaveData) { for (const diyTheme of addonSaveData) { - diyThemeMapper.updateById(diyTheme); + this.diyThemeRepository.save(diyTheme); } } } @@ -223,26 +223,26 @@ export class DiyThemeServiceImplService { */ async delDiyTheme(...args: any[]): Promise { const diyThemeInfo: DiyTheme = diyThemeMapper.selectById(id); - if (ObjectUtil.isEmpty(diyThemeInfo)) { + if (!diyThemeInfo) { throw new BadRequestException("主题色不存在"); } if (diyThemeInfo.getThemeType() === "default") { throw new BadRequestException("默认主题色不能删除"); } - diyThemeMapper.deleteById(diyThemeInfo); + this.diyThemeRepository.delete(diyThemeInfo); } /** * checkDiyThemeTitleUnique */ async checkDiyThemeTitleUnique(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("title", data.getTitle()); queryWrapper.eq("addon", data.getAddon()); - if(ObjectUtil.isNotEmpty(data.getId())) + if(!!data.getId()) { queryWrapper.ne("id", data.getId()); } - return diyThemeMapper.selectCount(queryWrapper) == 0; + return this.diyThemeRepository.count(queryWrapper) == 0; } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy_form/impl/diy-form-records-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy_form/impl/diy-form-records-service-impl.service.ts index 6f9e17ff..7794cea2 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy_form/impl/diy-form-records-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy_form/impl/diy-form-records-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class DiyFormRecordsServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -16,18 +15,18 @@ export class DiyFormRecordsServiceImplService { async getPage(...args: any[]): Promise { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); + MPJqueryWrapper = new MPJQueryWrapper<>(); //sql语句 queryWrapper.select("ndfr.form_id, ndfr.member_id, nm.username, nm.member_no, nm.mobile, nm.nickname, nm.headimg,count(*) as write_count") .setAlias("ndfr") - .leftJoin("?_member nm ON ndfr.member_id = nm.member_id".replace("?_", this.config.get('tablePrefix'))); + .leftJoin("?_member nm ON ndfr.member_id = nm.member_id".replace("?_", this.appConfig.tablePrefix)); queryWrapper.eq("ndfr.site_id", RequestUtils.siteId()); - if (ObjectUtil.isNotEmpty(searchParam.getFormId())) { + if (!!searchParam.getFormId()) { queryWrapper.eq("ndfr.form_id", searchParam.getFormId()); } - if (ObjectUtil.isNotEmpty(searchParam.getKeyword())) { + if (!!searchParam.getKeyword()) { queryWrapper.and(i => i.or(j => j.like("nm.nickname", searchParam.getKeyword())) .or(j => j.like("nm.mobile", searchParam.getKeyword())) ); @@ -36,10 +35,10 @@ export class DiyFormRecordsServiceImplService { queryWrapper.orderByDesc("ndfr.form_id"); - const iPage: IPage = diyFormRecordsMapper.selectJoinPage(new Page<>(page, limit), DiyFormRecordsListVo.class, queryWrapper); - for (const vo of iPage.getRecords()) { + iPage = diyFormRecordsMapper.selectJoinPage({ /* pagination */ }, DiyFormRecordsListVo.class, queryWrapper); + for (const vo of records) { const memberVo: Member = new Member(); - BeanUtils.copyProperties(vo, memberVo); + Object.assign(memberVo, vo); vo.setMember(memberVo); } return PageResult.build(iPage); @@ -51,48 +50,48 @@ export class DiyFormRecordsServiceImplService { async getFieldStatList(...args: any[]): Promise { const diyFormRecordsFieldsSearchParam: DiyFormRecordsFieldsSearchParam = new DiyFormRecordsFieldsSearchParam(); diyFormRecordsFieldsSearchParam.setFormId(searchParam.getFormId()); - const fieldsList: DiyFormFieldsListVo[] = diyFormService.getFieldsList(diyFormRecordsFieldsSearchParam); + DiyFormFieldsListVo[] fieldsList = diyFormService.getFieldsList(diyFormRecordsFieldsSearchParam); // 过滤简单字段列表 String[] simpleTypes = {"FormRadio", "FormCheckbox", "FormDateScope", "FormTimeScope", "FormImage"}; - const simpleFieldList: DiyFormFieldsListVo[] = fieldsList.stream() + DiyFormFieldsListVo[] simpleFieldList = fieldsList .filter(e => !Arrays.asList(simpleTypes).includes(e.getFieldType())) - .collect(Collectors.toList()); + ; // 过滤 JSON 字段列表 String[] jsonTypes = {"FormRadio", "FormCheckbox", "FormDateScope", "FormTimeScope"}; - const jsonFieldList: DiyFormFieldsListVo[] = fieldsList.stream() + DiyFormFieldsListVo[] jsonFieldList = fieldsList .filter(e => Arrays.asList(jsonTypes).includes(e.getFieldType())) - .collect(Collectors.toList()); + ; const totalCount: number = 0; for (const field of simpleFieldList) { // 统计每个字段值的填写数量 - const valueQueryWrapper: QueryWrapper = new QueryWrapper<>(); + valueQueryWrapper = {}; valueQueryWrapper.eq("site_id", RequestUtils.siteId()) .eq("field_key", field.getFieldKey()) .eq("field_type", field.getFieldType()); if (searchParam.getFormId() != null) { valueQueryWrapper.eq("form_id", searchParam.getFormId()); } - const valueList: Record[] = diyFormRecordsFieldsMapper.selectMaps(valueQueryWrapper + Record valueList = diyFormRecordsFieldsMapper.selectMaps(valueQueryWrapper .select("form_id, field_key, field_type, field_value, count(*) as write_count") .groupBy("field_value")); - for (const i of number = 0; i < valueList.size(); i++) { - const value: Record = valueList.get(i); + for (const i of number = 0; i < valueList.length; i++) { + const value: Record = valueList.get(i); const diyFormComponentEnum: DiyFormComponentEnum = new DiyFormComponentEnum(); const component: Record = diyFormComponentEnum.getComponent(value.get("field_type").toString()); if(component.containsKey("render")){ const driver: string = component.getStr("render"); - if(ObjectUtil.isNotEmpty(driver)) + if(!!driver) { try{ Class clazz = ClassLoaderUtil.loadClass(driver); const obj: any = clazz.getDeclaredConstructor().newInstance(); const method: Method = clazz.getMethod("render", String.class, String.class); value.put("render_value", method.invoke(obj, value.get("field_value").toString(), value.get("field_type").toString())); - }catch (e){ - e.printStackTrace(); + }catch (Exception e){ + console.error(e); } } @@ -102,19 +101,19 @@ export class DiyFormRecordsServiceImplService { } // 计算总数量 - totalCount = diyFormRecordsFieldsMapper.selectCount(new QueryWrapper().eq("site_id", RequestUtils.siteId()) + totalCount = this.diyFormRecordsFieldsRepository.count(new ().eq("site_id", RequestUtils.siteId()) .eq("field_key", field.getFieldKey()) .eq("field_type", field.getFieldType())); if (totalCount > 0) { const totalPercent: number = 100; - for (const i of number = 0; i < valueList.size(); i++) { - const value: Record = valueList.get(i); + for (const i of number = 0; i < valueList.length; i++) { + const value: Record = valueList.get(i); double itemPercent; - if (i == valueList.size() - 1) { + if (i == valueList.length - 1) { itemPercent = totalPercent; } else { - itemPercent = Math.round((number.parseInt(value.get("write_count").toString()) / totalCount) * 100 * 100) / 100.0; + itemPercent = Math.round((number.parseInt(value.get("write_count").toString()) / (double) totalCount) * 100 * 100) / 100.0; } value.put("write_percent", itemPercent); totalPercent = totalPercent - itemPercent; @@ -126,29 +125,29 @@ export class DiyFormRecordsServiceImplService { // 处理 JSON 字段列表 for (const field of jsonFieldList) { // 查询字段记录 - const fieldQueryWrapper: QueryWrapper = new QueryWrapper<>(); + fieldQueryWrapper = {}; fieldQueryWrapper.eq("site_id", RequestUtils.siteId()) .eq("field_key", field.getFieldKey()) .eq("field_type", field.getFieldType()); if (searchParam.getFormId() != null) { fieldQueryWrapper.eq("form_id", searchParam.getFormId()); } - const fieldList: Record[] = diyFormRecordsFieldsMapper.selectMaps(fieldQueryWrapper); - for (const i of number = 0; i < fieldList.size(); i++) { - const value: Record = fieldList.get(i); + Record fieldList = diyFormRecordsFieldsMapper.selectMaps(fieldQueryWrapper); + for (const i of number = 0; i < fieldList.length; i++) { + const value: Record = fieldList.get(i); const diyFormComponentEnum: DiyFormComponentEnum = new DiyFormComponentEnum(); const component: Record = diyFormComponentEnum.getComponent(value.get("field_type").toString()); if(component.containsKey("render")){ const driver: string = component.getStr("render"); - if(ObjectUtil.isNotEmpty(driver)) + if(!!driver) { try{ Class clazz = ClassLoaderUtil.loadClass(driver); const obj: any = clazz.getDeclaredConstructor().newInstance(); const method: Method = clazz.getMethod("render", String.class, String.class); value.put("render_value", method.invoke(obj, value.get("field_value").toString(), value.get("field_type").toString())); - }catch (e){ - e.printStackTrace(); + }catch (Exception e){ + console.error(e); } } @@ -157,12 +156,12 @@ export class DiyFormRecordsServiceImplService { } } totalCount = 0; - const valueMap: Record = {}; + const valueMap: Record> = new HashRecord<>(); for (const record of fieldList) { - if (!"FormCheckbox" === record.get("field_type")) { + if (!"FormCheckbox".equals(record.get("field_type"))) { const key: string = record.get("field_key") + "_" + record.get("render_value"); if (valueMap.containsKey(key)) { - valueMap.get(key).put("write_count", valueMap.get(key).get("write_count") + 1); + valueMap.get(key).put("write_count", (number) valueMap.get(key).get("write_count") + 1); totalCount++; } else { valueMap.put(key, record); @@ -174,10 +173,10 @@ export class DiyFormRecordsServiceImplService { for (const value of values) { const key: string = record.get("field_key") + "_" + value; if (valueMap.containsKey(key)) { - valueMap.get(key).put("write_count", valueMap.get(key).get("write_count") + 1); + valueMap.get(key).put("write_count", (number) valueMap.get(key).get("write_count") + 1); totalCount++; } else { - const newRecord: Record = new HashMap<>(record); + const newRecord: Record = new HashRecord<>(record); newRecord.put("render_value", value); newRecord.put("write_count", 1); valueMap.put(key, newRecord); @@ -188,15 +187,15 @@ export class DiyFormRecordsServiceImplService { } if (totalCount > 0) { - const valueList: Record[] = new ArrayList<>(valueMap.values()); + Record valueList = new ArrayList<>(valueMap.values()); const totalPercent: number = 100; - for (const i of number = 0; i < valueList.size(); i++) { - const value: Record = valueList.get(i); + for (const i of number = 0; i < valueList.length; i++) { + const value: Record = valueList.get(i); double itemPercent; - if (i == valueList.size() - 1) { + if (i == valueList.length - 1) { itemPercent = totalPercent; } else { - itemPercent = Math.round((number.parseInt(value.get("write_count").toString()) / totalCount) * 100 * 100) / 100.0; + itemPercent = Math.round((number.parseInt(value.get("write_count").toString()) / (double) totalCount) * 100 * 100) / 100.0; } value.put("write_percent", itemPercent); totalPercent = totalPercent - itemPercent; @@ -206,7 +205,7 @@ export class DiyFormRecordsServiceImplService { } // 合并结果 - const resultList: DiyFormFieldsListVo[] = []; + DiyFormFieldsListVo[] resultList = []; resultList.addAll(simpleFieldList); resultList.addAll(jsonFieldList); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy_form/impl/diy-form-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy_form/impl/diy-form-service-impl.service.ts index 96aa387e..45228ccf 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy_form/impl/diy-form-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/diy_form/impl/diy-form-service-impl.service.ts @@ -16,71 +16,71 @@ export class DiyFormServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); - if (ObjectUtil.isNotEmpty(searchParam.getTitle())) { + if (!!searchParam.getTitle()) { queryWrapper.eq("title", searchParam.getTitle()); } - if (ObjectUtil.isNotEmpty(searchParam.getTitle())) { + if (!!searchParam.getTitle()) { queryWrapper.and(i => i.or(j => j.like("title", searchParam.getTitle())) .or(j => j.like("page_title", searchParam.getTitle())) ); } - if (ObjectUtil.isNotEmpty(searchParam.getType())) { + if (!!searchParam.getType()) { queryWrapper.eq("type", searchParam.getType()); } - if (ObjectUtil.isNotEmpty(searchParam.getAddon())) { + if (!!searchParam.getAddon()) { queryWrapper.eq("addon", searchParam.getAddon()); } queryWrapper.orderByDesc("form_id"); - const iPage: IPage = diyFormMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: DiyFormListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.diyFormRepository.findAndCount({ /* pagination */ }, queryWrapper); + DiyFormListVo[] list = []; + for (const item of records) { const vo: DiyFormListVo = new DiyFormListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * getList */ async getList(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); - if (ObjectUtil.isNotEmpty(searchParam.getTitle())) { + if (!!searchParam.getTitle()) { queryWrapper.eq("title", searchParam.getTitle()); } - if (ObjectUtil.isNotEmpty(searchParam.getTitle())) { + if (!!searchParam.getTitle()) { queryWrapper.and(i => i.or(j => j.like("title", searchParam.getTitle())) .or(j => j.like("page_title", searchParam.getTitle())) ); } - if (ObjectUtil.isNotEmpty(searchParam.getType())) { + if (!!searchParam.getType()) { queryWrapper.eq("type", searchParam.getType()); } - if (ObjectUtil.isNotEmpty(searchParam.getAddon())) { + if (!!searchParam.getAddon()) { queryWrapper.eq("addon", searchParam.getAddon()); } - if (ObjectUtil.isNotEmpty(searchParam.getStatus())) { + if (!!searchParam.getStatus()) { queryWrapper.eq("status", searchParam.getStatus()); } queryWrapper.orderByDesc("form_id"); - const list: DiyForm[] = diyFormMapper.selectList(queryWrapper); - const voList: DiyFormListVo[] = []; + DiyForm[] list = this.diyFormRepository.find(queryWrapper); + DiyFormListVo[] voList = []; for (const item of list) { const vo: DiyFormListVo = new DiyFormListVo(); - BeanUtils.copyProperties(item, vo); - voList.add(vo); + Object.assign(vo, item); + voList.push(vo); } return voList; } @@ -89,16 +89,16 @@ export class DiyFormServiceImplService { * getInfo */ async getInfo(...args: any[]): Promise { - const model: DiyForm = diyFormMapper.selectOne( - new QueryWrapper() + const model: DiyForm = this.diyFormRepository.findOne( + new () .eq("form_id", id) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "万能表单不存在"); + if (!model) throw new BadRequestException("万能表单不存在"); const vo: DiyFormInfoVo = new DiyFormInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -106,14 +106,14 @@ export class DiyFormServiceImplService { * getCount */ async getCount(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); - if (ObjectUtil.isNotEmpty(searchParam.getType())) { + if (!!searchParam.getType()) { queryWrapper.eq("type", searchParam.getType()); } - const count: number = diyFormMapper.selectCount(queryWrapper); - if(ObjectUtil.isEmpty(count)) + const count: number = this.diyFormRepository.count(queryWrapper); + if(!count) { count = 0L; } @@ -144,18 +144,18 @@ export class DiyFormServiceImplService { model.setShare(addParam.getShare()); model.setRemark(addParam.getRemark()); model.setSiteId(RequestUtils.siteId()); - model.setCreateTime(System.currentTimeMillis() / 1000); - model.setUpdateTime(System.currentTimeMillis() / 1000); - diyFormMapper.insert(model); - const diyFormFields: DiyFormFields[] = []; - if (ObjectUtil.isNotEmpty(addParam.getValue())) { - const value: Record = JSONUtil.parseObj(addParam.getValue()); + model.setCreateTime(Math.floor(Date.now() / 1000)); + model.setUpdateTime(Math.floor(Date.now() / 1000)); + this.diyFormRepository.save(model); + DiyFormFields[] diyFormFields = []; + if (!!addParam.getValue()) { + const value: Record = JSON.parse(addParam.getValue()); const components: JSONArray = value.getJSONArray("value"); for (const componentObj of components) { - const component: Record = JSONUtil.parseObj(componentObj); + const component: Record = JSON.parse(componentObj); const componentType: string = component.getStr("componentType"); const componentName: string = component.getStr("componentName"); - if (!"diy_form" === componentType || "FormSubmit" === componentName) { + if (!"diy_form".equals(componentType) || "FormSubmit".equals(componentName)) { continue; } const field: Record = component.getJSONObject("field"); @@ -183,13 +183,13 @@ export class DiyFormServiceImplService { fieldRecord.setFieldHidden(component.getInt("isHidden")); fieldRecord.setFieldUnique(field.containsKey("unique") ? field.getInt("unique") : 0); fieldRecord.setPrivacyProtection(field.containsKey("privacyProtection") ? field.getInt("privacyProtection") : 0); - fieldRecord.setCreateTime(System.currentTimeMillis() / 1000); - fieldRecord.setUpdateTime(System.currentTimeMillis() / 1000); - diyFormFields.add(fieldRecord); + fieldRecord.setCreateTime(Math.floor(Date.now() / 1000)); + fieldRecord.setUpdateTime(Math.floor(Date.now() / 1000)); + diyFormFields.push(fieldRecord); } } - if (diyFormFields.length !== 0) { - diyFormFieldsMapper.insert(diyFormFields); + if (diyFormFields.length > 0) { + this.diyFormFieldsRepository.save(diyFormFields); } const writeParam: DiyFormWriteConfigParam = new DiyFormWriteConfigParam(); @@ -211,30 +211,30 @@ export class DiyFormServiceImplService { * edit */ async edit(...args: any[]): Promise { - const model: DiyForm = diyFormMapper.selectOne( - new QueryWrapper() + const model: DiyForm = this.diyFormRepository.findOne( + new () .eq("form_id", id) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "万能表单不存在"); + if (!model) throw new BadRequestException("万能表单不存在"); model.setTitle(editParam.getTitle()); model.setPageTitle(editParam.getPageTitle()); model.setTemplate(editParam.getTemplate()); model.setValue(editParam.getValue()); - model.setUpdateTime(System.currentTimeMillis() / 1000); - diyFormMapper.updateById(model); - const formFieldsList: DiyFormFields[] = diyFormFieldsMapper.selectList(new QueryWrapper().eq("form_id", id)); - const formFieldsListMap: Record = formFieldsList.stream().collect(Collectors.toMap(DiyFormFields::getFieldKey, a => a)); - const existFieldKeys: string[] = []; - const diyFormFields: DiyFormFields[] = []; - if (ObjectUtil.isNotEmpty(editParam.getValue())) { - const value: Record = JSONUtil.parseObj(editParam.getValue()); + model.setUpdateTime(Math.floor(Date.now() / 1000)); + this.diyFormRepository.save(model); + DiyFormFields[] formFieldsList = this.diyFormFieldsRepository.find(new ().eq("form_id", id)); + const formFieldsListMap: Record = formFieldsList.collect(Collectors.toMap(DiyFormFields::getFieldKey, a => a)); + String[] existFieldKeys = []; + DiyFormFields[] diyFormFields = []; + if (!!editParam.getValue()) { + const value: Record = JSON.parse(editParam.getValue()); const components: JSONArray = value.getJSONArray("value"); for (const componentObj of components) { - const component: Record = JSONUtil.parseObj(componentObj); + const component: Record = JSON.parse(componentObj); const componentType: string = component.getStr("componentType"); const componentName: string = component.getStr("componentName"); - if (!"diy_form" === componentType || "FormSubmit" === componentName) { + if (!"diy_form".equals(componentType) || "FormSubmit".equals(componentName)) { continue; } const field: Record = component.getJSONObject("field"); @@ -262,28 +262,28 @@ export class DiyFormServiceImplService { fieldRecord.setFieldHidden(component.getInt("isHidden")); fieldRecord.setFieldUnique(field.containsKey("unique") ? field.getInt("unique") : 0); fieldRecord.setPrivacyProtection(field.containsKey("privacyProtection") ? field.getInt("privacyProtection") : 0); - fieldRecord.setUpdateTime(System.currentTimeMillis() / 1000); + fieldRecord.setUpdateTime(Math.floor(Date.now() / 1000)); if(formFieldsListMap.containsKey(component.getStr("id"))) { - diyFormFieldsMapper.update(fieldRecord, new QueryWrapper().eq("site_id", RequestUtils.siteId()).eq("field_id", formFieldsListMap.get(component.getStr("id")).getFieldId())); - existFieldKeys.add(component.getStr("id")); + diyFormFieldsMapper.update(fieldRecord, new ().eq("site_id", RequestUtils.siteId()).eq("field_id", formFieldsListMap.get(component.getStr("id")).getFieldId())); + existFieldKeys.push(component.getStr("id")); }else{ - diyFormFields.add(fieldRecord); + diyFormFields.push(fieldRecord); } } - if (diyFormFields.length !== 0) { - diyFormFieldsMapper.insert(diyFormFields); + if (diyFormFields.length > 0) { + this.diyFormFieldsRepository.save(diyFormFields); } for (Map.Entry entry : formFieldsListMap.entrySet()) { if(!existFieldKeys.includes(entry.getKey())) { - diyFormFieldsMapper.delete(new QueryWrapper().eq("site_id", RequestUtils.siteId()).eq("field_id", entry.getValue().getFieldId())); + this.diyFormFieldsRepository.delete(new ().eq("site_id", RequestUtils.siteId()).eq("field_id", entry.getValue().getFieldId())); } } }else{ - diyFormFieldsMapper.delete(new QueryWrapper().eq("site_id", RequestUtils.siteId()).eq("form_id", model.getFormId())); + this.diyFormFieldsRepository.delete(new ().eq("site_id", RequestUtils.siteId()).eq("form_id", model.getFormId())); } } @@ -291,7 +291,7 @@ export class DiyFormServiceImplService { * del */ async del(...args: any[]): Promise { - const count: number = diyFormMapper.selectCount(new QueryWrapper().in("form_id", formIds).eq("site_id", RequestUtils.siteId()).eq("status", 1)); + const count: number = this.diyFormRepository.count(new ().in("form_id", formIds).eq("site_id", RequestUtils.siteId()).eq("status", 1)); if(count > 0){ throw new BadRequestException("存在正在使用的表单,无法删除"); } @@ -300,39 +300,39 @@ export class DiyFormServiceImplService { for (const formId of formIds) { event.setFormId(formId); event.setSiteId(RequestUtils.siteId()); - const result: DiyFormDelBeforeEventDefiner.DiyFromDelBeforeResult[] = EventAndSubscribeOfPublisher.publishAndCallback(event); + DiyFormDelBeforeEventDefiner.DiyFromDelBeforeResult[] result = EventAndSubscribeOfPublisher.publishAndCallback(event); for (DiyFormDelBeforeEventDefiner.DiyFromDelBeforeResult res : result) { - if(ObjectUtil.isNotEmpty(res)) + if(!!res) { if(!res.getAllowOperate()) throw new BadRequestException("存在正在使用的表单,无法删除"); } } } - diyFormMapper.delete(new QueryWrapper().eq("site_id", RequestUtils.siteId()).in("form_id", formIds)); - diyFormFieldsMapper.delete(new QueryWrapper().eq("site_id", RequestUtils.siteId()).in("form_id", formIds)); - diyFormSubmitConfigMapper.delete(new QueryWrapper().eq("site_id", RequestUtils.siteId()).in("form_id", formIds)); - diyFormWriteConfigMapper.delete(new QueryWrapper().eq("site_id", RequestUtils.siteId()).in("form_id", formIds)); + this.diyFormRepository.delete(new ().eq("site_id", RequestUtils.siteId()).in("form_id", formIds)); + this.diyFormFieldsRepository.delete(new ().eq("site_id", RequestUtils.siteId()).in("form_id", formIds)); + this.diyFormSubmitConfigRepository.delete(new ().eq("site_id", RequestUtils.siteId()).in("form_id", formIds)); + this.diyFormWriteConfigRepository.delete(new ().eq("site_id", RequestUtils.siteId()).in("form_id", formIds)); } /** * getInit */ async getInit(...args: any[]): Promise { - const time: number = System.currentTimeMillis() / 1000; + const time: number = Math.floor(Date.now() / 1000); const data: DiyFormInfoVo = new DiyFormInfoVo(); if (params.getFormId() !== 0) { data = getInfo(params.getFormId()); } - if (ObjectUtil.isNotEmpty(data.getType())) { + if (!!data.getType()) { const diyFormTypeEnum: DiyFormTypeEnum = new DiyFormTypeEnum(); const currentType: Record = diyFormTypeEnum.getType(data.getType()); const typeName: string = currentType.getStr("title"); data.setTypeName(typeName); } else { - if (ObjectUtil.isEmpty(params.getType())) { + if (!params.getType()) { throw new BadRequestException("DIY_FORM_TYPE_NOT_EXIST"); } const type: string = params.getType(); @@ -356,7 +356,7 @@ export class DiyFormServiceImplService { } const initVo: DiyFormInitVo = new DiyFormInitVo(); - BeanUtils.copyProperties(data, initVo); + Object.assign(initVo, data); initVo.setComponent(getComponentList(data.getType())); initVo.setDomainUrl(systemConfigService.getSceneDomain(RequestUtils.siteId())); return initVo; @@ -368,7 +368,7 @@ export class DiyFormServiceImplService { async modifyShare(...args: any[]): Promise { const diyForm: DiyForm = new DiyForm(); diyForm.setShare(share); - diyFormMapper.update(diyForm, new QueryWrapper().eq("form_id", formId).eq("site_id", RequestUtils.siteId())); + diyFormMapper.update(diyForm, new ().eq("form_id", formId).eq("site_id", RequestUtils.siteId())); return true; } @@ -383,11 +383,11 @@ export class DiyFormServiceImplService { const list: Record = formComponent.getJSONObject("list"); Iterator> = list.entrySet().iterator(); while (iterator.hasNext()) { - const cv: Record = JSONUtil.parseObj(iterator.next()); + const cv: Record = JSON.parse(iterator.next()); if(cv.containsKey("support")) { const support: JSONArray = cv.getJSONArray("support"); - if (support != null && support.size() > 0 && !support.includes(type)) { + if (support != null && support.length > 0 && !support.includes(type)) { iterator.remove(); continue; } @@ -402,7 +402,7 @@ export class DiyFormServiceImplService { componentType(formComponentList, "diy_form"); const data: Record = formComponentList; - if ("DIY_FORM" === type) { + if ("DIY_FORM".equals(type)) { const diyComponentList: Record = diyService.getComponentList(""); componentType(diyComponentList, "diy"); data = mergeJsonObjects(formComponentList, diyComponentList);; @@ -421,40 +421,40 @@ export class DiyFormServiceImplService { * copy */ async copy(...args: any[]): Promise { - const diyForm: DiyForm = diyFormMapper.selectOne(new QueryWrapper().eq("form_id", formId).eq("site_id", RequestUtils.siteId())); - if(ObjectUtil.isEmpty(diyForm)) throw new BadRequestException("万能表单不存在"); - const diyFormSubmitConfig: DiyFormSubmitConfig = diyFormSubmitConfigMapper.selectOne(new QueryWrapper().eq("form_id", formId)); - const diyFormWriteConfig: DiyFormWriteConfig = diyFormWriteConfigMapper.selectOne(new QueryWrapper().eq("form_id", formId)); - const diyFormFields: DiyFormFields[] = diyFormFieldsMapper.selectList(new QueryWrapper().eq("form_id", formId)); + const diyForm: DiyForm = this.diyFormRepository.findOne(new ().eq("form_id", formId).eq("site_id", RequestUtils.siteId())); + if(!diyForm) throw new BadRequestException("万能表单不存在"); + const diyFormSubmitConfig: DiyFormSubmitConfig = this.diyFormSubmitConfigRepository.findOne(new ().eq("form_id", formId)); + const diyFormWriteConfig: DiyFormWriteConfig = this.diyFormWriteConfigRepository.findOne(new ().eq("form_id", formId)); + DiyFormFields[] diyFormFields = this.diyFormFieldsRepository.find(new ().eq("form_id", formId)); // 复制表单信息 const newDiyForm: DiyForm = new DiyForm(); - BeanUtils.copyProperties(diyForm, newDiyForm); + Object.assign(newDiyForm, diyForm); newDiyForm.setFormId(null); // 清空原有的 form_id,让数据库自动生成新的 newDiyForm.setPageTitle(newDiyForm.getPageTitle() + "_副本"); newDiyForm.setStatus(0); newDiyForm.setShare(""); newDiyForm.setWriteNum(0); - const currentTime: number = System.currentTimeMillis() / 1000; + const currentTime: number = Math.floor(Date.now() / 1000); newDiyForm.setCreateTime(currentTime); newDiyForm.setUpdateTime(currentTime); // 插入新的表单信息 - diyFormMapper.insert(newDiyForm); + this.diyFormRepository.save(newDiyForm); const newFormId: number = newDiyForm.getFormId(); // 复制表单字段 - if (!ObjectUtil.isEmpty(diyFormFields)) { - const newFormFieldList: DiyFormFields[] = []; + if (!!diyFormFields) { + DiyFormFields[] newFormFieldList = []; for (const item of diyFormFields) { const newField: DiyFormFields = new DiyFormFields(); - BeanUtils.copyProperties(item, newField); + Object.assign(newField, item); newField.setFieldId(null); // 清空原有的 field_id,让数据库自动生成新的 newField.setFormId(newFormId); newField.setWriteNum(0); newField.setCreateTime(currentTime); newField.setUpdateTime(currentTime); - newFormFieldList.add(newField); + newFormFieldList.push(newField); } const mybatisBatch: MybatisBatch = new MybatisBatch<>(sqlSessionFactory, newFormFieldList); MybatisBatch.const method: Method = new MybatisBatch.Method<>(DiyFormFieldsMapper.class); @@ -462,18 +462,18 @@ export class DiyFormServiceImplService { } // 复制填写配置 - if (!ObjectUtil.isEmpty(diyFormWriteConfig)) { + if (!!diyFormWriteConfig) { const newWriteConfig: DiyFormWriteConfigParam = new DiyFormWriteConfigParam(); - BeanUtils.copyProperties(diyFormWriteConfig, newWriteConfig); + Object.assign(newWriteConfig, diyFormWriteConfig); newWriteConfig.setFormId(newFormId); newWriteConfig.setId(null); coreDiyFormConfigService.addWriteConfig(newWriteConfig); } // 复制提交配置 - if (!ObjectUtil.isEmpty(diyFormSubmitConfig)) { + if (!!diyFormSubmitConfig) { const newSubmitConfig: DiyFormSubmitConfigParam = new DiyFormSubmitConfigParam(); - BeanUtils.copyProperties(diyFormSubmitConfig, newSubmitConfig); + Object.assign(newSubmitConfig, diyFormSubmitConfig); newSubmitConfig.setFormId(newFormId); newSubmitConfig.setId(null); coreDiyFormConfigService.addSubmitConfig(newSubmitConfig); @@ -504,7 +504,7 @@ export class DiyFormServiceImplService { async modifyStatus(...args: any[]): Promise { const diyForm: DiyForm = new DiyForm(); diyForm.setStatus(formStatusParam.getStatus()); - diyFormMapper.update(diyForm, new QueryWrapper().eq("form_id", formStatusParam.getFormId()).eq("site_id", RequestUtils.siteId())); + diyFormMapper.update(diyForm, new ().eq("form_id", formStatusParam.getFormId()).eq("site_id", RequestUtils.siteId())); return true; } @@ -529,28 +529,28 @@ export class DiyFormServiceImplService { async delRecord(...args: any[]): Promise { try { // 减少填写数量 - const formQueryWrapper: QueryWrapper = new QueryWrapper<>(); + formQueryWrapper = {}; formQueryWrapper.eq("form_id", formId); - const diyForm: DiyForm = diyFormMapper.selectOne(formQueryWrapper); + const diyForm: DiyForm = this.diyFormRepository.findOne(formQueryWrapper); if (diyForm != null) { diyForm.setWriteNum(diyForm.getWriteNum() - 1); - diyFormMapper.updateById(diyForm); + this.diyFormRepository.save(diyForm); } // 删除记录 - const recordsQueryWrapper: QueryWrapper = new QueryWrapper<>(); + recordsQueryWrapper = {}; recordsQueryWrapper.eq("site_id", RequestUtils.siteId()) .eq("record_id", recordId); - diyFormRecordsMapper.delete(recordsQueryWrapper); + this.diyFormRecordsRepository.delete(recordsQueryWrapper); // 删除万能表单填写字段 - const fieldsQueryWrapper: QueryWrapper = new QueryWrapper<>(); + fieldsQueryWrapper = {}; fieldsQueryWrapper.eq("site_id", RequestUtils.siteId()) .eq("record_id", recordId); - diyFormRecordsFieldsMapper.delete(fieldsQueryWrapper); + this.diyFormRecordsFieldsRepository.delete(fieldsQueryWrapper); return true; - } catch (e) { + } catch (Exception e) { // 事务会自动回滚,因为使用了 @Transactional 注解 throw new BadRequestException("删除记录失败: " + e.message); } @@ -560,7 +560,7 @@ export class DiyFormServiceImplService { * getFieldsList */ async getFieldsList(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()) .eq("form_id", diyFormRecordsFieldsSearchParam.getFormId()); if(diyFormRecordsFieldsSearchParam.getSort() === "asc") @@ -569,12 +569,12 @@ export class DiyFormServiceImplService { }else { queryWrapper.orderByDesc(diyFormRecordsFieldsSearchParam.getOrder()); } - const list: DiyFormFields[] = diyFormFieldsMapper.selectList(queryWrapper); - const listVo: DiyFormFieldsListVo[] = []; + DiyFormFields[] list = this.diyFormFieldsRepository.find(queryWrapper); + DiyFormFieldsListVo[] listVo = []; for (const item of list) { const vo: DiyFormFieldsListVo = new DiyFormFieldsListVo(); - BeanUtils.copyProperties(item, vo); - listVo.add(vo); + Object.assign(vo, item); + listVo.push(vo); } return listVo; } @@ -586,22 +586,22 @@ export class DiyFormServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); // 验证表单ID集合 - const verifyFormIds: number[] = []; + number[] verifyFormIds = []; if (param.getVerifyFormIds() != null && !param.getVerifyFormIds().isEmpty()) { - // 查询存在的表单const existForms: ID - List = diyFormMapper.selectList( - new QueryWrapper() + // 查询存在的表单ID + DiyForm[] existForms = this.diyFormRepository.find( + new () .select("form_id") .in("form_id", param.getVerifyFormIds()) ); - verifyFormIds = existForms.stream() + verifyFormIds = existForms .map(DiyForm::getFormId) - .collect(Collectors.toList()); + ; } // 构建查询条件 - const queryWrapper: LambdaQueryWrapper = new LambdaQueryWrapper<>(); + LambdaqueryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(DiyForm::getSiteId, RequestUtils.siteId()) .eq(DiyForm::getStatus, 1) .orderByDesc(DiyForm::getFormId); @@ -618,23 +618,23 @@ export class DiyFormServiceImplService { } // 分页查询 - const formPage: IPage = diyFormMapper.selectPage(new Page<>(page, limit), queryWrapper); + formPage = this.diyFormRepository.findAndCount({ /* pagination */ }, queryWrapper); - if (formPage.getTotal() == 0){ + if (total == 0){ return PageResult.build(page, limit, 0, []); } - const resultList: DiyFormInfoVo[] = []; - formPage.getRecords().forEach(item => { + DiyFormInfoVo[] resultList = []; + records.forEach(item => { const diyFormInfoVo: DiyFormInfoVo = new DiyFormInfoVo(); - BeanUtils.copyProperties(item, diyFormInfoVo); + Object.assign(diyFormInfoVo, item); const currentType: Record = new DiyFormTypeEnum().getType(item.getType()); const typeName: string = currentType.getStr("title"); diyFormInfoVo.setTypeName(typeName); - const addon: Addon = addonMapper.selectOne(new LambdaQueryWrapper().eq(Addon::getKey, item.getAddon())); - const addonName: string = ObjectUtil.isNotEmpty(addon) ? addon.getTitle() : ""; + const addon: Addon = this.addonRepository.findOne(new Lambda().eq(Addon::getKey, item.getAddon())); + const addonName: string = !!addon ? addon.getTitle() : ""; diyFormInfoVo.setAddonName(addonName); - resultList.add(diyFormInfoVo); + resultList.push(diyFormInfoVo); }); - return PageResult.build(page, limit, formPage.getTotal(), resultList); + return PageResult.build(page, limit, total, resultList); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/generator/impl/generate-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/generator/impl/generate-service-impl.service.ts index cab91789..1e9972d2 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/generator/impl/generate-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/generator/impl/generate-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class GenerateServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -17,19 +16,19 @@ export class GenerateServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); + MPJqueryWrapper = new MPJQueryWrapper<>(); queryWrapper.setAlias("ngt"); queryWrapper.select("ngt.id, ngt.table_name, ngt.table_content, ngt.module_name, ngt.class_name, ngt.create_time, ngt.edit_type, ngt.addon_name, ngt.order_type, ngt.parent_menu, ngt.relations, ngt.synchronous_number, na.title, na.`key`"); - queryWrapper.leftJoin("?_addon na ON na.`key` = ngt.addon_name".replace("?_", this.config.get('tablePrefix'))); - if (ObjectUtil.isNotEmpty(searchParam.getTableName())) { + queryWrapper.leftJoin("?_addon na ON na.`key` = ngt.addon_name".replace("?_", this.appConfig.tablePrefix)); + if (!!searchParam.getTableName()) { queryWrapper.like("ngt.table_name", searchParam.getTableName()); } - if (ObjectUtil.isNotEmpty(searchParam.getTableContent())) { + if (!!searchParam.getTableContent()) { queryWrapper.eq("ngt.table_content", searchParam.getTableContent()); } - if (ObjectUtil.isNotEmpty(searchParam.getAddonName())) { + if (!!searchParam.getAddonName()) { if (searchParam.getAddonName() === "2") { queryWrapper.eq("ngt.addon_name", ""); } else { @@ -39,7 +38,7 @@ export class GenerateServiceImplService { queryWrapper.orderByDesc("ngt.create_time"); - const iPage: IPage = generateTableMapper.selectJoinPage(new Page<>(page, limit), GenerateListVo.class, queryWrapper); + iPage = generateTableMapper.selectJoinPage({ /* pagination */ }, GenerateListVo.class, queryWrapper); return PageResult.build(iPage); } @@ -48,32 +47,32 @@ export class GenerateServiceImplService { */ async getInfo(...args: any[]): Promise { const generateTable: GenerateTable = generateTableMapper.selectById(id); - if (ObjectUtil.isEmpty(generateTable)) throw new AdminException("生成表不存在"); + if (!generateTable) throw new AdminException("生成表不存在"); const vo: GenerateDetailVo = new GenerateDetailVo(); - BeanUtils.copyProperties(generateTable, vo); + Object.assign(vo, generateTable); if (vo.getOrderType() != 0) { - const orderColumn: GenerateColumn = generateColumnMapper.selectOne(new QueryWrapper().eq("table_id", id).eq("is_order", 1)); - if (ObjectUtil.isNotEmpty(orderColumn)) { + const orderColumn: GenerateColumn = this.generateColumnRepository.findOne(new ().eq("table_id", id).eq("is_order", 1)); + if (!!orderColumn) { vo.setOrderColumnName(orderColumn.getColumnName()); } else { vo.setOrderColumnName(""); } } - const deleteColumn: GenerateColumn = generateColumnMapper.selectOne(new QueryWrapper().eq("table_id", id).eq("is_delete", 1)); - if (ObjectUtil.isNotEmpty(deleteColumn)) { + const deleteColumn: GenerateColumn = this.generateColumnRepository.findOne(new ().eq("table_id", id).eq("is_delete", 1)); + if (!!deleteColumn) { vo.setDeleteColumnName(deleteColumn.getColumnName()); vo.setIsDelete(1); } else { vo.setDeleteColumnName(""); vo.setIsDelete(0); } - const columnList: GenerateColumn[] = generateColumnMapper.selectList(new QueryWrapper().eq("table_id", id)); - if (ObjectUtil.isNotEmpty(columnList)) { - const columnVoList: GenerateColumnVo[] = []; + GenerateColumn[] columnList = this.generateColumnRepository.find(new ().eq("table_id", id)); + if (!!columnList) { + GenerateColumnVo[] columnVoList = []; for (const column of columnList) { const generateColumnVo: GenerateColumnVo = new GenerateColumnVo(); - BeanUtils.copyProperties(column, generateColumnVo); + Object.assign(generateColumnVo, column); if (column.getViewType() === "number") { if (!column.getValidateType().isEmpty()) { if (column.getValidateType().startsWith("[")) { @@ -130,7 +129,7 @@ export class GenerateServiceImplService { } else { generateColumnVo.setSelectType(1); } - columnVoList.add(generateColumnVo); + columnVoList.push(generateColumnVo); } vo.setTableColumn(columnVoList); } @@ -142,14 +141,14 @@ export class GenerateServiceImplService { */ async add(...args: any[]): Promise { const sql: string = "SHOW TABLE STATUS WHERE 1=1 "; - const tablePrefix: string = this.config.get('tablePrefix'); + const tablePrefix: string = this.appConfig.tablePrefix; if (!generateParam.getTableName().isEmpty()) { sql += " const Name: AND = '" + generateParam.getTableName() + "'"; } - const listData: Record[] = jdbcTemplate.queryForList(sql); - if (ObjectUtil.isEmpty(listData)) throw new AdminException("数据表不存在"); - const table: Record = listData.get(0); - if (ObjectUtil.isEmpty(table)) throw new AdminException("数据表不存在"); + Record listData = jdbcTemplate.queryForList(sql); + if (!listData) throw new AdminException("数据表不存在"); + const table: Record = listData.get(0); + if (!table) throw new AdminException("数据表不存在"); const tableName: string = table.get("Name").toString().substring(tablePrefix.length()); //添加生成表数据 @@ -157,20 +156,20 @@ export class GenerateServiceImplService { generateTable.setTableName(tableName); generateTable.setTableContent(table.get("Comment").toString()); generateTable.setClassName(tableName); - generateTable.setCreateTime(System.currentTimeMillis() / 1000); + generateTable.setCreateTime(Math.floor(Date.now() / 1000)); generateTable.setModuleName(tableName); - generateTableMapper.insert(generateTable); + this.generateTableRepository.save(generateTable); //添加生成字段数据 - const columns: Record[] = jdbcTemplate.queryForList("SELECT * FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = (SELECT DATABASE()) and TABLE_NAME='" + tablePrefix + tableName + "'"); + Record columns = jdbcTemplate.queryForList("SELECT * FROM information_schema.const TABLE_SCHEMA: COLUMNS WHERE = (SELECT DATABASE()) and TABLE_NAME='" + tablePrefix + tableName + "'"); const id: number = generateTable.getId(); - const list: GenerateColumn[] = []; + GenerateColumn[] list = []; for (const column of columns) { const generateColumn: GenerateColumn = new GenerateColumn(); generateColumn.setIsRequired(0); String[] defaultColumn = {"id", "create_time", "update_time"}; - if (column.get("IS_NULLABLE").toString() === "NO" && !column.get("COLUMN_KEY") === "PRI" && Arrays.asList(defaultColumn).includes(column.get("COLUMN_NAME").toString())) { + if (column.get("IS_NULLABLE").toString() === "NO" && !column.get("COLUMN_KEY").equals("PRI") && Arrays.asList(defaultColumn).includes(column.get("COLUMN_NAME").toString())) { generateColumn.setIsRequired(1); } @@ -181,7 +180,7 @@ export class GenerateServiceImplService { generateColumn.setColumnType("number"); } generateColumn.setColumnComment(column.get("COLUMN_COMMENT").toString()); - generateColumn.setIsPk(column.get("COLUMN_KEY") === "PRI" ? 1 : 0); + generateColumn.setIsPk(column.get("COLUMN_KEY").equals("PRI") ? 1 : 0); generateColumn.setIsInsert(Arrays.asList(defaultColumn).includes(column.get("COLUMN_NAME").toString()) ? 0 : 1); generateColumn.setIsUpdate(Arrays.asList(defaultColumn).includes(column.get("COLUMN_NAME").toString()) ? 0 : 1); generateColumn.setIsLists(Arrays.asList(defaultColumn).includes(column.get("COLUMN_NAME").toString()) ? 0 : 1); @@ -193,9 +192,9 @@ export class GenerateServiceImplService { generateColumn.setModel(""); generateColumn.setLabelKey(""); generateColumn.setValueKey(""); - generateColumn.setCreateTime(System.currentTimeMillis() / 1000); - generateColumn.setUpdateTime(System.currentTimeMillis() / 1000); - list.add(generateColumn); + generateColumn.setCreateTime(Math.floor(Date.now() / 1000)); + generateColumn.setUpdateTime(Math.floor(Date.now() / 1000)); + list.push(generateColumn); } generateColumnService.insertAll(list); @@ -218,13 +217,13 @@ export class GenerateServiceImplService { generateTable.setOrderType(generateParam.getOrderType()); generateTable.setParentMenu(generateParam.getParentMenu()); generateTable.setRelations(generateParam.getRelations()); - generateTableMapper.updateById(generateTable); + this.generateTableRepository.save(generateTable); //更新表字段 - generateColumnMapper.delete(new QueryWrapper().eq("table_id", id)); + this.generateColumnRepository.delete(new ().eq("table_id", id)); const columns: JSONArray = JSONUtil.parseArray(generateParam.getTableColumn()); - const list: GenerateColumn[] = []; + GenerateColumn[] list = []; - for (const i of number = 0; i < columns.size(); i++) { + for (const i of number = 0; i < columns.length; i++) { const generateColumn: GenerateColumn = new GenerateColumn(); const column: Record = columns.getJSONObject(i); generateColumn.setTableId(id); @@ -239,58 +238,58 @@ export class GenerateServiceImplService { generateColumn.setIsDelete(0); generateColumn.setIsOrder(0); generateColumn.setQueryType(column.getStr("query_type")); - generateColumn.setViewType(ObjectUtil.isEmpty(column.getStr("view_type")) ? "input" : column.getStr("view_type")); - generateColumn.setDictType(ObjectUtil.isEmpty(column.getStr("dict_type")) ? "" : column.getStr("dict_type")); - generateColumn.setAddon(ObjectUtil.isEmpty(column.getStr("addon")) ? "" : column.getStr("addon")); - generateColumn.setModel(ObjectUtil.isEmpty(column.getStr("model")) ? "" : column.getStr("model")); - generateColumn.setLabelKey(ObjectUtil.isEmpty(column.getStr("label_key")) ? "" : column.getStr("label_key")); - generateColumn.setValueKey(ObjectUtil.isEmpty(column.getStr("value_key")) ? "" : column.getStr("value_key")); - generateColumn.setUpdateTime(System.currentTimeMillis() / 1000); - generateColumn.setCreateTime(System.currentTimeMillis() / 1000); - generateColumn.setColumnType(ObjectUtil.isEmpty(column.getStr("column_type")) ? "String" : column.getStr("column_type")); - generateColumn.setValidateType(ObjectUtil.isEmpty(column.getStr("validate_type")) ? "" : column.getStr("validate_type")); + generateColumn.setViewType(!column.getStr("view_type") ? "input" : column.getStr("view_type")); + generateColumn.setDictType(!column.getStr("dict_type") ? "" : column.getStr("dict_type")); + generateColumn.setAddon(!column.getStr("addon") ? "" : column.getStr("addon")); + generateColumn.setModel(!column.getStr("model") ? "" : column.getStr("model")); + generateColumn.setLabelKey(!column.getStr("label_key") ? "" : column.getStr("label_key")); + generateColumn.setValueKey(!column.getStr("value_key") ? "" : column.getStr("value_key")); + generateColumn.setUpdateTime(Math.floor(Date.now() / 1000)); + generateColumn.setCreateTime(Math.floor(Date.now() / 1000)); + generateColumn.setColumnType(!column.getStr("column_type") ? "String" : column.getStr("column_type")); + generateColumn.setValidateType(!column.getStr("validate_type") ? "" : column.getStr("validate_type")); //传入字段rule暂时不知含义,待定 if (generateParam.getIsDelete() == 1) { - if (column.getStr("column_name") === generateParam.getDeleteColumnName()) { + if (column.getStr("column_name").equals(generateParam.getDeleteColumnName())) { generateColumn.setIsDelete(1); } } if (generateParam.getOrderType() != 0) { - if (column.getStr("column_name") === generateParam.getOrderColumnName()) { + if (column.getStr("column_name").equals(generateParam.getOrderColumnName())) { generateColumn.setIsOrder(1); } } - if (ObjectUtil.isNotEmpty(column.getStr("validate_type")) && !column.getStr("view_type") === "number") { - if (column.getStr("validate_type") === "between") { + if (!!column.getStr("validate_type") && !column.getStr("view_type").equals("number")) { + if (column.getStr("validate_type").equals("between")) { const jsonArray: JSONArray = new JSONArray(); - jsonArray.add("between"); - jsonArray.add(new String[]{column.getStr("min_number"), column.getStr("max_number")}); + jsonArray.push("between"); + jsonArray.push(new String[]{column.getStr("min_number"), column.getStr("max_number")}); generateColumn.setValidateType(jsonArray.toString()); - } else if (column.getStr("validate_type") === "max") { + } else if (column.getStr("validate_type").equals("max")) { const jsonArray: JSONArray = new JSONArray(); - jsonArray.add("max"); - jsonArray.add(new String[]{column.getStr("max_number")}); + jsonArray.push("max"); + jsonArray.push(new String[]{column.getStr("max_number")}); generateColumn.setValidateType(jsonArray.toString()); - } else if (column.getStr("validate_type") === "min") { + } else if (column.getStr("validate_type").equals("min")) { const jsonArray: JSONArray = new JSONArray(); - jsonArray.add("min"); - jsonArray.add(new String[]{column.getStr("min_number")}); + jsonArray.push("min"); + jsonArray.push(new String[]{column.getStr("min_number")}); generateColumn.setValidateType(jsonArray.toString()); } } - if (column.getStr("view_type") === "number") { + if (column.getStr("view_type").equals("number")) { const numJsonArray: JSONArray = new JSONArray(); - numJsonArray.add("between"); - numJsonArray.add(new String[]{column.getStr("view_min"), column.getStr("view_max")}); + numJsonArray.push("between"); + numJsonArray.push(new String[]{column.getStr("view_min"), column.getStr("view_max")}); generateColumn.setValidateType(numJsonArray.toString()); } - if (ObjectUtil.isNotEmpty(column.getStr("model"))) { + if (!!column.getStr("model")) { generateColumn.setDictType(""); } - list.add(generateColumn); + list.push(generateColumn); } @@ -301,8 +300,8 @@ export class GenerateServiceImplService { * del */ async del(...args: any[]): Promise { - generateTableMapper.deleteById(id); - generateColumnMapper.delete(new QueryWrapper().eq("table_id", id)); + this.generateTableRepository.delete(id); + this.generateColumnRepository.delete(new ().eq("table_id", id)); } /** @@ -310,13 +309,13 @@ export class GenerateServiceImplService { */ async generate(...args: any[]): Promise { const generateTable: GenerateTable = generateTableMapper.selectById(generateCodeParam.getId()); - const columnList: GenerateColumn[] = generateColumnMapper.selectList(new QueryWrapper().eq("table_id", generateCodeParam.getId())); + GenerateColumn[] columnList = this.generateColumnRepository.find(new ().eq("table_id", generateCodeParam.getId())); const coreGenerateService: CoreGenerateService = new CoreGenerateService(); - const list: CoreGenerateTemplateVo[] = coreGenerateService.generateCode(generateTable, columnList); + CoreGenerateTemplateVo[] list = coreGenerateService.generateCode(generateTable, columnList); // 下载 if (generateCodeParam.getGenerateType() === "2") { - const tempDir: string = this.config.get('webRootDownResource') + "upload/generate/"; + const tempDir: string = this.appConfig.webRootDownResource + "upload/generate/"; const packageDir: string = tempDir + "package/"; FileTools.createDirs(packageDir); FileUtil.clean(tempDir); @@ -327,13 +326,13 @@ export class GenerateServiceImplService { const zipFile: string = ZipUtil.zip(packageDir, tempDir + "package.zip"); } else { // 同步 - if (this.config.get('envType') !== "dev") throw new BadRequestException("只有在开发模式下才能进行同步代码"); + if (this.appConfig.envType !== "dev") throw new BadRequestException("只有在开发模式下才能进行同步代码"); for (const coreGenerateTemplateVo of list) { if (coreGenerateTemplateVo.getType() === "sql") { SQLScriptRunnerTools.execScript(coreGenerateTemplateVo.getData()); } else { - FileUtil.writeUtf8String(coreGenerateTemplateVo.getData(), this.config.get('projectRoot' + "/" + coreGenerateTemplateVo, coreGenerateTemplateVo.getFileName())); + FileUtil.writeUtf8String(coreGenerateTemplateVo.getData(), this.appConfig.projectRoot + "/" + coreGenerateTemplateVo.getPath(, coreGenerateTemplateVo.getFileName())); } } } @@ -344,17 +343,17 @@ export class GenerateServiceImplService { */ async preview(...args: any[]): Promise { const generateTable: GenerateTable = generateTableMapper.selectById(id); - const list: GenerateColumn[] = generateColumnMapper.selectList(new QueryWrapper().eq("table_id", id)); + GenerateColumn[] list = this.generateColumnRepository.find(new ().eq("table_id", id)); const coreGenerateService: CoreGenerateService = new CoreGenerateService(); - const columnList: CoreGenerateTemplateVo[] = coreGenerateService.generateCode(generateTable, list); - const voList: GeneratePreviewVo[] = []; + CoreGenerateTemplateVo[] columnList = coreGenerateService.generateCode(generateTable, list); + GeneratePreviewVo[] voList = []; for (const coreGenerateTemplateVo of columnList) { const vo: GeneratePreviewVo = new GeneratePreviewVo(); vo.setName(coreGenerateTemplateVo.getFileName()); vo.setType(coreGenerateTemplateVo.getType()); vo.setContent(coreGenerateTemplateVo.getData()); vo.setFileDir(coreGenerateTemplateVo + "/"); - voList.add(vo); + voList.push(vo); } return voList; } @@ -364,7 +363,7 @@ export class GenerateServiceImplService { */ async getDbFieldType(...args: any[]): Promise { type = getDbType(type); - const map: Record = SqlColumnEnum.getMap(); + Record map = SqlColumnEnum.getMap(); const field: string = ""; for (Map.Entry entry : map.entrySet()) { if (Arrays.asList(entry.getValue()).includes(type)) { diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-account-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-account-service-impl.service.ts index f878ca95..f21b786b 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-account-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-account-service-impl.service.ts @@ -1,12 +1,11 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class MemberAccountServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -19,35 +18,35 @@ export class MemberAccountServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); - queryWrapper.setAlias("mal").innerJoin("?_member m ON mal.member_id = m.member_id".replace("?_", this.config.get('tablePrefix'))); + MPJqueryWrapper = new MPJQueryWrapper<>(); + queryWrapper.setAlias("mal").innerJoin("?_member m ON mal.member_id = m.member_id".replace("?_", this.appConfig.tablePrefix)); queryWrapper.select("mal.*,m.member_no,m.username,m.nickname,m.mobile,m.headimg"); queryWrapper.eq("mal.site_id", siteId); queryWrapper.eq("mal.account_type", searchParam.getAccountType()); queryWrapper.orderByDesc("mal.id"); - if (ObjectUtil.isNotEmpty(searchParam.getKeywords())) + if (!!searchParam.getKeywords()) queryWrapper.like("m.member_no|m.username|m.nickname|m.mobile", searchParam.getKeywords()); if (ObjectUtil.defaultIfNull(searchParam.getMemberId(), 0) > 0) queryWrapper.eq("mal.member_id", searchParam.getMemberId()); - if (ObjectUtil.isNotEmpty(searchParam.getFromType())) + if (!!searchParam.getFromType()) queryWrapper.eq("mal.from_type", searchParam.getFromType()); - if (ObjectUtil.isNotEmpty(searchParam.getCreateTime())) + if (!!searchParam.getCreateTime()) QueryMapperUtils.buildByTime(queryWrapper, "mal.create_time", searchParam.getCreateTime()); - const iPage: IPage = memberAccountLogMapper.selectJoinPage(new Page<>(page, limit), MemberAccountLogVo.class, queryWrapper); - const list: MemberAccountLogListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = memberAccountLogMapper.selectJoinPage({ /* pagination */ }, MemberAccountLogVo.class, queryWrapper); + MemberAccountLogListVo[] list = []; + for (const item of records) { const vo: MemberAccountLogListVo = new MemberAccountLogListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); const memberInfoVo: MemberBriefInfoVo = new MemberBriefInfoVo(); - BeanUtils.copyProperties(item, memberInfoVo); + Object.assign(memberInfoVo, item); vo.setMember(memberInfoVo); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** @@ -56,13 +55,13 @@ export class MemberAccountServiceImplService { async getMemberAccountInfo(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const member: Member = memberMapper.selectOne(new QueryWrapper() + const member: Member = this.memberRepository.findOne(new () .eq("member_id", memberId) .eq("site_id", siteId)); - Assert.notNull(member, "会员不存在"); + if (!member) throw new BadRequestException("会员不存在"); const memberAccountVo: MemberAccountVo = new MemberAccountVo(); - BeanUtils.copyProperties(member, memberAccountVo); + Object.assign(memberAccountVo, member); return memberAccountVo; } @@ -75,12 +74,12 @@ export class MemberAccountServiceImplService { const vo: SumCommissionVo = new SumCommissionVo(); const zero: number = (new BigDecimal(0)); - if (ObjectUtil.isNotEmpty(searchParam.getMemberId()) && searchParam.getMemberId() > 0) { + if (!!searchParam.getMemberId() && searchParam.getMemberId() > 0) { const memberAccountInfo: MemberAccountVo = this.getMemberAccountInfo(searchParam.getMemberId()); vo.setCommission(memberAccountInfo.getCommission()); vo.setCommissionCashOuting(memberAccountInfo.getCommissionCashOuting()); vo.setTotalCommission(memberAccountInfo.getCommissionGet()); - const memberAccountLog: MemberAccountLog = memberAccountLogMapper.selectOne(new QueryWrapper() + const memberAccountLog: MemberAccountLog = this.memberAccountLogRepository.findOne(new () .select("SUM(account_data) AS account_sum") .eq("member_id", searchParam.getMemberId()) .eq("site_id", siteId) @@ -88,14 +87,14 @@ export class MemberAccountServiceImplService { .eq("from_type", "cash_out")); vo.setWithdrawnCommission(memberAccountLog == null ? zero : memberAccountLog.getAccountSum()); } else { - const member: Member = memberMapper.selectOne(new QueryWrapper() + const member: Member = this.memberRepository.findOne(new () .select("SUM(commission_get) AS commission_get,SUM(commission) AS commission, SUM(commission_cash_outing) AS commission_cash_outing") .eq("site_id", siteId)); vo.setCommission(member == null ? zero : member.getCommission()); vo.setCommissionCashOuting(member == null ? zero : member.getCommissionCashOuting()); vo.setTotalCommission(member == null ? zero : member.getCommissionGet()); - const memberAccountLog: MemberAccountLog = memberAccountLogMapper.selectOne(new QueryWrapper() + const memberAccountLog: MemberAccountLog = this.memberAccountLogRepository.findOne(new () .select("SUM(account_data) AS account_sum") .eq("site_id", siteId) .eq("account_type", AccountTypeEnum.COMMISSION.getType()) @@ -112,13 +111,13 @@ export class MemberAccountServiceImplService { const siteId: number = RequestUtils.siteId(); const vo: SumBalanceVo = new SumBalanceVo(); - if (ObjectUtil.isNotEmpty(searchParam.getMemberId()) && searchParam.getMemberId() > 0) { + if (!!searchParam.getMemberId() && searchParam.getMemberId() > 0) { const memberAccountInfo: MemberAccountVo = this.getMemberAccountInfo(searchParam.getMemberId()); vo.setBalance(memberAccountInfo == null ? new BigDecimal(0) : memberAccountInfo.getBalance()); vo.setMoney(memberAccountInfo == null ? new BigDecimal(0) : memberAccountInfo.getMoney()); } else { - const member: Member = memberMapper.selectOne(new QueryWrapper() + const member: Member = this.memberRepository.findOne(new () .select("SUM(balance) AS balance,SUM(money) AS money") .eq("site_id", siteId)); @@ -136,9 +135,9 @@ export class MemberAccountServiceImplService { const siteId: number = RequestUtils.siteId(); const vo: SumPointVo = new SumPointVo(); - if (ObjectUtil.isNotEmpty(searchParam.getMemberId()) && searchParam.getMemberId() > 0) { + if (!!searchParam.getMemberId() && searchParam.getMemberId() > 0) { const memberAccountInfo: MemberAccountVo = this.getMemberAccountInfo(searchParam.getMemberId()); - const memberAccountLog: MemberAccountLog = memberAccountLogMapper.selectOne(new QueryWrapper() + const memberAccountLog: MemberAccountLog = this.memberAccountLogRepository.findOne(new () .select("SUM(account_data) AS account_sum") .eq("site_id", siteId) .eq("member_id", searchParam.getMemberId()) @@ -147,12 +146,12 @@ export class MemberAccountServiceImplService { vo.setPointGet(memberAccountInfo.getPointGet()); vo.setPointUse(memberAccountLog == null ? 0 : memberAccountLog.getAccountSum().abs().intValue()); } else { - const member: Member = memberMapper.selectOne(new QueryWrapper() + const member: Member = this.memberRepository.findOne(new () .select("SUM(point_get) AS point_get") .eq("site_id", siteId)); vo.setPointGet(member == null ? 0 : member.getPointGet()); - const memberAccountLog: MemberAccountLog = memberAccountLogMapper.selectOne(new QueryWrapper() + const memberAccountLog: MemberAccountLog = this.memberAccountLogRepository.findOne(new () .select("SUM(account_data) AS account_sum") .eq("site_id", siteId) .eq("account_type", AccountTypeEnum.POINT.getType()) diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-address-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-address-service-impl.service.ts index 6d0cc2ad..22ae57c9 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-address-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-address-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -13,17 +13,17 @@ export class MemberAddressServiceImplService { * list */ async list(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("id"); queryWrapper.eq("site_id", RequestUtils.siteId()); - if (ObjectUtil.isNotEmpty(searchParam.getMemberId())) queryWrapper.eq("member_id", searchParam.getMemberId()); + if (!!searchParam.getMemberId()) queryWrapper.eq("member_id", searchParam.getMemberId()); - const records: MemberAddress[] = memberAddressMapper.selectList(queryWrapper); - const list: MemberAddressListVo[] = []; + MemberAddress[] records = this.memberAddressRepository.find(queryWrapper); + MemberAddressListVo[] list = []; for (const item of records) { const vo: MemberAddressListVo = new MemberAddressListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } return list; } @@ -32,16 +32,16 @@ export class MemberAddressServiceImplService { * info */ async info(...args: any[]): Promise { - const model: MemberAddress = memberAddressMapper.selectOne( - new QueryWrapper() + const model: MemberAddress = this.memberAddressRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId()) ); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: MemberAddressInfoVo = new MemberAddressInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -50,37 +50,37 @@ export class MemberAddressServiceImplService { */ async add(...args: any[]): Promise { const model: MemberAddress = new MemberAddress(); - BeanUtils.copyProperties(addParam, model); + Object.assign(model, addParam); model.setSiteId(RequestUtils.siteId()); - memberAddressMapper.insert(model); + this.memberAddressRepository.save(model); } /** * edit */ async edit(...args: any[]): Promise { - const model: MemberAddress = memberAddressMapper.selectOne( - new QueryWrapper() + const model: MemberAddress = this.memberAddressRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId()) ); - Assert.notNull(model, "数据不存在!"); - BeanUtils.copyProperties(editParam, model); - memberAddressMapper.updateById(model); + if (!model) throw new BadRequestException("数据不存在!"); + Object.assign(model, editParam); + this.memberAddressRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - const model: MemberAddress = memberAddressMapper.selectOne( - new QueryWrapper() + const model: MemberAddress = this.memberAddressRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); - memberAddressMapper.delete(new QueryWrapper().eq("id", id)); + this.memberAddressRepository.delete(new ().eq("id", id)); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-cash-out-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-cash-out-service-impl.service.ts index 49e00e3a..c4028cb5 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-cash-out-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-cash-out-service-impl.service.ts @@ -1,12 +1,11 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class MemberCashOutServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -18,33 +17,33 @@ export class MemberCashOutServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); - queryWrapper.setAlias("mco").innerJoin("?_member m ON mco.member_id = m.member_id".replace("?_", this.config.get('tablePrefix'))); + MPJqueryWrapper = new MPJQueryWrapper<>(); + queryWrapper.setAlias("mco").innerJoin("?_member m ON mco.member_id = m.member_id".replace("?_", this.appConfig.tablePrefix)); queryWrapper.select("mco.*,m.member_no,m.username,m.nickname,m.mobile,m.headimg"); queryWrapper.eq("mco.site_id", siteId); queryWrapper.orderByDesc("mco.id"); - if (ObjectUtil.isNotEmpty(searchParam.getKeywords())) { + if (!!searchParam.getKeywords()) { queryWrapper.and(i => i.like("m.member_no", searchParam.getKeywords()) .or().like("m.username", searchParam.getKeywords()) .or().like("m.nickname", searchParam.getKeywords()) .or().like("m.mobile", searchParam.getKeywords()) ); } - if (ObjectUtil.isNotEmpty(searchParam.getMemberId()) && searchParam.getMemberId() > 0) queryWrapper.eq("mco.member_id", searchParam.getMemberId()); - if (ObjectUtil.isNotEmpty(searchParam.getStatus())) queryWrapper.eq("mco.status", searchParam.getStatus()); - if (ObjectUtil.isNotEmpty(searchParam.getCashOutNo())) queryWrapper.like("mco.cash_out_no", searchParam.getCashOutNo()); - if (ObjectUtil.isNotEmpty(searchParam.getTransferType())) queryWrapper.like("mco.transfer_type", searchParam.getTransferType()); - if (ObjectUtil.isNotEmpty(searchParam.getCreateTime())) QueryMapperUtils.buildByTime(queryWrapper, "mco.create_time", searchParam.getCreateTime()); - if (ObjectUtil.isNotEmpty(searchParam.getTransferTime())) QueryMapperUtils.buildByTime(queryWrapper, "mco.transfer_time", searchParam.getTransferTime()); + if (!!searchParam.getMemberId() && searchParam.getMemberId() > 0) queryWrapper.eq("mco.member_id", searchParam.getMemberId()); + if (!!searchParam.getStatus()) queryWrapper.eq("mco.status", searchParam.getStatus()); + if (!!searchParam.getCashOutNo()) queryWrapper.like("mco.cash_out_no", searchParam.getCashOutNo()); + if (!!searchParam.getTransferType()) queryWrapper.like("mco.transfer_type", searchParam.getTransferType()); + if (!!searchParam.getCreateTime()) QueryMapperUtils.buildByTime(queryWrapper, "mco.create_time", searchParam.getCreateTime()); + if (!!searchParam.getTransferTime()) QueryMapperUtils.buildByTime(queryWrapper, "mco.transfer_time", searchParam.getTransferTime()); - const iPage: IPage = memberCashOutMapper.selectJoinPage(new Page<>(page, limit), MemberCashOutListVo.class, queryWrapper); - for (const item of iPage.getRecords()) { + iPage = memberCashOutMapper.selectJoinPage({ /* pagination */ }, MemberCashOutListVo.class, queryWrapper); + for (const item of records) { const memberInfoVo: MemberBriefInfoVo = new MemberBriefInfoVo(); - BeanUtils.copyProperties(item, memberInfoVo); + Object.assign(memberInfoVo, item); item.setMember(memberInfoVo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(iPage.getRecords()); + return PageResult.build(page, limit, total).setData(records); } /** @@ -55,13 +54,13 @@ export class MemberCashOutServiceImplService { const vo: MemberCashOutInfoVo = memberCashOutMapper.selectJoinOne( MemberCashOutInfoVo.class, - new MPJQueryWrapper() + new MPJ() .select("mco.*,m.member_no,m.username,m.nickname,m.mobile,m.headimg,pt.transfer_voucher,pt.transfer_remark") .eq("mco.id", id) .eq("mco.site_id", siteId) .setAlias("mco") - .leftJoin("?_member m ON mco.member_id = m.member_id".replace("?_", this.config.get('tablePrefix'))) - .leftJoin("?_pay_transfer pt ON mco.transfer_no = pt.transfer_no".replace("?_", this.config.get('tablePrefix'))) + .leftJoin("?_member m ON mco.member_id = m.member_id".replace("?_", this.appConfig.tablePrefix)) + .leftJoin("?_pay_transfer pt ON mco.transfer_no = pt.transfer_no".replace("?_", this.appConfig.tablePrefix)) ); if (vo != null) { @@ -82,15 +81,15 @@ export class MemberCashOutServiceImplService { const siteId: number = RequestUtils.siteId(); const vo: CashOutStatVo = new CashOutStatVo(); - const transfered: MemberCashOut = memberCashOutMapper.selectOne( - new QueryWrapper() + const transfered: MemberCashOut = this.memberCashOutRepository.findOne( + new () .eq("status", MemberCashOutStatusEnum.TRANSFERED.getStatus()) .eq("site_id", siteId) .select("SUM(apply_money) AS apply_money") .last("limit 1")); - const allMoney: MemberCashOut = memberCashOutMapper.selectOne( - new QueryWrapper() + const allMoney: MemberCashOut = this.memberCashOutRepository.findOne( + new () .ge("status", 0) .eq("site_id", siteId) .select("SUM(apply_money) AS apply_money") @@ -119,13 +118,13 @@ export class MemberCashOutServiceImplService { async transfer(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const model: MemberCashOut = memberCashOutMapper.selectOne( - new QueryWrapper() + const model: MemberCashOut = this.memberCashOutRepository.findOne( + new () .eq("id", param.getId()) .eq("site_id", siteId) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); iCoreMemberCashOutService.transfer(model, param); } @@ -141,15 +140,15 @@ export class MemberCashOutServiceImplService { * remark */ async remark(...args: any[]): Promise { - const model: MemberCashOut = memberCashOutMapper.selectOne( - new QueryWrapper() + const model: MemberCashOut = this.memberCashOutRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId()) ); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); model.setRemark(param.getRemark()); - memberCashOutMapper.updateById(model); + this.memberCashOutRepository.save(model); } /** diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-label-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-label-service-impl.service.ts index b20dead9..3d8f4e9c 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-label-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-label-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -18,28 +18,28 @@ export class MemberLabelServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", siteId); queryWrapper.orderByDesc("label_id"); - if (ObjectUtil.isNotEmpty(searchParam.getLabelName())){ + if (!!searchParam.getLabelName()){ queryWrapper.like("label_name", searchParam.getLabelName()); } - const iPage: IPage = memberLabelMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: MemberLabelListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.memberLabelRepository.findAndCount({ /* pagination */ }, queryWrapper); + MemberLabelListVo[] list = []; + for (const item of records) { const vo: MemberLabelListVo = new MemberLabelListVo(); const labelId: number = item.getLabelId(); - const wrapper: QueryWrapper = new QueryWrapper<>(); + wrapper = {}; wrapper.eq("site_id",siteId); - const canshu: string = String.valueOf(labelId); + const canshu: string = String(labelId); //添加如果是空值判断 wrapper.apply("JSON_VALID(member_label) = 1 AND JSON_SEARCH(member_label, 'one', {0}) IS NOT NULL",canshu); - const members: Member[] = memberMapper.selectList(wrapper); - BeanUtils.copyProperties(item, vo); - vo.setMemberNum(members.size()); - list.add(vo); + Member[] members = this.memberRepository.find(wrapper); + Object.assign(vo, item); + vo.setMemberNum(members.length); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** @@ -48,16 +48,16 @@ export class MemberLabelServiceImplService { async info(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const model: MemberLabel = memberLabelMapper.selectOne( - new QueryWrapper() + const model: MemberLabel = this.memberLabelRepository.findOne( + new () .eq("site_id", siteId) .eq("label_id", id) .last("limit 1")); - Assert.notNull(model, "标签不存在"); + if (!model) throw new BadRequestException("标签不存在"); const vo: MemberLabelInfoVo = new MemberLabelInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -72,9 +72,9 @@ export class MemberLabelServiceImplService { model.setLabelName(addParam.getLabelName()); model.setMemo(addParam.getMemo()); model.setSort(addParam.getSort()); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); - memberLabelMapper.insert(model); + this.memberLabelRepository.save(model); } /** @@ -91,7 +91,7 @@ export class MemberLabelServiceImplService { model.setLabelName(editParam.getLabelName()); model.setMemo(editParam.getMemo()); model.setSort(editParam.getSort()); - model.setUpdateTime(System.currentTimeMillis() / 1000); + model.setUpdateTime(Math.floor(Date.now() / 1000)); memberLabelMapper.update(model, updateWrapper); } @@ -102,11 +102,11 @@ export class MemberLabelServiceImplService { async del(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const queryWrapper: QueryWrapper = new QueryWrapper() + queryWrapper = new () .eq("site_id", siteId) .eq("label_id", id); - memberLabelMapper.delete(queryWrapper); + this.memberLabelRepository.delete(queryWrapper); } /** @@ -115,16 +115,16 @@ export class MemberLabelServiceImplService { async all(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper(); + MPJqueryWrapper = new MPJ(); queryWrapper.select("label_id,label_name").eq("site_id", siteId); - const labels: MemberLabel[] = memberLabelMapper.selectList(queryWrapper); // 调用 selectList 方法 + MemberLabel[] labels = this.memberLabelRepository.find(queryWrapper); // 调用 selectList 方法 - const list: MemberLabelAllListVo[] = []; + MemberLabelAllListVo[] list = []; for (const item of labels) { const vo: MemberLabelAllListVo = new MemberLabelAllListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } return list; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-level-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-level-service-impl.service.ts index e2e64830..5fee5de4 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-level-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-level-service-impl.service.ts @@ -17,22 +17,22 @@ export class MemberLevelServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", siteId); queryWrapper.orderByAsc("growth"); - if (ObjectUtil.isNotEmpty(searchParam.getLevelName())) queryWrapper.like("level_name", searchParam.getLevelName()); + if (!!searchParam.getLevelName()) queryWrapper.like("level_name", searchParam.getLevelName()); - const iPage: IPage = memberLevelMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: MemberLevelListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.memberLevelRepository.findAndCount({ /* pagination */ }, queryWrapper); + MemberLevelListVo[] list = []; + for (const item of records) { const vo: MemberLevelListVo = new MemberLevelListVo(); - BeanUtils.copyProperties(item, vo); - vo.setMemberNum(memberMapper.selectCount(new QueryWrapper().eq("member_level", vo.getLevelId()))); - if (ObjectUtil.isNotEmpty(item.getLevelBenefits())) vo.setLevelBenefits(coreMemberService.getBenefitsContent(item.getSiteId(), JSONUtil.parseObj(item.getLevelBenefits()), "admin")); - if (ObjectUtil.isNotEmpty(item.getLevelGifts())) vo.setLevelGifts(coreMemberService.getGiftContent(item.getSiteId(), JSONUtil.parseObj(item.getLevelGifts()), "admin")); - list.add(vo); + Object.assign(vo, item); + vo.setMemberNum(this.memberRepository.count(new ().eq("member_level", vo.getLevelId()))); + if (!!item.getLevelBenefits()) vo.setLevelBenefits(coreMemberService.getBenefitsContent(item.getSiteId(), JSON.parse(item.getLevelBenefits()), "admin")); + if (!!item.getLevelGifts()) vo.setLevelGifts(coreMemberService.getGiftContent(item.getSiteId(), JSON.parse(item.getLevelGifts()), "admin")); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** @@ -41,16 +41,16 @@ export class MemberLevelServiceImplService { async info(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const model: MemberLevel = memberLevelMapper.selectOne( - new QueryWrapper() + const model: MemberLevel = this.memberLevelRepository.findOne( + new () .eq("site_id", siteId) .eq("level_id", id) .last("limit 1")); - Assert.notNull(model, "等级不存在"); + if (!model) throw new BadRequestException("等级不存在"); const vo: MemberLevelInfoVo = new MemberLevelInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -66,11 +66,11 @@ export class MemberLevelServiceImplService { model.setLevelName(addParam.getLevelName()); model.setGrowth(addParam.getGrowth()); model.setRemark(addParam.getRemark()); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setLevelBenefits(addParam.getLevelBenefits().toString()); model.setLevelGifts(addParam.getLevelGifts().toString()); - memberLevelMapper.insert(model); + this.memberLevelRepository.save(model); } /** @@ -87,7 +87,7 @@ export class MemberLevelServiceImplService { model.setLevelName(editParam.getLevelName()); model.setGrowth(editParam.getGrowth()); model.setRemark(editParam.getRemark()); - model.setUpdateTime(System.currentTimeMillis() / 1000); + model.setUpdateTime(Math.floor(Date.now() / 1000)); model.setLevelBenefits(editParam.getLevelBenefits().toString()); model.setLevelGifts(editParam.getLevelGifts().toString()); @@ -100,16 +100,16 @@ export class MemberLevelServiceImplService { async del(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const memberNum: number = memberMapper.selectCount(new QueryWrapper() + const memberNum: number = this.memberRepository.count(new () .eq("site_id", siteId) .eq("member_level", id)); if (memberNum > 0) throw new BadRequestException("该等级下存在会员不允许删除"); - const queryWrapper: QueryWrapper = new QueryWrapper() + queryWrapper = new () .eq("site_id", siteId) .eq("level_id", id); - memberLevelMapper.delete(queryWrapper); + this.memberLevelRepository.delete(queryWrapper); } /** @@ -118,16 +118,16 @@ export class MemberLevelServiceImplService { async all(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper(); + MPJqueryWrapper = new MPJ(); queryWrapper.select("level_id,level_name, growth,site_id,level_benefits,level_gifts").eq("site_id", siteId); - const labels: MemberLevel[] = memberLevelMapper.selectList(queryWrapper); // 调用 selectList 方法 + MemberLevel[] labels = this.memberLevelRepository.find(queryWrapper); // 调用 selectList 方法 - const list: MemberLevelAllListVo[] = []; + MemberLevelAllListVo[] list = []; for (const item of labels) { const vo: MemberLevelAllListVo = new MemberLevelAllListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } return list; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-service-impl.service.ts index 9a2291d8..502127b7 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class MemberServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -18,58 +17,58 @@ export class MemberServiceImplService { const limit: number = pageParam.getLimit(); const siteId: number = RequestUtils.siteId(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); - queryWrapper.setAlias("m").leftJoin("?_member_level ml ON ml.level_id = m.member_level".replace("?_", this.config.get('tablePrefix'))); + MPJqueryWrapper = new MPJQueryWrapper<>(); + queryWrapper.setAlias("m").leftJoin("?_member_level ml ON ml.level_id = m.member_level".replace("?_", this.appConfig.tablePrefix)); queryWrapper.select("m.*, ml.level_name as member_level_name"); queryWrapper.eq("m.site_id", siteId); queryWrapper.orderByDesc("member_id"); // 查询条件 - if (ObjectUtil.isNotEmpty(searchParam.getKeyword())) { + if (!!searchParam.getKeyword()) { queryWrapper.and(i => i.like("member_no", searchParam.getKeyword()).or() .like("username", searchParam.getKeyword()).or() .like("nickname", searchParam.getKeyword()).or() .like("mobile", searchParam.getKeyword())); } - if (ObjectUtil.isNotNull(searchParam.getIsDel()) && ObjectUtil.isNotEmpty(searchParam.getKeyword())) { + if (ObjectUtil.isNotNull(searchParam.getIsDel()) && !!searchParam.getKeyword()) { queryWrapper.eq("is_del", searchParam.getIsDel()); } - if (ObjectUtil.isNotEmpty(searchParam.getMemberLevel()) && searchParam.getMemberLevel() != 0) { + if (!!searchParam.getMemberLevel() && searchParam.getMemberLevel() != 0) { queryWrapper.eq("member_level", searchParam.getMemberLevel()); } - if (ObjectUtil.isNotEmpty(searchParam.getRegisterChannel())) { + if (!!searchParam.getRegisterChannel()) { queryWrapper.eq("register_channel", searchParam.getRegisterChannel()); } - if (ObjectUtil.isNotEmpty(searchParam.getMemberLabel()) && searchParam.getMemberLabel() != 0) { + if (!!searchParam.getMemberLabel() && searchParam.getMemberLabel() != 0) { queryWrapper.like("member_label", searchParam.getMemberLabel()); } - if (ObjectUtil.isNotEmpty(searchParam.getRegisterType())) { + if (!!searchParam.getRegisterType()) { queryWrapper.eq("register_type", searchParam.getRegisterType()); } - if (ObjectUtil.isNotEmpty(searchParam.getCreateTime())) { + if (!!searchParam.getCreateTime()) { QueryMapperUtils.buildByTime(queryWrapper, "m.create_time", searchParam.getCreateTime()); } - const iPage: IPage = null; - const memberList: Member[] = []; + iPage = null; + Member[] memberList = []; if (page > 0 && limit > 0) { - iPage = memberMapper.selectPage(new Page<>(page, limit), queryWrapper); - memberList = iPage.getRecords(); + iPage = this.memberRepository.findAndCount({ /* pagination */ }, queryWrapper); + memberList = records; } else { - memberList = memberMapper.selectList(queryWrapper); + memberList = this.memberRepository.find(queryWrapper); } - const levelMap: Record = Collections.emptyMap(); - const levelIds: Set = CollStreamUtil.toSet(memberList, Member::getMemberLevel); - if (ObjectUtil.isNotEmpty(levelIds)) { - levelMap = memberLevelMapper.selectBatchIds(levelIds).stream().collect(Collectors.toMap(MemberLevel::getLevelId, e => e)); + const levelMap: Record = Collections.emptyMap(); + number[] levelIds = CollStreamUtil.toSet(memberList, Member::getMemberLevel); + if (!!levelIds) { + levelMap = memberLevelMapper.selectBatchIds(levelIds).collect(Collectors.toMap(MemberLevel::getLevelId, e => e)); } - const list: MemberListVo[] = []; + MemberListVo[] list = []; for (const item of memberList) { const vo: MemberListVo = new MemberListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); vo.setSexName(SexEnum.getNameBySex(item.getSex())); vo.setStatusName(StatusEnum.getNameByStatus(item.getStatus())); vo.setRegisterChannelName(ChannelEnum.getNameByCode(item.getRegisterChannel())); @@ -77,20 +76,20 @@ export class MemberServiceImplService { if (!item.getMemberLabel().isEmpty()) { const memberLabelArrays: JSONArray = JSONUtil.parseArray(vo.getMemberLabel()); - if (memberLabelArrays != null && memberLabelArrays.size() > 0) { - const memberLabelArray: MemberLabelAllListVo[] = []; - const labelList: MemberLabel[] = memberLabelMapper.selectList(new QueryWrapper().select("label_name").in("label_id", memberLabelArrays)); + if (memberLabelArrays != null && memberLabelArrays.length > 0) { + MemberLabelAllListVo[] memberLabelArray = []; + MemberLabel[] labelList = this.memberLabelRepository.find(new ().select("label_name").in("label_id", memberLabelArrays)); for (const labelItem of labelList) { const labelVo: MemberLabelAllListVo = new MemberLabelAllListVo(); - BeanUtils.copyProperties(labelItem, labelVo); - memberLabelArray.add(labelVo); + Object.assign(labelVo, labelItem); + memberLabelArray.push(labelVo); } vo.setMemberLabelArray(memberLabelArray); } } - list.add(vo); + list.push(vo); } - return PageResult.build(const iPage: page, limit, = = null ? list.size() : iPage.getTotal()).setData(list); + return PageResult.build(const iPage: page, limit, = = null ? list.length : total).setData(list); } /** @@ -99,32 +98,32 @@ export class MemberServiceImplService { async info(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const model: Member = memberMapper.selectOne( - new MPJQueryWrapper() + const model: Member = this.memberRepository.findOne( + new MPJ() .setAlias("m") - .leftJoin("?_member_level ml ON ml.level_id = m.member_level".replace("?_", this.config.get('tablePrefix'))) + .leftJoin("?_member_level ml ON ml.level_id = m.member_level".replace("?_", this.appConfig.tablePrefix)) .select("m.*, ml.level_name as member_level_name") .eq("member_id", id) .eq("m.site_id", siteId) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: MemberInfoVo = new MemberInfoVo(); - BeanUtils.copyProperties(model, vo); - if ("0" === model.getMemberLevel()){ + Object.assign(vo, model); + if ("0".equals(model.getMemberLevel())){ vo.setMemberLevel(""); } if (StrUtil.isNotEmpty(model.getMemberLabel()) && !Arrays.asList(model.getMemberLabel()).isEmpty()) { const memberLabelArrays: JSONArray = JSONUtil.parseArray(vo.getMemberLabel()); - if (memberLabelArrays != null && memberLabelArrays.size() > 0) { - const memberLabelArray: MemberLabelAllListVo[] = []; - const labelList: MemberLabel[] = memberLabelMapper.selectList(new QueryWrapper().select("label_name,label_id").in("label_id", memberLabelArrays)); + if (memberLabelArrays != null && memberLabelArrays.length > 0) { + MemberLabelAllListVo[] memberLabelArray = []; + MemberLabel[] labelList = this.memberLabelRepository.find(new ().select("label_name,label_id").in("label_id", memberLabelArrays)); for (const item of labelList) { const labelVo: MemberLabelAllListVo = new MemberLabelAllListVo(); - BeanUtils.copyProperties(item, labelVo); - memberLabelArray.add(labelVo); + Object.assign(labelVo, item); + memberLabelArray.push(labelVo); } vo.setMemberLabelArray(memberLabelArray); } @@ -140,7 +139,7 @@ export class MemberServiceImplService { addParam.setUsername(addParam.getMobile()); - const mobileIsExist: Member = memberMapper.selectOne(new QueryWrapper() + const mobileIsExist: Member = this.memberRepository.findOne(new () .select("member_id") .eq("site_id", siteId) .and(i => i.eq("mobile", addParam.getMobile()).or().eq("username", addParam.getMobile())) @@ -154,7 +153,7 @@ export class MemberServiceImplService { if (addParam.getMemberNo().isEmpty()) { addParam.setMemberNo(iCoreMemberService.createMemberNo(siteId)); } else { - const memberNoIsExist: Member = memberMapper.selectOne(new QueryWrapper() + const memberNoIsExist: Member = this.memberRepository.findOne(new () .select("member_id") .eq("site_id", siteId) .eq("member_no", addParam.getMemberNo()) @@ -172,9 +171,9 @@ export class MemberServiceImplService { model.setPassword(PasswordEncipher.encode(addParam.getPassword())); model.setRegisterType(MemberRegisterTypeEnum.MANUAL.getType()); model.setRegisterChannel(MemberRegisterChannelEnum.MANUAL.getType()); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setMemberLabel("[]"); - memberMapper.insert(model); + this.memberRepository.save(model); // 会员注册事件 const registerEvent: MemberRegisterEvent = new MemberRegisterEvent(); registerEvent.setSiteId(RequestUtils.siteId()); @@ -215,7 +214,7 @@ export class MemberServiceImplService { } const siteId: number = RequestUtils.siteId(); - const value: string = String.valueOf(editParam.getValue()).trim(); + const value: string = String(editParam.getValue()).trim(); const updateWrapper: LambdaUpdateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(Member::getSiteId, siteId) @@ -241,7 +240,7 @@ export class MemberServiceImplService { updateWrapper.set(Member::getSex, value === "" || value === "null" ? 0 : number.parseInt(value)); break; case "id_card": - // if (!IdcardUtil.isValidCard(value) && value.length !== 0){ + // if (!IdcardUtil.isValidCard(value) && value.length > 0){ // throw new AdminException("请输入正确的身份证号"); // } updateWrapper.set(Member::getIdCard, value === "" || value === "null" ? "" : value); @@ -250,7 +249,7 @@ export class MemberServiceImplService { updateWrapper.set(Member::getRemark, value === "" || value === "null" ? "" : value); break; case "mobile": - if (!PhoneUtil.isPhone(value) && value.length !== 0){ + if (!PhoneUtil.isPhone(value) && value.length > 0){ throw new AdminException("请输入正确的手机号"); } updateWrapper.set(Member::getMobile, value === "" || value === "null" ? "" : value); @@ -266,12 +265,12 @@ export class MemberServiceImplService { async del(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const queryWrapper: QueryWrapper = new QueryWrapper() + queryWrapper = new () .eq("site_id", siteId) .eq("member_id", id) .last("limit 1"); - memberMapper.delete(queryWrapper); + this.memberRepository.delete(queryWrapper); } /** @@ -280,18 +279,18 @@ export class MemberServiceImplService { async all(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper(); + MPJqueryWrapper = new MPJ(); queryWrapper.select("member_id,headimg,nickname").eq("site_id", siteId); - if (ObjectUtil.isNotEmpty(searchParam.getKeyword())) + if (!!searchParam.getKeyword()) queryWrapper.like("member_no|username|nickname|mobile", searchParam.getKeyword()); - const members: Member[] = memberMapper.selectList(queryWrapper); // 调用 selectList 方法 + Member[] members = this.memberRepository.find(queryWrapper); // 调用 selectList 方法 - const list: MemberAllListVo[] = []; + MemberAllListVo[] list = []; for (const item of members) { const vo: MemberAllListVo = new MemberAllListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } return list; } @@ -336,29 +335,29 @@ export class MemberServiceImplService { * batchModify */ async batchModify(...args: any[]): Promise { - if (ObjectUtil.isEmpty(param.getValue().toString())){ + if (!param.getValue(.toString())){ return; } const field: string = param.getField(); - const memberIds: number[] = param.getMemberIds(); + number[] memberIds = param.getMemberIds(); const isAll: number = param.getIsAll(); - if (!"member_label" === field && !"member_level" === field){ + if (!"member_label".equals(field) && !"member_level".equals(field)){ throw new BadRequestException("不支持的字段:" + field); } const uw: UpdateWrapper = new UpdateWrapper<>(); if (isAll == 0){ - if (!(!memberIds || memberIds.length === 0)){ + if (!StringUtils.isEmptyArray(memberIds)){ uw.in("member_id", memberIds); } }else { - if (!(!memberIds || memberIds.length === 0)) { + if (!StringUtils.isEmptyArray(memberIds)) { uw.notIn("member_id", memberIds); } } - if ("member_label" === field){ + if ("member_label".equals(field)){ const value: JSONArray = JSONUtil.parseArray(param.getValue()); - uw.set("member_label", JSONUtil.toJsonStr(value)); - }else if ("member_level" === field){ + uw.set("member_label", JSON.stringify(value)); + }else if ("member_level".equals(field)){ uw.set("member_level", number.parseInt(param.getValue().toString())); } memberMapper.update(uw); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-sign-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-sign-service-impl.service.ts index 0d343bfc..eee58eca 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-sign-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/member/impl/member-sign-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class MemberSignServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -18,40 +17,40 @@ export class MemberSignServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); - queryWrapper.setAlias("ms").innerJoin("?_member m ON ms.member_id = m.member_id".replace("?_", this.config.get('tablePrefix'))); + MPJqueryWrapper = new MPJQueryWrapper<>(); + queryWrapper.setAlias("ms").innerJoin("?_member m ON ms.member_id = m.member_id".replace("?_", this.appConfig.tablePrefix)); queryWrapper.select("ms.*,m.member_no,m.username,m.nickname,m.mobile,m.headimg"); queryWrapper.eq("ms.site_id", siteId); queryWrapper.orderByDesc("ms.sign_id"); - if (ObjectUtil.isNotEmpty(searchParam.getKeywords())){ + if (!!searchParam.getKeywords()){ // queryWrapper.like("m.member_no|m.username|m.nickname|m.mobile", searchParam.getKeywords()); QueryMapperUtils.addMultiLike(queryWrapper, searchParam.getKeywords(), "m.member_no", "m.username", "m.nickname", "m.mobile"); } - if (ObjectUtil.isNotEmpty(searchParam.getCreateTime())) { + if (!!searchParam.getCreateTime()) { QueryMapperUtils.buildByTime(queryWrapper, "ms.create_time", searchParam.getCreateTime()); } - const iPage: IPage = memberSignMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: MemberSignListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.memberSignRepository.findAndCount({ /* pagination */ }, queryWrapper); + MemberSignListVo[] list = []; + for (const item of records) { const vo: MemberSignListVo = new MemberSignListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); if (!item.getDayAward().isEmpty()) { - vo.setDayAward(coreMemberService.getGiftContent(item.getSiteId(), JSONUtil.parseObj(item.getDayAward()), "admin")); + vo.setDayAward(coreMemberService.getGiftContent(item.getSiteId(), JSON.parse(item.getDayAward()), "admin")); } if (!item.getContinueAward().isEmpty()) { - vo.setContinueAward(coreMemberService.getGiftContent(item.getSiteId(), JSONUtil.parseObj(item.getContinueAward()), "admin")); + vo.setContinueAward(coreMemberService.getGiftContent(item.getSiteId(), JSON.parse(item.getContinueAward()), "admin")); } const memberInfoVo: MemberBriefInfoVo = new MemberBriefInfoVo(); - BeanUtils.copyProperties(item, memberInfoVo); + Object.assign(memberInfoVo, item); vo.setMember(memberInfoVo); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** @@ -59,13 +58,13 @@ export class MemberSignServiceImplService { */ async getSignConfig(...args: any[]): Promise { const config: Record = iCoreConfigService.getConfigValue(RequestUtils.siteId(), "SIGN_CONFIG"); - return JSONUtil.toBean(config, SignConfigVo.class); + return Object.assign(new SignConfigVo(), config); } /** * setSignConfig */ async setSignConfig(...args: any[]): Promise { - iCoreConfigService.setConfig(RequestUtils.siteId(), "SIGN_CONFIG", JSONUtil.parseObj(configParam)); + iCoreConfigService.setConfig(RequestUtils.siteId(), "SIGN_CONFIG", JSON.parse(configParam)); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/niucloud/impl/cloud-build-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/niucloud/impl/cloud-build-service-impl.service.ts index 4b1805b9..a05c110d 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/niucloud/impl/cloud-build-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/niucloud/impl/cloud-build-service-impl.service.ts @@ -1,13 +1,12 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as fs from 'fs'; @Injectable() export class CloudBuildServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -17,7 +16,7 @@ export class CloudBuildServiceImplService { async getBuildTask(...args: any[]): Promise { if (cached.get("cloud_build_task") == null) return null; this.buildTask = (Record) cached.get("cloud_build_task"); - if (!this.buildTask.getStr("mode") === mode) return null; + if (!this.buildTask.getStr("mode").equals(mode)) return null; return this.buildTask; } @@ -45,7 +44,7 @@ export class CloudBuildServiceImplService { this.buildTask.set("mode", mode); this.buildTask.set("task_key", taskKey); - const tempDir: string = this.config.get('webRootDownRuntime') + "cloud_build/" + taskKey + "/"; + const tempDir: string = this.appConfig.webRootDownRuntime + "cloud_build/" + taskKey + "/"; const packageDir: string = tempDir + "package/"; FileTools.createDirs(packageDir); @@ -55,13 +54,13 @@ export class CloudBuildServiceImplService { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const actionQuery: Record = {}; + const actionQuery: Record = new HashRecord<>(); actionQuery.put("data[product_key]", instance.getProductKey()); const actionToken: Record = niucloudService.getActionToken("cloudbuild", actionQuery); - const query: Record = {}; + const query: Record = new HashRecord<>(); query.put("authorize_code", instance.getCode()); - query.put("timestamp", System.currentTimeMillis() / 1000); + query.put("timestamp", Math.floor(Date.now() / 1000)); query.put("token", actionToken == null ? "" : actionToken.getStr("token")); const response: HttpResponse = new NiucloudUtils.Cloud().useThirdBuild().build("cloud/build").query(query) @@ -70,9 +69,9 @@ export class CloudBuildServiceImplService { }) .method(Method.POST).execute(); - const res: Record = JSONUtil.parseObj(response.body()); + const res: Record = JSON.parse(response.body()); - if (!res.getInt("code", 0) === 1) throw new BadRequestException(res.getStr("msg")); + if (!res.getInt("code", 0).equals(1)) throw new BadRequestException(res.getStr("msg")); this.buildTask.set("timestamp", query.get("timestamp")); cached.put("cloud_build_task", this.buildTask); @@ -87,23 +86,23 @@ export class CloudBuildServiceImplService { getBuildTask(mode); if (this.buildTask == null) return null; - if (!this.buildTask.getStr("mode") === mode) return null; + if (!this.buildTask.getStr("mode").equals(mode)) return null; const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const query: Record = {}; + const query: Record = new HashRecord<>(); query.put("authorize_code", instance.getCode()); query.put("timestamp", this.buildTask.getStr("timestamp")); const response: HttpResponse = new NiucloudUtils.Cloud().useThirdBuild().build("cloud/get_build_logs").query(query).method(Method.GET).execute(); if (!JSONUtil.isJson(response.body())) return null; - const res: Record = JSONUtil.parseObj(response.body()); + const res: Record = JSON.parse(response.body()); const data: JSONArray = res.getByPath("data.0", JSONArray.class); - if (data.size() > 0) { - const last: Record = data.getJSONObject(data.size() - 1); - if (last.getInt("percent", 0) === 100 && last.getInt("code", 0) === 1) { + if (data.length > 0) { + const last: Record = data.getJSONObject(data.length - 1); + if (last.getInt("percent", 0).equals(100) && last.getInt("code", 0).equals(1)) { res = buildSuccess(res); } } @@ -114,7 +113,7 @@ export class CloudBuildServiceImplService { * setLocalCloudCompileConfig */ async setLocalCloudCompileConfig(...args: any[]): Promise { - const jsonObject: Record = JSONUtil.parseObj(JSONUtil.toJsonPrettyStr(param)); + const jsonObject: Record = JSON.parse(JSONUtil.toJsonPrettyStr(param)); coreConfigService.setConfig(RequestUtils.defaultSiteId(), "LOCAL_CLOUD_COMPILE_CONFIG", jsonObject); } @@ -132,7 +131,7 @@ export class CloudBuildServiceImplService { isConnected =checkLocal(url); } return isConnected; - } catch (UnknownHostException e) { + } catch (e) { throw new AdminException("联通测试失败"); } } @@ -142,10 +141,10 @@ export class CloudBuildServiceImplService { */ async clearBuildTask(...args: any[]): Promise { if (this.buildTask == null) return; - const tempDir: string = this.config.get('webRootDownRuntime' + "cloud_build/" + this.buildTask.getStr("task_key")); + const tempDir: string = this.appConfig.webRootDownRuntime + "cloud_build/" + this.buildTask.getStr("task_key"); try { if (fs.existsSync(tempDir)) fs.rmSync(tempDir, { recursive: true, force: true }); - } catch (e) { + } catch (Exception e) { } cached.remove("cloud_build_task"); this.buildTask = null; diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/niucloud/impl/niu-cloud-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/niucloud/impl/niu-cloud-service-impl.service.ts index 8febb74a..7f5bccca 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/niucloud/impl/niu-cloud-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/niucloud/impl/niu-cloud-service-impl.service.ts @@ -15,7 +15,7 @@ export class NiuCloudServiceImplService { async getFrameworkLastVersion(...args: any[]): Promise { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const query: Record = {}; + const query: Record = {}; query.put("product_key", instance.getProductKey()); const data: Record = NiucloudUtils.Niucloud.get("store/framework/lastversion", query).getJSONObject("data"); @@ -35,15 +35,15 @@ export class NiuCloudServiceImplService { async getFrameworkVersionList(...args: any[]): Promise { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const query: Record = {}; + const query: Record = new HashRecord<>(); query.put("product_key", instance.getProductKey()); const data: JSONArray = NiucloudUtils.Niucloud.get("store/framework/version", query).getJSONArray("data"); if (data == null) return null; - const list: FrameworkVersionListVo[] = []; - for (const i of number = 0; i < data.size(); i++) { - list.add(JSONUtil.toBean(data.getJSONObject(i), FrameworkVersionListVo.class)); + FrameworkVersionListVo[] list = []; + for (const i of number = 0; i < data.length; i++) { + list.push(Object.assign(new FrameworkVersionListVo(), data.getJSONObject(i))); } return list; } @@ -54,7 +54,7 @@ export class NiuCloudServiceImplService { async getAuthinfo(...args: any[]): Promise { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const query: Record = {}; + const query: Record = {}; query.put("code", instance.getCode()); query.put("secret", instance.getSecret()); query.put("product_key", instance.getProductKey()); @@ -74,7 +74,7 @@ export class NiuCloudServiceImplService { async setAuthorize(...args: any[]): Promise { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const query: Record = {}; + const query: Record = {}; query.put("code", param.getAuthCode()); query.put("secret", param.getAuthSecret()); query.put("product_key", instance.getProductKey()); @@ -92,19 +92,19 @@ export class NiuCloudServiceImplService { async getModuleList(...args: any[]): Promise { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const query: Record = {}; + const query: Record = new HashRecord<>(); query.put("code", instance.getCode()); query.put("secret", instance.getSecret()); query.put("product_key", instance.getProductKey()); const addonList: JSONArray = NiucloudUtils.Niucloud.get("member_app_all", query).getJSONArray("data"); - if (addonList == null && addonList.size() == 0) return null; + if (addonList == null && addonList.length == 0) return null; - const list: ModuleListVo[] = []; - for (const i of number = 0; i < addonList.size(); i++) { + ModuleListVo[] list = []; + for (const i of number = 0; i < addonList.length; i++) { const item: Record = addonList.getJSONObject(i); - const vo: ModuleListVo = JSONUtil.toBean(item, ModuleListVo.class); - list.add(vo); + const vo: ModuleListVo = Object.assign(new ModuleListVo(), item); + list.push(vo); } return list; } @@ -122,10 +122,10 @@ export class NiuCloudServiceImplService { async checkKey(...args: any[]): Promise { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const query: Record = {}; + const query: Record = {}; query.put("product_key", instance.getProductKey()); - return NiucloudUtils.Niucloud.get("store/app_check/" + key, query).get("data", Boolean.class); + return NiucloudUtils.Niucloud.get("store/app_check/" + key, query).get("data", boolean.class); } /** @@ -134,16 +134,16 @@ export class NiuCloudServiceImplService { async getAppVersionList(...args: any[]): Promise { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const query: Record = {}; + const query: Record = new HashRecord<>(); query.put("product_key", instance.getProductKey()); query.put("app_key", param.getAppKey()); const data: JSONArray = ObjectUtil.defaultIfNull(NiucloudUtils.Niucloud.get("store/app_version/list", query).get("data", JSONArray.class), new JSONArray()); - const list: AppVersionListVo[] = []; + AppVersionListVo[] list = []; - for (const i of number = 0; i < data.size(); i++) { - list.add(JSONUtil.toBean(data.getJSONObject(i), AppVersionListVo.class)); + for (const i of number = 0; i < data.length; i++) { + list.push(Object.assign(new AppVersionListVo(), data.getJSONObject(i))); } return list; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/notice/impl/nui-sms-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/notice/impl/nui-sms-service-impl.service.ts index d514a87d..2a4eb495 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/notice/impl/nui-sms-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/notice/impl/nui-sms-service-impl.service.ts @@ -20,9 +20,9 @@ export class NuiSmsServiceImplService { //删除null值 防止序列化报错 JacksonUtils.removeNull(result); return result; - } catch (e) { + } catch (Exception e) { log.error("获取验证码失败异常信息:{}", e.message); - throw new Error(e); + throw new RuntimeException(e); } } @@ -30,7 +30,7 @@ export class NuiSmsServiceImplService { * sendMobileCode */ async sendMobileCode(...args: any[]): Promise { - const body: Record = {}; + const body: Record = {}; body.put("mobile", param.getMobile()); body.put("captcha_key", param.getCaptchaKey()); body.put("captcha_code", param.getCaptchaCode()); @@ -40,7 +40,7 @@ export class NuiSmsServiceImplService { //删除null值 防止序列化报错 JacksonUtils.removeNull(result); return result; - } catch (e) { + } catch (Exception e) { log.error("发送验证码失败异常信息:{}", e.message); throw new AdminException("发送验证码失败"); } @@ -50,15 +50,15 @@ export class NuiSmsServiceImplService { * registerAccount */ async registerAccount(...args: any[]): Promise { - if (ObjectUtil.isNotEmpty(param.getImgUrl())) { - param.setImgUrl(Paths.get(RequestUtils.getReqeustURI(), param.getImgUrl()).toString()); + if (!!param.getImgUrl()) { + param.setImgUrl(path.join(RequestUtils.getReqeustURI(), param.getImgUrl()).toString()); } const result: Record = null; try { result = NiucloudUtils.Niucloud.post(ACCOUNT_REGISTER_URL, param); //删除null值 防止序列化报错 JacksonUtils.removeNull(result); - } catch (e) { + } catch (Exception e) { log.error("注册账号失败异常信息:{}", e.message); throw new AdminException("注册账号失败"); } @@ -70,7 +70,7 @@ export class NuiSmsServiceImplService { */ async loginAccount(...args: any[]): Promise { const url: string = String.format(LOGIN_ACCOUNT_URL, param.getUsername()); - const body: Record = {}; + const body: Record = {}; body.put("username", param.getUsername()); body.put("password", param.getPassword()); try { @@ -85,7 +85,7 @@ export class NuiSmsServiceImplService { //删除null值 防止序列化报错 JacksonUtils.removeNull(result); return result; - } catch (e) { + } catch (Exception e) { log.error("登录账号失败异常信息:{}", e.message); throw new AdminException(e.message); } @@ -100,8 +100,8 @@ export class NuiSmsServiceImplService { const data: Record = accountInfo(param.getUsername()); // 拆分手机号并验证 - const mobiles: string = String.valueOf(data.getOrDefault("mobiles", "")); - const mobileList: string[] = Arrays.asList(mobiles.split(",")); + const mobiles: string = String(data.getOrDefault("mobiles", "")); + String[] mobileList = Arrays.asList(mobiles.split(",")); if (!mobileList.includes(param.getMobile())) { throw new AdminException("手机号错误"); } @@ -110,14 +110,14 @@ export class NuiSmsServiceImplService { const newPassword: string = null; try { const resetPasswordUrl: string = String.format(RESET_PASSWORD_URL, param.getUsername()); - const resetPasswordBody: Record = {}; + const resetPasswordBody: Record = {}; resetPasswordBody.put("mobile", param.getMobile()); resetPasswordBody.put("code", param.getCode()); resetPasswordBody.put("key", param.getKey()); const resetPasswordJson: Record = NiucloudUtils.Niucloud.put(resetPasswordUrl, resetPasswordBody); const resetPasswordDataJson: Record = resetPasswordJson.getJSONObject("data"); newPassword = resetPasswordDataJson.getStr("newPassword"); - } catch (e) { + } catch (Exception e) { log.error("重置密码失败异常信息:{}", e.message); throw new AdminException("重置密码失败"); } @@ -143,13 +143,13 @@ export class NuiSmsServiceImplService { // 获取配置 const nyConfig: Record = getConfig(false); if (result != null && nyConfig != null && nyConfig.containsKey("username")) { - if (nyConfig.getStr("username") === result.getStr("username")) { + if (nyConfig.getStr("username").equals(result.getStr("username"))) { result.set("signature", nyConfig.getOrDefault("signature", "").toString().trim()); } } JacksonUtils.removeNull(result); return result; - } catch (JSONException e) { + } catch (e) { log.error("获取用户信息失败异常信息:{}", e.message); throw new AdminException("获取用户信息失败"); } @@ -161,15 +161,15 @@ export class NuiSmsServiceImplService { async getTemplateList(...args: any[]): Promise { const config: Record = getConfig(false); const siteId: number = RequestUtils.siteId(); - if (ObjectUtil.isEmpty(config) || !config.getOrDefault("username", "") === username) { + if (!config || !config.getOrDefault("username", "").equals(username)) { throw new ApiException("牛云短信账号异常,请重新登录账号"); } - const list: SysNotice[] = sysNoticeMapper.selectList(new QueryWrapper().eq("site_id", siteId)); - const map: Record = {}; + SysNotice[] list = this.sysNoticeRepository.find(new ().eq("site_id", siteId)); + const map: Record = new HashRecord<>(); if (!CollectionUtils.isEmpty(list)) { - map = list.stream().collect(Collectors.toMap(SysNotice::getKey, item => item)); + map = list.collect(Collectors.toMap(SysNotice::getKey, item => item)); } - const notice: TemplateListVo[] = []; + TemplateListVo[] notice = []; for (Map.Entry noticeMap : NoticeEnum.getNiuyunNotice().entrySet()) { const noticeInfoVo: TemplateListVo = new TemplateListVo(); BeanUtil.copyProperties(noticeMap.getValue(), noticeInfoVo); @@ -177,7 +177,7 @@ export class NuiSmsServiceImplService { BeanUtil.copyProperties(map.get(noticeMap.getKey()), noticeInfoVo); } //针对短信,微信公众号,小程序配置 - if (ObjectUtil.isNotEmpty(noticeMap.getValue().getSupport_type_map())) { + if (!!noticeMap.getValue(.getSupport_type_map())) { for (Map.Entry> supportTypeMap : noticeMap.getValue().getSupport_type_map().entrySet()) { if (supportTypeMap.getKey() === "sms") { noticeInfoVo.setSms(supportTypeMap.getValue()); @@ -191,43 +191,43 @@ export class NuiSmsServiceImplService { } } - notice.add(noticeInfoVo); + notice.push(noticeInfoVo); } - const niuSmsTemplates: NiuSmsTemplate[] = niuSmsTemplateMapper.selectList(new QueryWrapper() + NiuSmsTemplate[] niuSmsTemplates = this.niuSmsTemplateRepository.find(new () .eq("sms_type", smsType) .eq("username", username) .eq("site_id", siteId)); - const templateMap: Record = {}; + const templateMap: Record = new HashRecord<>(); if (!CollectionUtils.isEmpty(niuSmsTemplates)){ - templateMap = niuSmsTemplates.stream().collect(Collectors.toMap(NiuSmsTemplate::getTemplateKey, item => item)); + templateMap = niuSmsTemplates.collect(Collectors.toMap(NiuSmsTemplate::getTemplateKey, item => item)); } - const addonList: Addon[] = coreSiteService.getSiteAddons(siteId); + Addon[] addonList = coreSiteService.getSiteAddons(siteId); const sys: Addon = new Addon(); sys.setKey("system"); - addonList.add(0, sys); - const result: TemplateListVo[] = []; + addonList.push(0, sys); + TemplateListVo[] result = []; for (const addon of addonList) { for (const noticeInfoVo of notice) { if (addon.getKey() === noticeInfoVo.getAddon()) { - if ("system" === noticeInfoVo.getAddon()) { + if ("system".equals(noticeInfoVo.getAddon())) { noticeInfoVo.setAddon("系统"); } const auditInfo: Record = new Record(); auditInfo.set("audit_msg", templateMap.containsKey(noticeInfoVo.getKey()) ? templateMap.get(noticeInfoVo.getKey()).getAuditMsg() : ""); auditInfo.set("audit_status", templateMap.containsKey(noticeInfoVo.getKey()) ? templateMap.get(noticeInfoVo.getKey()).getAuditStatus() : TemplateAuditStatus.TEMPLATE_NOT_REPORT.getCode()); auditInfo.set("audit_status_name", TemplateAuditStatus.getByCode(auditInfo.getInt("audit_status")).getDescription()); - const paramsJson: string[] = []; + String[] paramsJson = []; if (templateMap.containsKey(noticeInfoVo.getKey())){ const paramJson: string = templateMap.get(noticeInfoVo.getKey()).getParamJson(); - if (ObjectUtil.isNotEmpty(paramJson)){ - const jsonObject: Record = JSONUtil.parseObj(paramJson); + if (!!paramJson){ + const jsonObject: Record = JSON.parse(paramJson); paramsJson.addAll(jsonObject.keySet()); } } Collections.sort(paramsJson); - const variable: string[] = []; - if (ObjectUtil.isNotEmpty(noticeInfoVo.getVariable())) { + String[] variable = []; + if (!!noticeInfoVo.getVariable()) { variable.addAll(noticeInfoVo.getVariable().keySet()); } Collections.sort(variable); @@ -236,11 +236,11 @@ export class NuiSmsServiceImplService { // 比较两个键列表 if (templateMap.containsKey(noticeInfoVo.getKey()) && variable !== paramsJson) { if (paramsJson.length === 0) { - errorStatus = String.valueOf(TemplateAuditStatus.TEMPLATE_NEED_PULL.getCode()); + errorStatus = String(TemplateAuditStatus.TEMPLATE_NEED_PULL.getCode()); } else { errorStatus = auditInfo.getInt("audit_status") == TemplateAuditStatus.TEMPLATE_PASS.getCode() - ? String.valueOf(TemplateAuditStatus.TEMPLATE_STATUS_AGAIN_REPORT.getCode()) - : String.valueOf(TemplateAuditStatus.TEMPLATE_NEED_EDIT.getCode()); + ? String(TemplateAuditStatus.TEMPLATE_STATUS_AGAIN_REPORT.getCode()) + : String(TemplateAuditStatus.TEMPLATE_NEED_EDIT.getCode()); } } auditInfo.set("error_status", errorStatus); @@ -252,14 +252,14 @@ export class NuiSmsServiceImplService { noticeInfoVo.setAuditInfo(auditInfo); if (templateMap.containsKey(noticeInfoVo.getKey())){ const niuSmsTemplate: NiuSmsTemplate = templateMap.get(noticeInfoVo.getKey()); - if ((niuSmsTemplate.getTemplateType( && niuSmsTemplate.getTemplateType(.trim() !== ''))){ + if (StringUtils.isNotEmpty(niuSmsTemplate.getTemplateType())){ noticeInfoVo.setTemplateTypeName(TemplateTypeEnum.fromCode(number.parseInt(niuSmsTemplate.getTemplateType())).getDescription()); }else { noticeInfoVo.setTemplateTypeName(""); } noticeInfoVo.setTemplateId(number.parseInt(niuSmsTemplate.getTemplateId())); } - result.add(noticeInfoVo); + result.push(noticeInfoVo); } } } @@ -273,7 +273,7 @@ export class NuiSmsServiceImplService { const orderListUrl: string = String.format(ORDER_LIST_URL, username); const result: Record = null; try { - const orderListParam: Record = {}; + const orderListParam: Record = {}; orderListParam.put("out_trade_no", param.getOutTradeNo()); orderListParam.put("order_status", param.getStatus()); orderListParam.put("create_time_start", param.getCreateTimeStart()); @@ -284,7 +284,7 @@ export class NuiSmsServiceImplService { result = jsonObject.getJSONObject("data"); //删除null值 防止序列化报错 JacksonUtils.removeNull(result); - } catch (e) { + } catch (Exception e) { log.error("获取订单列表失败异常信息:{}", e.message); throw new AdminException("获取订单列表失败"); } @@ -296,7 +296,7 @@ export class NuiSmsServiceImplService { */ async accountSendList(...args: any[]): Promise { const accountSendUrl: string = String.format(ACCOUNT_SEND_LIST_URL, username); - const accountSendParam: Record = {}; + const accountSendParam: Record = {}; accountSendParam.put("mobile", param.getMobile()); accountSendParam.put("content", param.getContent()); accountSendParam.put("smsStatus", param.getSmsStatus()); @@ -308,7 +308,7 @@ export class NuiSmsServiceImplService { //删除null值 防止序列化报错 JacksonUtils.removeNull(result); return result; - } catch (e) { + } catch (Exception e) { log.error("获取发送列表失败异常信息:{}", e.message); throw new AdminException("获取发送列表失败"); } @@ -321,7 +321,7 @@ export class NuiSmsServiceImplService { const registerAccountParam: RegisterAccountParam = new RegisterAccountParam(); if (isEnable == 1) { const config: Record = getConfig(true); - if (ObjectUtil.isEmpty(config) || + if (!config || !config.containsKey(NIUYUN) || (config.getJSONObject(NIUYUN)).get("username") == null || (config.getJSONObject(NIUYUN)).get("username").toString().isEmpty() || @@ -344,7 +344,7 @@ export class NuiSmsServiceImplService { */ async editAccount(...args: any[]): Promise { const editAccountUrl: string = String.format(ACCOUNT_EDIT_URL, username); - const editAccountBody: Record = {}; + const editAccountBody: Record = {}; editAccountBody.put("new_mobile", param.getNewMobile()); editAccountBody.put("mobile", param.getMobile()); editAccountBody.put("code", param.getCode()); @@ -357,7 +357,7 @@ export class NuiSmsServiceImplService { setConfig(registerAccountParam); JacksonUtils.removeNull(jsonObject); return jsonObject; - } catch (e) { + } catch (Exception e) { log.error("修改账号信息失败异常信息:{}", e.message); throw new AdminException("修改账号信息失败"); } @@ -370,12 +370,12 @@ export class NuiSmsServiceImplService { const config: Record = getConfig(false); param.setPassword(config.getStr("password")); try { - const failList: any[] = delSign(username, param); + Object[] failList = delSign(username, param); const configSignature: string = config.getStr("signature"); - const signatures: string[] = param.getSignatures(); + String[] signatures = param.getSignatures(); - if (signatures != null && failList.length !== 0 && + if (signatures != null && failList.length > 0 && signatures.includes(configSignature) && !failList.includes(configSignature)) { // 如果满足条件,则清空账户的签名 @@ -384,7 +384,7 @@ export class NuiSmsServiceImplService { editAccount(username, editAccountParam); } return failList; - } catch (e) { + } catch (Exception e) { log.error("删除签名失败异常信息:{}", e.message); throw new AdminException("删除签名失败异常"); } @@ -394,8 +394,8 @@ export class NuiSmsServiceImplService { * signCreate */ async signCreate(...args: any[]): Promise { - if (ObjectUtil.isNotEmpty(param.getImgUrl())) { - param.setImgUrl(Paths.get(RequestUtils.getReqeustURI(), param.getImgUrl()).toString()); + if (!!param.getImgUrl()) { + param.setImgUrl(path.join(RequestUtils.getReqeustURI(), param.getImgUrl()).toString()); } const signCreateUrl: string = String.format(SIGN_ADD_URL, username); try { @@ -405,7 +405,7 @@ export class NuiSmsServiceImplService { const failList: JSONArray = data.getJSONArray("failList"); throw new ApiException(failList.getJSONObject(0).getStr("msg")); } - } catch (ApiException e) { + } catch (e) { log.error("创建签名失败异常信息:{}", e.message); throw new AdminException("创建签名失败"); } @@ -415,7 +415,7 @@ export class NuiSmsServiceImplService { * getSmsPackageList */ async getSmsPackageList(...args: any[]): Promise { - const pageListParam: Record = {}; + const pageListParam: Record = {}; pageListParam.put("package_name", param.getPackageName()); pageListParam.put("sms_num", param.getSmsNum()); pageListParam.put("price_start", param.getPriceStart()); @@ -432,7 +432,7 @@ export class NuiSmsServiceImplService { //删除null值 防止序列化报错 JacksonUtils.removeNull(result); return result; - } catch (e) { + } catch (Exception e) { log.error("获取套餐列表失败异常信息:{}", e.message); throw new AdminException("获取套餐列表失败"); } @@ -443,7 +443,7 @@ export class NuiSmsServiceImplService { */ async orderCalculate(...args: any[]): Promise { const orderCalculateUrl: string = String.format(ORDER_CALCULATE_URL, username); - const orderCalculateBody: Record = {}; + const orderCalculateBody: Record = {}; orderCalculateBody.put("package_id", param.getPackageId()); try { const jsonObject: Record = NiucloudUtils.Niucloud.post(orderCalculateUrl, orderCalculateBody); @@ -451,7 +451,7 @@ export class NuiSmsServiceImplService { //删除null值 防止序列化报错 JacksonUtils.removeNull(result); return result; - } catch (e) { + } catch (Exception e) { log.error("计算订单失败异常信息:{}", e.message); throw new AdminException("计算订单失败"); } @@ -462,7 +462,7 @@ export class NuiSmsServiceImplService { */ async createOrder(...args: any[]): Promise { const orderCreateUrl: string = String.format(ORDER_CREATE_URL, username); - const orderCreateBody: Record = {}; + const orderCreateBody: Record = {}; orderCreateBody.put("package_id", param.getPackageId()); try { const jsonObject: Record = NiucloudUtils.Niucloud.post(orderCreateUrl, orderCreateBody); @@ -470,7 +470,7 @@ export class NuiSmsServiceImplService { //删除null值 防止序列化报错 JacksonUtils.removeNull(result); return result; - } catch (e) { + } catch (Exception e) { log.error("创建订单失败异常信息:{}", e.message); throw new AdminException("创建订单失败"); } @@ -490,7 +490,7 @@ export class NuiSmsServiceImplService { } const returnUrl: string = String.format("%s://%s/site/setting/sms/pay", protocol, host); const payInfoUrl: string = String.format(ORDER_PAY_URL, username); - const payInfoBody: Record = {}; + const payInfoBody: Record = {}; payInfoBody.put("notify_url", payInfoUrl); payInfoBody.put("return_url", returnUrl); payInfoBody.put("out_trade_no", outTradeNo); @@ -500,7 +500,7 @@ export class NuiSmsServiceImplService { //删除null值 防止序列化报错 JacksonUtils.removeNull(result); return result; - } catch (e) { + } catch (Exception e) { log.error("获取支付信息失败异常信息:{}", e.message); throw new AdminException("获取支付信息失败"); } @@ -517,7 +517,7 @@ export class NuiSmsServiceImplService { //删除null值 防止序列化报错 JacksonUtils.removeNull(result); return result; - } catch (e) { + } catch (Exception e) { log.error("获取订单信息失败异常信息:{}", e.message); throw new AdminException("获取订单信息失败"); } @@ -534,7 +534,7 @@ export class NuiSmsServiceImplService { //删除null值 防止序列化报错 JacksonUtils.removeNull(result); return result; - } catch (e) { + } catch (Exception e) { log.error("获取订单状态失败异常信息:{}", e.message); throw new AdminException("获取订单状态失败"); } @@ -545,21 +545,21 @@ export class NuiSmsServiceImplService { */ async templateCreate(...args: any[]): Promise { const templateKey: string = param.getTemplateKey(); - const templateList: TemplateListVo[] = getTemplateList(smsType, username); + TemplateListVo[] templateList = getTemplateList(smsType, username); // 查找模版信息,如果不存在则抛出异常 - const templateInfo: TemplateListVo = templateList.stream() + const templateInfo: TemplateListVo = templateList .filter(item => item.getKey() === templateKey) .findFirst() .orElseThrow(() => new AdminException("当前模版未配置短信内容")); // 检查模版是否配置了短信内容,如果未配置则抛出异常 - if (ObjectUtil.isEmpty(templateInfo.getSms()) || ObjectUtil.isEmpty(templateInfo.getSms().get("content"))) { + if (!templateInfo.getSms() || !templateInfo.getSms(.get("content"))) { throw new AdminException("当前模版未配置短信内容"); } // 检查模版是否已经审核通过,如果已通过则抛出异常 - const modelInfo: NiuSmsTemplate[] = niuSmsTemplateMapper.selectList(new QueryWrapper() + NiuSmsTemplate[] modelInfo = this.niuSmsTemplateRepository.find(new () .eq("template_key", templateKey) .eq("site_id", RequestUtils.siteId()) .eq("username", username)); @@ -569,7 +569,7 @@ export class NuiSmsServiceImplService { const config: Record = getConfig(false); const templateCreateUrl: string = String.format(TEMPLATE_ADD_URL, username); - const templateCreateBody: Record = {}; + const templateCreateBody: Record = {}; templateCreateBody.put("temName", path.basename(templateInfo)); templateCreateBody.put("temType", param.getTemplateType()); templateCreateBody.put("temContent", templateInfo.getSms().get("content")); @@ -583,7 +583,7 @@ export class NuiSmsServiceImplService { const jsonObject: Record = NiucloudUtils.Niucloud.post(templateCreateUrl, templateCreateBody); result = jsonObject.getJSONObject("data"); JacksonUtils.removeNull(result); // 删除null值,防止序列化报错 - } catch (e) { + } catch (Exception e) { log.error("创建模版失败异常信息:{},", e.message); throw new AdminException("创建模版失败"); } @@ -599,17 +599,17 @@ export class NuiSmsServiceImplService { niuSmsTemplate.setTemplateKey(templateKey); niuSmsTemplate.setAuditStatus(TemplateAuditStatus.TEMPLATE_WAIT.getCode().toString()); niuSmsTemplate.setTemplateId(temId.toString()); - niuSmsTemplate.setReportInfo(JSONUtil.toJsonStr(result)); - niuSmsTemplate.setCreateTime(System.currentTimeMillis() / 1000); - niuSmsTemplate.setUpdateTime(System.currentTimeMillis() / 1000); - niuSmsTemplateMapper.insert(niuSmsTemplate); + niuSmsTemplate.setReportInfo(JSON.stringify(result)); + niuSmsTemplate.setCreateTime(Math.floor(Date.now() / 1000)); + niuSmsTemplate.setUpdateTime(Math.floor(Date.now() / 1000)); + this.niuSmsTemplateRepository.save(niuSmsTemplate); } else { const niuSmsTemplate: NiuSmsTemplate = modelInfo.get(0); niuSmsTemplate.setAuditStatus(TemplateAuditStatus.TEMPLATE_WAIT.getCode().toString()); niuSmsTemplate.setTemplateId(temId.toString()); - niuSmsTemplate.setReportInfo(JSONUtil.toJsonStr(result)); - niuSmsTemplate.setUpdateTime(System.currentTimeMillis() / 1000); - niuSmsTemplateMapper.updateById(niuSmsTemplate); + niuSmsTemplate.setReportInfo(JSON.stringify(result)); + niuSmsTemplate.setUpdateTime(Math.floor(Date.now() / 1000)); + this.niuSmsTemplateRepository.save(niuSmsTemplate); } return result != null ? result : new Record(); @@ -620,7 +620,7 @@ export class NuiSmsServiceImplService { */ async templateDelete(...args: any[]): Promise { const config: Record = getConfig(false); - const deleteBody: Record = {}; + const deleteBody: Record = new HashRecord<>(); const time: number = DateUtil.currentSeconds(); deleteBody.put("tKey", time); deleteBody.put("password", DigestUtil.md5Hex(DigestUtil.md5Hex(config.getStr("password")) + time)); @@ -628,8 +628,8 @@ export class NuiSmsServiceImplService { deleteBody.put("temId", templateId); try { sendHttp(TEMPLATE_DELETE, deleteBody); - niuSmsTemplateMapper.delete(new QueryWrapper().eq("template_id", templateId)); - } catch (e) { + this.niuSmsTemplateRepository.delete(new ().eq("template_id", templateId)); + } catch (Exception e) { log.error("删除模版失败异常信息:{},", e.message); throw new AdminException("删除模版失败"); } @@ -639,28 +639,28 @@ export class NuiSmsServiceImplService { * templateInfo */ async templateInfo(...args: any[]): Promise { - const niuSmsTemplate: NiuSmsTemplate = niuSmsTemplateMapper.selectOne(new LambdaQueryWrapper() + const niuSmsTemplate: NiuSmsTemplate = this.niuSmsTemplateRepository.findOne(new Lambda() .eq(NiuSmsTemplate::getSiteId, RequestUtils.siteId()) .eq(NiuSmsTemplate::getSmsType, smsType) .eq(NiuSmsTemplate::getUsername, username) .eq(NiuSmsTemplate::getTemplateKey, templateKey)); - if (ObjectUtil.isEmpty(niuSmsTemplate)){ + if (!niuSmsTemplate){ throw new AdminException("短信模版暂未报备"); } const orderCreateUrl: string = String.format(TEMPLATE_INFO_URL, username); - const templateInfoParam: Record = {}; + const templateInfoParam: Record = {}; templateInfoParam.put("tem_id", niuSmsTemplate.getTemplateId()); try { const jsonObject: Record = NiucloudUtils.Niucloud.get(orderCreateUrl, templateInfoParam); const result: Record = jsonObject.getJSONObject("data"); //删除null值 防止序列化报错 JacksonUtils.removeNull(result); - const auditStatus: string = result.containsKey("auditResult") && ObjectUtil.isNotEmpty(result.getJSONObject("auditResult")) + const auditStatus: string = result.containsKey("auditResult") && !!result.getJSONObject("auditResult") ? result.getStr("auditResult") : niuSmsTemplate.getAuditStatus(); niuSmsTemplate.setAuditStatus(auditStatus); - niuSmsTemplateMapper.updateById(niuSmsTemplate); + this.niuSmsTemplateRepository.save(niuSmsTemplate); return niuSmsTemplate; - } catch (e) { + } catch (Exception e) { log.error("获取模版信息失败异常信息:{}", e.message); throw new AdminException("获取模版信息失败"); } @@ -670,12 +670,12 @@ export class NuiSmsServiceImplService { * sendHttp */ async sendHttp(...args: any[]): Promise { - const response: HttpResponse = HttpRequest.post(url).body(JSONUtil.toJsonStr(body)).execute(); + const response: HttpResponse = HttpRequest.post(url).body(JSON.stringify(body)).execute(); if (!response.isOk()) { throw new AdminException("HTTP请求失败,状态码: " + response.getStatus()); } - const resJson: Record = JSONUtil.parseObj(response.body()); + const resJson: Record = JSON.parse(response.body()); if (resJson.getInt("code") != 200) { throw new AdminException(resJson.getStr("msg")); } @@ -687,12 +687,12 @@ export class NuiSmsServiceImplService { */ async setConfig(...args: any[]): Promise { const config: Record = getConfig(true); - config.put("default", ObjectUtil.isNotEmpty(param.getDefaultVal()) ? param.getDefaultVal() : config.getOrDefault("default", "")); + config.put("default", !!param.getDefaultVal() ? param.getDefaultVal() : config.getOrDefault("default", "")); const niuSmsConfig: Record = config.getJSONObject(NIUYUN); - const newNiuSmsConfig: Record = {}; - newNiuSmsConfig.put("username", ObjectUtil.isNotEmpty(param.getUsername()) ? param.getUsername() : niuSmsConfig != null ? niuSmsConfig.getOrDefault("username", "") : ""); - newNiuSmsConfig.put("password", ObjectUtil.isNotEmpty(param.getPassword()) ? param.getPassword() : niuSmsConfig != null ? niuSmsConfig.getOrDefault("password", "") : ""); - newNiuSmsConfig.put("signature", ObjectUtil.isNotEmpty(param.getSignature()) ? param.getSignature() : niuSmsConfig != null ? niuSmsConfig.getOrDefault("signature", "") : ""); + const newNiuSmsConfig: Record = {}; + newNiuSmsConfig.put("username", !!param.getUsername() ? param.getUsername() : niuSmsConfig != null ? niuSmsConfig.getOrDefault("username", "") : ""); + newNiuSmsConfig.put("password", !!param.getPassword() ? param.getPassword() : niuSmsConfig != null ? niuSmsConfig.getOrDefault("password", "") : ""); + newNiuSmsConfig.put("signature", !!param.getSignature() ? param.getSignature() : niuSmsConfig != null ? niuSmsConfig.getOrDefault("signature", "") : ""); config.put(NIUYUN, newNiuSmsConfig); coreConfigService.setConfig(RequestUtils.siteId(), "SMS", config); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-channel-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-channel-service-impl.service.ts index cabe4aff..59084086 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-channel-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-channel-service-impl.service.ts @@ -16,7 +16,7 @@ export class PayChannelServiceImplService { for (const channelKey of param.getConfig().keySet()) { const channel: Record = param.getConfig().getJSONObject(channelKey); const payTypeList: JSONArray = channel.getJSONArray("pay_type"); - for (const i of number = 0; i < payTypeList.size(); i++) { + for (const i of number = 0; i < payTypeList.length; i++) { const payType: Record = payTypeList.getJSONObject(i); set(channel.getStr("key"), payType.getStr("key"), payType); } @@ -27,14 +27,14 @@ export class PayChannelServiceImplService { * set */ async set(...args: any[]): Promise { - const payChannel: PayChannel = payChannelMapper.selectOne(new QueryWrapper() + const payChannel: PayChannel = this.payChannelRepository.findOne(new () .eq("site_id", RequestUtils.siteId()) .eq("channel", channel) .eq("type", type) ); - if (ObjectUtil.isNotEmpty(payChannel)) { - const config: Record = JSONUtil.parseObj(payChannel.getConfig()); + if (!!payChannel) { + const config: Record = JSON.parse(payChannel.getConfig()); for (const key of data.getJSONObject("config").keySet()) { const value: string = data.getJSONObject("config").getStr(key, ""); if (!value.includes("*")) config.set(key, value); @@ -42,7 +42,7 @@ export class PayChannelServiceImplService { payChannel.setConfig(config.toString()); payChannel.setSort(data.getInt("sort")); payChannel.setStatus(data.getInt("status")); - payChannelMapper.updateById(payChannel); + this.payChannelRepository.save(payChannel); } else { const model: PayChannel = new PayChannel(); model.setSiteId(RequestUtils.siteId()); @@ -51,7 +51,7 @@ export class PayChannelServiceImplService { model.setConfig(data.getJSONObject("config").toString()); model.setSort(data.getInt("sort")); model.setStatus(data.getInt("status")); - payChannelMapper.insert(model); + this.payChannelRepository.save(model); } } @@ -59,17 +59,17 @@ export class PayChannelServiceImplService { * getListByChannel */ async getListByChannel(...args: any[]): Promise { - const payChannel: PayChannel[] = payChannelMapper.selectList(new QueryWrapper() + PayChannel[] payChannel = this.payChannelRepository.find(new () .eq("site_id", RequestUtils.siteId()) .eq("channel", channel) ); - const list: PayChannelListVo[] = []; + PayChannelListVo[] list = []; for (const item of payChannel) { const vo: PayChannelListVo = new PayChannelListVo(); - BeanUtils.copyProperties(item, vo); - if (ObjectUtil.isNotEmpty(item.getConfig()) && "transfer" === channel) { - const config: Record = JSONUtil.parseObj(item.getConfig()); + Object.assign(vo, item); + if (!!item.getConfig() && "transfer".equals(channel)) { + const config: Record = JSON.parse(item.getConfig()); // 定义需要隐藏的配置项列表 String[] keysToHide = { "mch_secret_key", @@ -81,17 +81,17 @@ export class PayChannelServiceImplService { for (const key of keysToHide) { const value: string = config.getStr(key); - if (ObjectUtil.isNotEmpty(value)) { + if (!!value) { try { config.set(key, StringUtils.hide(value, 0, value.length())); - } catch (e) { + } catch (Exception e) { log.error("字段:{},值:{},支付设置脱敏失败{}", key, value, e.message); } } } vo.setConfig(config.toString()); } - list.add(vo); + list.push(vo); } return list; diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-refund-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-refund-service-impl.service.ts index c441db96..5c7efad8 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-refund-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-refund-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -16,40 +16,40 @@ export class PayRefundServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); - if (ObjectUtil.isNotEmpty(searchParam.getRefundNo())) queryWrapper.eq("refund_no", searchParam.getRefundNo()); - if (ObjectUtil.isNotEmpty(searchParam.getStatus())) queryWrapper.eq("status", searchParam.getStatus()); - if (ObjectUtil.isNotEmpty(searchParam.getCreateTime())) QueryMapperUtils.buildByTime(queryWrapper, "create_time", searchParam.getCreateTime()); + if (!!searchParam.getRefundNo()) queryWrapper.eq("refund_no", searchParam.getRefundNo()); + if (!!searchParam.getStatus()) queryWrapper.eq("status", searchParam.getStatus()); + if (!!searchParam.getCreateTime()) QueryMapperUtils.buildByTime(queryWrapper, "create_time", searchParam.getCreateTime()); queryWrapper.orderByDesc("id"); const payTypeEnum: Record = PayTypeEnum.getType(); - const iPage: IPage = payRefundMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: PayRefundListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.payRefundRepository.findAndCount({ /* pagination */ }, queryWrapper); + PayRefundListVo[] list = []; + for (const item of records) { const vo: PayRefundListVo = new PayRefundListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); vo.setTypeName(payTypeEnum.getByPath(vo.getType() + ".name", String.class)); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * info */ async info(...args: any[]): Promise { - const model: PayRefund = payRefundMapper.selectOne( - new QueryWrapper() + const model: PayRefund = this.payRefundRepository.findOne( + new () .eq("refund_no", refundNo) .eq("site_id", RequestUtils.siteId()) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: PayRefundInfoVo = new PayRefundInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-service-impl.service.ts index 1df7dcd0..d4b496b0 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -16,32 +16,32 @@ export class PayServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("id"); - const iPage: IPage = payMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: PayListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.payRepository.findAndCount({ /* pagination */ }, queryWrapper); + PayListVo[] list = []; + for (const item of records) { const vo: PayListVo = new PayListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * info */ async info(...args: any[]): Promise { - const model: Pay = payMapper.selectOne( - new QueryWrapper() + const model: Pay = this.payRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: PayInfoVo = new PayInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -61,7 +61,7 @@ export class PayServiceImplService { model.setVoucher(addParam.getVoucher()); model.setStatus(addParam.getStatus()); model.setJson(addParam.getJson()); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setPayTime(addParam.getPayTime()); model.setCancelTime(addParam.getCancelTime()); model.setType(addParam.getType()); @@ -69,19 +69,19 @@ export class PayServiceImplService { model.setMainType(addParam.getMainType()); model.setChannel(addParam.getChannel()); model.setFailReason(addParam.getFailReason()); - payMapper.insert(model); + this.payRepository.save(model); } /** * edit */ async edit(...args: any[]): Promise { - const model: Pay = payMapper.selectOne( - new QueryWrapper() + const model: Pay = this.payRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); model.setId(id); model.setSiteId(editParam.getSiteId()); model.setMainId(editParam.getMainId()); @@ -101,21 +101,21 @@ export class PayServiceImplService { model.setMainType(editParam.getMainType()); model.setChannel(editParam.getChannel()); model.setFailReason(editParam.getFailReason()); - payMapper.updateById(model); + this.payRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - const model: Pay = payMapper.selectOne( - new QueryWrapper() + const model: Pay = this.payRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); - payMapper.delete(new QueryWrapper().eq("id", id)); + this.payRepository.delete(new ().eq("id", id)); } /** @@ -123,12 +123,12 @@ export class PayServiceImplService { */ async getFriendspayInfoByTrade(...args: any[]): Promise { const payInfo: GetInfoByTradeVo = corePayService.getInfoByTrade(RequestUtils.siteId(), param.getTradeType(), param.getTradeId(), param.getChannel(), "friendspay"); - if (ObjectUtil.isEmpty(payInfo)) { + if (!payInfo) { return new FriendsPayInfoByTradeVo(); } const vo: FriendsPayInfoByTradeVo = new FriendsPayInfoByTradeVo(); - BeanUtils.copyProperties(payInfo, vo); + Object.assign(vo, payInfo); vo.setConfig(payInfo.getConfig()); vo.setCreateTime(DateUtils.timestampToString(payInfo.getCreateTime())); @@ -140,21 +140,21 @@ export class PayServiceImplService { vo.setPayTime(DateUtils.timestampToString(payInfo.getPayTime())); } - const posterQueryWrapper: QueryWrapper = new QueryWrapper<>(); + posterQueryWrapper = {}; posterQueryWrapper.eq("site_id", RequestUtils.siteId()) .eq("type", "friendspay") .eq("status", 1) .eq("is_default", 1); - const poster: SysPoster = sysPosterMapper.selectOne(posterQueryWrapper); - if (ObjectUtil.isNotEmpty(poster)) { + const poster: SysPoster = this.sysPosterRepository.findOne(posterQueryWrapper); + if (!!poster) { vo.setPosterId(poster.getId()); } - const memberQueryWrapper: QueryWrapper = new QueryWrapper<>(); + memberQueryWrapper = {}; memberQueryWrapper.eq("site_id", RequestUtils.siteId()) .eq("member_id", vo.getMainId()); - const member: Member = memberMapper.selectOne(memberQueryWrapper); + const member: Member = this.memberRepository.findOne(memberQueryWrapper); vo.setMember(member); const qrcode: QR = getQrcode(param.getTradeType(), param.getTradeId(), param.getChannel()); @@ -167,12 +167,12 @@ export class PayServiceImplService { * getPayTypeList */ async getPayTypeList(...args: any[]): Promise { - const payTypeList: PayTypeVo[] = corePayService.getPayTypeByTrade(RequestUtils.siteId(), "", ChannelEnum.H5); - if (ObjectUtil.isEmpty(payTypeList)) { + PayTypeVo[] payTypeList = corePayService.getPayTypeByTrade(RequestUtils.siteId(), "", ChannelEnum.H5); + if (!payTypeList) { return Collections.emptyList(); } - return payTypeList.stream().filter(o => o.getKey() === "balancepay" || o.getKey() === "friendspay").toList(); + return payTypeList.filter(o => o.getKey() === "balancepay" || o.getKey() === "friendspay").toList(); } /** diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-transfer-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-transfer-service-impl.service.ts index bf5a4017..df62268c 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-transfer-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/pay/impl/pay-transfer-service-impl.service.ts @@ -15,7 +15,7 @@ export class PayTransferServiceImplService { async setSceneId(...args: any[]): Promise { const config: Record = coreTransferSceneService.getWechatTransferSceneConfig(RequestUtils.siteId()); - const tradeScenelist: Record = TransferSceneEnum.getWechatTransferSceneMap(); + const tradeScenelist: Record = TransferSceneEnum.getWechatTransferSceneMap(); if (!tradeScenelist.containsKey(param.getScene())) { throw new BadRequestException("不存在的商户转账场景"); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-account-log-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-account-log-service-impl.service.ts index 80272be3..e3d6a097 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-account-log-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-account-log-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -16,77 +16,77 @@ export class SiteAccountLogServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); //查询条件判断组装 - if (ObjectUtil.isNotEmpty(searchParam.getTradeNo())) { + if (!!searchParam.getTradeNo()) { queryWrapper.like("trade_no", searchParam.getTradeNo()); } - if (ObjectUtil.isNotEmpty(searchParam.getType())) { + if (!!searchParam.getType()) { queryWrapper.eq("type", searchParam.getType()); } - if (ObjectUtil.isNotEmpty(searchParam.getCreateTime())) { + if (!!searchParam.getCreateTime()) { String[] createTime = searchParam.getCreateTime(); QueryMapperUtils.buildByTime(queryWrapper, "create_time", createTime); } queryWrapper.orderByDesc("create_time"); - const iPage: IPage = siteAccountLogMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: SiteAccountLogListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.siteAccountLogRepository.findAndCount({ /* pagination */ }, queryWrapper); + SiteAccountLogListVo[] list = []; + for (const item of records) { const vo: SiteAccountLogListVo = new SiteAccountLogListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); const typeModel: any = new Object(); if (item.getType() === "pay") { - typeModel = payMapper.selectOne( - new QueryWrapper() + typeModel = this.payRepository.findOne( + new () .eq("out_trade_no", item.getTradeNo()) .last("limit 1")); } else if (item.getType() === "refund") { - typeModel = payRefundMapper.selectOne( - new QueryWrapper() + typeModel = this.payRefundRepository.findOne( + new () .eq("refund_no", item.getTradeNo()) .last("limit 1")); } else { - typeModel = payTransferMapper.selectOne( - new QueryWrapper() + typeModel = this.payTransferRepository.findOne( + new () .eq("transfer_no", item.getTradeNo()) .last("limit 1")); } vo.setPayInfo(typeModel); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * info */ async info(...args: any[]): Promise { - const model: SiteAccountLog = siteAccountLogMapper.selectOne( - new QueryWrapper() + const model: SiteAccountLog = this.siteAccountLogRepository.findOne( + new () .eq("site_id", RequestUtils.siteId()) .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: SiteAccountLogInfoVo = new SiteAccountLogInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); const typeModel: any = new Object(); if (model.getType() === "pay") { - typeModel = payMapper.selectOne( - new QueryWrapper() + typeModel = this.payRepository.findOne( + new () .eq("out_trade_no", model.getTradeNo()) .last("limit 1")); } else if (model.getType() === "refund") { - typeModel = payRefundMapper.selectOne( - new QueryWrapper() + typeModel = this.payRefundRepository.findOne( + new () .eq("refund_no", model.getTradeNo()) .last("limit 1")); } else { - typeModel = payTransferMapper.selectOne( - new QueryWrapper() + typeModel = this.payTransferRepository.findOne( + new () .eq("transfer_no", model.getTradeNo()) .last("limit 1")); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-group-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-group-service-impl.service.ts index 27ec8104..b64fa069 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-group-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-group-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class SiteGroupServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -17,18 +16,18 @@ export class SiteGroupServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); - if (ObjectUtil.isNotEmpty(searchParam.getKeywords())) { + queryWrapper = {}; + if (!!searchParam.getKeywords()) { queryWrapper.like("group_name", searchParam.getKeywords()); } queryWrapper.orderByDesc("group_id"); - const iPage: IPage = siteGroupMapper.selectPage(new Page<>(page, limit), queryWrapper); + iPage = this.siteGroupRepository.findAndCount({ /* pagination */ }, queryWrapper); - //获取所有的const addonList: addon - List = addonMapper.selectList(new QueryWrapper().orderByDesc("id")); - const list: SiteGroupListVo[] = []; - for (const item of iPage.getRecords()) { + //获取所有的addon + Addon[] addonList = this.addonRepository.find(new ().orderByDesc("id")); + SiteGroupListVo[] list = []; + for (const item of records) { const vo: SiteGroupListVo = new SiteGroupListVo(); vo.setGroupId(item.getGroupId()); vo.setGroupName(item.getGroupName()); @@ -39,64 +38,64 @@ export class SiteGroupServiceImplService { vo.setAddon(addonJson); const appJson: JSONArray = JSONUtil.parseArray(item.getApp()); vo.setApp(appJson); - const addonStr: string[] = []; - const appStr: string[] = []; - const appList: SiteGroupListVo.IconAndTitle[] = []; - const addonListResult: SiteGroupListVo.IconAndTitle[] = []; + String[] addonStr = []; + String[] appStr = []; + SiteGroupListVo.IconAndTitle[] appList = []; + SiteGroupListVo.IconAndTitle[] addonListResult = []; for (const addon of addonList) { if(addonJson.includes(addon.getKey())){ - addonStr.add(addon.getTitle()); + addonStr.push(addon.getTitle()); SiteGroupListVo.const iconAndTitle: IconAndTitle = new SiteGroupListVo.IconAndTitle(); iconAndTitle.setTitle(addon.getTitle()); try { iconAndTitle.setIcon(ImageToBase64ConverterUtil.convertToBase64(addon.getIcon())); - } catch (e) { + } catch (Exception e) { iconAndTitle.setIcon(""); } - addonListResult.add(iconAndTitle); + addonListResult.push(iconAndTitle); } if(appJson.includes(addon.getKey())){ - appStr.add(addon.getTitle()); + appStr.push(addon.getTitle()); SiteGroupListVo.const iconAndTitle: IconAndTitle = new SiteGroupListVo.IconAndTitle(); iconAndTitle.setTitle(addon.getTitle()); try { iconAndTitle.setIcon(ImageToBase64ConverterUtil.convertToBase64(addon.getIcon())); - } catch (e) { + } catch (Exception e) { iconAndTitle.setIcon(""); } - appList.add(iconAndTitle); + appList.push(iconAndTitle); } } vo.setAddonName(addonStr); vo.setAppName(appStr); vo.setAddonList(addonListResult); vo.setAppList(appList); - list.add(vo); + list.push(vo); } - return PageResult.build(iPage.getCurrent(), iPage.getSize(), iPage.getTotal()).setData(list); + return PageResult.build(iPage.getCurrent(), iPage.getSize(), total).setData(list); } /** * getAll */ async getAll(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("group_id"); - return siteGroupMapper.selectList(queryWrapper); + return this.siteGroupRepository.find(queryWrapper); } /** * info */ async info(...args: any[]): Promise { - const model: SiteGroup = siteGroupMapper.selectOne( - new QueryWrapper() + const model: SiteGroup = this.siteGroupRepository.findOne( + new () .eq("group_id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); return model; } @@ -112,23 +111,23 @@ export class SiteGroupServiceImplService { const model: SiteGroup = new SiteGroup(); model.setGroupName(addParam.getGroupName()); model.setGroupDesc(addParam.getGroupDesc()); - model.setApp(JSONUtil.toJsonStr(addParam.getApp())); - model.setAddon(JSONUtil.toJsonStr(addParam.getAddon())); + model.setApp(JSON.stringify(addParam.getApp())); + model.setAddon(JSON.stringify(addParam.getAddon())); model.setCreateTime(DateUtils.currTime()); model.setUpdateTime(DateUtils.currTime()); - siteGroupMapper.insert(model); + this.siteGroupRepository.save(model); } /** * edit */ async edit(...args: any[]): Promise { - const model: SiteGroup = siteGroupMapper.selectOne( - new QueryWrapper() + const model: SiteGroup = this.siteGroupRepository.findOne( + new () .eq("group_id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); const groupRoles: JSONArray = new JSONArray(); groupRoles.addAll(editParam.getAddon()); @@ -141,21 +140,21 @@ export class SiteGroupServiceImplService { group.setGroupId(editParam.getGroupId()); group.setGroupName(editParam.getGroupName()); group.setGroupDesc(editParam.getGroupDesc()); - group.setApp(JSONUtil.toJsonStr(editParam.getApp())); - group.setAddon(JSONUtil.toJsonStr(editParam.getAddon())); + group.setApp(JSON.stringify(editParam.getApp())); + group.setAddon(JSON.stringify(editParam.getAddon())); group.setUpdateTime(DateUtils.currTime()); - siteGroupMapper.updateById(group); + this.siteGroupRepository.save(group); this.cached.remove("site_group_menu_ids" + id); if (model.getApp() !== group.getApp()) { // 修改站点应用 const siteModel: Site = new Site(); siteModel.setApp(model.getApp()); - siteMapper.update(siteModel, new QueryWrapper().eq("group_id", id)); + siteMapper.update(siteModel, new ().eq("group_id", id)); } if (model.getApp() !== group.getApp() || model.getAddon() !== group.getAddon()) { - const siteList: Site[] = siteMapper.selectList(new QueryWrapper().eq("group_id", id)); - if (ObjectUtil.isNotEmpty(siteList)) { + Site[] siteList = this.siteRepository.find(new ().eq("group_id", id)); + if (!!siteList) { for (const site of siteList) { siteService.siteAddonChange(site, model); coreSiteService.clearSiteCache(site.getSiteId()); @@ -169,28 +168,28 @@ export class SiteGroupServiceImplService { * del */ async del(...args: any[]): Promise { - const model: SiteGroup = siteGroupMapper.selectOne( - new QueryWrapper() + const model: SiteGroup = this.siteGroupRepository.findOne( + new () .eq("group_id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); - const siteCount: number = siteMapper.selectCount(new QueryWrapper().eq("group_id", id)); + if (!model) throw new BadRequestException("数据不存在!"); + const siteCount: number = this.siteRepository.count(new ().eq("group_id", id)); if(siteCount>0){ throw new BadRequestException("当前套餐存在站点,不能删除"); } - siteGroupMapper.delete(new QueryWrapper().eq("group_id", id)); + this.siteGroupRepository.delete(new ().eq("group_id", id)); } /** * checkAddon */ async checkAddon(...args: any[]): Promise { - const addonListVoMap: Record = coreAddonService.getInstallAddonList(); - const keys: string[] = new ArrayList<>(addonListVoMap.keySet()); - const addonString: string[] = JSONUtil.toList(jsonArray, String.class); + const addonListVoMap: Record = coreAddonService.getInstallAddonList(); + String[] keys=new ArrayList<>(addonListVoMap.keySet()); + String[] addonString=JSONUtil.toList(jsonArray, String.class); keys.retainAll(addonString); - if(keys.size()!=addonString.size()){ + if(keys.length!=addonString.length){ throw new AdminException("SITE_GROUP_APP_NOT_EXIST"); } } @@ -199,14 +198,14 @@ export class SiteGroupServiceImplService { * getUserSiteGroupAll */ async getUserSiteGroupAll(...args: any[]): Promise { - const siteGroupListVoList: SiteGroupListVo[] = []; - const siteGroupList: SiteGroup[] = siteGroupMapper.selectList(new QueryWrapper<>()); + SiteGroupListVo[] siteGroupListVoList=[]; + SiteGroup[] siteGroupList= this.siteGroupRepository.find({}); for (const siteGroup of siteGroupList) { const siteGroupListVo: SiteGroupListVo = new SiteGroupListVo(); - BeanUtils.copyProperties(siteGroup, siteGroupListVo); + Object.assign(siteGroupListVo, siteGroup); siteGroupListVo.setSiteNum(getUserSiteGroupSiteNum(uid, siteGroup.getGroupId())); - siteGroupListVoList.add(siteGroupListVo); + siteGroupListVoList.push(siteGroupListVo); } return siteGroupListVoList; } @@ -215,9 +214,9 @@ export class SiteGroupServiceImplService { * getUserSiteGroupSiteNum */ async getUserSiteGroupSiteNum(...args: any[]): Promise { - const userRoleMPJQueryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); + MPJuserRoleMPJQueryWrapper = new MPJQueryWrapper<>(); userRoleMPJQueryWrapper.setAlias("sur") - .leftJoin("?_site s ON sur.site_id = s.site_id".replace("?_", this.config.get('tablePrefix'))); + .leftJoin("?_site s ON sur.site_id = s.site_id".replace("?_", this.appConfig.tablePrefix)); userRoleMPJQueryWrapper.eq("sur.uid", uid); userRoleMPJQueryWrapper.eq("sur.is_admin", 1); userRoleMPJQueryWrapper.eq("s.group_id", groupId); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-service-impl.service.ts index 439db666..2ca0288e 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-service-impl.service.ts @@ -1,13 +1,12 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as path from 'path'; @Injectable() export class SiteServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -18,19 +17,19 @@ export class SiteServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper(); + MPJqueryWrapper = new MPJQueryWrapper(); queryWrapper.setAlias("se") .selectAll(Site.class) .select("sg.group_name") - .leftJoin("?_site_group sg on sg.group_id = se.group_id".replace("?_", this.config.get('tablePrefix'))); + .leftJoin("?_site_group sg on sg.group_id = se.group_id".replace("?_", this.appConfig.tablePrefix)); //查询条件判断组装 - if (ObjectUtil.isNotEmpty(searchParam.getKeywords())) { + if (!!searchParam.getKeywords()) { queryWrapper.like("se.siteName", searchParam.getKeywords()).or().like("se.siteName", searchParam.getKeywords()); } - if (ObjectUtil.isNotEmpty(searchParam.getApp())) { + if (!!searchParam.getApp()) { queryWrapper.and(wrapper => wrapper .like("sg.addon", searchParam.getApp()) .or() @@ -38,19 +37,19 @@ export class SiteServiceImplService { ); } - if (ObjectUtil.isNotEmpty(searchParam.getStatus())) { + if (!!searchParam.getStatus()) { queryWrapper.eq("se.status", searchParam.getStatus()); } - if (ObjectUtil.isNotEmpty(searchParam.getGroupId())) { + if (!!searchParam.getGroupId()) { queryWrapper.eq("se.group_id", searchParam.getGroupId()); } - if (ObjectUtil.isNotEmpty(searchParam.getSiteDomain())) { + if (!!searchParam.getSiteDomain()) { queryWrapper.like("se.site_domain", searchParam.getSiteDomain()); } queryWrapper.ne("se.app_type", "admin"); - if (ObjectUtil.isNotEmpty(searchParam.getCreateTime())) { + if (!!searchParam.getCreateTime()) { String[] createTime = searchParam.getCreateTime(); const startTime: number = (createTime[0] == null) ? 0L : DateUtils.StringToTimestamp(createTime[0]); @@ -64,7 +63,7 @@ export class SiteServiceImplService { } } - if (ObjectUtil.isNotEmpty(searchParam.getExpireTime())) { + if (!!searchParam.getExpireTime()) { String[] expireTime = searchParam.getExpireTime(); const startTime: number = (expireTime[0] == null) ? 0 : DateUtils.StringToTimestamp(expireTime[0]); @@ -80,22 +79,22 @@ export class SiteServiceImplService { queryWrapper.orderByDesc("se.create_time"); - const iPage: IPage = siteMapper.selectJoinPage(new Page<>(page, limit), SiteListVo.class, queryWrapper); + iPage = siteMapper.selectJoinPage({ /* pagination */ }, SiteListVo.class, queryWrapper); - const list: SiteListVo[] = []; - for (const item of iPage.getRecords()) { + SiteListVo[] list = []; + for (const item of records) { const vo: SiteListVo = new SiteListVo(); - BeanUtils.copyProperties(item, vo); - const userRoleMPJQueryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); + Object.assign(vo, item); + MPJuserRoleMPJQueryWrapper = new MPJQueryWrapper<>(); userRoleMPJQueryWrapper.select("nsu.uid, nsu.username, nsu.head_img, nsu.real_name, nsu.last_ip, nsu.last_time, nsu.create_time, nsu.login_count") .setAlias("nsur") - .leftJoin("?_sys_user nsu ON nsur.uid = nsu.uid".replace("?_", this.config.get('tablePrefix'))); + .leftJoin("?_sys_user nsu ON nsur.uid = nsu.uid".replace("?_", this.appConfig.tablePrefix)); userRoleMPJQueryWrapper.eq("nsur.is_admin", 1); userRoleMPJQueryWrapper.eq("nsur.site_id", item.getSiteId()); vo.setAdmin(sysUserRoleMapper.selectJoinOne(SiteAdminVo.class, userRoleMPJQueryWrapper)); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal(), list); + return PageResult.build(page, limit, total, list); } /** @@ -110,7 +109,7 @@ export class SiteServiceImplService { */ async add(...args: any[]): Promise { const siteGroup: SiteGroup = siteGroupService.info(addParam.getGroupId()); - if (ObjectUtil.isNull(siteGroup) || ObjectUtil.isEmpty(siteGroup)) { + if (ObjectUtil.isNull(siteGroup) || !siteGroup) { throw new BadRequestException("SITE_GROUP_NOT_EXIST"); } const model: Site = new Site(); @@ -122,7 +121,7 @@ export class SiteServiceImplService { model.setApp(siteGroup.getApp()); model.setAddons(""); model.setSiteDomain(addParam.getSiteDomain()); - siteMapper.insert(model); + this.siteRepository.save(model); const siteId: number = model.getSiteId(); if (ObjectUtil.isNull(addParam.getUid()) || addParam.getUid() == 0) { //添加用户 @@ -140,7 +139,7 @@ export class SiteServiceImplService { sysUserRoleParam.setRoleIds(new JsonArray().toString()); sysUserRoleParam.setIsAdmin(1); sysUserRoleParam.setSiteId(siteId); - userRoleService.add(sysUserRoleParam); + userRoleService.push(sysUserRoleParam); } const event: SiteAddAfterEvent = new SiteAddAfterEvent(); @@ -151,7 +150,7 @@ export class SiteServiceImplService { event.setSiteGroup(siteGroup); EventAndSubscribeOfPublisher.publishAll(event); - const param: Record = {}; + const param: Record = {}; param.put("site_id", siteId); param.put("main_app", siteGroup.getApp()); param.put("tag", "add"); @@ -162,39 +161,39 @@ export class SiteServiceImplService { * edit */ async edit(...args: any[]): Promise { - const model: Site = siteMapper.selectOne( - new QueryWrapper() + const model: Site = this.siteRepository.findOne( + new () .eq("site_id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); - if (ObjectUtil.isNotNull(editParam.getGroupId()) && ObjectUtil.isNotEmpty(editParam.getGroupId()) && editParam.getGroupId() !== model.getGroupId()) { + if (!model) throw new BadRequestException("数据不存在!"); + if (ObjectUtil.isNotNull(editParam.getGroupId()) && !!editParam.getGroupId() && editParam.getGroupId() !== model.getGroupId()) { model.setGroupId(editParam.getGroupId()); } - if (ObjectUtil.isNotNull(editParam.getSiteName()) && ObjectUtil.isNotEmpty(editParam.getSiteName())) { + if (ObjectUtil.isNotNull(editParam.getSiteName()) && !!editParam.getSiteName()) { model.setSiteName(editParam.getSiteName()); } const oldSiteGroup: SiteGroup = siteGroupService.info(model.getGroupId()); const initallJsonArray: JSONArray = new JSONArray(); - if (ObjectUtil.isNull(model.getInitalledAddon()) || ObjectUtil.isEmpty(model.getInitalledAddon())) { + if (ObjectUtil.isNull(model.getInitalledAddon()) || !model.getInitalledAddon()) { initallJsonArray.addAll(JSONUtil.parseArray(oldSiteGroup.getApp())); initallJsonArray.addAll(JSONUtil.parseArray(oldSiteGroup.getAddon())); } const siteGroup: SiteGroup = siteGroupService.info(editParam.getGroupId()); - if (ObjectUtil.isNull(siteGroup) || ObjectUtil.isEmpty(siteGroup)) { + if (ObjectUtil.isNull(siteGroup) || !siteGroup) { throw new BadRequestException("SITE_GROUP_NOT_EXIST"); } initallJsonArray.addAll(JSONUtil.parseArray(siteGroup.getApp())); initallJsonArray.addAll(JSONUtil.parseArray(siteGroup.getAddon())); - model.setInitalledAddon(JSONUtil.toJsonStr(initallJsonArray)); + model.setInitalledAddon(JSON.stringify(initallJsonArray)); model.setSiteDomain(editParam.getSiteDomain()); model.setExpireTime(new DateTime(editParam.getExpireTime()).getTime() / 1000); model.setStatus(model.getExpireTime() > DateUtils.currTime() ? SiteStatusEnum.ON.getCode() : SiteStatusEnum.EXPIRE.getCode()); - siteMapper.updateById(model); + this.siteRepository.save(model); coreSiteService.clearSiteCache(id); @@ -211,15 +210,15 @@ export class SiteServiceImplService { * del */ async del(...args: any[]): Promise { - const siteUserRoles: SysUserRole[] = null; + SysUserRole[] siteUserRoles = null; const delResult: number = 0; try { const model: Site = siteMapper.selectById(id); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); //获取所有需要处理的Mapper - List>> allModels = new ArrayList<>(generateService.getMappers("system")); + Class> allModels = new ArrayList<>(generateService.getMappers("system")); coreSiteService.getAddonKeysBySiteId(id).forEach(addon => allModels.addAll(generateService.getMappers(addon)) ); @@ -245,7 +244,7 @@ export class SiteServiceImplService { const wrapper: any = wrapperConstructor.newInstance(entityClass); eqMethod.invoke(wrapper, true, "site_id", id); deleteMethod.invoke(mapper, wrapper); - } catch (e) { + } catch (Exception e) { log.error("删除表数据失败: {} | 原因: {}", entityClass.getSimpleName(), e.getCause() != null ? e.getCause().getMessage() : e.message); @@ -253,14 +252,14 @@ export class SiteServiceImplService { } // 处理用户角色关系 - const userRoleWrapper: QueryWrapper = new QueryWrapper<>(); + userRoleWrapper = {}; userRoleWrapper.eq("site_id", id); - siteUserRoles = sysUserRoleMapper.selectList(userRoleWrapper); - delResult = sysUserRoleMapper.delete(userRoleWrapper); + siteUserRoles = this.sysUserRoleRepository.find(userRoleWrapper); + delResult = this.sysUserRoleRepository.delete(userRoleWrapper); // 删除站点主表 - siteMapper.deleteById(id); - } catch (e) { + this.siteRepository.delete(id); + } catch (Exception e) { log.error("删除站点失败: {}", e.message, e); throw new BadRequestException("删除失败: " + (e.getCause() != null ? e.getCause().getMessage() : e.message)); } @@ -282,7 +281,7 @@ export class SiteServiceImplService { const model: Site = new Site(); model.setSiteId(siteId); model.setStatus(SiteStatusEnum.CLOSE.getCode()); - siteMapper.updateById(model); + this.siteRepository.save(model); coreSiteService.clearSiteCache(siteId); } @@ -293,7 +292,7 @@ export class SiteServiceImplService { const model: Site = new Site(); model.setSiteId(siteId); model.setStatus(SiteStatusEnum.ON.getCode()); - siteMapper.updateById(model); + this.siteRepository.save(model); coreSiteService.clearSiteCache(siteId); } @@ -301,8 +300,8 @@ export class SiteServiceImplService { * getSiteCountByCondition */ async getSiteCountByCondition(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); - if (ObjectUtil.isNotEmpty(siteSearchParam.getCreateTime())) { + queryWrapper = {}; + if (!!siteSearchParam.getCreateTime()) { String[] createTime = siteSearchParam.getCreateTime(); const startTime: number = (createTime[0] == null) ? 0 : DateUtils.StringToTimestamp(createTime[0]); @@ -316,19 +315,19 @@ export class SiteServiceImplService { } } - if (ObjectUtil.isNotEmpty(siteSearchParam.getStatus())) { + if (!!siteSearchParam.getStatus()) { queryWrapper.eq("status", siteSearchParam.getStatus()); } - if (ObjectUtil.isNotEmpty(siteSearchParam.getGroupId())) { + if (!!siteSearchParam.getGroupId()) { queryWrapper.eq("group_id", siteSearchParam.getGroupId()); } - if (ObjectUtil.isNotEmpty(siteSearchParam.getAppType())) { + if (!!siteSearchParam.getAppType()) { queryWrapper.eq("app_type", siteSearchParam.getAppType()); } - if (ObjectUtil.isNotEmpty(siteSearchParam.getExpireTime())) { + if (!!siteSearchParam.getExpireTime()) { String[] expireTime = siteSearchParam.getExpireTime(); const startTime: number = (expireTime[0] == null) ? 0 : DateUtils.StringToTimestamp(expireTime[0]); @@ -341,7 +340,7 @@ export class SiteServiceImplService { queryWrapper.le("expire_time", startTime); } } - const siteCount: number = siteMapper.selectCount(queryWrapper); + const siteCount: number = this.siteRepository.count(queryWrapper); return siteCount.intValue(); } @@ -349,7 +348,7 @@ export class SiteServiceImplService { * getSiteAddons */ async getSiteAddons(...args: any[]): Promise { - return addonMapper.selectList(new QueryWrapper() + return this.addonRepository.find(new () .eq("type", AddonTypeEnum.ADDON.getType()) .eq("status", 1) .in("`key`", coreSiteService.getAddonKeysBySiteId(RequestUtils.siteId()))); @@ -374,10 +373,10 @@ export class SiteServiceImplService { */ async siteInit(...args: any[]): Promise { const siteInfo: SiteInfoVo = info(siteId); - if (ObjectUtil.isEmpty(siteInfo)) { + if (!siteInfo) { throw new AdminException("站点不存在"); } - const tables: string[] = SiteInitEnum.getSiteInitTables(siteId); + String[] tables = SiteInitEnum.getSiteInitTables(siteId); return coreSiteService.siteInitBySiteId(siteId, tables); } @@ -388,8 +387,8 @@ export class SiteServiceImplService { const authMenuList: JSONArray = authService.getAuthMenuTreeList(1, "all"); // 将菜单列表转换为Map,便于通过menu_key查找 - const authMenuMap: Record = {}; - for (const i of number = 0; i < authMenuList.size(); i++) { + const authMenuMap: Record> = new HashRecord<>(); + for (const i of number = 0; i < authMenuList.length; i++) { const menu: Record = authMenuList.getJSONObject(i); authMenuMap.put(menu.get("menu_key").toString(), menu); } @@ -400,22 +399,22 @@ export class SiteServiceImplService { return new SpecialMenuListVo("addon", []); } - const showList: Record = showCustomer(false); - const addonChildMenus: AddonChildMenuEnum.MenuConfig[] = AddonChildMenuEnum.getAll(); + const showList: Record = showCustomer(false); + AddonChildMenuEnum.MenuConfig[] addonChildMenus = AddonChildMenuEnum.getAll(); - const menuList: SpecialMenuListVo.MenuVo[] = []; + SpecialMenuListVo.MenuVo[] menuList = []; // 遍历插件子菜单,构建菜单列表 for (AddonChildMenuEnum.MenuConfig item : addonChildMenus) { const menuKey: string = item.getKey(); - const menuKeyList: string[] = []; + String[] menuKeyList = []; if (showList.containsKey(menuKey) && showList.get(menuKey) instanceof Map) { - const menuItem: Record = (Map) showList.get(menuKey); + const menuItem: Record = (Record) showList.get(menuKey); if (menuItem.containsKey("list") && menuItem.get("list") instanceof List) { - const listItems: Record[] = (List>) menuItem.get("list"); + Record listItems = (Record) menuItem.get("list"); for (const listItem of listItems) { if (listItem.containsKey("key")) { - menuKeyList.add(listItem.get("key").toString()); + menuKeyList.push(listItem.get("key").toString()); } } } @@ -435,21 +434,21 @@ export class SiteServiceImplService { tempMenu.setStatus("1"); tempMenu.setIsShow("1"); - const children: SpecialMenuListVo.MenuVo[] = []; + SpecialMenuListVo.MenuVo[] children = []; const authChildren: JSONArray = addonMenu.getJSONArray("children"); if (authChildren != null) { - for (const j of number = 0; j < authChildren.size(); j++) { + for (const j of number = 0; j < authChildren.length; j++) { const child: Record = authChildren.getJSONObject(j); if (menuKeyList.includes(child.get("menu_key").toString())) { // 转换为MenuVo对象 SpecialMenuListVo.const childMenu: MenuVo = convertToMenuVo(child); - children.add(childMenu); + children.push(childMenu); } } } tempMenu.setChildren(children); - menuList.add(tempMenu); + menuList.push(tempMenu); } const result: SpecialMenuListVo = new SpecialMenuListVo(); result.setParentKey("addon"); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-user-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-user-service-impl.service.ts index 04dc2bf5..deb3ea30 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-user-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/site/impl/site-user-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class SiteUserServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -17,31 +16,31 @@ export class SiteUserServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const userRoleMPJQueryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); + MPJuserRoleMPJQueryWrapper = new MPJQueryWrapper<>(); userRoleMPJQueryWrapper.select("nsur.id, nsur.is_admin, nsu.status, nsur.site_id, nsur.role_ids, nsu.uid, nsu.username, nsu.head_img, nsu.real_name, nsu.last_ip, nsu.last_time, nsu.create_time, nsu.login_count") .setAlias("nsur") - .leftJoin("?_sys_user nsu ON nsur.uid = nsu.uid".replace("?_", this.config.get('tablePrefix'))); - if(ObjectUtil.isNotNull(searchParam.getUsername()) && ObjectUtil.isNotEmpty(searchParam.getUsername())){ + .leftJoin("?_sys_user nsu ON nsur.uid = nsu.uid".replace("?_", this.appConfig.tablePrefix)); + if(ObjectUtil.isNotNull(searchParam.getUsername()) && !!searchParam.getUsername()){ userRoleMPJQueryWrapper.like("nsu.username", searchParam.getUsername()); } userRoleMPJQueryWrapper.eq("nsur.site_id", RequestUtils.siteId()); userRoleMPJQueryWrapper.isNotNull("nsu.uid"); userRoleMPJQueryWrapper.orderByDesc("nsur.is_admin"); userRoleMPJQueryWrapper.orderByDesc("nsur.id"); - const iPage: IPage = sysUserRoleMapper.selectJoinPage(new Page<>(page, limit), SiteUserVo.class, userRoleMPJQueryWrapper); - for (const siteUserVo of iPage.getRecords()) { - const roleArray: string[] = []; - if(ObjectUtil.isNotEmpty(siteUserVo.getRoleIds()) && JSONUtil.parseArray(siteUserVo.getRoleIds()).size()>0){ - const roleQueryWrapper: QueryWrapper = new QueryWrapper<>(); + iPage = sysUserRoleMapper.selectJoinPage({ /* pagination */ }, SiteUserVo.class, userRoleMPJQueryWrapper); + for (const siteUserVo of records) { + String[] roleArray=[]; + if(!!siteUserVo.getRoleIds() && JSONUtil.parseArray(siteUserVo.getRoleIds()).size()>0){ + roleQueryWrapper={}; roleQueryWrapper.in("role_id", JSONUtil.parseArray(siteUserVo.getRoleIds())); - const roleList: SysRole[] = sysRoleMapper.selectList(roleQueryWrapper); + SysRole[] roleList=this.sysRoleRepository.find(roleQueryWrapper); for (const sysRole of roleList) { - roleArray.add(sysRole.getRoleName()); + roleArray.push(sysRole.getRoleName()); } } siteUserVo.setRoleArray(roleArray); } - return PageResult.build(page, limit, iPage.getTotal()).setData(iPage.getRecords()); + return PageResult.build(page, limit, total).setData(records); } /** @@ -58,10 +57,10 @@ export class SiteUserServiceImplService { * getInfo */ async getInfo(...args: any[]): Promise { - const userRoleMPJQueryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); + MPJuserRoleMPJQueryWrapper = new MPJQueryWrapper<>(); userRoleMPJQueryWrapper.select("nsur.id, nsur.is_admin, nsur.status,nsur.site_id, nsur.role_ids, nsu.uid, nsu.username, nsu.head_img, nsu.real_name, nsu.last_ip, nsu.last_time, nsu.create_time, nsu.login_count") .setAlias("nsur") - .leftJoin("?_sys_user nsu ON nsur.uid = nsu.uid".replace("?_", this.config.get('tablePrefix'))); + .leftJoin("?_sys_user nsu ON nsur.uid = nsu.uid".replace("?_", this.appConfig.tablePrefix)); userRoleMPJQueryWrapper.eq("nsur.site_id", RequestUtils.siteId()); userRoleMPJQueryWrapper.eq("nsu.uid", uid); @@ -76,7 +75,7 @@ export class SiteUserServiceImplService { try{ const sysUserParam: SysUserParam = new SysUserParam(); sysUserParam.setHeadImg(siteUserParam.getHeadImg()); - if(ObjectUtil.isNotEmpty(siteUserParam.getPassword())){ + if(!!siteUserParam.getPassword()){ sysUserParam.setPassword(siteUserParam.getPassword()); } sysUserParam.setUsername(siteUserParam.getUsername()); @@ -84,14 +83,14 @@ export class SiteUserServiceImplService { sysUserParam.setRealName(siteUserParam.getRealName()); sysUserService.edit(uid, sysUserParam); //创建用户站点管理权限 - const roleIds: string[] = siteUserParam.getRoleIds(); + String[] roleIds=siteUserParam.getRoleIds(); const sysUserRoleParam: SysUserRoleParam = new SysUserRoleParam(); sysUserRoleParam.setSiteId(RequestUtils.siteId()); - sysUserRoleParam.setRoleIds(JSONUtil.toJsonStr(roleIds)); + sysUserRoleParam.setRoleIds(JSON.stringify(roleIds)); sysUserRoleParam.setUid(uid); sysUserRoleParam.setStatus(siteUserParam.getStatus()); sysUserRoleService.edit(sysUserRoleParam); - }catch (e){ + }catch (Exception e){ throw new AdminException(e.message); } } @@ -102,7 +101,7 @@ export class SiteUserServiceImplService { async lock(...args: any[]): Promise { const sysUser: SysUser = sysUserMapper.selectById(uid); sysUser.setStatus(StatusEnum.OFF.getStatus()); - sysUserMapper.updateById(sysUser); + this.sysUserRepository.save(sysUser); } /** @@ -111,14 +110,14 @@ export class SiteUserServiceImplService { async unlock(...args: any[]): Promise { const sysUser: SysUser = sysUserMapper.selectById(uid); sysUser.setStatus(StatusEnum.ON.getStatus()); - sysUserMapper.updateById(sysUser); + this.sysUserRepository.save(sysUser); } /** * delete */ async delete(...args: any[]): Promise { - const sysUserRoleList: SysUserRole[] = sysUserRoleMapper.selectList(new LambdaQueryWrapper().eq(SysUserRole::getUid, uid).eq(SysUserRole::getSiteId, RequestUtils.siteId()).last("limit 1")); + SysUserRole[] sysUserRoleList = this.sysUserRoleRepository.find(new Lambda().eq(SysUserRole::getUid, uid).eq(SysUserRole::getSiteId, RequestUtils.siteId()).last("limit 1")); if (CollectionUtils.isEmpty(sysUserRoleList)){ throw new BadRequestException("用户不存在"); } @@ -126,7 +125,7 @@ export class SiteUserServiceImplService { if (sysUserRole.getIsAdmin() == 1){ throw new BadRequestException("超级管理员不允许删除"); } - sysUserMapper.deleteById(uid); + this.sysUserRepository.delete(uid); loginService.clearToken(uid,null, null); cached.remove("user_role_list_" + uid); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/stat/impl/stat-hour-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/stat/impl/stat-hour-service-impl.service.ts index 6bfaf6ed..3f899c0e 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/stat/impl/stat-hour-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/stat/impl/stat-hour-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -16,32 +16,32 @@ export class StatHourServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("id"); - const iPage: IPage = statHourMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: StatHourListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.statHourRepository.findAndCount({ /* pagination */ }, queryWrapper); + StatHourListVo[] list = []; + for (const item of records) { const vo: StatHourListVo = new StatHourListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * info */ async info(...args: any[]): Promise { - const model: StatHour = statHourMapper.selectOne( - new QueryWrapper() + const model: StatHour = this.statHourRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: StatHourInfoVo = new StatHourInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -57,7 +57,7 @@ export class StatHourServiceImplService { model.setYear(addParam.getYear()); model.setMonth(addParam.getMonth()); model.setDay(addParam.getDay()); - model.setStartTime(System.currentTimeMillis() / 1000); + model.setStartTime(Math.floor(Date.now() / 1000)); model.setLastTime(addParam.getLastTime()); model.setHour0(addParam.getHour0()); model.setHour1(addParam.getHour1()); @@ -83,19 +83,19 @@ export class StatHourServiceImplService { model.setHour21(addParam.getHour21()); model.setHour22(addParam.getHour22()); model.setHour23(addParam.getHour23()); - statHourMapper.insert(model); + this.statHourRepository.save(model); } /** * edit */ async edit(...args: any[]): Promise { - const model: StatHour = statHourMapper.selectOne( - new QueryWrapper() + const model: StatHour = this.statHourRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); model.setId(id); model.setSiteId(editParam.getSiteId()); model.setAddon(editParam.getAddon()); @@ -129,20 +129,20 @@ export class StatHourServiceImplService { model.setHour21(editParam.getHour21()); model.setHour22(editParam.getHour22()); model.setHour23(editParam.getHour23()); - statHourMapper.updateById(model); + this.statHourRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - const model: StatHour = statHourMapper.selectOne( - new QueryWrapper() + const model: StatHour = this.statHourRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); - statHourMapper.delete(new QueryWrapper().eq("id", id)); + this.statHourRepository.delete(new ().eq("id", id)); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/stat/impl/stat-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/stat/impl/stat-service-impl.service.ts index 8919411e..ac67cb28 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/stat/impl/stat-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/stat/impl/stat-service-impl.service.ts @@ -71,9 +71,9 @@ export class StatServiceImplService { */ const memberCountVo: StatDateVo = new StatDateVo(); const siteCountVo: StatDateVo = new StatDateVo(); - const dates: string[] = []; - const memberValues: number[] = []; - const siteValues: number[] = []; + String[] dates = []; + number[] memberValues = []; + number[] siteValues = []; const statNum: number = 7; for (const i of number = 0; i <= statNum; i++) { @@ -83,12 +83,12 @@ export class StatServiceImplService { const itemMemberParam: MemberStatSearchParam = new MemberStatSearchParam(); itemMemberParam.setCreateTime(startEndDate); const itemMemberCount: number = coreMemberService.getMemberCount(itemMemberParam); - dates.add(startEndDate[0]); - memberValues.add(itemMemberCount); + dates.push(startEndDate[0]); + memberValues.push(itemMemberCount); const itemSiteParam: SiteSearchParam = new SiteSearchParam(); itemSiteParam.setCreateTime(startEndDate); const itemSiteCount: number = siteService.getSiteCountByCondition(itemSiteParam); - siteValues.add(itemSiteCount); + siteValues.push(itemSiteCount); } memberCountVo.setDate(dates); memberCountVo.setValue(memberValues); @@ -102,20 +102,20 @@ export class StatServiceImplService { * 会员性别类型统计 */ const memberStat: StatTypeVo = new StatTypeVo(); - const sexlist: string[] = []; - sexlist.add(SexEnum.path.basename(MAN)); - sexlist.add(SexEnum.path.basename(WOMAN)); - sexlist.add(SexEnum.path.basename(UNKNOWN)); + String[] sexlist = []; + sexlist.push(SexEnum.path.basename(MAN)); + sexlist.push(SexEnum.path.basename(WOMAN)); + sexlist.push(SexEnum.path.basename(UNKNOWN)); - const sexCountList: number[] = []; + number[] sexCountList = []; const sexMemberParam: MemberStatSearchParam = new MemberStatSearchParam(); sexMemberParam.setSex(SexEnum.MAN.getValue()); const manSexCount: number = coreMemberService.getMemberCount(sexMemberParam); sexMemberParam.setSex(SexEnum.WOMAN.getValue()); const womanSexCount: number = coreMemberService.getMemberCount(sexMemberParam); - sexCountList.add(manSexCount); - sexCountList.add(womanSexCount); - sexCountList.add(totalMemberCount - manSexCount - womanSexCount); + sexCountList.push(manSexCount); + sexCountList.push(womanSexCount); + sexCountList.push(totalMemberCount - manSexCount - womanSexCount); memberStat.setType(sexlist); memberStat.setValue(sexCountList); statInfoVo.setMemberStat(memberStat); @@ -124,15 +124,15 @@ export class StatServiceImplService { * 站点分组 统计 */ const siteGroupStat: StatTypeVo = new StatTypeVo(); - const grouplist: string[] = []; - const groupCountList: number[] = []; + String[] grouplist = []; + number[] groupCountList = []; - const groupList: SiteGroup[] = siteGroupService.getAll(); + SiteGroup[] groupList = siteGroupService.getAll(); for (const siteGroup of groupList) { - grouplist.add(siteGroup.getGroupName()); + grouplist.push(siteGroup.getGroupName()); const siteGroupParam: SiteSearchParam = new SiteSearchParam(); siteGroupParam.setGroupId(siteGroup.getGroupId()); - groupCountList.add(siteService.getSiteCountByCondition(siteGroupParam)); + groupCountList.push(siteService.getSiteCountByCondition(siteGroupParam)); } siteGroupStat.setType(grouplist); siteGroupStat.setValue(groupCountList); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-agreement-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-agreement-service-impl.service.ts index 164c6c0a..3a08b187 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-agreement-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-agreement-service-impl.service.ts @@ -14,13 +14,13 @@ export class SysAgreementServiceImplService { */ async list(...args: any[]): Promise { const typeJson: Record = AgreementEnum.getType(); - const list: SysAgreementListVo[] = []; + SysAgreementListVo[] list = []; for (Map.Entry map : typeJson.entrySet()) { const vo: SysAgreementListVo = new SysAgreementListVo(); const sysAgreement: SysAgreement = coreAgreementService.getAgreement(RequestUtils.siteId(), map.getKey()); - BeanUtils.copyProperties(sysAgreement, vo); - list.add(vo); + Object.assign(vo, sysAgreement); + list.push(vo); } return list; @@ -32,7 +32,7 @@ export class SysAgreementServiceImplService { async getAgreement(...args: any[]): Promise { const sysAgreement: SysAgreement = coreAgreementService.getAgreement(RequestUtils.siteId(), key); const vo: SysAgreementInfoVo = new SysAgreementInfoVo(); - BeanUtils.copyProperties(sysAgreement, vo); + Object.assign(vo, sysAgreement); return vo; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-area-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-area-service-impl.service.ts index f2d2fb31..ddb56def 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-area-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-area-service-impl.service.ts @@ -14,19 +14,19 @@ export class SysAreaServiceImplService { * getListByPid */ async getListByPid(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("pid", pid); - return sysAreaMapper.selectList(queryWrapper); + return this.sysAreaRepository.find(queryWrapper); } /** * getAreaTree */ async getAreaTree(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.le("level", level); - const list: SysArea[] = sysAreaMapper.selectList(queryWrapper); - const jsonArray: JSONArray = JSONUtil.parseArray(JSONUtil.toJsonStr(list)); + SysArea[] list = this.sysAreaRepository.find(queryWrapper); + const jsonArray: JSONArray = JSONUtil.parseArray(JSON.stringify(list)); return TreeUtils.listToTree(jsonArray, "id", "pid", "child"); } @@ -34,7 +34,7 @@ export class SysAreaServiceImplService { * getAreaId */ async getAreaId(...args: any[]): Promise { - const areaInfo: SysArea = sysAreaMapper.selectOne(new QueryWrapper().like("name", name).eq("level", level).last("limit 1")); + const areaInfo: SysArea = this.sysAreaRepository.findOne(new ().like("name", name).eq("level", level).last("limit 1")); if (areaInfo != null) { return areaInfo.getId(); } @@ -45,7 +45,7 @@ export class SysAreaServiceImplService { * getAreaName */ async getAreaName(...args: any[]): Promise { - const areaInfo: SysArea = sysAreaMapper.selectOne(new QueryWrapper().eq("id", id).last("limit 1")); + const areaInfo: SysArea = this.sysAreaRepository.findOne(new ().eq("id", id).last("limit 1")); if (areaInfo != null) { return path.basename(areaInfo); } @@ -59,17 +59,17 @@ export class SysAreaServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc(Arrays.asList("sort", "id")); - const iPage: IPage = sysAreaMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: SysAreaListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.sysAreaRepository.findAndCount({ /* pagination */ }, queryWrapper); + SysAreaListVo[] list = []; + for (const item of records) { const vo: SysAreaListVo = new SysAreaListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** @@ -79,7 +79,7 @@ export class SysAreaServiceImplService { const map: SysMapVo = coreSysConfigService.getMap(RequestUtils.siteId()); const result: string = HttpUtil.get("https://apis.map.qq.com/ws/geocoder/v1/?location="+ location +"&key=" + map.getKey()); if (!JSONUtil.isJson(result)) return null; - return JSONUtil.parseObj(result); + return JSON.parse(result); } /** @@ -89,6 +89,6 @@ export class SysAreaServiceImplService { const map: SysMapVo = coreSysConfigService.getMap(RequestUtils.siteId()); const result: string = HttpUtil.get("https://apis.map.qq.com/ws/geocoder/v1/?address="+ address +"&key=" + map.getKey()); if (!JSONUtil.isJson(result)) return null; - return JSONUtil.parseObj(result); + return JSON.parse(result); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-attachment-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-attachment-service-impl.service.ts index 0378f316..6cb660e6 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-attachment-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-attachment-service-impl.service.ts @@ -17,22 +17,22 @@ export class SysAttachmentServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); queryWrapper.orderByDesc("att_id"); - if (ObjectUtil.isNotEmpty(searchParam.getAttType())) queryWrapper.eq("att_type", searchParam.getAttType()); - if (ObjectUtil.isNotEmpty(searchParam.getCateId()) && searchParam.getCateId() > 0) queryWrapper.eq("cate_id", searchParam.getCateId()); - if (ObjectUtil.isNotEmpty(searchParam.getRealName())) queryWrapper.like("real_name", searchParam.getRealName()); + if (!!searchParam.getAttType()) queryWrapper.eq("att_type", searchParam.getAttType()); + if (!!searchParam.getCateId() && searchParam.getCateId() > 0) queryWrapper.eq("cate_id", searchParam.getCateId()); + if (!!searchParam.getRealName()) queryWrapper.like("real_name", searchParam.getRealName()); - const iPage: IPage = sysAttachmentMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: SysAttachmentListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.sysAttachmentRepository.findAndCount({ /* pagination */ }, queryWrapper); + SysAttachmentListVo[] list = []; + for (const item of records) { const vo: SysAttachmentListVo = new SysAttachmentListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); vo.setThumb(CommonUtils.thumbImageSmall(item.getSiteId(), item)); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** @@ -73,7 +73,7 @@ export class SysAttachmentServiceImplService { async batchMoveCategory(...args: any[]): Promise { const model: SysAttachment = new SysAttachment(); model.setCateId(param.getCateId()); - sysAttachmentMapper.update(model, new QueryWrapper() + sysAttachmentMapper.update(model, new () .eq("site_id", RequestUtils.siteId()) .in("att_id", param.getAttIds())); } @@ -82,8 +82,8 @@ export class SysAttachmentServiceImplService { * del */ async del(...args: any[]): Promise { - const sysAttachmentList: SysAttachment[] = sysAttachmentMapper.selectList( - new QueryWrapper() + SysAttachment[] sysAttachmentList = this.sysAttachmentRepository.find( + new () .eq("site_id", RequestUtils.siteId()) .in("att_id", param.getAttIds())); if (sysAttachmentList.length === 0) { @@ -92,7 +92,7 @@ export class SysAttachmentServiceImplService { for (const sysAttachment of sysAttachmentList) { coreUploadService.delete(sysAttachment.getSiteId(), sysAttachment.getStorageType(), sysAttachment); } - sysAttachmentMapper.delete(new QueryWrapper().eq("site_id", RequestUtils.siteId()).in("att_id", param.getAttIds())); + this.sysAttachmentRepository.delete(new ().eq("site_id", RequestUtils.siteId()).in("att_id", param.getAttIds())); } /** @@ -101,18 +101,18 @@ export class SysAttachmentServiceImplService { async getCategoryList(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper(); + MPJqueryWrapper = new MPJ(); queryWrapper.select("id,name,type").eq("site_id", siteId); - if (ObjectUtil.isNotEmpty(path.basename(searchParam))) queryWrapper.like("name", path.basename(searchParam)); - if (ObjectUtil.isNotEmpty(searchParam.getType())) queryWrapper.eq("type", searchParam.getType()); + if (!!path.basename(searchParam)) queryWrapper.like("name", path.basename(searchParam)); + if (!!searchParam.getType()) queryWrapper.eq("type", searchParam.getType()); - const categorys: SysAttachmentCategory[] = sysAttachmentCategoryMapper.selectList(queryWrapper); // 调用 selectList 方法 + SysAttachmentCategory[] categorys = this.sysAttachmentCategoryRepository.find(queryWrapper); // 调用 selectList 方法 - const list: SysAttachmentCategoryListVo[] = []; + SysAttachmentCategoryListVo[] list = []; for (const item of categorys) { const vo: SysAttachmentCategoryListVo = new SysAttachmentCategoryListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } return list; } @@ -121,13 +121,13 @@ export class SysAttachmentServiceImplService { * addCategory */ async addCategory(...args: any[]): Promise { - if (ObjectUtil.isEmpty(addParam.getType())) throw new BadRequestException("type参数不能为空"); + if (!addParam.getType()) throw new BadRequestException("type参数不能为空"); const model: SysAttachmentCategory = new SysAttachmentCategory(); model.setSiteId(RequestUtils.siteId()); model.setType(addParam.getType()); model.setName(path.basename(addParam)); - sysAttachmentCategoryMapper.insert(model); + this.sysAttachmentCategoryRepository.save(model); } /** @@ -151,10 +151,10 @@ export class SysAttachmentServiceImplService { async delCategory(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); - const queryWrapper: QueryWrapper = new QueryWrapper() + queryWrapper = new () .eq("site_id", siteId) .eq("id", id); - sysAttachmentCategoryMapper.delete(queryWrapper); + this.sysAttachmentCategoryRepository.delete(queryWrapper); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-backup-records-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-backup-records-service-impl.service.ts index 063bb94a..c535dd8c 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-backup-records-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-backup-records-service-impl.service.ts @@ -1,13 +1,12 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as fs from 'fs'; @Injectable() export class SysBackupRecordsServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -18,7 +17,7 @@ export class SysBackupRecordsServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("create_time"); if (searchParam != null) { @@ -27,19 +26,19 @@ export class SysBackupRecordsServiceImplService { } } - const iPage: IPage = sysBackupRecordsMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: SysBackupRecordsListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.sysBackupRecordsRepository.findAndCount({ /* pagination */ }, queryWrapper); + SysBackupRecordsListVo[] list = []; + for (const item of records) { const vo: SysBackupRecordsListVo = new SysBackupRecordsListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); vo.setCreateTime(DateUtils.timestampToString(item.getCreateTime())); vo.setCompleteTime(DateUtils.timestampToString(item.getCompleteTime())); vo.setStatusName(BackupRecordStatusEnum.getNameByStatus(vo.getStatus())); vo.setBackupDir("webroot/runtime/upgrade/"+vo.getBackupKey()+"/backup"); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** @@ -47,29 +46,29 @@ export class SysBackupRecordsServiceImplService { */ async add(...args: any[]): Promise { const model: SysBackupRecords = new SysBackupRecords(); - BeanUtils.copyProperties(addParam, model); - model.setCreateTime(System.currentTimeMillis() / 1000); - sysBackupRecordsMapper.insert(model); + Object.assign(model, addParam); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.sysBackupRecordsRepository.save(model); } /** * edit */ async edit(...args: any[]): Promise { - const model: SysBackupRecords = sysBackupRecordsMapper.selectOne( - new QueryWrapper() + const model: SysBackupRecords = this.sysBackupRecordsRepository.findOne( + new () .eq("id", id)); - Assert.notNull(model, "备份记录不存在"); + if (!model) throw new BadRequestException("备份记录不存在"); - BeanUtils.copyProperties(editParam, model); - sysBackupRecordsMapper.updateById(model); + Object.assign(model, editParam); + this.sysBackupRecordsRepository.save(model); } /** * clear */ async clear(...args: any[]): Promise { - sysBackupRecordsMapper.delete(new QueryWrapper() + this.sysBackupRecordsRepository.delete(new () .lt("create_time", threshold).in("status", STATUS_READY, STATUS_FAIL)); } @@ -77,31 +76,31 @@ export class SysBackupRecordsServiceImplService { * del */ async del(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper(); + const queryWrapper: QueryWrapper = new (); - if (delParam.getIds() instanceof ArrayList) { - const intArray: number[] = []; - ((ArrayList) delParam.getIds()).forEach(item => { - Assert.notNull(item, "id不能为空"); - intArray.add(item); + if (delParam.getIds() instanceof Array?[]) { + number[] intArray = []; + ((Array?[]) delParam.getIds()).forEach(item => { + if (!item) throw new BadRequestException("id不能为空"); + intArray.push((number) item); }); queryWrapper.in("id", intArray); } else { queryWrapper.eq("id", delParam.getIds()); } - const backupRecords: SysBackupRecords[] = sysBackupRecordsMapper.selectList(queryWrapper); - if (ObjectUtil.isNotEmpty(backupRecords)) { + SysBackupRecords[] backupRecords = this.sysBackupRecordsRepository.find(queryWrapper); + if (!!backupRecords) { for (const item of backupRecords) { const file: string = backupDir(item.getBackupKey(), "backup"); if (fs.existsSync(file)) { try { fs.rmSync(file, { recursive: true, force: true }); - } catch (e) { + } catch (Exception e) { } } } - sysBackupRecordsMapper.delete(queryWrapper); + this.sysBackupRecordsRepository.delete(queryWrapper); } } @@ -114,7 +113,7 @@ export class SysBackupRecordsServiceImplService { const vo: BackupTaskVo = getRestoreTask(); if (vo == null) { vo = new BackupTaskVo(); - LinkedHashMap = new LinkedHashMap<>(); + LinkedHashRecord = new LinkedHashRecord<>(); steps.put("startRestore", new BackupTaskVo.Step("startRestore", "开始恢复")); steps.put("backupCode", new BackupTaskVo.Step("backupCode", "备份源码")); steps.put("backupSql", new BackupTaskVo.Step("backupSql", "备份数据库")); @@ -133,22 +132,22 @@ export class SysBackupRecordsServiceImplService { addParam.setBackupKey(vo.getKey()); addParam.setStatus(BackupRecordStatusEnum.STATUS_READY.getStatus()); addParam.setContent("自动备份"); - addParam.setVersion(this.config.get('version')); + addParam.setVersion(this.appConfig.version); add(addParam); } vo.setBackupRecord(record); if (vo.getTask() !== "") return vo; - const steps: string[] = vo.getSteps().keySet().stream().collect(Collectors.toList()); - const step: string = steps.indexOf(vo.getStep()) < steps.size() - 1 ? steps.get(steps.indexOf(vo.getStep()) + 1) : ""; + String[] steps = vo.getSteps().keySet(); + const step: string = steps.indexOf(vo.getStep()) < steps.length - 1 ? steps.get(steps.indexOf(vo.getStep()) + 1) : ""; - if (step.length !== 0) { + if (step.length > 0) { if (!vo.getExecuted().includes(step)) { vo.getExecuted().add(step); } try { const param: Record = null; - param = (Map) dynamicMethodCall(step, vo); + param = (Record) dynamicMethodCall(step, vo); if (param != null) { vo.setParams(param); } else { @@ -156,14 +155,14 @@ export class SysBackupRecordsServiceImplService { vo.setParams(null); } setBackupRestoreTaskCache(vo); - } catch (e) { + } catch (Exception e) { vo.setStep(step); vo.setTask("fail"); vo.setContent("备份恢复失败,稍后请手动恢复,备份文件路径:webroot/runtime/upgrade/"+ record.getBackupKey() +"/backup,失败原因:" + e.message); setBackupRestoreTaskCache(vo); // 删除备份记录 - sysBackupRecordsMapper.delete(new QueryWrapper().eq("backup_key", vo.getKey())); - e.printStackTrace(); + this.sysBackupRecordsRepository.delete(new ().eq("backup_key", vo.getKey())); + console.error(e); console.log("恢复异常."); sysUpgradeRecordsService.clearRestoreTaskCache(5); @@ -188,20 +187,20 @@ export class SysBackupRecordsServiceImplService { addParam.setBackupKey(vo.getKey()); addParam.setStatus(BackupRecordStatusEnum.STATUS_READY.getStatus()); addParam.setContent("手动备份"); - addParam.setVersion(this.config.get('version')); + addParam.setVersion(this.appConfig.version); add(addParam); } - const steps: string[] = vo.getSteps().keySet().stream().collect(Collectors.toList()); - const step: string = steps.indexOf(vo.getStep()) < steps.size() - 1 ? steps.get(steps.indexOf(vo.getStep()) + 1) : ""; + String[] steps = vo.getSteps().keySet(); + const step: string = steps.indexOf(vo.getStep()) < steps.length - 1 ? steps.get(steps.indexOf(vo.getStep()) + 1) : ""; - if (step.length !== 0) { + if (step.length > 0) { if (!vo.getExecuted().includes(step)) { vo.getExecuted().add(step); } try { - const param: Record = null; - param = (Map) dynamicMethodCall(step, vo); + const param: Record = null; + param = (Record) dynamicMethodCall(step, vo); if (param != null) { vo.setParams(param); } else { @@ -209,14 +208,14 @@ export class SysBackupRecordsServiceImplService { vo.setParams(null); } setBackupTaskCache(vo); - } catch (e) { + } catch (Exception e) { vo.setStep(step); vo.setTask("fail"); vo.setContent("备份失败,稍后请重新手动备份,失败原因:" + e.message); setBackupTaskCache(vo); // 删除备份记录 - sysBackupRecordsMapper.delete(new QueryWrapper().eq("backup_key", vo.getKey())); - e.printStackTrace(); + this.sysBackupRecordsRepository.delete(new ().eq("backup_key", vo.getKey())); + console.error(e); console.log("备份异常."); sysUpgradeRecordsService.clearBackupTaskCache(5); @@ -231,8 +230,8 @@ export class SysBackupRecordsServiceImplService { async backupComplete(...args: any[]): Promise { const backupRecord: SysBackupRecords = new SysBackupRecords(); backupRecord.setStatus(UpgradeRecordStatusEnum.STATUS_COMPLETE.getStatus()); - backupRecord.setCompleteTime(System.currentTimeMillis() / 1000); - sysBackupRecordsMapper.update(backupRecord, new QueryWrapper().eq("backup_key", vo.getKey())); + backupRecord.setCompleteTime(Math.floor(Date.now() / 1000)); + sysBackupRecordsMapper.update(backupRecord, new ().eq("backup_key", vo.getKey())); vo.setTask("end"); @@ -245,8 +244,8 @@ export class SysBackupRecordsServiceImplService { async restoreBackupComplete(...args: any[]): Promise { const backupRecord: SysBackupRecords = new SysBackupRecords(); backupRecord.setStatus(UpgradeRecordStatusEnum.STATUS_COMPLETE.getStatus()); - backupRecord.setCompleteTime(System.currentTimeMillis() / 1000); - sysBackupRecordsMapper.update(backupRecord, new QueryWrapper().eq("backup_key", vo.getKey())); + backupRecord.setCompleteTime(Math.floor(Date.now() / 1000)); + sysBackupRecordsMapper.update(backupRecord, new ().eq("backup_key", vo.getKey())); } /** @@ -262,7 +261,7 @@ export class SysBackupRecordsServiceImplService { */ async setBackupTaskCache(...args: any[]): Promise { const cache: Cached = CacheFactory.getCacheOperator(); - cache.put("backup_task", JSONUtil.parseObj(vo).toString(), 1800); + cache.put("backup_task", JSON.parse(vo).toString(), 1800); } /** @@ -270,7 +269,7 @@ export class SysBackupRecordsServiceImplService { */ async setBackupRestoreTaskCache(...args: any[]): Promise { const cache: Cached = CacheFactory.getCacheOperator(); - cache.put("backup_restore_task", JSONUtil.parseObj(vo).toString(), 1800); + cache.put("backup_restore_task", JSON.parse(vo).toString(), 1800); } /** @@ -280,7 +279,7 @@ export class SysBackupRecordsServiceImplService { if (delayed > 0) { try { Thread.sleep(delayed * 1000); - } catch (e) { + } catch (Exception e) { } } const cache: Cached = CacheFactory.getCacheOperator(); @@ -294,7 +293,7 @@ export class SysBackupRecordsServiceImplService { if (delayed > 0) { try { Thread.sleep(delayed * 1000); - } catch (e) { + } catch (Exception e) { } } const cache: Cached = CacheFactory.getCacheOperator(); @@ -308,7 +307,7 @@ export class SysBackupRecordsServiceImplService { const cache: Cached = CacheFactory.getCacheOperator(); const data: any = cache.get("backup_task"); if (data == null) return null; - return JSONUtil.toBean(JSONUtil.parseObj(data), BackupTaskVo.class); + return Object.assign(new BackupTaskVo(), JSON.parse(data)); } /** @@ -318,7 +317,7 @@ export class SysBackupRecordsServiceImplService { const cache: Cached = CacheFactory.getCacheOperator(); const data: any = cache.get("backup_restore_task"); if (data == null) return null; - return JSONUtil.toBean(JSONUtil.parseObj(data), BackupTaskVo.class); + return Object.assign(new BackupTaskVo(), JSON.parse(data)); } /** @@ -326,14 +325,14 @@ export class SysBackupRecordsServiceImplService { */ async checkDir(...args: any[]): Promise { const record: SysBackupRecords = sysBackupRecordsMapper.selectById(param.getId()); - Assert.notNull(record, "备份记录不存在"); - if (record.getStatus() !== BackupRecordStatusEnum.STATUS_COMPLETE.getStatus()) throw new Error("备份记录未完成"); + if (!record) throw new BadRequestException("备份记录不存在"); + if (record.getStatus() !== BackupRecordStatusEnum.STATUS_COMPLETE.getStatus()) throw new RuntimeException("备份记录未完成"); - const code: string = this.config.get('webRootDownRuntime' + "upgrade/"+ record.getBackupKey() + "/backup/code"); - if (!fs.existsSync(code)) throw new Error("未找到备份的源码文件"); + const code: string = this.appConfig.webRootDownRuntime + "upgrade/"+ record.getBackupKey( + "/backup/code"); + if (!fs.existsSync(code)) throw new RuntimeException("未找到备份的源码文件"); - const sql: string = this.config.get('webRootDownRuntime' + "upgrade/"+ record.getBackupKey() + "/backup/sql"); - if (!fs.existsSync(sql)) throw new Error("未找到备份的数据库文件"); + const sql: string = this.appConfig.webRootDownRuntime + "upgrade/"+ record.getBackupKey( + "/backup/sql"); + if (!fs.existsSync(sql)) throw new RuntimeException("未找到备份的数据库文件"); return record; } @@ -350,8 +349,8 @@ export class SysBackupRecordsServiceImplService { const readableDir: JSONArray = new JSONArray(); const writeDir: JSONArray = new JSONArray(); - if (this.config.get('envType') === "dev") { - rootPath = this.config.get('projectRoot') + "/"; + if (this.appConfig.envType === "dev") { + rootPath = this.appConfig.projectRoot + "/"; runtimePath = rootPath; readableDir.put(new Record().set("dir", rootPath + "niucloud-addon").set("status", true)); @@ -359,7 +358,7 @@ export class SysBackupRecordsServiceImplService { readableDir.put(new Record().set("dir", rootPath + "webroot").set("status", true)); writeDir.put(new Record().set("dir", rootPath + "webroot").set("status", true)); } else { - rootPath = this.config.get('webRoot') + "/"; + rootPath = this.appConfig.webRoot + "/"; runtimePath = rootPath + "runtime/"; readableDir.put(new Record().set("dir", runtimePath).set("status", true)); @@ -374,7 +373,7 @@ export class SysBackupRecordsServiceImplService { writeDir.put(new Record().set("dir", runtimePath + "uni-app").set("status", true)); writeDir.put(new Record().set("dir", runtimePath + "web").set("status", true)); - for (const i of number = 0; i < readableDir.size(); i++) { + for (const i of number = 0; i < readableDir.length; i++) { const dir: Record = readableDir.getJSONObject(i); dir.set("status", dir.getStr("dir").canRead()); dir.set("dir", dir.getStr("dir").replace(rootPath, "")); @@ -382,7 +381,7 @@ export class SysBackupRecordsServiceImplService { if (!dir.getBool("status")) upgradeCheck = false; } - for (const i of number = 0; i < writeDir.size(); i++) { + for (const i of number = 0; i < writeDir.length; i++) { const dir: Record = writeDir.getJSONObject(i); dir.set("status", dir.getStr("dir").canWrite()); dir.set("dir", dir.getStr("dir").replace(rootPath, "")); @@ -417,7 +416,7 @@ export class SysBackupRecordsServiceImplService { ((InvocationTargetException) e).getCause().printStackTrace(); throw new BadRequestException(((InvocationTargetException) e).getCause().getMessage()); } else { - e.printStackTrace(); + console.error(e); } return null; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-export-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-export-service-impl.service.ts index 84305489..fb81be70 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-export-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-export-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -16,15 +16,15 @@ export class SysExportServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("id"); queryWrapper.like("export_key", searchParam.getExportKey()); - if (ObjectUtil.isNotEmpty(searchParam.getExportKey())) { + if (!!searchParam.getExportKey()) { queryWrapper.eq("export_status", searchParam.getExportStatus()); } - if (ObjectUtil.isNotEmpty(searchParam.getCreateTime())) { + if (!!searchParam.getCreateTime()) { String[] createTime = searchParam.getCreateTime(); const startTime: number = (createTime[0] == null) ? 0 : DateUtils.StringToTimestamp(createTime[0]); const endTime: number = (createTime[1] == null) ? 0 : DateUtils.StringToTimestamp(createTime[1]); @@ -39,13 +39,13 @@ export class SysExportServiceImplService { const results: JSONArray = JsonModuleLoader.build().mergeResultSet("export/ExportType.json"); - const iPage: IPage = sysExportMapper.selectPage(new Page<>(page, limit), queryWrapper); - const converted: IPage = iPage.convert(export => { - SysExportListVo vo = new SysExportListVo(); - BeanUtils.copyProperties(export, vo); + iPage = this.sysExportRepository.findAndCount({ /* pagination */ }, queryWrapper); + converted = iPage.convert(export => { + const vo: SysExportListVo = new SysExportListVo(); + Object.assign(vo, export); vo.setCreateTime(DateUtils.timestampToString(export.getCreateTime())); vo.setExportStatusName(ExportEnum.getNameByCode(export.getExportStatus())); - results.stream() + results .map(JSONUtil::parseObj) .filter(o => o.containsKey(export.getExportKey())) .findFirst() @@ -62,14 +62,14 @@ export class SysExportServiceImplService { * del */ async del(...args: any[]): Promise { - const model: SysExport = sysExportMapper.selectOne( - new QueryWrapper() + const model: SysExport = this.sysExportRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); - sysExportMapper.delete(new QueryWrapper().eq("id", id)); + this.sysExportRepository.delete(new ().eq("id", id)); } /** @@ -79,8 +79,8 @@ export class SysExportServiceImplService { const pageParam: PageParam = new PageParam(); pageParam.setPage(number.parseInt(whereMap.getOrDefault("page", 0).toString())); pageParam.setLimit(number.parseInt(whereMap.getOrDefault("limit", 0).toString())); - const jsonArray: JSONArray = coreExportService.getExportData(RequestUtils.siteId(), type, JSONUtil.parseObj(whereMap), pageParam); - return jsonArray.length !== 0; + const jsonArray: JSONArray = coreExportService.getExportData(RequestUtils.siteId(), type, JSON.parse(whereMap), pageParam); + return jsonArray.length > 0; } /** @@ -89,18 +89,18 @@ export class SysExportServiceImplService { async exportData(...args: any[]): Promise { const siteId: number = RequestUtils.siteId(); const pageParam: PageParam = new PageParam(); - pageParam.setPage(whereMap.getOrDefault("page", 0)); - pageParam.setLimit(whereMap.getOrDefault("limit", 0)); + pageParam.setPage((number) whereMap.getOrDefault("page", 0)); + pageParam.setLimit((number) whereMap.getOrDefault("limit", 0)); const dataColumn: JSONArray = coreExportService.getExportDataColumn(type); - const dataArray: JSONArray = coreExportService.getExportData(siteId, type, JSONUtil.parseObj(whereMap), pageParam); + const dataArray: JSONArray = coreExportService.getExportData(siteId, type, JSON.parse(whereMap), pageParam); const export: SysExport = new SysExport(); export.setSiteId(RequestUtils.siteId()); export.setExportKey(type); export.setExportNum(CollectionUtil.size(dataArray)); - export.setCreateTime(System.currentTimeMillis() / 1000); - coreExportService.add(export); + export.setCreateTime(Math.floor(Date.now() / 1000)); + coreExportService.push(export); coreExportService.export(siteId, export.getId(), type, dataColumn, dataArray); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-menu-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-menu-service-impl.service.ts index 34fff0b4..d23a69da 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-menu-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-menu-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -13,15 +13,15 @@ export class SysMenuServiceImplService { * info */ async info(...args: any[]): Promise { - const model: SysMenu = sysMenuMapper.selectOne( - new QueryWrapper() + const model: SysMenu = this.sysMenuRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: SysMenuInfoVo = new SysMenuInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -29,11 +29,11 @@ export class SysMenuServiceImplService { * get */ async get(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper={}; queryWrapper.eq("app_type", appType); queryWrapper.eq("menu_key", menuKey); - const sysMenu: SysMenu = sysMenuMapper.selectOne(queryWrapper); - Assert.notNull(sysMenu, "菜单数据不存在"); + const sysMenu: SysMenu = this.sysMenuRepository.findOne(queryWrapper); + if (!sysMenu) throw new BadRequestException("菜单数据不存在"); const sysMenuInfoVo: SysMenuInfoVo = new SysMenuInfoVo(); BeanUtil.copyProperties(sysMenu, sysMenuInfoVo); return sysMenuInfoVo; @@ -52,7 +52,7 @@ export class SysMenuServiceImplService { BeanUtil.copyProperties(addParam, model); model.setCreateTime(DateUtils.currTime()); model.setSource(MenuSourceEnum.CREATE.getCode()); - sysMenuMapper.insert(model); + this.sysMenuRepository.save(model); /** 清理缓存 */ cached.tag(cacheTagName).clear(); } @@ -61,14 +61,14 @@ export class SysMenuServiceImplService { * edit */ async edit(...args: any[]): Promise { - const model: SysMenu = sysMenuMapper.selectOne( - new QueryWrapper() + const model: SysMenu = this.sysMenuRepository.findOne( + new () .eq("app_type", appType) .eq("menu_key", menuKey) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); BeanUtil.copyProperties(editParam, model); - sysMenuMapper.updateById(model); + this.sysMenuRepository.save(model); /** 清理缓存 */ cached.tag(cacheTagName).clear(); } @@ -77,11 +77,11 @@ export class SysMenuServiceImplService { * del */ async del(...args: any[]): Promise { - const keyCount: number = sysMenuMapper.selectCount(new QueryWrapper().eq("parent_key", menuKey).eq("app_type", appType)); + const keyCount: number = this.sysMenuRepository.count(new ().eq("parent_key", menuKey).eq("app_type", appType)); if(keyCount>0){ throw new AdminException("MENU_NOT_ALLOW_DELETE"); } - sysMenuMapper.delete(new QueryWrapper().eq("app_type", appType).eq("menu_key", menuKey)); + this.sysMenuRepository.delete(new ().eq("app_type", appType).eq("menu_key", menuKey)); /** 清理缓存 */ cached.tag(cacheTagName).clear(); } @@ -92,10 +92,10 @@ export class SysMenuServiceImplService { async menuTree(...args: any[]): Promise { return cached.rememberObject(useCache, cacheTagName, Arrays.asList("menuTree"), uniqueKey => { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("app_type", "site"); queryWrapper.orderByDesc(Arrays.asList("sort", "id")); - const sysMenuList: SysMenu[] = sysMenuMapper.selectList(queryWrapper); + SysMenu[] sysMenuList = this.sysMenuRepository.find(queryWrapper); const jsonArray: JSONArray = JSONUtil.parseArray(JacksonUtils.toSnakeCaseJSONString(sysMenuList)); return TreeUtils.listToTree(jsonArray, "menu_key", "parent_key", "children"); }); @@ -106,13 +106,13 @@ export class SysMenuServiceImplService { */ async getMenuListByCondition(...args: any[]): Promise { return cached.remember(useCache, cacheTagName, Arrays.asList("getMenuListByCondition", appType, siteId, status, isButton, menuKeys, addon), uniqueKey => { - const addonList: string[] = coreSiteService.getAddonKeysBySiteId(siteId); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); - if (ObjectUtil.isNotEmpty(appType)) { + String[] addonList = coreSiteService.getAddonKeysBySiteId(siteId); + queryWrapper = {}; + if (!!appType) { queryWrapper.eq("app_type", appType); } - if (addonList.size() > 0) { - addonList.add(""); + if (addonList.length > 0) { + addonList.push(""); queryWrapper.in("addon", addonList); } else { queryWrapper.in("addon", ""); @@ -120,7 +120,7 @@ export class SysMenuServiceImplService { if (status != 100) { queryWrapper.eq("status", status); } - if (menuKeys.size() > 0) { + if (menuKeys.length > 0) { queryWrapper.in("menu_key", menuKeys); } if (isButton == 0) { @@ -129,7 +129,7 @@ export class SysMenuServiceImplService { //排除菜单 后期处理 - const menuList: SysMenu[] = sysMenuMapper.selectList(queryWrapper); + SysMenu[] menuList = this.sysMenuRepository.find(queryWrapper); return menuList; }); } @@ -141,16 +141,16 @@ export class SysMenuServiceImplService { const menuKeysVal: string = String.join("_", menuKeys); const menuKeysValMD5: string = SecureUtil.md5(menuKeysVal); const menuCatch: string = "menu" + menuKeysValMD5 + isTree.toString() + addon + siteId; - const outterMenuList: SysMenu[] = cached.cache(useCache, cacheTagName, menuCatch, uniqueKey => { + SysMenu[] outterMenuList = cached.cache(useCache, cacheTagName, menuCatch, uniqueKey => { //通过站点id获取支持的应用插件 - List addonList = coreSiteService.getAddonKeysBySiteId(siteId); + String[] addonList = coreSiteService.getAddonKeysBySiteId(siteId); //组装查询条件 - const queryWrapper: QueryWrapper = new QueryWrapper<>(); - if (menuKeys.size() > 0) { + queryWrapper = {}; + if (menuKeys.length > 0) { queryWrapper.in("menu_key", menuKeys); } - const paichuList: SysMenu[] = null; + SysMenu[] paichuList = null; if(addon !== "all"){ queryWrapper.eq("addon",addon); @@ -160,27 +160,27 @@ export class SysMenuServiceImplService { paichuList = JSONUtil.toList(delJsonInfo,SysMenu.class); }else{ queryWrapper.in("addon", addonList); - for (const i of number = 0; i = jsonModuleLoader.getResultElement(addonList.get(i), "menu/site.json"); const delJsonInfo: JSONArray = jsonObject.getJSONArray("delete"); paichuList = JSONUtil.toList(delJsonInfo,SysMenu.class); } } - if (ObjectUtil.isNotEmpty(appType)) { + if (!!appType) { queryWrapper.eq("app_type", appType); } //排除菜单 - if(ObjectUtil.isNotNull(paichuList) && paichuList.size()>0){ - const paichuArr: string[] = []; - for (const i of number = 0; i0){ + String[] paichuArr = []; + for (const i of number = 0; i { - List menuList = []; + SysMenu[] outterMenuList= cached.cache(useCache, cacheTagName, key, uniqueKey => { + SysMenu[] menuList = []; try { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); - if (ObjectUtil.isNotEmpty(appType)) { + queryWrapper = {}; + if (!!appType) { queryWrapper.eq("app_type", appType); } //站点相关插件 if (RequestUtils.defaultSiteId() !== siteId) { - const addonList: string[] = coreSiteService.getAddonKeysBySiteId(siteId); + String[] addonList = coreSiteService.getAddonKeysBySiteId(siteId); - if (addonList.size() > 0) { - addonList.add(""); + if (addonList.length > 0) { + addonList.push(""); queryWrapper.in("addon", addonList); } } @@ -226,8 +226,8 @@ export class SysMenuServiceImplService { queryWrapper.eq("status", status); } //排除菜单 - menuList = sysMenuMapper.selectList(queryWrapper); - } catch (e) { + menuList = this.sysMenuRepository.find(queryWrapper); + } catch (Exception e) { throw new BaseException("查询菜单错误"); } return menuList; @@ -241,14 +241,14 @@ export class SysMenuServiceImplService { * find */ async find(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); - if(ObjectUtil.isNotNull(menuKey) && ObjectUtil.isNotEmpty(menuKey)){ + queryWrapper= {}; + if(ObjectUtil.isNotNull(menuKey) && !!menuKey){ queryWrapper.eq("menu_key", menuKey); } - if(ObjectUtil.isNotNull(appType) && ObjectUtil.isNotEmpty(appType)){ + if(ObjectUtil.isNotNull(appType) && !!appType){ queryWrapper.eq("app_type", appType); } - const sysMenu: SysMenu = sysMenuMapper.selectOne(queryWrapper); + const sysMenu: SysMenu = this.sysMenuRepository.findOne(queryWrapper); return sysMenu; } @@ -256,13 +256,13 @@ export class SysMenuServiceImplService { * getMenuByTypeDir */ async getMenuByTypeDir(...args: any[]): Promise { - const outterMenuList: SysMenu[] = cached.remember(useCache, cacheTagName, Arrays.asList("getMenuByTypeDir", addon), uniqueKey => { - QueryWrapper queryWrapper = new QueryWrapper<>(); + SysMenu[] outterMenuList= cached.remember(useCache, cacheTagName, Arrays.asList("getMenuByTypeDir", addon), uniqueKey => { + queryWrapper = {}; queryWrapper.eq("app_type", "site"); queryWrapper.eq("menu_type", "0"); queryWrapper.eq("addon", addon === "system"? "": addon); queryWrapper.orderByDesc("sort"); - return sysMenuMapper.selectList(queryWrapper); + return this.sysMenuRepository.find(queryWrapper); }); //暂无多语言设计 @@ -276,7 +276,7 @@ export class SysMenuServiceImplService { async getAddonMenu(...args: any[]): Promise { return cached.rememberObject(useCache, cacheTagName, Arrays.asList("getAddonMenu", appKey, status, isTree.toString(), isButton.toString()), uniqueKey => { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("app_type", "site"); queryWrapper.eq("addon", appKey); queryWrapper.orderByDesc(Arrays.asList("sort", "id")); @@ -286,7 +286,7 @@ export class SysMenuServiceImplService { if (isButton == 0) { queryWrapper.in("menu_type", new number[]{0, 1}); } - const sysMenuList: SysMenu[] = sysMenuMapper.selectList(queryWrapper); + SysMenu[] sysMenuList = this.sysMenuRepository.find(queryWrapper); const jsonArray: JSONArray = JSONUtil.parseArray(JacksonUtils.toSnakeCaseJSONString(sysMenuList)); if (isTree == 0) { return jsonArray; @@ -300,7 +300,7 @@ export class SysMenuServiceImplService { */ async getSystemMenu(...args: any[]): Promise { return cached.rememberObject(useCache, cacheTagName, Arrays.asList("getSystemMenu", status, isTree.toString(), isButton.toString()), uniqueKey => { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("app_type", "site"); queryWrapper.eq("addon", ""); queryWrapper.orderByDesc(Arrays.asList("sort", "id")); @@ -310,7 +310,7 @@ export class SysMenuServiceImplService { if (isButton == 0) { queryWrapper.in("menu_type", new number[]{0, 1}); } - const sysMenuList: SysMenu[] = sysMenuMapper.selectList(queryWrapper); + SysMenu[] sysMenuList = this.sysMenuRepository.find(queryWrapper); const jsonArray: JSONArray = JSONUtil.parseArray(JacksonUtils.toSnakeCaseJSONString(sysMenuList)); if (isTree == 0) { return jsonArray; diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-notice-log-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-notice-log-service-impl.service.ts index 7b40e7d1..028b548e 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-notice-log-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-notice-log-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -16,40 +16,40 @@ export class SysNoticeLogServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); - if (ObjectUtil.isNotEmpty(searchParam.getReceiver())) queryWrapper.eq("receiver", searchParam.getReceiver()); - if (ObjectUtil.isNotEmpty(searchParam.getKey())) queryWrapper.eq("`key`", searchParam.getKey()); - if (ObjectUtil.isNotEmpty(searchParam.getCreateTime())) QueryMapperUtils.buildByTime(queryWrapper, "create_time", searchParam.getCreateTime()); + if (!!searchParam.getReceiver()) queryWrapper.eq("receiver", searchParam.getReceiver()); + if (!!searchParam.getKey()) queryWrapper.eq("`key`", searchParam.getKey()); + if (!!searchParam.getCreateTime()) QueryMapperUtils.buildByTime(queryWrapper, "create_time", searchParam.getCreateTime()); queryWrapper.orderByDesc("id"); - const noticeEnum: Record = NoticeEnum.getNotice(); + const noticeEnum: Record = NoticeEnum.getNotice(); - const iPage: IPage = sysNoticeLogMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: SysNoticeLogListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.sysNoticeLogRepository.findAndCount({ /* pagination */ }, queryWrapper); + SysNoticeLogListVo[] list = []; + for (const item of records) { const vo: SysNoticeLogListVo = new SysNoticeLogListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); vo.setName(noticeEnum.get(item.getKey()) != null ? noticeEnum.get(item.getKey()).getName() : ""); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * info */ async info(...args: any[]): Promise { - const model: SysNoticeLog = sysNoticeLogMapper.selectOne( - new QueryWrapper() + const model: SysNoticeLog = this.sysNoticeLogRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId()) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: SysNoticeLogInfoVo = new SysNoticeLogInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-notice-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-notice-service-impl.service.ts index 578a124f..1b197045 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-notice-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-notice-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -16,32 +16,32 @@ export class SysNoticeServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("id"); - const iPage: IPage = sysNoticeMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: SysNoticeListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.sysNoticeRepository.findAndCount({ /* pagination */ }, queryWrapper); + SysNoticeListVo[] list = []; + for (const item of records) { const vo: SysNoticeListVo = new SysNoticeListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * info */ async info(...args: any[]): Promise { - const model: SysNotice = sysNoticeMapper.selectOne( - new QueryWrapper() + const model: SysNotice = this.sysNoticeRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: SysNoticeInfoVo = new SysNoticeInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -59,22 +59,22 @@ export class SysNoticeServiceImplService { model.setWechatTemplateId(addParam.getWechatTemplateId()); model.setWeappTemplateId(addParam.getWeappTemplateId()); model.setSmsId(addParam.getSmsId()); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setWechatFirst(addParam.getWechatFirst()); model.setWechatRemark(addParam.getWechatRemark()); - sysNoticeMapper.insert(model); + this.sysNoticeRepository.save(model); } /** * edit */ async edit(...args: any[]): Promise { - const model: SysNotice = sysNoticeMapper.selectOne( - new QueryWrapper() + const model: SysNotice = this.sysNoticeRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); model.setId(id); model.setSiteId(editParam.getSiteId()); model.setKey(editParam.getKey()); @@ -87,20 +87,20 @@ export class SysNoticeServiceImplService { model.setSmsId(editParam.getSmsId()); model.setWechatFirst(editParam.getWechatFirst()); model.setWechatRemark(editParam.getWechatRemark()); - sysNoticeMapper.updateById(model); + this.sysNoticeRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - const model: SysNotice = sysNoticeMapper.selectOne( - new QueryWrapper() + const model: SysNotice = this.sysNoticeRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); - sysNoticeMapper.delete(new QueryWrapper().eq("id", id)); + this.sysNoticeRepository.delete(new ().eq("id", id)); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-notice-sms-log-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-notice-sms-log-service-impl.service.ts index 99c81ae4..6bbd1795 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-notice-sms-log-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-notice-sms-log-service-impl.service.ts @@ -16,42 +16,42 @@ export class SysNoticeSmsLogServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); - if (ObjectUtil.isNotEmpty(searchParam.getKey())) queryWrapper.eq("`key`", searchParam.getKey()); - if (ObjectUtil.isNotEmpty(searchParam.getSmsType())) queryWrapper.eq("sms_type", searchParam.getSmsType()); - if (ObjectUtil.isNotEmpty(searchParam.getMobile())) queryWrapper.eq("mobile", searchParam.getMobile()); - if (ObjectUtil.isNotEmpty(searchParam.getCreateTime())) QueryMapperUtils.buildByTime(queryWrapper,"create_time" ,searchParam.getCreateTime()); + if (!!searchParam.getKey()) queryWrapper.eq("`key`", searchParam.getKey()); + if (!!searchParam.getSmsType()) queryWrapper.eq("sms_type", searchParam.getSmsType()); + if (!!searchParam.getMobile()) queryWrapper.eq("mobile", searchParam.getMobile()); + if (!!searchParam.getCreateTime()) QueryMapperUtils.buildByTime(queryWrapper,"create_time" ,searchParam.getCreateTime()); queryWrapper.orderByDesc("id"); const smsTypeEnum: Record = SmsTypeEnum.getType(); - const notice: Record = NoticeEnum.getNotice(); + const notice: Record = NoticeEnum.getNotice(); - const iPage: IPage = sysNoticeSmsLogMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: SysNoticeSmsLogListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.sysNoticeSmsLogRepository.findAndCount({ /* pagination */ }, queryWrapper); + SysNoticeSmsLogListVo[] list = []; + for (const item of records) { const vo: SysNoticeSmsLogListVo = new SysNoticeSmsLogListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); vo.setSmsTypeName(smsTypeEnum.getByPath(item.getSmsType() + ".name", String.class)); vo.setName(ObjectUtil.defaultIfNull(notice.get(item.getKey()).getName(), "")); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * info */ async info(...args: any[]): Promise { - const model: SysNoticeSmsLog = sysNoticeSmsLogMapper.selectOne( - new QueryWrapper() + const model: SysNoticeSmsLog = this.sysNoticeSmsLogRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId()) .last("limit 1")); if (model == null) return null; const vo: SysNoticeSmsLogInfoVo = new SysNoticeSmsLogInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-poster-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-poster-service-impl.service.ts index 40c28199..98729499 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-poster-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-poster-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -17,40 +17,40 @@ export class SysPosterServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); queryWrapper.orderByDesc("id"); - if (ObjectUtil.isNotEmpty(path.basename(searchParam))) queryWrapper.like("name", path.basename(searchParam)); - if (ObjectUtil.isNotEmpty(searchParam.getType())) queryWrapper.eq("type", searchParam.getType()); + if (!!path.basename(searchParam)) queryWrapper.like("name", path.basename(searchParam)); + if (!!searchParam.getType()) queryWrapper.eq("type", searchParam.getType()); - const iPage: IPage = sysPosterMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: SysPosterListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.sysPosterRepository.findAndCount({ /* pagination */ }, queryWrapper); + SysPosterListVo[] list = []; + for (const item of records) { const vo: SysPosterListVo = new SysPosterListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * list */ async list(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); queryWrapper.orderByDesc("id"); - if (ObjectUtil.isNotEmpty(path.basename(searchParam))) queryWrapper.like("name", path.basename(searchParam)); - if (ObjectUtil.isNotEmpty(searchParam.getType())) queryWrapper.eq("type", searchParam.getType()); + if (!!path.basename(searchParam)) queryWrapper.like("name", path.basename(searchParam)); + if (!!searchParam.getType()) queryWrapper.eq("type", searchParam.getType()); - const records: SysPoster[] = sysPosterMapper.selectList(queryWrapper); - const list: SysPosterListVo[] = []; + SysPoster[] records = this.sysPosterRepository.find(queryWrapper); + SysPosterListVo[] list = []; for (const item of records) { const vo: SysPosterListVo = new SysPosterListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } return list; } @@ -59,15 +59,15 @@ export class SysPosterServiceImplService { * info */ async info(...args: any[]): Promise { - const model: SysPoster = sysPosterMapper.selectOne( - new QueryWrapper() + const model: SysPoster = this.sysPosterRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "海报不存在"); + if (!model) throw new BadRequestException("海报不存在"); const vo: SysPosterInfoVo = new SysPosterInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -84,22 +84,22 @@ export class SysPosterServiceImplService { sysPosterMapper.update(null, update); } const model: SysPoster = new SysPoster(); - BeanUtils.copyProperties(addParam, model); + Object.assign(model, addParam); model.setSiteId(RequestUtils.siteId()); - model.setCreateTime(System.currentTimeMillis() / 1000); - sysPosterMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.sysPosterRepository.save(model); } /** * edit */ async edit(...args: any[]): Promise { - const model: SysPoster = sysPosterMapper.selectOne( - new QueryWrapper() + const model: SysPoster = this.sysPosterRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "海报不存在!"); + if (!model) throw new BadRequestException("海报不存在!"); if (editParam.getIsDefault() === 1) { const update: UpdateWrapper = new UpdateWrapper<>(); @@ -110,23 +110,23 @@ export class SysPosterServiceImplService { sysPosterMapper.update(null, update); } - BeanUtils.copyProperties(editParam, model); - model.setUpdateTime(System.currentTimeMillis() / 1000); - sysPosterMapper.updateById(model); + Object.assign(model, editParam); + model.setUpdateTime(Math.floor(Date.now() / 1000)); + this.sysPosterRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - const model: SysPoster = sysPosterMapper.selectOne( - new QueryWrapper() + const model: SysPoster = this.sysPosterRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "海报不存在!"); + if (!model) throw new BadRequestException("海报不存在!"); - sysPosterMapper.delete(new QueryWrapper().eq("id", id)); + this.sysPosterRepository.delete(new ().eq("id", id)); } /** @@ -134,19 +134,19 @@ export class SysPosterServiceImplService { */ async init(...args: any[]): Promise { const vo: SysPosterInitVo = new SysPosterInitVo(); - BeanUtils.copyProperties(param, vo); + Object.assign(vo, param); - if (ObjectUtil.isNotEmpty(param.getId()) && param.getId() > 0) { - const poster: SysPoster = sysPosterMapper.selectOne( - new QueryWrapper() + if (!!param.getId() && param.getId() > 0) { + const poster: SysPoster = this.sysPosterRepository.findOne( + new () .eq("id", param.getId()) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(poster, "海报不存在!"); - BeanUtils.copyProperties(poster, vo); + if (!poster) throw new BadRequestException("海报不存在!"); + Object.assign(vo, poster); } vo.setPosterType(PosterTypeEnum.getType(vo.getType())); - if (ObjectUtil.isNotEmpty(vo.getPosterType()) && ObjectUtil.isEmpty(vo.getAddon())) vo.setAddon(vo.getPosterType().getStr("addon", "")); + if (!!vo.getPosterType() && !vo.getAddon()) vo.setAddon(vo.getPosterType().getStr("addon", "")); const components: Record = JsonModuleLoader.build().mergeResultElement("poster/components.json"); @@ -157,7 +157,7 @@ export class SysPosterServiceImplService { continue; } const support: JSONArray = ObjectUtil.defaultIfNull(item.getJSONArray("support"), new JSONArray()); - if (key !== vo.getType() && support.size() > 0 && !support.includes(vo.getType())) { + if (key !== vo.getType() && support.length > 0 && !support.includes(vo.getType())) { continue; } vo.getComponent().put(key, item); @@ -179,19 +179,19 @@ export class SysPosterServiceImplService { async modifyStatus(...args: any[]): Promise { const model: SysPoster = new SysPoster(); model.setStatus(status); - sysPosterMapper.update(model, new QueryWrapper().eq("id", id).eq("site_id", RequestUtils.siteId())); + sysPosterMapper.update(model, new ().eq("id", id).eq("site_id", RequestUtils.siteId())); } /** * modifyDefault */ async modifyDefault(...args: any[]): Promise { - const model: SysPoster = sysPosterMapper.selectOne( - new QueryWrapper() + const model: SysPoster = this.sysPosterRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "海报不存在!"); + if (!model) throw new BadRequestException("海报不存在!"); const update: UpdateWrapper = new UpdateWrapper<>(); update.setSql("is_default = 0"); @@ -203,7 +203,7 @@ export class SysPosterServiceImplService { const updateModel: SysPoster = new SysPoster(); updateModel.setIsDefault(1); updateModel.setId(id); - sysPosterMapper.updateById(updateModel); + this.sysPosterRepository.save(updateModel); } /** @@ -215,7 +215,7 @@ export class SysPosterServiceImplService { getPosterParam.setType(param.getType()); getPosterParam.setSiteId(RequestUtils.siteId()); getPosterParam.setChannel(ObjectUtil.defaultIfNull(param.getChannel(), "h5")); - const posterParam: Record = {}; + const posterParam: Record = {}; posterParam.put("mode", "preview"); getPosterParam.setParam(posterParam); getPosterParam.setIsThrowException(true); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-printer-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-printer-service-impl.service.ts index 8e49373e..03bca329 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-printer-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-printer-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -17,49 +17,49 @@ export class SysPrinterServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()) .orderByDesc("create_time"); - if (ObjectUtil.isNotEmpty(searchParam.getPrinterName())) { + if (!!searchParam.getPrinterName()) { queryWrapper.like("printer_name", searchParam.getPrinterName()); } - const iPage: IPage = sysPrinterMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: SysPrinterListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.sysPrinterRepository.findAndCount({ /* pagination */ }, queryWrapper); + SysPrinterListVo[] list = []; + for (const item of records) { const vo: SysPrinterListVo = new SysPrinterListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); vo.setBrandName(SysPrinterBrandEnum.getNameByBrand(item.getBrand())); vo.setTrigger(JSONArray.parseArray(item.getTrigger(), String.class)); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * getList */ async getList(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()) .orderByDesc("create_time") .select("printer_id, apikey, brand, create_time, open_id, print_width, printer_code, printer_key, printer_name, site_id, status, template_type, 'trigger', update_time, value"); - if (ObjectUtil.isNotEmpty(param.getPrinterName())) { + if (!!param.getPrinterName()) { queryWrapper.like("printer_name", param.getPrinterName()); } - const list: SysPrinterListVo[] = []; - for (const item of sysPrinterMapper.selectList(queryWrapper)) { + SysPrinterListVo[] list = []; + for (const item of this.sysPrinterRepository.find(queryWrapper)) { const vo: SysPrinterListVo = new SysPrinterListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); vo.setBrandName(SysPrinterBrandEnum.getNameByBrand(item.getBrand())); vo.setValue(JSON.parseObject(item.getValue())); vo.setTrigger(JSONArray.parseArray(item.getTrigger(), String.class)); - list.add(vo); + list.push(vo); } return list; @@ -69,15 +69,15 @@ export class SysPrinterServiceImplService { * info */ async info(...args: any[]): Promise { - const model: SysPrinter = sysPrinterMapper.selectOne( - new QueryWrapper() + const model: SysPrinter = this.sysPrinterRepository.findOne( + new () .eq("printer_id", id) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "小票打印机不存在"); + if (!model) throw new BadRequestException("小票打印机不存在"); const vo: SysPrinterInfoVo = new SysPrinterInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); vo.setValue(JSON.parseObject(model.getValue())); return vo; } @@ -87,17 +87,17 @@ export class SysPrinterServiceImplService { */ async add(...args: any[]): Promise { const model: SysPrinter = new SysPrinter(); - BeanUtils.copyProperties(addParam, model); + Object.assign(model, addParam); model.setSiteId(RequestUtils.siteId()); model.setValue(JSON.toJSONString(addParam.getValue())); model.setTemplateType(addParam.getTemplateType().get(0)); model.setTrigger(JSON.toJSONString(addParam.getTrigger())); - model.setCreateTime(System.currentTimeMillis() / 1000); - sysPrinterMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.sysPrinterRepository.save(model); if (addParam.getBrand() === SysPrinterBrandEnum.YI_LIAN_YUN.getBrand()) { const addPrinterYlyParam: SysPrinterAddPrinterYlyParam = new SysPrinterAddPrinterYlyParam(); - BeanUtils.copyProperties(addParam, addPrinterYlyParam); + Object.assign(addPrinterYlyParam, addParam); corePrinterService.addPrinterYly(addPrinterYlyParam); } } @@ -106,22 +106,22 @@ export class SysPrinterServiceImplService { * edit */ async edit(...args: any[]): Promise { - const model: SysPrinter = sysPrinterMapper.selectOne( - new QueryWrapper() + const model: SysPrinter = this.sysPrinterRepository.findOne( + new () .eq("printer_id", id) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "小票打印机不存在"); - BeanUtils.copyProperties(editParam, model); + if (!model) throw new BadRequestException("小票打印机不存在"); + Object.assign(model, editParam); model.setValue(JSON.toJSONString(editParam.getValue())); model.setTemplateType(editParam.getTemplateType().get(0)); model.setTrigger(JSON.toJSONString(editParam.getTrigger())); - model.setUpdateTime(System.currentTimeMillis() / 1000); - sysPrinterMapper.updateById(model); + model.setUpdateTime(Math.floor(Date.now() / 1000)); + this.sysPrinterRepository.save(model); if (editParam.getBrand() === SysPrinterBrandEnum.YI_LIAN_YUN.getBrand()) { const addPrinterYlyParam: SysPrinterAddPrinterYlyParam = new SysPrinterAddPrinterYlyParam(); - BeanUtils.copyProperties(editParam, addPrinterYlyParam); + Object.assign(addPrinterYlyParam, editParam); corePrinterService.addPrinterYly(addPrinterYlyParam); } } @@ -130,28 +130,28 @@ export class SysPrinterServiceImplService { * modifyStatus */ async modifyStatus(...args: any[]): Promise { - const model: SysPrinter = sysPrinterMapper.selectOne( - new QueryWrapper() + const model: SysPrinter = this.sysPrinterRepository.findOne( + new () .eq("printer_id", param.getPrinterId()) .eq("site_id", RequestUtils.siteId())); model.setStatus(param.getStatus()); - sysPrinterMapper.updateById(model); + this.sysPrinterRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - const model: SysPrinter = sysPrinterMapper.selectOne( - new QueryWrapper() + const model: SysPrinter = this.sysPrinterRepository.findOne( + new () .eq("printer_id", id) .eq("site_id", RequestUtils.siteId())); - if (ObjectUtil.isEmpty(model)) { + if (!model) { return; } - sysPrinterMapper.deleteById(id); + this.sysPrinterRepository.delete(id); if (model.getBrand() === SysPrinterBrandEnum.YI_LIAN_YUN.getBrand()) { corePrinterService.deletePrinterYly(model); @@ -164,7 +164,7 @@ export class SysPrinterServiceImplService { async getBrand(...args: any[]): Promise { const jsonObject: Record = new Record(); for (const value of SysPrinterBrandEnum.values()) { - if (ObjectUtil.isEmpty(value.getBrand())) { + if (!value.getBrand()) { continue; } @@ -177,13 +177,13 @@ export class SysPrinterServiceImplService { * refreshToken */ async refreshToken(...args: any[]): Promise { - const model: SysPrinter = sysPrinterMapper.selectOne( - new QueryWrapper() + const model: SysPrinter = this.sysPrinterRepository.findOne( + new () .eq("printer_id", id) .eq("site_id", RequestUtils.siteId())); - if (ObjectUtil.isEmpty(model)) { - throw new Error("打印机不存在"); + if (!model) { + throw new RuntimeException("打印机不存在"); } return corePrinterService.refreshToken(model); @@ -193,13 +193,13 @@ export class SysPrinterServiceImplService { * testPrint */ async testPrint(...args: any[]): Promise { - const model: SysPrinter = sysPrinterMapper.selectOne( - new QueryWrapper() + const model: SysPrinter = this.sysPrinterRepository.findOne( + new () .eq("printer_id", id) .eq("site_id", RequestUtils.siteId())); - if (ObjectUtil.isEmpty(model)) { - throw new Error("打印机不存在"); + if (!model) { + throw new RuntimeException("打印机不存在"); } if (model.getBrand() === SysPrinterBrandEnum.YI_LIAN_YUN.getBrand()) { diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-printer-template-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-printer-template-service-impl.service.ts index 05b152c3..92a548dc 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-printer-template-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-printer-template-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -16,61 +16,61 @@ export class SysPrinterTemplateServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()) .orderByDesc("create_time"); - if (ObjectUtil.isNotEmpty(searchParam.getTemplateId())) { + if (!!searchParam.getTemplateId()) { queryWrapper.eq("template_id", searchParam.getTemplateId()); } - if (ObjectUtil.isNotEmpty(searchParam.getTemplateName())) { + if (!!searchParam.getTemplateName()) { queryWrapper.like("template_name", searchParam.getTemplateName()); } - if (ObjectUtil.isNotEmpty(searchParam.getTemplateType())) { + if (!!searchParam.getTemplateType()) { queryWrapper.eq("template_type", searchParam.getTemplateType()); } - const iPage: IPage = sysPrinterTemplateMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: SysPrinterTemplateListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.sysPrinterTemplateRepository.findAndCount({ /* pagination */ }, queryWrapper); + SysPrinterTemplateListVo[] list = []; + for (const item of records) { const vo: SysPrinterTemplateListVo = new SysPrinterTemplateListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); vo.setTemplateTypeName(SysPrinterTypeEnum.getTypeName(item.getTemplateType())); vo.setValue(JSON.parseObject(item.getValue())); vo.setCreateTime(DateUtils.timestampToString(item.getCreateTime())); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * getList */ async getList(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()) .orderByDesc("create_time"); - if (ObjectUtil.isNotEmpty(searchParam.getTemplateId())) { + if (!!searchParam.getTemplateId()) { queryWrapper.eq("template_id", searchParam.getTemplateId()); } - if (ObjectUtil.isNotEmpty(searchParam.getTemplateName())) { + if (!!searchParam.getTemplateName()) { queryWrapper.like("template_name", searchParam.getTemplateName()); } - if (ObjectUtil.isNotEmpty(searchParam.getTemplateType())) { + if (!!searchParam.getTemplateType()) { queryWrapper.eq("template_type", searchParam.getTemplateType()); } - const voList: SysPrinterTemplateListVo[] = []; - for (const item of sysPrinterTemplateMapper.selectList(queryWrapper)) { + SysPrinterTemplateListVo[] voList = []; + for (const item of this.sysPrinterTemplateRepository.find(queryWrapper)) { const vo: SysPrinterTemplateListVo = new SysPrinterTemplateListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); vo.setTemplateTypeName(SysPrinterTypeEnum.getTypeName(item.getTemplateType())); vo.setValue(JSON.parseObject(item.getValue())); vo.setCreateTime(DateUtils.timestampToString(item.getCreateTime())); - voList.add(vo); + voList.push(vo); } return voList; } @@ -79,15 +79,15 @@ export class SysPrinterTemplateServiceImplService { * info */ async info(...args: any[]): Promise { - const model: SysPrinterTemplate = sysPrinterTemplateMapper.selectOne( - new QueryWrapper() + const model: SysPrinterTemplate = this.sysPrinterTemplateRepository.findOne( + new () .eq("template_id", id) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "小票打印模板不存在"); + if (!model) throw new BadRequestException("小票打印模板不存在"); const vo: SysPrinterTemplateInfoVo = new SysPrinterTemplateInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); vo.setValue(JSON.parseObject(model.getValue())); vo.setCreateTime(DateUtils.timestampToString(model.getCreateTime())); return vo; @@ -98,26 +98,26 @@ export class SysPrinterTemplateServiceImplService { */ async add(...args: any[]): Promise { const model: SysPrinterTemplate = new SysPrinterTemplate(); - BeanUtils.copyProperties(addParam, model); + Object.assign(model, addParam); model.setValue(JSON.toJSONString(addParam.getValue())); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setSiteId(RequestUtils.siteId()); - sysPrinterTemplateMapper.insert(model); + this.sysPrinterTemplateRepository.save(model); } /** * edit */ async edit(...args: any[]): Promise { - const model: SysPrinterTemplate = sysPrinterTemplateMapper.selectOne( - new QueryWrapper() + const model: SysPrinterTemplate = this.sysPrinterTemplateRepository.findOne( + new () .eq("template_id", id) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "小票打印模板不存在"); - BeanUtils.copyProperties(editParam, model); - sysPrinterTemplateMapper.updateById(model); + if (!model) throw new BadRequestException("小票打印模板不存在"); + Object.assign(model, editParam); + this.sysPrinterTemplateRepository.save(model); } /** @@ -126,22 +126,22 @@ export class SysPrinterTemplateServiceImplService { async del(...args: any[]): Promise { const template: SysPrinterTemplate = sysPrinterTemplateMapper.selectById(id); - const printerLambdaQueryWrapper: LambdaQueryWrapper = new LambdaQueryWrapper<>(); + LambdaprinterLambdaQueryWrapper = new LambdaQueryWrapper<>(); printerLambdaQueryWrapper.eq(SysPrinter::getSiteId, RequestUtils.siteId()) .like(SysPrinter::getTemplateType, template.getTemplateType()); - const printers: SysPrinter[] = sysPrinterMapper.selectList(printerLambdaQueryWrapper); + SysPrinter[] printers = this.sysPrinterRepository.find(printerLambdaQueryWrapper); - const illegalPrinter: Optional = printers.stream() - .filter(printer => ObjectUtil.isNotEmpty(printer.getValue())) - .filter(printer => JSON.parseArray(printer.getValue()).stream() - .anyMatch(value => JSON.parseArray(value.toString()).stream() + const illegalPrinter: Optional = printers + .filter(printer => !!printer.getValue()) + .filter(printer => JSON.parseArray(printer.getValue()) + .anyMatch(value => JSON.parseArray(value.toString()) .anyMatch(o => id === JSON.parseObject(o.toString().getInteger("template_id"))))) .findFirst(); if (illegalPrinter.isPresent()) { - throw new Error("该模板已被打印机[" + illegalPrinter.get().getPrinterName() + "]使用,无法删除"); + throw new RuntimeException("该模板已被打印机[" + illegalPrinter.get().getPrinterName() + "]使用,无法删除"); } - sysPrinterTemplateMapper.deleteById(id); + this.sysPrinterTemplateRepository.delete(id); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-role-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-role-service-impl.service.ts index 927580e9..ca0f478f 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-role-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-role-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -16,35 +16,35 @@ export class SysRoleServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("role_id"); queryWrapper.eq("site_id", RequestUtils.siteId()); - if(ObjectUtil.isNotNull(searchParam.getRoleName()) && ObjectUtil.isNotEmpty(searchParam.getRoleName())){ + if(ObjectUtil.isNotNull(searchParam.getRoleName()) && !!searchParam.getRoleName()){ queryWrapper.like("role_name", searchParam.getRoleName()); } - const iPage: IPage = sysRoleMapper.selectPage(new Page(page, limit), queryWrapper); - const list: SysRoleListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.sysRoleRepository.findAndCount({ /* pagination */ }, queryWrapper); + SysRoleListVo[] list = []; + for (const item of records) { const vo: SysRoleListVo = new SysRoleListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * info */ async info(...args: any[]): Promise { - const model: SysRole = sysRoleMapper.selectOne( - new QueryWrapper() + const model: SysRole = this.sysRoleRepository.findOne( + new () .eq("role_id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: SysRoleInfoVo = new SysRoleInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -52,7 +52,7 @@ export class SysRoleServiceImplService { * add */ async add(...args: any[]): Promise { - const isExist: SysRole = sysRoleMapper.selectOne(new QueryWrapper() + const isExist: SysRole = this.sysRoleRepository.findOne(new () .select("role_id") .eq("role_name", addParam.getRoleName()) .eq("site_id", RequestUtils.siteId()) @@ -63,18 +63,18 @@ export class SysRoleServiceImplService { const model: SysRole = new SysRole(); model.setSiteId(RequestUtils.siteId()); model.setRoleName(addParam.getRoleName()); - model.setRules(JSONUtil.toJsonStr(addParam.getRules())); + model.setRules(JSON.stringify(addParam.getRules())); model.setStatus(addParam.getStatus()); model.setCreateTime(DateUtils.currTime()); model.setUpdateTime(DateUtils.currTime()); - sysRoleMapper.insert(model); + this.sysRoleRepository.save(model); } /** * edit */ async edit(...args: any[]): Promise { - const isExist: SysRole = sysRoleMapper.selectOne(new QueryWrapper() + const isExist: SysRole = this.sysRoleRepository.findOne(new () .select("role_id") .eq("role_name", editParam.getRoleName()) .eq("site_id", RequestUtils.siteId()) @@ -83,55 +83,55 @@ export class SysRoleServiceImplService { ); if (isExist != null) throw new AdminException("管理员角色已存在"); - const model: SysRole = sysRoleMapper.selectOne( - new QueryWrapper() + const model: SysRole = this.sysRoleRepository.findOne( + new () .eq("role_id", roleId) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); model.setSiteId(RequestUtils.siteId()); model.setRoleName(editParam.getRoleName()); - model.setRules(JSONUtil.toJsonStr(editParam.getRules())); + model.setRules(JSON.stringify(editParam.getRules())); model.setStatus(editParam.getStatus()); model.setUpdateTime(DateUtils.currTime()); - sysRoleMapper.updateById(model); + this.sysRoleRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - const model: SysRole = sysRoleMapper.selectOne( - new QueryWrapper() + const model: SysRole = this.sysRoleRepository.findOne( + new () .eq("role_id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); - const userRoleCount: number = sysUserRoleMapper.selectCount(new QueryWrapper().like("role_ids", id)); + if (!model) throw new BadRequestException("数据不存在!"); + const userRoleCount: number = this.sysUserRoleRepository.count(new ().like("role_ids", id)); if(userRoleCount>0){ throw new AdminException("USER_ROLE_NOT_ALLOW_DELETE"); } - sysRoleMapper.delete(new QueryWrapper().eq("role_id", id)); + this.sysRoleRepository.delete(new ().eq("role_id", id)); } /** * getMenuIdsByRoleIds */ async getMenuIdsByRoleIds(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper(); + const queryWrapper: QueryWrapper = new (); queryWrapper.eq("status", RoleStatusEnum.ON.getCode()); // 判断roleIds不能为空 - if(ObjectUtil.isNotNull(roleIds) && roleIds.size()>0){ + if(ObjectUtil.isNotNull(roleIds) && roleIds.length>0){ queryWrapper.in("role_id", roleIds); } - const roleList: SysRole[] = sysRoleMapper.selectList(queryWrapper); + SysRole[] roleList=this.sysRoleRepository.find(queryWrapper); const roleMenuJson: JSONArray = new JSONArray(); for (const sysRole of roleList) { const ruleJson: JSONArray = JSONUtil.parseArray(sysRole.getRules()); roleMenuJson.addAll(ruleJson); } //去重 - const list: string[] = JSONUtil.toList(roleMenuJson, String.class); + String[] list = JSONUtil.toList(roleMenuJson, String.class); return CollectionUtil.distinct(list); } @@ -139,35 +139,35 @@ export class SysRoleServiceImplService { * getAllRole */ async getAllRole(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper={}; queryWrapper.eq("site_id", RequestUtils.siteId()); queryWrapper.eq("status", 1); - const roleList: SysRole[] = sysRoleMapper.selectList(queryWrapper); - const sysRoleListVoList: SysRoleListVo[] = []; + SysRole[] roleList=this.sysRoleRepository.find(queryWrapper); + SysRoleListVo[] sysRoleListVoList=[]; for (const sysRole of roleList) { const vo: SysRoleListVo = new SysRoleListVo(); - BeanUtils.copyProperties(sysRole, vo); - sysRoleListVoList.add(vo); + Object.assign(vo, sysRole); + sysRoleListVoList.push(vo); } const sysUserRole: SysUserRole = null; const isAdmin: boolean = false; if (authService.isSuperAdmin()){ isAdmin=true; }else { - sysUserRole = sysUserRoleMapper.selectOne(new LambdaQueryWrapper().eq(SysUserRole::getSiteId, RequestUtils.siteId()).eq(SysUserRole::getUid, RequestUtils.uid())); - if (ObjectUtil.isEmpty(sysUserRole)){ + sysUserRole = this.sysUserRoleRepository.findOne(new Lambda().eq(SysUserRole::getSiteId, RequestUtils.siteId()).eq(SysUserRole::getUid, RequestUtils.uid())); + if (!sysUserRole){ return List.of(); } isAdmin = sysUserRole.getIsAdmin() == 1 ? true : false; } if (!isAdmin){ - if ((sysUserRole.getRoleIds( && sysUserRole.getRoleIds(.trim() !== '')) && "[]" === sysUserRole.getRoleIds()){ + if (StringUtils.isNotEmpty(sysUserRole.getRoleIds()) && "[]".equals(sysUserRole.getRoleIds())){ const roleIdsStr: string = sysUserRole.getRoleIds().replaceAll("[\\[\\]\"]", ""); - const menuIdsByRoleIds: string[] = getMenuIdsByRoleIds(RequestUtils.siteId(), Arrays.stream(roleIdsStr.split(",")).collect(Collectors.toList())); + String[] menuIdsByRoleIds = getMenuIdsByRoleIds(RequestUtils.siteId(), Arrays.stream(roleIdsStr.split(","))); for (const sysRoleListVo of sysRoleListVoList) { - const diff: string[] = new ArrayList<>(Collections.singleton(sysRoleListVo.getRules())); + String[] diff = new ArrayList<>(Collections.singleton(sysRoleListVo.getRules())); diff.removeAll(menuIdsByRoleIds); - if (diff.length !== 0){ + if (diff.length > 0){ sysRoleListVo.setDisabled(true); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-schedule-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-schedule-service-impl.service.ts index fcf9735f..60412157 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-schedule-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-schedule-service-impl.service.ts @@ -22,8 +22,8 @@ export class SysScheduleServiceImplService { */ async init(...args: any[]): Promise { // 通过 ApplicationContext 获取所有 IJobProvider 实现 - const providers: Record = applicationContext.getBeansOfType(IJobProvider.class); - log.info("Loaded job provider count: {}", providers.size()); + const providers: Record = applicationContext.getBeansOfType(IJobProvider.class); + log.info("Loaded job provider count: {}", providers.length); for (const provider of providers.values()) { log.info("Loaded job provider: {}", provider.getClass().getName()); const annotation: JobProvider = provider.getClass().getAnnotation(JobProvider.class); @@ -38,10 +38,10 @@ export class SysScheduleServiceImplService { * getSysEnableList */ async getSysEnableList(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("status", 1); queryWrapper.orderByDesc("sort", "id"); - return sysScheduleMapper.selectList(queryWrapper); + return this.sysScheduleRepository.find(queryWrapper); } /** @@ -52,26 +52,26 @@ export class SysScheduleServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); // 构造查询条件执行查询 - const queryWrapper: LambdaQueryWrapper = new LambdaQueryWrapper<>(); - if (ObjectUtil.isNotEmpty(searchParam.getStatus()) && !"all" === searchParam.getStatus()){ - if ("0" === searchParam.getStatus()){ + LambdaqueryWrapper = new LambdaQueryWrapper<>(); + if (!!searchParam.getStatus() && !"all".equals(searchParam.getStatus())){ + if ("0".equals(searchParam.getStatus())){ searchParam.setStatus("2"); } queryWrapper.eq( SysSchedule::getStatus, searchParam.getStatus()); } - queryWrapper.eq(ObjectUtil.isNotEmpty(searchParam.getKey()), SysSchedule::getKey, searchParam.getKey()); + queryWrapper.eq(!!searchParam.getKey(), SysSchedule::getKey, searchParam.getKey()); queryWrapper.orderByDesc(SysSchedule::getSort, SysSchedule::getId); - const sysSchedulePage: IPage = sysScheduleMapper.selectPage(new Page<>(page, limit), queryWrapper); + sysSchedulePage = this.sysScheduleRepository.findAndCount({ /* pagination */ }, queryWrapper); // 返回结果集 - const sysScheduleListVoList: SysScheduleListVo[] = []; - for (const sysSchedule of sysSchedulePage.getRecords()) { + SysScheduleListVo[] sysScheduleListVoList = []; + for (const sysSchedule of records) { const sysScheduleListVo: SysScheduleListVo = new SysScheduleListVo(); - BeanUtils.copyProperties(sysSchedule, sysScheduleListVo); + Object.assign(sysScheduleListVo, sysSchedule); sysScheduleListVo.setTimeObject(sysSchedule.getTime()); sysScheduleListVo.setCrontabContent(QuartzJobManager.convertCronContent(sysSchedule.getTime())); - sysScheduleListVoList.add(sysScheduleListVo); + sysScheduleListVoList.push(sysScheduleListVo); } - return PageResult.build(page, limit, sysSchedulePage.getTotal()).setData(sysScheduleListVoList); + return PageResult.build(page, limit, total).setData(sysScheduleListVoList); } /** @@ -80,7 +80,7 @@ export class SysScheduleServiceImplService { async info(...args: any[]): Promise { const sysSchedule: SysSchedule = sysScheduleMapper.selectById(id); const sysScheduleInfoVo: SysScheduleInfoVo = new SysScheduleInfoVo(); - BeanUtils.copyProperties(sysSchedule, sysScheduleInfoVo); + Object.assign(sysScheduleInfoVo, sysSchedule); return sysScheduleInfoVo; } @@ -99,7 +99,7 @@ export class SysScheduleServiceImplService { newSysSchedule.setId(oldSysSchedule.getId()); newSysSchedule.setStatus(sysScheduleStatusParam.getStatus()); newSysSchedule.setUpdateTime(DateUtils.currTime()); - sysScheduleMapper.updateById(newSysSchedule); + this.sysScheduleRepository.save(newSysSchedule); } /** @@ -109,24 +109,24 @@ export class SysScheduleServiceImplService { const jobKey: string = sysScheduleParam.getKey(); const jobInfo: JobInfo = JobProviderFactory.getJobInfo(jobKey); if (jobInfo == null) { - throw new Error("任务不存在."); + throw new RuntimeException("任务不存在."); } // 校验任务是否存在 - const queryWrapper: QueryWrapper = new QueryWrapper(); + queryWrapper = new QueryWrapper(); queryWrapper.eq("`key`", jobKey); - const sysScheduleList: SysSchedule[] = sysScheduleMapper.selectList(queryWrapper); - if (sysScheduleList != null && sysScheduleList.size() > 0) { - throw new Error("任务已经存在."); + SysSchedule[] sysScheduleList = this.sysScheduleRepository.find(queryWrapper); + if (sysScheduleList != null && sysScheduleList.length > 0) { + throw new RuntimeException("任务已经存在."); } // 新增一个任务 const newSysSchedule: SysSchedule = new SysSchedule(); - BeanUtils.copyProperties(sysScheduleParam, newSysSchedule); - newSysSchedule.setTime(JSONUtil.toJsonStr(sysScheduleParam.getTime())); + Object.assign(newSysSchedule, sysScheduleParam); + newSysSchedule.setTime(JSON.stringify(sysScheduleParam.getTime())); newSysSchedule.setCreateTime(DateUtils.currTime()); newSysSchedule.setUpdateTime(DateUtils.currTime()); newSysSchedule.setSiteId(RequestUtils.adminSiteId()); newSysSchedule.setAddon(jobInfo.getSource()); - const result: number = sysScheduleMapper.insert(newSysSchedule); + const result: number = this.sysScheduleRepository.save(newSysSchedule); if (result > 0) { if (newSysSchedule.getStatus() == 1) { // 如果是启动状态,就启动任务 @@ -143,12 +143,12 @@ export class SysScheduleServiceImplService { this.findByIdAndCheck(id); // 构建更新对象 const newSysSchedule: SysSchedule = new SysSchedule(); - BeanUtils.copyProperties(sysScheduleParam, newSysSchedule); + Object.assign(newSysSchedule, sysScheduleParam); newSysSchedule.setId(id); newSysSchedule.setSiteId(RequestUtils.adminSiteId()); newSysSchedule.setUpdateTime(DateUtils.currTime()); - newSysSchedule.setTime(JSONUtil.toJsonStr(sysScheduleParam.getTime())); - const result: number = sysScheduleMapper.updateById(newSysSchedule); + newSysSchedule.setTime(JSON.stringify(sysScheduleParam.getTime())); + const result: number = this.sysScheduleRepository.save(newSysSchedule); if (result <= 0) { log.error("更新系统任务失败:id={}", id); } @@ -169,15 +169,15 @@ export class SysScheduleServiceImplService { if (sysSchedule.getStatus() == 1) { QuartzJobManager.stopJob(sysSchedule); } - sysScheduleMapper.deleteById(id); + this.sysScheduleRepository.delete(id); } /** * template */ async template(...args: any[]): Promise { - const sysScheduleTemplateVoList: SysScheduleTemplateVo[] = []; - const jobKeys: Set = JobProviderFactory.jobKeys(); + SysScheduleTemplateVo[] sysScheduleTemplateVoList = []; + String[] jobKeys = JobProviderFactory.jobKeys(); for (const jobKey of jobKeys) { const jobInfo: JobInfo = JobProviderFactory.getJobInfo(jobKey); const sysScheduleTemplateVo: SysScheduleTemplateVo = new SysScheduleTemplateVo(); @@ -186,7 +186,7 @@ export class SysScheduleServiceImplService { sysScheduleTemplateVo.setDesc(jobInfo.getDescribe()); sysScheduleTemplateVo.setClazz(jobInfo.getJobClass()); sysScheduleTemplateVo.setFunction(jobInfo.getJobClass()); - sysScheduleTemplateVoList.add(sysScheduleTemplateVo); + sysScheduleTemplateVoList.push(sysScheduleTemplateVo); } return sysScheduleTemplateVoList; } @@ -195,11 +195,11 @@ export class SysScheduleServiceImplService { * deleteScheduleLog */ async deleteScheduleLog(...args: any[]): Promise { - const sysScheduleLogs: SysScheduleLog[] = sysScheduleLogMapper.selectList(new QueryWrapper().eq("status", status).lt("execute_time", successThreshold)); + SysScheduleLog[] sysScheduleLogs = this.sysScheduleLogRepository.find(new ().eq("status", status).lt("execute_time", successThreshold)); if (CollectionUtils.isEmpty(sysScheduleLogs)) { return; } - const delIds: Set = sysScheduleLogs.stream().map(SysScheduleLog::getId).collect(Collectors.toSet()); + number[] delIds = sysScheduleLogs.map(SysScheduleLog::getId).collect(Collectors.toSet()); sysScheduleLogMapper.deleteBatchIds(delIds); } @@ -216,35 +216,35 @@ export class SysScheduleServiceImplService { async logList(...args: any[]): Promise { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const qw: LambdaQueryWrapper = new LambdaQueryWrapper<>(); - qw.eq(ObjectUtil.isNotEmpty(searchParam.getScheduleId()), SysScheduleLog::getScheduleId, searchParam.getScheduleId()); - qw.eq(ObjectUtil.isNotEmpty(searchParam.getKey()), SysScheduleLog::getKey, searchParam.getKey()); - if (ObjectUtil.isNotEmpty(searchParam.getStatus()) && !"all" === searchParam.getStatus()){ + Lambdaqw = new LambdaQueryWrapper<>(); + qw.eq(!!searchParam.getScheduleId(), SysScheduleLog::getScheduleId, searchParam.getScheduleId()); + qw.eq(!!searchParam.getKey(), SysScheduleLog::getKey, searchParam.getKey()); + if (!!searchParam.getStatus() && !"all".equals(searchParam.getStatus())){ qw.eq(SysScheduleLog::getStatus, searchParam.getStatus()); } - if (ObjectUtil.isNotEmpty(searchParam.getExecuteTime())) { + if (!!searchParam.getExecuteTime()) { QueryMapperUtils.buildByTime(qw, SysScheduleLog::getExecuteTime, searchParam.getExecuteTime()); } - const sysScheduleLogPage: Page = sysScheduleLogMapper.selectPage(new Page<>(page, limit), qw); - const result: SysScheduleLogListVo[] = []; - sysScheduleLogPage.getRecords().forEach(sysScheduleLog => { + const sysScheduleLogPage: Page = this.sysScheduleLogRepository.findAndCount({ /* pagination */ }, qw); + SysScheduleLogListVo[] result = []; + records.forEach(sysScheduleLog => { const sysScheduleLogListVo: SysScheduleLogListVo = new SysScheduleLogListVo(); - BeanUtils.copyProperties(sysScheduleLog, sysScheduleLogListVo); - result.add(sysScheduleLogListVo); + Object.assign(sysScheduleLogListVo, sysScheduleLog); + result.push(sysScheduleLogListVo); }); - return PageResult.build(page, limit, sysScheduleLogPage.getTotal()).setData(result); + return PageResult.build(page, limit, total).setData(result); } /** * addLog */ async addLog(...args: any[]): Promise { - const sysSchedule: SysSchedule = sysScheduleMapper.selectOne(new LambdaQueryWrapper() + const sysSchedule: SysSchedule = this.sysScheduleRepository.findOne(new Lambda() .eq(SysSchedule::getKey, log.getKey()).eq(SysSchedule::getAddon, log.getAddon())); if (sysSchedule == null) return; log.setScheduleId(sysSchedule.getId()); log.setExecuteTime(DateUtils.currTime()); - sysScheduleLogMapper.insert(log); + this.sysScheduleLogRepository.save(log); } /** @@ -285,7 +285,7 @@ export class SysScheduleServiceImplService { .job(classPath) .build()); - } catch (e) { + } catch (Exception e) { // 获取任务名称(即使在异常情况下也尝试获取) const errorMsg: string = "计划任务:" + path.basename(sysSchedule) + "发生错误, 错误原因:" + e.message + " at " + e.getStackTrace()[0].toString(); @@ -314,6 +314,6 @@ export class SysScheduleServiceImplService { * clearLog */ async clearLog(...args: any[]): Promise { - sysScheduleLogMapper.delete(new QueryWrapper().eq("schedule_id", scheduleId)); + this.sysScheduleLogRepository.delete(new ().eq("schedule_id", scheduleId)); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-upgrade-records-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-upgrade-records-service-impl.service.ts index 23f4ac47..c025ceb5 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-upgrade-records-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-upgrade-records-service-impl.service.ts @@ -17,7 +17,7 @@ export class SysUpgradeRecordsServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("create_time"); if (searchParam != null) { @@ -26,11 +26,11 @@ export class SysUpgradeRecordsServiceImplService { } } - const iPage: IPage = sysUpgradeRecordsMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: SysUpgradeRecordsListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.sysUpgradeRecordsRepository.findAndCount({ /* pagination */ }, queryWrapper); + SysUpgradeRecordsListVo[] list = []; + for (const item of records) { const vo: SysUpgradeRecordsListVo = new SysUpgradeRecordsListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); vo.setCreateTime(DateUtils.timestampToString(item.getCreateTime())); vo.setCompleteTime(DateUtils.timestampToString(item.getCompleteTime())); vo.setStatusName(UpgradeRecordStatusEnum.getNameByStatus(vo.getStatus())); @@ -45,36 +45,36 @@ export class SysUpgradeRecordsServiceImplService { vo.setContent(value); } } - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } @Override public void add(SysUpgradeRecordsParam addParam) { const model: SysUpgradeRecords = new SysUpgradeRecords(); - BeanUtils.copyProperties(addParam, model); - model.setCreateTime(System.currentTimeMillis() / 1000); - sysUpgradeRecordsMapper.insert(model); + Object.assign(model, addParam); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.sysUpgradeRecordsRepository.save(model); } @Override public void edit(String key, SysUpgradeRecordsParam editParam) { const model: SysUpgradeRecords = new SysUpgradeRecords(); - BeanUtils.copyProperties(editParam, model); - sysUpgradeRecordsMapper.update(model, new QueryWrapper().eq("upgrade_key", key)); + Object.assign(model, editParam); + sysUpgradeRecordsMapper.update(model, new ().eq("upgrade_key", key)); } @Override public void clear(long threshold) { - sysUpgradeRecordsMapper.delete(new QueryWrapper() + this.sysUpgradeRecordsRepository.delete(new () .lt("create_time", threshold).in("status", STATUS_READY, STATUS_FAIL)); } @Override public void del(SysUpgradeRecordsDelParam delParam) { - const queryWrapper: QueryWrapper = new QueryWrapper(); + const queryWrapper: QueryWrapper = new (); if (delParam.getIds().getClass().getName().startsWith("[")) { String[] stringIds = (String[]) delParam.getIds(); @@ -82,7 +82,7 @@ export class SysUpgradeRecordsServiceImplService { } else { queryWrapper.eq("id", delParam.getIds()); } - sysUpgradeRecordsMapper.delete(queryWrapper); + this.sysUpgradeRecordsRepository.delete(queryWrapper); } } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-user-log-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-user-log-service-impl.service.ts index 8b58ab9b..0106f693 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-user-log-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-user-log-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -16,44 +16,44 @@ export class SysUserLogServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); queryWrapper.orderByDesc("id"); - if(ObjectUtil.isNotNull(searchParam.getUsername()) && ObjectUtil.isNotEmpty(searchParam.getUsername())){ + if(ObjectUtil.isNotNull(searchParam.getUsername()) && !!searchParam.getUsername()){ queryWrapper.like("username", searchParam.getUsername()); } - if(ObjectUtil.isNotNull(searchParam.getIp()) && ObjectUtil.isNotEmpty(searchParam.getIp())){ + if(ObjectUtil.isNotNull(searchParam.getIp()) && !!searchParam.getIp()){ queryWrapper.like("ip", searchParam.getIp()); } - if(ObjectUtil.isNotNull(searchParam.getUrl()) && ObjectUtil.isNotEmpty(searchParam.getUrl())){ + if(ObjectUtil.isNotNull(searchParam.getUrl()) && !!searchParam.getUrl()){ queryWrapper.like("url", searchParam.getUrl()); } - const iPage: IPage = sysUserLogMapper.selectPage(new Page(page, limit), queryWrapper); + iPage = this.sysUserLogRepository.findAndCount({ /* pagination */ }, queryWrapper); - const list: SysUserLogListVo[] = []; - for (const item of iPage.getRecords()) { + SysUserLogListVo[] list = []; + for (const item of records) { const vo: SysUserLogListVo = new SysUserLogListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * info */ async info(...args: any[]): Promise { - const model: SysUserLog = sysUserLogMapper.selectOne( - new QueryWrapper() + const model: SysUserLog = this.sysUserLogRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId()) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: SysUserLogInfoVo = new SysUserLogInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -61,6 +61,6 @@ export class SysUserLogServiceImplService { * destroy */ async destroy(...args: any[]): Promise { - sysUserLogMapper.delete(new QueryWrapper().eq("site_id", RequestUtils.siteId())); + this.sysUserLogRepository.delete(new ().eq("site_id", RequestUtils.siteId())); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-user-role-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-user-role-service-impl.service.ts index c5faec12..02990d2e 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-user-role-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/sys-user-role-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class SysUserRoleServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -17,23 +16,23 @@ export class SysUserRoleServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); + MPJqueryWrapper = new MPJQueryWrapper<>(); //sql语句 queryWrapper.select("nsu.uid, nsu.username, nsu.head_img, nsu.password, nsu.real_name, nsu.last_ip, nsu.last_time, nsu.create_time, nsu.login_count, nsu.status, nsu.is_del, nsu.delete_time, nsu.update_time, nsur.id, nsur.site_id, nsur.role_ids, nsur.is_admin") .setAlias("nsur") - .leftJoin("?_sys_user nsu ON nsur.uid = nsu.uid".replace("?_", this.config.get('tablePrefix'))); + .leftJoin("?_sys_user nsu ON nsur.uid = nsu.uid".replace("?_", this.appConfig.tablePrefix)); //查询条件判断组装 - if (ObjectUtil.isNotEmpty(searchParam.getUid())) { + if (!!searchParam.getUid()) { queryWrapper.eq("nsu.uid", searchParam.getUid()); } //排序 queryWrapper.orderByDesc("id"); //分页查询 - const iPage: IPage = sysUserRoleMapper.selectJoinPage( - new Page<>(page, limit), + iPage = sysUserRoleMapper.selectJoinPage( + { /* pagination */ }, SysUserRoleListVo.class, queryWrapper); @@ -45,15 +44,15 @@ export class SysUserRoleServiceImplService { * info */ async info(...args: any[]): Promise { - const model: SysUserRole = sysUserRoleMapper.selectOne( - new QueryWrapper() + const model: SysUserRole = this.sysUserRoleRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: SysUserRoleInfoVo = new SysUserRoleInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -61,8 +60,8 @@ export class SysUserRoleServiceImplService { * add */ async add(...args: any[]): Promise { - const userRoleCount: number = sysUserRoleMapper.selectCount( - new QueryWrapper() + const userRoleCount: number = this.sysUserRoleRepository.count( + new () .eq("uid", addParam.getUid()) .eq("site_id", addParam.getSiteId()) ); @@ -78,21 +77,21 @@ export class SysUserRoleServiceImplService { model.setIsAdmin(addParam.getIsAdmin()==null?0:addParam.getIsAdmin()); model.setStatus(ObjectUtil.isNull(addParam.getStatus())? StatusEnum.ON.getStatus() : addParam.getStatus()); if(model.getStatus()<1){ - model.setRoleIds(addParam.getRoleIds()==null? JSONUtil.toJsonStr(new JsonArray()):addParam.getRoleIds()); + model.setRoleIds(addParam.getRoleIds()==null? JSON.stringify(new JsonArray()):addParam.getRoleIds()); } - sysUserRoleMapper.insert(model); + this.sysUserRoleRepository.save(model); } /** * edit */ async edit(...args: any[]): Promise { - const model: SysUserRole = sysUserRoleMapper.selectOne( - new QueryWrapper() + const model: SysUserRole = this.sysUserRoleRepository.findOne( + new () .eq("uid", editParam.getUid()) .eq("site_id", editParam.getSiteId()) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); const isAdmin: number = model.getIsAdmin(); if(isAdmin>0){ //超级管理员不允许改动权限 @@ -100,31 +99,31 @@ export class SysUserRoleServiceImplService { } model.setStatus(editParam.getStatus()); model.setRoleIds(editParam.getRoleIds()); - sysUserRoleMapper.updateById(model); + this.sysUserRoleRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - const model: SysUserRole = sysUserRoleMapper.selectOne( - new QueryWrapper() + const model: SysUserRole = this.sysUserRoleRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); - sysUserRoleMapper.delete(new QueryWrapper().eq("id", id)); + this.sysUserRoleRepository.delete(new ().eq("id", id)); } /** * getUserRole */ async getUserRole(...args: any[]): Promise { - const model: SysUserRole = sysUserRoleMapper.selectOne(new QueryWrapper().eq("uid", uid).eq("site_id", site_id).last(" limit 1")); + const model: SysUserRole = this.sysUserRoleRepository.findOne(new ().eq("uid", uid).eq("site_id", site_id).last(" limit 1")); const vo: SysUserRoleInfoVo = new SysUserRoleInfoVo(); if(ObjectUtil.isNotNull(model)){ - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; }else{ return null; diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/system-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/system-service-impl.service.ts index a426a6e5..4be64348 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/system-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/sys/impl/system-service-impl.service.ts @@ -30,7 +30,7 @@ export class SystemServiceImplService { * clearCache */ async clearCache(...args: any[]): Promise { - cached.getAllKeys().stream().forEach(key => cached.remove(key)); + cached.getAllKeys().forEach(key => cached.remove(key)); } /** @@ -40,15 +40,15 @@ export class SystemServiceImplService { const vo: SpreadQrcodeVo = new SpreadQrcodeVo(); try { - const data: Record = {}; + const data: Record = {}; for (SpreadQrcodeParam.Param qrcodeParam : param.getParams()) { const jsonArray: JSONArray = JSONUtil.parseArray(qrcodeParam); - const jsonObject: Record = JSONUtil.parseObj(jsonArray); + const jsonObject: Record = JSON.parse(jsonArray); data.put(jsonObject.getStr("name"), qrcodeParam.getColumnValue()); } const dir: string = "upload/qrcode/" + RequestUtils.siteId() + "/" + param.getFolder(); vo.setWeappPath(QrcodeUtils.qrcodeToFile(RequestUtils.siteId(), "weapp", "", param.getPage(), data, dir)); - } catch (e) { + } catch (Exception e) { } return vo; @@ -61,7 +61,7 @@ export class SystemServiceImplService { try (const connection: Connection = dataSource.getConnection()) { DatabaseMetaData metaData = connection.getMetaData(); return metaData.getDatabaseProductVersion(); - }catch (SQLException e) { + }catch (e) { return "未知"; } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/upgrade/impl/upgrade-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/upgrade/impl/upgrade-service-impl.service.ts index 02b20f42..2f652a7e 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/upgrade/impl/upgrade-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/upgrade/impl/upgrade-service-impl.service.ts @@ -1,13 +1,12 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as fs from 'fs'; @Injectable() export class UpgradeServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -22,7 +21,7 @@ export class UpgradeServiceImplService { * upgradeCheck */ async upgradeCheck(...args: any[]): Promise { - if (this.config.get('runActive') === "dev") throw new BadRequestException("开发环境下请先关闭服务启动webroot/jar下的web-app-boot-exec进行升级"); + if (this.appConfig.runActive === "dev") throw new BadRequestException("开发环境下请先关闭服务启动webroot/jar下的web-app-boot-exec进行升级"); const upgradeCheck: boolean = true; @@ -32,8 +31,8 @@ export class UpgradeServiceImplService { const readableDir: JSONArray = new JSONArray(); const writeDir: JSONArray = new JSONArray(); - if (this.config.get('envType') === "dev") { - rootPath = this.config.get('projectRoot') + "/"; + if (this.appConfig.envType === "dev") { + rootPath = this.appConfig.projectRoot + "/"; runtimePath = rootPath; readableDir.put(new Record().set("dir", rootPath + "niucloud-addon").set("status", true)); @@ -41,7 +40,7 @@ export class UpgradeServiceImplService { readableDir.put(new Record().set("dir", rootPath + "webroot").set("status", true)); writeDir.put(new Record().set("dir", rootPath + "webroot").set("status", true)); } else { - rootPath = this.config.get('webRoot') + "/"; + rootPath = this.appConfig.webRoot + "/"; runtimePath = rootPath + "runtime/"; readableDir.put(new Record().set("dir", runtimePath).set("status", true)); @@ -56,7 +55,7 @@ export class UpgradeServiceImplService { writeDir.put(new Record().set("dir", runtimePath + "uni-app").set("status", true)); writeDir.put(new Record().set("dir", runtimePath + "web").set("status", true)); - for (const i of number = 0; i < readableDir.size(); i++) { + for (const i of number = 0; i < readableDir.length; i++) { const dir: Record = readableDir.getJSONObject(i); dir.set("status", dir.getStr("dir").canRead()); dir.set("dir", dir.getStr("dir").replace(rootPath, "")); @@ -64,7 +63,7 @@ export class UpgradeServiceImplService { if (!dir.getBool("status")) upgradeCheck = false; } - for (const i of number = 0; i < writeDir.size(); i++) { + for (const i of number = 0; i < writeDir.length; i++) { const dir: Record = writeDir.getJSONObject(i); dir.set("status", dir.getStr("dir").canWrite()); dir.set("dir", dir.getStr("dir").replace(rootPath, "")); @@ -84,25 +83,25 @@ export class UpgradeServiceImplService { const instance: NiucloudUtils = NiucloudUtils.getInstance(); const vo: UpgradeContentVo = new UpgradeContentVo(); - const apps: Record[] = []; + LinkedMap[] apps = []; if (addon.length === 0) { - const query: Record = {}; + const query: Record = new HashRecord<>(); query.put("product_key", instance.getProductKey()); - query.put("app_key", this.config.get('appKey')); - query.put("version", this.config.get('version')); - apps.add(query); + query.put("app_key", this.appConfig.appKey); + query.put("version", this.appConfig.version); + apps.push(query); } else { for (const key of addon.split(",")) { - const addonModel: Addon = addonMapper.selectOne(new QueryWrapper().eq("`key`", key).select("version,type")); - const query: Record = {}; + const addonModel: Addon = this.addonRepository.findOne(new ().eq("`key`", key).select("version,type")); + const query: Record = new HashRecord<>(); query.put("product_key", instance.getProductKey()); query.put("app_key", key); query.put("version", addonModel.getVersion()); if (addonModel.getType() === AddonTypeEnum.APP.getType()) { apps.addFirst(query); } else { - apps.add(query); + apps.push(query); } } } @@ -116,7 +115,7 @@ export class UpgradeServiceImplService { } } - vo.setLastBackup(sysBackupRecordsMapper.selectOne(new QueryWrapper() + vo.setLastBackup(this.sysBackupRecordsRepository.findOne(new () .eq("status", "complete") .orderByDesc("complete_time") .last("limit 1") @@ -129,39 +128,39 @@ export class UpgradeServiceImplService { * upgrade */ async upgrade(...args: any[]): Promise { - if (this.config.get('runActive') === "dev") throw new BadRequestException("开发环境下请先关闭服务启动webroot/jar下的web-app-boot-exec进行升级"); + if (this.appConfig.runActive === "dev") throw new BadRequestException("开发环境下请先关闭服务启动webroot/jar下的web-app-boot-exec进行升级"); if (getUpgradeTask() != null) throw new BadRequestException("已经有正在升级中的任务"); const upgradeContent: UpgradeContentVo = getUpgradeContent(upgradeParam.getAddon()); - upgradeContent.setContent(upgradeContent.getContent().stream().filter(c => c.getVersionList().size() > 0).toList()); - upgradeContent.setUpgradeApps(upgradeContent.getContent().stream().map(c => c.getApp().getAppKey()).toList()); + upgradeContent.setContent(upgradeContent.getContent().filter(c => c.getVersionList().size() > 0).toList()); + upgradeContent.setUpgradeApps(upgradeContent.getContent().map(c => c.getApp().getAppKey()).toList()); if (upgradeContent.getContent().size() == 0) throw new BadRequestException("没有获取到可以升级的内容"); const instance: NiucloudUtils = NiucloudUtils.getInstance(); // 获取下载const actionQuery: token - Map = {}; + Record = new HashRecord<>(); actionQuery.put("data[product_key]", instance.getProductKey()); - actionQuery.put("data[framework_version]", this.config.get('version')); + actionQuery.put("data[framework_version]", this.appConfig.version); actionQuery.put("data[app_key]", upgradeContent.getContent().get(0).getApp().getAppKey()); actionQuery.put("data[version]", upgradeContent.getContent().get(0).getVersion()); const actionToken: Record = niucloudService.getActionToken("upgrade", actionQuery); - const query: Record = {}; + const query: Record = new HashRecord<>(); query.put("authorize_code", instance.getCode()); query.put("token", actionToken == null ? "" : actionToken.getStr("token")); const response: HttpResponse = new NiucloudUtils.Cloud().build("cloud/upgrade").query(query).method(Method.GET).execute(); if (response.getStatus() != 200) throw new BadRequestException("升级请求失败"); - const body: Record = JSONUtil.parseObj(response.body()); - if (body.getInt("code") === 0) throw new Error(body.getStr("msg")); + const body: Record = JSON.parse(response.body()); + if (body.getInt("code").equals(0)) throw new RuntimeException(body.getStr("msg")); const vo: UpgradeTaskVo = new UpgradeTaskVo(); - vo.setEnvType(this.config.get('envType')); + vo.setEnvType(this.appConfig.envType); vo.setUpgradeTime(DateUtil.now()); - vo.setAddon(actionQuery.get("data[app_key]")); + vo.setAddon((String) actionQuery.get("data[app_key]")); vo.setKey(RandomUtil.randomString(10)); vo.setUpgrade(actionQuery); vo.setStep("requestUpgrade"); @@ -181,7 +180,7 @@ export class UpgradeServiceImplService { // 添加升级记录 const content: JSONArray = new JSONArray(); - upgradeContent.getContent().stream().forEach(i => { + upgradeContent.getContent().forEach(i => { const item: Record = new Record(); item.set("app_key", i.getApp().getAppKey()); item.putByPath("app.name", i.getApp().getAppName()); @@ -193,7 +192,7 @@ export class UpgradeServiceImplService { record.setUpgradeKey(vo.getKey()); record.setStatus(UpgradeRecordStatusEnum.STATUS_READY.getStatus()); record.setContent(content.toString()); - sysUpgradeRecordsService.add(record); + sysUpgradeRecordsService.push(record); setUpgradeTaskCache(vo); return vo; @@ -206,7 +205,7 @@ export class UpgradeServiceImplService { const cache: Cached = CacheFactory.getCacheOperator(); const data: any = cache.get("upgrade"); if (data == null) return null; - return JSONUtil.toBean(JSONUtil.parseObj(data), UpgradeTaskVo.class); + return Object.assign(new UpgradeTaskVo(), JSON.parse(data)); } /** @@ -214,7 +213,7 @@ export class UpgradeServiceImplService { */ async setUpgradeTaskCache(...args: any[]): Promise { const cache: Cached = CacheFactory.getCacheOperator(); - cache.put("upgrade", JSONUtil.parseObj(vo).toString()); + cache.put("upgrade", JSON.parse(vo).toString()); } /** @@ -224,7 +223,7 @@ export class UpgradeServiceImplService { if (delayed > 0) { try { Thread.sleep(delayed * 1000); - } catch (e) { + } catch (Exception e) { } } const cache: Cached = CacheFactory.getCacheOperator(); @@ -238,19 +237,19 @@ export class UpgradeServiceImplService { const vo: UpgradeTaskVo = this.getUpgradeTask(); if (vo == null) return; - if (ObjectUtil.isNotEmpty(vo.getStatus()) && vo.getStatus() === "restarting") return; + if (!!vo.getStatus() && vo.getStatus() === "restarting") return; - const steps: string[] = vo.getSteps().keySet().stream().collect(Collectors.toList()); - const step: string = steps.indexOf(vo.getStep()) < steps.size() - 1 ? steps.get(steps.indexOf(vo.getStep()) + 1) : ""; + String[] steps = vo.getSteps().keySet(); + const step: string = steps.indexOf(vo.getStep()) < steps.length - 1 ? steps.get(steps.indexOf(vo.getStep()) + 1) : ""; - if (step.length !== 0) { + if (step.length > 0) { if (!vo.getExecuted().includes(step)) { vo.getExecuted().add(step); vo.getLog().add(vo.getSteps().get(step).getTitle()); } try { - const param: Record = null; - param = (Map) dynamicMethodCall(step, vo); + const param: Record = null; + param = (Record) dynamicMethodCall(step, vo); if (param != null) { vo.setParams(param); } else { @@ -259,7 +258,7 @@ export class UpgradeServiceImplService { vo.setAddon(vo.getUpgradeApps().get(0)); } setUpgradeTaskCache(vo); - } catch (e) { + } catch (Exception e) { if (e.message.includes("队列")) { throw e; } else { @@ -267,7 +266,7 @@ export class UpgradeServiceImplService { vo.getError().add(e.message); setUpgradeTaskCache(vo); this.upgradeErrorHandle(vo); - e.printStackTrace(); + console.error(e); console.log("升级异常."); } } @@ -278,41 +277,41 @@ export class UpgradeServiceImplService { * coverCode */ async coverCode(...args: any[]): Promise { - if (this.config.get('envType') === "dev") { + if (this.appConfig.envType === "dev") { vo.getUpgradeContent().getContent().forEach(item => { const appKey: string = item.getApp().getAppKey(); const codeDir: string = upgradeDir(vo + "/download/" + appKey); // 判断目录存在并且不为空 if (fs.existsSync(codeDir) && fs.readdirSync(codeDir).length > 0) { - item.getVersionList().stream().collect(Collectors.collectingAndThen( + item.getVersionList().collect(Collectors.collectingAndThen( Collectors.toList(), l => { Collections.reverse(l); - return l.stream(); + return l; })).forEach(version => { // 如果是框架 const rootDir: string = null; - if (appKey === this.config.get('appKey')) { - rootDir = this.config.get('projectRoot'); + if (appKey === this.appConfig.appKey) { + rootDir = this.appConfig.projectRoot; } else { - rootDir = this.config.get('webRootDownAddon', appKey); + rootDir = this.appConfig.webRootDownAddon, appKey; } // 处理文件变更记录 const changeRecord: string = codeDir, version.getVersionNo( + ".txt"); if (fs.existsSync(changeRecord)) { // 移除新版本删除的文件 - const change: string[] = null; + String[] change = null; try { change = Arrays.asList(fs.readFileSync(changeRecord, "UTF-8", 'utf-8').split("\n")); - } catch (IOException e) { - throw new Error(e); + } catch (e) { + throw new RuntimeException(e); } - if (ObjectUtil.isNotEmpty(change)) { + if (!!change) { for (const line of change) { String[] content = line.split(" "); - if (content[0] === "-") { + if (content[0].equals("-")) { (rootDir, content[2]).deleteOnExit(); } } @@ -323,25 +322,25 @@ export class UpgradeServiceImplService { if (fs.existsSync(changeDir)) { try { FileUtils.copyDirectory(changeDir, rootDir); - } catch (IOException e) { - throw new Error(e); + } catch (e) { + throw new RuntimeException(e); } } }); - const projectDir: string = this.config.get('projectNiucloudAddon', appKey); + const projectDir: string = this.appConfig.projectNiucloudAddon, appKey; if (fs.existsSync(projectDir)) { try { - FileUtils.copyDirectory(this.config.get('webRootDownAddon' + appKey + "/java"), projectDir); - } catch (IOException e) { - throw new Error(e); + FileUtils.copyDirectory(this.appConfig.webRootDownAddon + appKey + "/java", projectDir); + } catch (e) { + throw new RuntimeException(e); } } // 合并resource try { - FileUtils.copyDirectory(this.config.get('webRootDownAddon' + appKey + "/resource"), this.config.get('webRootDownResource', appKey)); - } catch (IOException e) { + FileUtils.copyDirectory(this.appConfig.webRootDownAddon + appKey + "/resource", this.appConfig.webRootDownResource, appKey); + } catch (e) { } } }); @@ -352,8 +351,8 @@ export class UpgradeServiceImplService { vo.setStep("coverCode"); vo.setStatus("restarting"); setUpgradeTaskCache(vo); - fs.writeFileSync(upgradeDir(vo, "upgrade.json", 'utf-8'), JSONUtil.parseObj(vo.getUpgradeContent()).toString(), "UTF-8"); - PipeNameUtils.noticeBootRestartByUpgrade(this.config.get('applicationName'), vo.getKey(), vo.getUpgradeContent().getLastBackup().getBackupKey()); + fs.writeFileSync(upgradeDir(vo, "upgrade.json", 'utf-8'), JSON.parse(vo.getUpgradeContent()).toString(), "UTF-8"); + PipeNameUtils.noticeBootRestartByUpgrade(this.appConfig.applicationName, vo.getKey(), vo.getUpgradeContent().getLastBackup().getBackupKey()); Thread.sleep(3000); } } @@ -362,10 +361,10 @@ export class UpgradeServiceImplService { * handleVue */ async handleVue(...args: any[]): Promise { - const envs: WebAppEnvs = this.config; + const envs: WebAppEnvs = this.appConfig; for (const key of vo.getUpgradeApps()) { - if (key !== this.config.get('appKey')) { + if (key !== this.appConfig.appKey) { const sourceDir: string = envs.webRootDownAddon + key; if (fs.existsSync(sourceDir)) { addonInstallTools.installVue(key); @@ -373,10 +372,10 @@ export class UpgradeServiceImplService { } } - const addons: string[] = addonMapper.selectList(new MPJQueryWrapper() + String[] addons = this.addonRepository.find(new MPJ() .select("`key`") .eq("status", AddonStatusEnum.ON.getCode())) - .stream().map(i => i.getKey()).collect(Collectors.toList()) + .map(i => i.getKey()) ; // 处理pages.json @@ -411,19 +410,19 @@ export class UpgradeServiceImplService { vo.setStatus("success"); for (const key of vo.getUpgradeApps()) { - if (key !== this.config.get('appKey')) { - const addon: Addon = JSONUtil.toBean(coreAddonService.getAddonConfig(key), Addon.class); + if (key !== this.appConfig.appKey) { + const addon: Addon = Object.assign(new Addon(), coreAddonService.getAddonConfig(key)); coreAddonService.set(addon); } } const backupDir: string = upgradeDir(vo); - FileUtil.writeUtf8String(JSONUtil.toJsonPrettyStr(JSONUtil.parseObj(vo)), backupDir, DateUtil.now( + ".log")); + FileUtil.writeUtf8String(JSONUtil.toJsonPrettyStr(JSON.parse(vo)), backupDir, DateUtil.now( + ".log")); // 变更升级记录 const editParam: SysUpgradeRecordsParam = new SysUpgradeRecordsParam(); editParam.setStatus(UpgradeRecordStatusEnum.STATUS_COMPLETE.getStatus()); - editParam.setCompleteTime(System.currentTimeMillis() / 1000); + editParam.setCompleteTime(Math.floor(Date.now() / 1000)); sysUpgradeRecordsService.edit(vo.getKey(), editParam); upgradeService.clearUpgradeTask(5); @@ -435,7 +434,7 @@ export class UpgradeServiceImplService { * upgradeErrorHandle */ async upgradeErrorHandle(...args: any[]): Promise { - LinkedHashMap = new LinkedHashMap<>(); + LinkedHashRecord = new LinkedHashMap<>(); steps.put("rollback", new UpgradeTaskVo.Step("rollback", "升级失败开始回滚")); if (vo.getExecuted().includes("coverCode")) { @@ -509,7 +508,7 @@ export class UpgradeServiceImplService { ((InvocationTargetException) e).getCause().printStackTrace(); throw new BadRequestException(((InvocationTargetException) e).getCause().getMessage()); } else { - e.printStackTrace(); + console.error(e); } return null; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/upload/impl/storage-config-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/upload/impl/storage-config-service-impl.service.ts index 0e16d8b6..435fc63c 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/upload/impl/storage-config-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/upload/impl/storage-config-service-impl.service.ts @@ -29,7 +29,7 @@ export class StorageConfigServiceImplService { */ const storageConfig: Record = coreStorageService.getStorageConfig(RequestUtils.siteId()); - const storageValues: Record = JSONUtil.parseObj(storageTypeList.get(storageType)); + const storageValues: Record = JSON.parse(storageTypeList.get(storageType)); const coreStorAgeConfigVo: CoreStorAgeConfigVo = new CoreStorAgeConfigVo(); coreStorAgeConfigVo.setStorageType(storageType); coreStorAgeConfigVo.setIsUse(storageType === storageConfig.get("default") ? StorageEnum.ON.getCode() : StorageEnum.OFF.getCode()); @@ -40,17 +40,17 @@ export class StorageConfigServiceImplService { const params: Record = new Record(); if (ObjectUtil.isNotNull(storageValues.get("params"))) { - const valuesParams: Record = JSONUtil.parseObj(storageValues.get("params")); + const valuesParams: Record = JSON.parse(storageValues.get("params")); const configParams: Record = new Record(); if (ObjectUtil.isNotNull(storageConfig.get(storageType))) { - configParams = JSONUtil.parseObj(storageConfig.get(storageType)); + configParams = JSON.parse(storageConfig.get(storageType)); } for (const paramsKey of valuesParams.keySet()) { const itemParam: Record = new Record(); const paramsValues: string = valuesParams.get(paramsKey).toString(); itemParam.set("name", paramsValues); const value: string = configParams.getStr(paramsKey); - if (encryptParams.includes(paramsKey) && ObjectUtil.isNotEmpty(value)) { + if (encryptParams.includes(paramsKey) && !!value) { value = StringUtils.hide(value, 0, value.length()); } itemParam.set("value", value); @@ -80,22 +80,22 @@ export class StorageConfigServiceImplService { */ const storageConfig: Record = coreStorageService.getStorageConfig(RequestUtils.siteId()); - const storageValues: Record = JSONUtil.parseObj(storageTypeList.get(storageType)); + const storageValues: Record = JSON.parse(storageTypeList.get(storageType)); if (storageData.getInt("is_use") == 1) { storageConfig.set("default", storageType); } else { - if (storageData.getStr("storage_type") === storageConfig.get("default")) { + if (storageData.getStr("storage_type").equals(storageConfig.get("default"))) { storageConfig.set("default", ""); } } const configParams: Record = new Record(); if (ObjectUtil.isNotNull(storageConfig.get(storageType))) { - configParams = JSONUtil.parseObj(storageConfig.get(storageType)); + configParams = JSON.parse(storageConfig.get(storageType)); } if (ObjectUtil.isNotNull(storageValues.get("params"))) { - const valuesParams: Record = JSONUtil.parseObj(storageValues.get("params")); + const valuesParams: Record = JSON.parse(storageValues.get("params")); for (const paramsKey of valuesParams.keySet()) { const value: string = storageData.getStr(paramsKey); if (!value.includes("*")) { diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/verify/impl/verifier-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/verify/impl/verifier-service-impl.service.ts index 00f2a798..6acf4eb2 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/verify/impl/verifier-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/verify/impl/verifier-service-impl.service.ts @@ -1,12 +1,11 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class VerifierServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -17,49 +16,49 @@ export class VerifierServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); - queryWrapper.setAlias("v").innerJoin("?_member m ON v.member_id = m.member_id".replace("?_", this.config.get('tablePrefix'))); + MPJqueryWrapper = new MPJQueryWrapper<>(); + queryWrapper.setAlias("v").innerJoin("?_member m ON v.member_id = m.member_id".replace("?_", this.appConfig.tablePrefix)); queryWrapper.select("v.*,m.member_no,m.username,m.nickname,m.mobile,m.headimg"); queryWrapper.eq("v.site_id", RequestUtils.siteId()); queryWrapper.orderByDesc("id"); - const iPage: IPage = verifierMapper.selectJoinPage(new Page<>(page, limit), VerifierVo.class, queryWrapper); - const list: VerifierListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = verifierMapper.selectJoinPage({ /* pagination */ }, VerifierVo.class, queryWrapper); + VerifierListVo[] list = []; + for (const item of records) { const vo: VerifierListVo = new VerifierListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); const memberInfoVo: MemberBriefInfoVo = new MemberBriefInfoVo(); - BeanUtils.copyProperties(item, memberInfoVo); + Object.assign(memberInfoVo, item); vo.setMember(memberInfoVo); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * all */ async all(...args: any[]): Promise { - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); - queryWrapper.setAlias("v").innerJoin("?_member m ON v.member_id = m.member_id".replace("?_", this.config.get('tablePrefix'))); + MPJqueryWrapper = new MPJQueryWrapper<>(); + queryWrapper.setAlias("v").innerJoin("?_member m ON v.member_id = m.member_id".replace("?_", this.appConfig.tablePrefix)); queryWrapper.select("v.*,m.member_no,m.username,m.nickname,m.mobile,m.headimg"); queryWrapper.eq("v.site_id", RequestUtils.siteId()); queryWrapper.orderByDesc("id"); - const verifierList: VerifierVo[] = verifierMapper.selectJoinList(VerifierVo.class, queryWrapper); + VerifierVo[] verifierList = verifierMapper.selectJoinList(VerifierVo.class, queryWrapper); - const list: VerifierListVo[] = []; + VerifierListVo[] list = []; for (const item of verifierList) { const vo: VerifierListVo = new VerifierListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); const memberInfoVo: MemberBriefInfoVo = new MemberBriefInfoVo(); - BeanUtils.copyProperties(item, memberInfoVo); + Object.assign(memberInfoVo, item); vo.setMember(memberInfoVo); - list.add(vo); + list.push(vo); } return list; } @@ -68,25 +67,25 @@ export class VerifierServiceImplService { * add */ async add(...args: any[]): Promise { - const member: Member = memberMapper.selectOne(new QueryWrapper().select("member_id").eq("member_id", addParam.getMemberId()).eq("site_id", RequestUtils.siteId())); - Assert.notNull(member, "会员不存在"); + const member: Member = this.memberRepository.findOne(new ().select("member_id").eq("member_id", addParam.getMemberId()).eq("site_id", RequestUtils.siteId())); + if (!member) throw new BadRequestException("会员不存在"); - const verifier: Verifier = verifierMapper.selectOne(new QueryWrapper().select("id").eq("member_id", addParam.getMemberId()).eq("site_id", RequestUtils.siteId())); - if (ObjectUtil.isNotEmpty(verifier)) return; + const verifier: Verifier = this.verifierRepository.findOne(new ().select("id").eq("member_id", addParam.getMemberId()).eq("site_id", RequestUtils.siteId())); + if (!!verifier) return; const model: Verifier = new Verifier(); model.setSiteId(RequestUtils.siteId()); model.setMemberId(addParam.getMemberId()); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setVerifyType(JSONUtil.parseArray(addParam.getVerifyType()).toString()); - verifierMapper.insert(model); + this.verifierRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - verifierMapper.delete(new QueryWrapper().eq("id", id).eq("site_id", RequestUtils.siteId())); + this.verifierRepository.delete(new ().eq("id", id).eq("site_id", RequestUtils.siteId())); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/verify/impl/verify-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/verify/impl/verify-service-impl.service.ts index 2e8d55f9..96428c3f 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/verify/impl/verify-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/verify/impl/verify-service-impl.service.ts @@ -1,12 +1,11 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class VerifyServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -17,58 +16,58 @@ export class VerifyServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); - queryWrapper.setAlias("v").innerJoin("?_member m ON v.verifier_member_id = m.member_id".replace("?_", this.config.get('tablePrefix'))); + MPJqueryWrapper = new MPJQueryWrapper<>(); + queryWrapper.setAlias("v").innerJoin("?_member m ON v.verifier_member_id = m.member_id".replace("?_", this.appConfig.tablePrefix)); queryWrapper.select("v.*,m.member_no,m.username,m.nickname,m.mobile,m.headimg"); queryWrapper.eq("v.site_id", RequestUtils.siteId()); queryWrapper.orderByDesc("id"); - if (ObjectUtil.isNotEmpty(searchParam.getCode())) queryWrapper.eq("code", searchParam.getCode()); - if (ObjectUtil.isNotEmpty(searchParam.getType())) queryWrapper.eq("type", searchParam.getType()); - if (ObjectUtil.isNotEmpty(searchParam.getVerifierMemberId())) queryWrapper.eq("verifier_member_id", searchParam.getVerifierMemberId()); - if (ObjectUtil.isNotEmpty(searchParam.getCreateTime())) QueryMapperUtils.buildByTime(queryWrapper, "v.create_time", searchParam.getCreateTime()); - if (ObjectUtil.isNotEmpty(searchParam.getOrderId())){ + if (!!searchParam.getCode()) queryWrapper.eq("code", searchParam.getCode()); + if (!!searchParam.getType()) queryWrapper.eq("type", searchParam.getType()); + if (!!searchParam.getVerifierMemberId()) queryWrapper.eq("verifier_member_id", searchParam.getVerifierMemberId()); + if (!!searchParam.getCreateTime()) QueryMapperUtils.buildByTime(queryWrapper, "v.create_time", searchParam.getCreateTime()); + if (!!searchParam.getOrderId()){ queryWrapper.like("data", searchParam.getOrderId()); } - const iPage: IPage = verifyMapper.selectJoinPage(new Page<>(page, limit), VerifyVo.class, queryWrapper); - const list: VerifyListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = verifyMapper.selectJoinPage({ /* pagination */ }, VerifyVo.class, queryWrapper); + VerifyListVo[] list = []; + for (const item of records) { const vo: VerifyListVo = new VerifyListVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); const memberInfoVo: MemberBriefInfoVo = new MemberBriefInfoVo(); - BeanUtils.copyProperties(item, memberInfoVo); + Object.assign(memberInfoVo, item); vo.setMember(memberInfoVo); - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * detail */ async detail(...args: any[]): Promise { - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); - queryWrapper.setAlias("v").innerJoin("?_member m ON v.verifier_member_id = m.member_id".replace("?_", this.config.get('tablePrefix'))); + MPJqueryWrapper = new MPJQueryWrapper<>(); + queryWrapper.setAlias("v").innerJoin("?_member m ON v.verifier_member_id = m.member_id".replace("?_", this.appConfig.tablePrefix)); queryWrapper.select("v.*,m.member_no,m.username,m.nickname,m.mobile,m.headimg"); queryWrapper.eq("v.site_id", RequestUtils.siteId()); queryWrapper.eq("v.code", code); const model: VerifyVo = verifyMapper.selectJoinOne(VerifyVo.class, queryWrapper); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: VerifyInfoVo = new VerifyInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); const memberInfoVo: MemberBriefInfoVo = new MemberBriefInfoVo(); - BeanUtils.copyProperties(model, memberInfoVo); + Object.assign(memberInfoVo, model); vo.setMember(memberInfoVo); VerifyInfoEventDefiner.const event: VerifyInfoEvent = new VerifyInfoEventDefiner.VerifyInfoEvent(); event.setData(vo); - const list: VerifyInfoEventDefiner.VerifyInfoEventResult[] = EventAndSubscribeOfPublisher.publishAndCallback(event); + VerifyInfoEventDefiner.VerifyInfoEventResult[] list = EventAndSubscribeOfPublisher.publishAndCallback(event); if (!CollectionUtils.isEmpty(list)){ for (VerifyInfoEventDefiner.VerifyInfoEventResult verifyInfoEventResult : list) { if (verifyInfoEventResult != null && verifyInfoEventResult.getDataMap() != null && !verifyInfoEventResult.getDataMap().isEmpty()){ diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/weapp/impl/weapp-config-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/weapp/impl/weapp-config-service-impl.service.ts index 3f5345fa..8c9d94ee 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/weapp/impl/weapp-config-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/weapp/impl/weapp-config-service-impl.service.ts @@ -28,7 +28,7 @@ export class WeappConfigServiceImplService { domain.setDownloaddomain(String.join(";", domainResult.getDownloadDomain())); weappConfigVo.setDomain(domain); } - } catch (e) { + } catch (Exception e) { } } @@ -50,14 +50,14 @@ export class WeappConfigServiceImplService { const wxOpenMaService: WxOpenMaService = (WxOpenMaService) WechatUtils.miniapp(RequestUtils.siteId()); wxOpenMaService.modifyDomain( "set", - ObjectUtil.isNotEmpty(param.getRequestdomain()) ? Arrays.asList(param.getRequestdomain().split(";")) : [], - ObjectUtil.isNotEmpty(param.getWsrequestdomain())? Arrays.asList(param.getWsrequestdomain().split(";")) : [], - ObjectUtil.isNotEmpty(param.getUploaddomain())? Arrays.asList(param.getUploaddomain().split(";")) : [], - ObjectUtil.isNotEmpty(param.getDownloaddomain())? Arrays.asList(param.getDownloaddomain().split(";")) : [], - ObjectUtil.isNotEmpty(param.getTcpdomain())? Arrays.asList(param.getTcpdomain().split(";")) : [], - ObjectUtil.isNotEmpty(param.getUdpdomain())? Arrays.asList(param.getUdpdomain().split(";")) : [] + !!param.getRequestdomain() ? Arrays.asList(param.getRequestdomain().split(";")) : [], + !!param.getWsrequestdomain()? Arrays.asList(param.getWsrequestdomain().split(";")) : [], + !!param.getUploaddomain()? Arrays.asList(param.getUploaddomain().split(";")) : [], + !!param.getDownloaddomain()? Arrays.asList(param.getDownloaddomain().split(";")) : [], + !!param.getTcpdomain()? Arrays.asList(param.getTcpdomain().split(";")) : [], + !!param.getUdpdomain()? Arrays.asList(param.getUdpdomain().split(";")) : [] ); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -69,7 +69,7 @@ export class WeappConfigServiceImplService { try { const wxOpenMaService: WxOpenMaService = (WxOpenMaService) WechatUtils.miniapp(RequestUtils.siteId()); return wxOpenMaService.getPrivacyService().getPrivacySetting(2); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -80,10 +80,10 @@ export class WeappConfigServiceImplService { async setPrivacySetting(...args: any[]): Promise { try { const wxOpenMaService: WxOpenMaService = (WxOpenMaService) WechatUtils.miniapp(RequestUtils.siteId()); - const setPrivacySetting: SetPrivacySetting = JSONUtil.toBean(privacySetting, SetPrivacySetting.class); + const setPrivacySetting: SetPrivacySetting = Object.assign(new SetPrivacySetting(), privacySetting); setPrivacySetting.setPrivacyVer(2); wxOpenMaService.getPrivacyService().setPrivacySetting(setPrivacySetting); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/weapp/impl/weapp-template-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/weapp/impl/weapp-template-service-impl.service.ts index aabb98b2..183afd01 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/weapp/impl/weapp-template-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/weapp/impl/weapp-template-service-impl.service.ts @@ -13,13 +13,13 @@ export class WeappTemplateServiceImplService { * list */ async list(...args: any[]): Promise { - const addonNoticeList: AddonNoticeListVo[] = coreNoticeService.getAddonList(RequestUtils.siteId()); + AddonNoticeListVo[] addonNoticeList = coreNoticeService.getAddonList(RequestUtils.siteId()); for (const item of addonNoticeList) { - const filter: NoticeInfoVo[] = []; + NoticeInfoVo[] filter = []; for (const noticeItem of item.getNotice()) { if (noticeItem.getSupport_type().indexOf("weapp") != -1) { - filter.add(noticeItem); + filter.push(noticeItem); } } item.setNotice(filter); @@ -31,11 +31,11 @@ export class WeappTemplateServiceImplService { * sync */ async sync(...args: any[]): Promise { - const list: Record = coreNoticeService.getList(RequestUtils.siteId(), param.getKeys()); - const keys: string[] = Arrays.asList(param.getKeys()); + const list: Record = coreNoticeService.getList(RequestUtils.siteId(), param.getKeys()); + String[] keys = Arrays.asList(param.getKeys()); for (const item of list.values()) { - if (item.getWeapp() != null && (keys.size() == 0 || keys.includes(item.getKey()))) { + if (item.getWeapp() != null && (keys.length == 0 || keys.includes(item.getKey()))) { if (item.getWeappTemplateId().length() > 0) { deleteTemplate(item.getWeappTemplateId()); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/weapp/impl/weapp-version-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/weapp/impl/weapp-version-service-impl.service.ts index ed0234dd..13e1fe01 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/weapp/impl/weapp-version-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/weapp/impl/weapp-version-service-impl.service.ts @@ -17,19 +17,19 @@ export class WeappVersionServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); queryWrapper.orderByDesc("id"); - const iPage: IPage = weappVersionMapper.selectPage(new Page(page, limit), queryWrapper); + iPage = this.weappVersionRepository.findAndCount({ /* pagination */ }, queryWrapper); - const list: WeappVersionListVo[] = []; - for (const item of iPage.getRecords()) { + WeappVersionListVo[] list = []; + for (const item of records) { const vo: WeappVersionListVo = new WeappVersionListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page,limit, iPage.getTotal()).setData(list); + return PageResult.build(page,limit, total).setData(list); } /** @@ -42,13 +42,13 @@ export class WeappVersionServiceImplService { if (weappConfig.getAppId().isEmpty()) throw new BadRequestException("还没有配置微信小程序"); if (weappConfig.getUploadPrivateKey().isEmpty()) throw new BadRequestException("还没有配置微信小程序代码上传秘钥"); - const uploading: WeappVersion = weappVersionMapper.selectOne(new QueryWrapper().select("id").eq("site_id", RequestUtils.siteId()).eq("status", WeappVersionStatusEnum.APPLET_UPLOADING)); + const uploading: WeappVersion = this.weappVersionRepository.findOne(new ().select("id").eq("site_id", RequestUtils.siteId()).eq("status", WeappVersionStatusEnum.APPLET_UPLOADING)); if (uploading != null) throw new BadRequestException("小程序有正在上传的版本,请等待上一版本上传完毕后再进行操作"); - const lastVersion: WeappVersion = weappVersionMapper.selectOne(new QueryWrapper().select("version_no").eq("site_id", RequestUtils.siteId()).orderByDesc("version_no").last("limit 1")); + const lastVersion: WeappVersion = this.weappVersionRepository.findOne(new ().select("version_no").eq("site_id", RequestUtils.siteId()).orderByDesc("version_no").last("limit 1")); const versionNo: number = lastVersion == null ? 1 : lastVersion.getVersionNo() + 1; - const addons: string[] = coreSiteService.getAddonKeysBySiteId(RequestUtils.siteId()); + String[] addons = coreSiteService.getAddonKeysBySiteId(RequestUtils.siteId()); const uploadParam: WeappUploadParam = new WeappUploadParam(); uploadParam.setBaseUrl(RequestUtils.getDomain(true)); @@ -66,9 +66,9 @@ export class WeappVersionServiceImplService { model.setVersionNo(versionNo); model.setDesc(param.getDesc()); model.setTaskKey(taskKey); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); - weappVersionMapper.insert(model); + this.weappVersionRepository.save(model); } /** @@ -78,23 +78,23 @@ export class WeappVersionServiceImplService { const log: Record = coreWeappCloudService.getWeappCompileLog(key); if (log != null) { const data: JSONArray = ObjectUtil.defaultIfNull(log.getByPath("data.0", JSONArray.class), new JSONArray()); - if (data.size() > 0) { - const last: Record = data.getJSONObject(data.size() - 1); - if (last.getInt("code", -1) === 0) { + if (data.length > 0) { + const last: Record = data.getJSONObject(data.length - 1); + if (last.getInt("code", -1).equals(0)) { const model: WeappVersion = new WeappVersion(); model.setStatus(WeappVersionStatusEnum.APPLET_UPLOAD_FAIL.getStatus()); model.setFailReason(last.getStr("msg", "")); - model.setUpdateTime(System.currentTimeMillis() / 1000); + model.setUpdateTime(Math.floor(Date.now() / 1000)); - weappVersionMapper.update(model, new QueryWrapper().eq("task_key", key)); + weappVersionMapper.update(model, new ().eq("task_key", key)); return log; } - if (last.getInt("percent", 0) === 100) { + if (last.getInt("percent", 0).equals(100)) { const model: WeappVersion = new WeappVersion(); model.setStatus(WeappVersionStatusEnum.APPLET_UPLOAD_SUCCESS.getStatus()); - model.setUpdateTime(System.currentTimeMillis() / 1000); + model.setUpdateTime(Math.floor(Date.now() / 1000)); - weappVersionMapper.update(model, new QueryWrapper().eq("task_key", key)); + weappVersionMapper.update(model, new ().eq("task_key", key)); } } } @@ -106,7 +106,7 @@ export class WeappVersionServiceImplService { */ async getWeappPreviewImage(...args: any[]): Promise { number[] status = new number[] { WeappVersionStatusEnum.APPLET_AUDITING.getStatus(), WeappVersionStatusEnum.APPLET_UPLOAD_SUCCESS.getStatus() }; - const version: WeappVersion = weappVersionMapper.selectOne(new QueryWrapper() + const version: WeappVersion = this.weappVersionRepository.findOne(new () .eq("site_id", RequestUtils.siteId()) .in("status", status) .orderByDesc("id") @@ -124,7 +124,7 @@ export class WeappVersionServiceImplService { return "data:image/jpeg;base64," + Base64.getEncoder().encodeToString(FileUtils.readFileToByteArray(qrcode)); } return ""; - } catch (e) { + } catch (Exception e) { return ""; } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-media-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-media-service-impl.service.ts index 9115539b..ef470332 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-media-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-media-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class WechatMediaServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -17,20 +16,20 @@ export class WechatMediaServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", RequestUtils.siteId()); queryWrapper.orderByDesc("id"); - if (ObjectUtil.isNotEmpty(searchParam.getType())) queryWrapper.eq("type", searchParam.getType()); + if (!!searchParam.getType()) queryWrapper.eq("type", searchParam.getType()); - const iPage: IPage = wechatMediaMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: WechatMediaListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.wechatMediaRepository.findAndCount({ /* pagination */ }, queryWrapper); + WechatMediaListVo[] list = []; + for (const item of records) { const vo: WechatMediaListVo = new WechatMediaListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** @@ -46,7 +45,7 @@ export class WechatMediaServiceImplService { const uploadRes: AttachmentUploadVo = coreUploadService.upload(param); const wxMaterial: WxMpMaterial = new WxMpMaterial(); - wxMaterial.setFile(this.config.get('webRootDownResource' + uploadRes.getUrl())); + wxMaterial.setFile(this.appConfig.webRootDownResource + uploadRes.getUrl()); wxMaterial.setName(param.getNewFilename()); try { @@ -57,13 +56,13 @@ export class WechatMediaServiceImplService { model.setType(WechatMediaTypeEnum.IMAGE.getType()); model.setValue(uploadRes.getUrl()); model.setMediaId(res.getMediaId()); - model.setCreateTime(System.currentTimeMillis() / 1000); - wechatMediaMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.wechatMediaRepository.save(model); const vo: WechatMediaInfoVo = new WechatMediaInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -81,7 +80,7 @@ export class WechatMediaServiceImplService { const uploadRes: AttachmentUploadVo = coreUploadService.upload(param); const wxMaterial: WxMpMaterial = new WxMpMaterial(); - wxMaterial.setFile(this.config.get('webRootDownResource' + uploadRes.getUrl())); + wxMaterial.setFile(this.appConfig.webRootDownResource + uploadRes.getUrl()); wxMaterial.setName(param.getNewFilename()); wxMaterial.setVideoIntroduction((new SimpleDateFormat("yyyyMM/dd").format(new Date())) + "上传"); wxMaterial.setVideoTitle(param.getNewFilename()); @@ -94,13 +93,13 @@ export class WechatMediaServiceImplService { model.setType(WechatMediaTypeEnum.VIDEO.getType()); model.setValue(uploadRes.getUrl()); model.setMediaId(res.getMediaId()); - model.setCreateTime(System.currentTimeMillis() / 1000); - wechatMediaMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.wechatMediaRepository.save(model); const vo: WechatMediaInfoVo = new WechatMediaInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -115,20 +114,20 @@ export class WechatMediaServiceImplService { const result: WxMpMaterialNewsBatchGetResult = WechatUtils.mp(RequestUtils.siteId()).getMaterialService().materialNewsBatchGet(offset, count); if (result.getItemCount() > 0) { for (WxMpMaterialNewsBatchGetResult.WxMaterialNewsBatchGetNewsItem item: result.getItems()) { - const media: WechatMedia = wechatMediaMapper.selectOne(new QueryWrapper().eq("site_id", RequestUtils.siteId()).eq("media_id", item.getMediaId())); + const media: WechatMedia = this.wechatMediaRepository.findOne(new ().eq("site_id", RequestUtils.siteId()).eq("media_id", item.getMediaId())); - if (ObjectUtil.isNotEmpty(media)) { - media.setValue(JSONUtil.toJsonStr(item.getContent())); - media.setUpdateTime(System.currentTimeMillis() / 1000); - wechatMediaMapper.updateById(media); + if (!!media) { + media.setValue(JSON.stringify(item.getContent())); + media.setUpdateTime(Math.floor(Date.now() / 1000)); + this.wechatMediaRepository.save(media); } else { const model: WechatMedia = new WechatMedia(); model.setSiteId(RequestUtils.siteId()); model.setType(WechatMediaTypeEnum.VIDEO.getType()); - model.setValue(JSONUtil.toJsonStr(item.getContent())); + model.setValue(JSON.stringify(item.getContent())); model.setMediaId(item.getMediaId()); - model.setCreateTime(System.currentTimeMillis() / 1000); - wechatMediaMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.wechatMediaRepository.save(model); } } } @@ -136,7 +135,7 @@ export class WechatMediaServiceImplService { offset++; this.syncNews(offset); } - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-menu-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-menu-service-impl.service.ts index 50c83896..9b7f6768 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-menu-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-menu-service-impl.service.ts @@ -21,11 +21,11 @@ export class WechatMenuServiceImplService { */ async edit(...args: any[]): Promise { try{ - const params: Record = {}; + const params: Record = {}; params.put("button", data); - WechatUtils.mp(RequestUtils.siteId()).getMenuService().menuCreate(JSONUtil.parseObj(params).toString()) ; + WechatUtils.mp(RequestUtils.siteId()).getMenuService().menuCreate(JSON.parse(params).toString()) ; coreConfigService.setConfig(RequestUtils.siteId(), "WECHAT_MENU", data); - }catch (WxErrorException e){ + }catch (e){ throw new AdminException(e.message); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-reply-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-reply-service-impl.service.ts index d2a2d4ff..2a68c793 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-reply-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-reply-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -17,38 +17,38 @@ export class WechatReplyServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("reply_type", WechatReplyTypeEnum.REPLY_KEYWORD.getType()); queryWrapper.eq("site_id", RequestUtils.siteId()); queryWrapper.orderByDesc(Arrays.asList("sort", "id")); - if (ObjectUtil.isNotEmpty(searchParam.getKeyword())) queryWrapper.like("keyword", searchParam.getKeyword()); - if (ObjectUtil.isNotEmpty(path.basename(searchParam))) queryWrapper.like("name", path.basename(searchParam)); + if (!!searchParam.getKeyword()) queryWrapper.like("keyword", searchParam.getKeyword()); + if (!!path.basename(searchParam)) queryWrapper.like("name", path.basename(searchParam)); - const iPage: IPage = wechatReplyMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: WechatReplyListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.wechatReplyRepository.findAndCount({ /* pagination */ }, queryWrapper); + WechatReplyListVo[] list = []; + for (const item of records) { const vo: WechatReplyListVo = new WechatReplyListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * getKeywordInfo */ async getKeywordInfo(...args: any[]): Promise { - const model: WechatReply = wechatReplyMapper.selectOne( - new QueryWrapper() + const model: WechatReply = this.wechatReplyRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId()) .eq("reply_type", WechatReplyTypeEnum.REPLY_KEYWORD.getType())); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: WechatReplyInfoVo = new WechatReplyInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -64,31 +64,31 @@ export class WechatReplyServiceImplService { model.setMatchingType(addParam.getMatchingType()); model.setContent(addParam.getContent().toString()); model.setSort(addParam.getSort()); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setReplyMethod(addParam.getReplyMethod()); - wechatReplyMapper.insert(model); + this.wechatReplyRepository.save(model); } /** * editKeyword */ async editKeyword(...args: any[]): Promise { - const model: WechatReply = wechatReplyMapper.selectOne( - new QueryWrapper() + const model: WechatReply = this.wechatReplyRepository.findOne( + new () .eq("id", id) .eq("site_id", RequestUtils.siteId()) .eq("reply_type", WechatReplyTypeEnum.REPLY_KEYWORD.getType())); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); model.setName(path.basename(editParam)); model.setKeyword(editParam.getKeyword()); model.setMatchingType(editParam.getMatchingType()); model.setContent(editParam.getContent().toString()); model.setSort(editParam.getSort()); - model.setUpdateTime(System.currentTimeMillis() / 1000); + model.setUpdateTime(Math.floor(Date.now() / 1000)); model.setReplyMethod(editParam.getReplyMethod()); - wechatReplyMapper.updateById(model); + this.wechatReplyRepository.save(model); } /** @@ -102,18 +102,18 @@ export class WechatReplyServiceImplService { * editDefault */ async editDefault(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper() + const queryWrapper: QueryWrapper = new () .eq("reply_type", WechatReplyTypeEnum.REPLY_DEFAULT.getType()) .eq("site_id", RequestUtils.siteId()); - const reply: WechatReply = wechatReplyMapper.selectOne(queryWrapper); + const reply: WechatReply = this.wechatReplyRepository.findOne(queryWrapper); - if (ObjectUtil.isEmpty(reply)) { + if (!reply) { const model: WechatReply = new WechatReply(); model.setContent(param.getContent().toString()); model.setSiteId(RequestUtils.siteId()); model.setReplyType(WechatReplyTypeEnum.REPLY_DEFAULT.getType()); - wechatReplyMapper.insert(model); + this.wechatReplyRepository.save(model); } else { const model: WechatReply = new WechatReply(); model.setContent(param.getContent().toString()); @@ -132,18 +132,18 @@ export class WechatReplyServiceImplService { * editSubscribe */ async editSubscribe(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper() + const queryWrapper: QueryWrapper = new () .eq("reply_type", WechatReplyTypeEnum.REPLY_SUBSCRIBE.getType()) .eq("site_id", RequestUtils.siteId()); - const reply: WechatReply = wechatReplyMapper.selectOne(queryWrapper); + const reply: WechatReply = this.wechatReplyRepository.findOne(queryWrapper); - if (ObjectUtil.isEmpty(reply)) { + if (!reply) { const model: WechatReply = new WechatReply(); model.setContent(param.getContent().toString()); model.setSiteId(RequestUtils.siteId()); model.setReplyType(WechatReplyTypeEnum.REPLY_DEFAULT.getType()); - wechatReplyMapper.insert(model); + this.wechatReplyRepository.save(model); } else { const model: WechatReply = new WechatReply(); model.setContent(param.getContent().toString()); @@ -155,7 +155,7 @@ export class WechatReplyServiceImplService { * delKeyword */ async delKeyword(...args: any[]): Promise { - wechatReplyMapper.delete(new QueryWrapper() + this.wechatReplyRepository.delete(new () .eq("reply_type", WechatReplyTypeEnum.REPLY_KEYWORD.getType()) .eq("id", id) .eq("site_id", RequestUtils.siteId())); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-template-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-template-service-impl.service.ts index 2a76afda..42e40887 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-template-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wechat/impl/wechat-template-service-impl.service.ts @@ -13,13 +13,13 @@ export class WechatTemplateServiceImplService { * list */ async list(...args: any[]): Promise { - const addonNoticeList: AddonNoticeListVo[] = coreNoticeService.getAddonList(RequestUtils.siteId()); + AddonNoticeListVo[] addonNoticeList = coreNoticeService.getAddonList(RequestUtils.siteId()); for (const item of addonNoticeList) { - const filter: NoticeInfoVo[] = []; + NoticeInfoVo[] filter = []; for (const noticeItem of item.getNotice()) { if (noticeItem.getSupport_type().indexOf("wechat") != -1) { - filter.add(noticeItem); + filter.push(noticeItem); } } item.setNotice(filter); @@ -31,11 +31,11 @@ export class WechatTemplateServiceImplService { * sync */ async sync(...args: any[]): Promise { - const list: Record = coreNoticeService.getList(RequestUtils.siteId(), param.getKeys()); - const keys: string[] = Arrays.asList(param.getKeys()); + const list: Record = coreNoticeService.getList(RequestUtils.siteId(), param.getKeys()); + String[] keys = Arrays.asList(param.getKeys()); for (const item of list.values()) { - if (item.getWechat() != null && (keys.size() == 0 || keys.includes(item.getKey()))) { + if (item.getWechat() != null && (keys.length == 0 || keys.includes(item.getKey()))) { if (item.getWeappTemplateId().length() > 0) { deleteTemplate(item.getWeappTemplateId()); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wxoplatform/impl/oplatform-server-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wxoplatform/impl/oplatform-server-service-impl.service.ts index 9f9a12bf..c4c02b90 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wxoplatform/impl/oplatform-server-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wxoplatform/impl/oplatform-server-service-impl.service.ts @@ -37,7 +37,7 @@ export class OplatformServerServiceImplService { authorizationParam.setAuthCode(inMessage.getAuthorizationCode()); oplatformService.authorization(authorizationParam); } - } catch (e) { + } catch (Exception e) { log.error("处理开放平台授权事件消息异常", e); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wxoplatform/impl/oplatform-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wxoplatform/impl/oplatform-service-impl.service.ts index 1c845707..7ef91763 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wxoplatform/impl/oplatform-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wxoplatform/impl/oplatform-service-impl.service.ts @@ -17,7 +17,7 @@ export class OplatformServiceImplService { try { const url: string = RequestUtils.getDomain(true) + "/site/wxoplatform/callback"; return WechatUtils.WxOpen().getWxOpenComponentService().getPreAuthUrl(url); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -36,7 +36,7 @@ export class OplatformServiceImplService { const authorization: WxOpenAuthorizationInfo = result.getAuthorizationInfo(); // 小程序 - if (ObjectUtil.isNotEmpty(authorizerInfo.getMiniProgramInfo())) { + if (!!authorizerInfo.getMiniProgramInfo()) { this.weappCheck(authorizerInfo, authorization); const weappConfig: WeappConfigParam = new WeappConfigParam(); @@ -61,7 +61,7 @@ export class OplatformServiceImplService { coreWechatConfigService.setWechatAuthorizationInfo(RequestUtils.siteId(), result); } - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -71,7 +71,7 @@ export class OplatformServiceImplService { */ async clearAuthorization(...args: any[]): Promise { String[] configKey = new String[]{ ConfigKeyEnum.path.basename(WECHAT), ConfigKeyEnum.path.basename(WEAPP), ConfigKeyEnum.path.basename(WEAPP_AUTHORIZATION_INFO), ConfigKeyEnum.path.basename(WECHAT_AUTHORIZATION_INFO)}; - sysConfigMapper.delete(new QueryWrapper().like("value", appid).in("config_key", configKey)); + this.sysConfigRepository.delete(new ().like("value", appid).in("config_key", configKey)); coreConfigService.cacheClear(); } @@ -88,18 +88,18 @@ export class OplatformServiceImplService { wrapper.in(SysConfig::getConfigKey, ConfigKeyEnum.path.basename(WECHAT_AUTHORIZATION_INFO), ConfigKeyEnum.path.basename(WEAPP_AUTHORIZATION_INFO)); wrapper.eq(SysConfig::getSiteId, RequestUtils.siteId()); wrapper.orderByDesc(SysConfig::getUpdateTime); - const pageObj: Page = new Page<>(page, limit); - const iPage: IPage = sysConfigMapper.selectPage(pageObj, wrapper); - const listInfo: OplatformRecordVo[] = []; - for (const item of iPage.getRecords()) { + const pageObj: Page = { /* pagination */ }; + iPage = this.sysConfigRepository.findAndCount(pageObj, wrapper); + OplatformRecordVo[] listInfo = []; + for (const item of records) { const vo: OplatformRecordVo = new OplatformRecordVo(); - BeanUtils.copyProperties(item, vo); - vo.setValue(JSONUtil.parseObj(item.getValue())); + Object.assign(vo, item); + vo.setValue(JSON.parse(item.getValue())); const siteInfo: Site = new Site(); siteInfo.setSiteName(item.getSiteName()); vo.setSite(siteInfo); - listInfo.add(vo); + listInfo.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(listInfo); + return PageResult.build(page, limit, total).setData(listInfo); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wxoplatform/impl/weapp-version-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wxoplatform/impl/weapp-version-service-impl.service.ts index 92299857..cbf76a10 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wxoplatform/impl/weapp-version-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/admin/wxoplatform/impl/weapp-version-service-impl.service.ts @@ -1,13 +1,12 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as path from 'path'; @Injectable() export class WeappVersionServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -22,13 +21,13 @@ export class WeappVersionServiceImplService { * getLastCommitRecord */ async getLastCommitRecord(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper={}; queryWrapper.orderByDesc("id") .last("limit 1"); - const wxOplatfromWeappVersion: WxOplatfromWeappVersion = wxOplatfromWeappVersionMapper.selectOne(queryWrapper); + const wxOplatfromWeappVersion: WxOplatfromWeappVersion = this.wxOplatfromWeappVersionRepository.findOne(queryWrapper); if (wxOplatfromWeappVersion==null) return null; const wxOplatfromWeappVersionVo: WxOplatfromWeappVersionVo = new WxOplatfromWeappVersionVo(); - BeanUtils.copyProperties(wxOplatfromWeappVersion, wxOplatfromWeappVersionVo); + Object.assign(wxOplatfromWeappVersionVo, wxOplatfromWeappVersion); return wxOplatfromWeappVersionVo; } @@ -39,36 +38,36 @@ export class WeappVersionServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper={}; queryWrapper.orderByDesc("id"); - const wxOplatfromMPJQueryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); + MPJwxOplatfromMPJQueryWrapper = new MPJQueryWrapper<>(); wxOplatfromMPJQueryWrapper.select("wowv.id, wowv.site_group_id, wowv.template_id, wowv.user_version, wowv.user_desc, wowv.task_key, wowv.status, wowv.fail_reason, wowv.version_no, wowv.create_time, wowv.update_time, nsg.group_name as site_group_name") .setAlias("wowv") - .leftJoin("?_site_group nsg ON nsg.group_id = wowv.site_group_id".replace("?_", this.config.get('tablePrefix'))); + .leftJoin("?_site_group nsg ON nsg.group_id = wowv.site_group_id".replace("?_", this.appConfig.tablePrefix)); wxOplatfromMPJQueryWrapper.orderByDesc("wowv.id"); - const iPage: IPage = wxOplatfromWeappVersionMapper.selectJoinPage(new Page<>(page, limit), WxOplatfromWeappVersionVo.class, wxOplatfromMPJQueryWrapper); - return PageResult.build(page, limit, iPage.getTotal()).setData(iPage.getRecords()); + iPage = wxOplatfromWeappVersionMapper.selectJoinPage({ /* pagination */ }, WxOplatfromWeappVersionVo.class, wxOplatfromMPJQueryWrapper); + return PageResult.build(page, limit, total).setData(records); } /** * add */ async add(...args: any[]): Promise { - const siteGroupList: SiteGroup[] = siteGroupMapper.selectList(new QueryWrapper().gt("group_id", 0).orderByAsc("create_time")); - if (ObjectUtil.isEmpty(siteGroupList)) throw new BadRequestException("请先添加站点套餐"); + SiteGroup[] siteGroupList = this.siteGroupRepository.find(new ().gt("group_id", 0).orderByAsc("create_time")); + if (!siteGroupList) throw new BadRequestException("请先添加站点套餐"); const siteGroup: SiteGroup = siteGroupId == null || siteGroupId == 0 ? siteGroupList.get(0) : siteGroupMapper.selectById(siteGroupId); - const uploading: WxOplatfromWeappVersion = wxOplatfromWeappVersionMapper.selectOne(new QueryWrapper() + const uploading: WxOplatfromWeappVersion = this.wxOplatfromWeappVersionRepository.findOne(new () .eq("site_group_id", siteGroup.getGroupId()) .eq("status", 0) .last("limit 1") ); if (uploading != null) throw new BadRequestException("小程序有正在上传的版本,请等待上一版本上传完毕后再进行操作"); - const lastVersion: WxOplatfromWeappVersion = wxOplatfromWeappVersionMapper.selectOne(new QueryWrapper() + const lastVersion: WxOplatfromWeappVersion = this.wxOplatfromWeappVersionRepository.findOne(new () .select("version_no") .eq("site_group_id", siteGroup.getGroupId()) .orderByDesc("id") @@ -77,7 +76,7 @@ export class WeappVersionServiceImplService { const config: OplatformConfigVo = coreOplatformConfigService.getWxOplatformConfig(); - const addon: string[] = CollUtil.newArrayList(); + String[] addon = CollUtil.newArrayList(); if (!siteGroup.getApp().isEmpty()) CollUtil.addAll(addon, JSONUtil.parseArray(siteGroup.getApp())); if (!siteGroup.getAddon().isEmpty()) CollUtil.addAll(addon, JSONUtil.parseArray(siteGroup.getAddon())); @@ -94,9 +93,9 @@ export class WeappVersionServiceImplService { model.setSiteGroupId(siteGroup.getGroupId()); model.setUserVersion(weappUploadParam.getVersion()); model.setVersionNo(lastVersion == null ? 1 : lastVersion.getVersionNo() + 1); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setTaskKey(taskKey); - wxOplatfromWeappVersionMapper.insert(model); + this.wxOplatfromWeappVersionRepository.save(model); weappVersionService.getVersionUploadResult(taskKey, isAll); } @@ -115,26 +114,26 @@ export class WeappVersionServiceImplService { * uploadSuccess */ async uploadSuccess(...args: any[]): Promise { - const version: WxOplatfromWeappVersion = wxOplatfromWeappVersionMapper.selectOne(new QueryWrapper().eq("task_key", taskKey)); + const version: WxOplatfromWeappVersion = this.wxOplatfromWeappVersionRepository.findOne(new ().eq("task_key", taskKey)); const wxOpenService: WxOpenComponentService = WechatUtils.WxOpen().getWxOpenComponentService(); try { - const draftList: WxOpenMaCodeTemplate[] = wxOpenService.getTemplateDraftList(); - if (ObjectUtil.isNotEmpty(draftList)) { + WxOpenMaCodeTemplate[] draftList = wxOpenService.getTemplateDraftList(); + if (!!draftList) { for (const item of draftList) { if (item.getUserVersion() === version.getUserVersion()) { // 添加模板 wxOpenService.addToTemplate(item.getDraftId()); - const templateList: WxOpenMaCodeTemplate[] = wxOpenService.getTemplateList(); + WxOpenMaCodeTemplate[] templateList = wxOpenService.getTemplateList(); for (const template of templateList) { if (template.getUserVersion() === version.getUserVersion()) { version.setTemplateId(template.getTemplateId().toString()); - wxOplatfromWeappVersionMapper.updateById(version); + this.wxOplatfromWeappVersionRepository.save(version); // 删除之前的模板 - const prev: WxOplatfromWeappVersion = wxOplatfromWeappVersionMapper.selectOne(new QueryWrapper() + const prev: WxOplatfromWeappVersion = this.wxOplatfromWeappVersionRepository.findOne(new () .select("template_id") .eq("site_group_id", version.getSiteGroupId()) .lt("id", version.getId()) @@ -150,20 +149,20 @@ export class WeappVersionServiceImplService { } } } - } catch (e) { + } catch (Exception e) { console.log("小程序模板上传成功获取模板id异常"); - e.printStackTrace(); + console.error(e); } if (isAll) { - const siteGroup: SiteGroup = siteGroupMapper.selectOne(new QueryWrapper() + const siteGroup: SiteGroup = this.siteGroupRepository.findOne(new () .select("group_id") .gt("group_id", version.getSiteGroupId()) .orderByDesc("group_id") .last("limit 1") ); if (siteGroup != null) { - weappVersionService.add(siteGroup.getGroupId(), true); + weappVersionService.push(siteGroup.getGroupId(), true); } } } @@ -173,7 +172,7 @@ export class WeappVersionServiceImplService { */ async weappCommit(...args: any[]): Promise { if (version == null) { - version = wxOplatfromWeappVersionMapper.selectOne(new QueryWrapper() + version = this.wxOplatfromWeappVersionRepository.findOne(new () .eq("site_group_id", siteGroupId) .ne("template_id", "") .orderByDesc("id") @@ -181,7 +180,7 @@ export class WeappVersionServiceImplService { if (version == null) throw new BadRequestException("平台尚未上传小程序到模板库"); } - const uploading: WeappVersion = weappVersionMapper.selectOne(new QueryWrapper().select("site_id").eq("site_id", siteId).eq("status", WeappVersionStatusEnum.APPLET_AUDITING.getStatus()).last("limit 1")); + const uploading: WeappVersion = this.weappVersionRepository.findOne(new ().select("site_id").eq("site_id", siteId).eq("status", WeappVersionStatusEnum.APPLET_AUDITING.getStatus()).last("limit 1")); if (uploading!= null) throw new BadRequestException("小程序有正在上传的版本,请等待上一版本上传完毕后再进行操作"); const weappCofig: WeappConfigVo = coreWeappConfigService.getWeappConfig(siteId); @@ -205,15 +204,15 @@ export class WeappVersionServiceImplService { model.setVersionNo(version.getVersionNo()); model.setDesc(version.getUserDesc()); model.setStatus(WeappVersionStatusEnum.APPLET_AUDITING.getStatus()); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setFromType("open_platform"); - weappVersionMapper.insert(model); + this.weappVersionRepository.save(model); // 提交审核 weappVersionService.submitAudit(siteId, model.getId()); - } catch (e) { + } catch (Exception e) { console.log("小程序提交代码异常"); - e.printStackTrace(); + console.error(e); throw new BadRequestException(e.message); } } @@ -231,8 +230,8 @@ export class WeappVersionServiceImplService { if (privacyInfo.getErrcode() !== "0") { version.setStatus(WeappVersionStatusEnum.APPLET_AUDIT_FAIL.getStatus()); version.setFailReason(privacyInfo.getErrmsg()); - version.setUpdateTime(System.currentTimeMillis() / 1000); - weappVersionMapper.updateById(version); + version.setUpdateTime(Math.floor(Date.now() / 1000)); + this.weappVersionRepository.save(version); return; } @@ -241,15 +240,15 @@ export class WeappVersionServiceImplService { version.setStatus(submitResult.getErrcode() === "0" ? WeappVersionStatusEnum.APPLET_AUDITING.getStatus() : WeappVersionStatusEnum.APPLET_AUDIT_FAIL.getStatus()); version.setFailReason(submitResult.getErrmsg()); - version.setUpdateTime(System.currentTimeMillis() / 1000); + version.setUpdateTime(Math.floor(Date.now() / 1000)); version.setAuditid(ObjectUtil.isNotNull(submitResult.getAuditId()) ? submitResult.getAuditId().toString() : ""); - weappVersionMapper.updateById(version); + this.weappVersionRepository.save(version); if (scheduler != null && !scheduler.isShutdown()) { scheduler.shutdown(); } - } catch (WxErrorException e) { + } catch (e) { // 如果检测任务结束未结束 if (e.getError().getErrorCode() == 61039) { if (scheduler == null || scheduler.isShutdown() || scheduler.isTerminated()) { @@ -259,15 +258,15 @@ export class WeappVersionServiceImplService { } else { version.setStatus(WeappVersionStatusEnum.APPLET_AUDIT_FAIL.getStatus()); version.setFailReason(e.getError().getErrorMsg()); - version.setUpdateTime(System.currentTimeMillis() / 1000); - weappVersionMapper.updateById(version); + version.setUpdateTime(Math.floor(Date.now() / 1000)); + this.weappVersionRepository.save(version); if (scheduler != null && !scheduler.isShutdown()) { scheduler.shutdown(); } console.log("小程序提交审核异常"); - e.printStackTrace(); + console.error(e); throw new BadRequestException(e.message); } } @@ -288,31 +287,31 @@ export class WeappVersionServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const iPage: IPage = siteGroupMapper.selectPage(new Page<>(page, limit), new QueryWrapper().select("group_id,group_name")); - const list: SiteGroupWeappVersionVo[] = []; + iPage = this.siteGroupRepository.findAndCount({ /* pagination */ }, new ().select("group_id,group_name")); + SiteGroupWeappVersionVo[] list = []; - for (const item of iPage.getRecords()) { + for (const item of records) { const vo: SiteGroupWeappVersionVo = new SiteGroupWeappVersionVo(); - BeanUtils.copyProperties(item, vo); + Object.assign(vo, item); - const lastVersion: WxOplatfromWeappVersion = wxOplatfromWeappVersionMapper.selectOne(new QueryWrapper().eq("site_group_id", item.getGroupId()).orderByDesc("id").last("limit 1")); + const lastVersion: WxOplatfromWeappVersion = this.wxOplatfromWeappVersionRepository.findOne(new ().eq("site_group_id", item.getGroupId()).orderByDesc("id").last("limit 1")); if (lastVersion != null) { const versionVo: WxOplatfromWeappVersionVo = new WxOplatfromWeappVersionVo(); - BeanUtils.copyProperties(lastVersion, versionVo); + Object.assign(versionVo, lastVersion); vo.setCommitRecord(versionVo); } - list.add(vo); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * undoAudit */ async undoAudit(...args: any[]): Promise { - const version: WeappVersion = weappVersionMapper.selectOne(new QueryWrapper().eq("id", param.getId()).eq("site_id", RequestUtils.siteId())); - Assert.notNull(version, "未获取到小程序版本提交记录"); + const version: WeappVersion = this.weappVersionRepository.findOne(new ().eq("id", param.getId()).eq("site_id", RequestUtils.siteId())); + if (!version) throw new BadRequestException("未获取到小程序版本提交记录"); if (version.getStatus() !== WeappVersionStatusEnum.APPLET_AUDITING.getStatus()) throw new BadRequestException("只有审核中的才可以撤回"); const weappCofig: WeappConfigVo = coreWeappConfigService.getWeappConfig(RequestUtils.siteId()); @@ -320,31 +319,31 @@ export class WeappVersionServiceImplService { try { const commitResult: WxOpenResult = WechatUtils.WxOpen().getWxOpenComponentService() .getWxMaServiceByAppid(weappCofig.getAppId()).undoCodeAudit(); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } version.setStatus(WeappVersionStatusEnum.APPLET_AUDIT_UNDO.getStatus()); - version.setUpdateTime(System.currentTimeMillis() / 1000); - weappVersionMapper.updateById(version); + version.setUpdateTime(Math.floor(Date.now() / 1000)); + this.weappVersionRepository.save(version); } /** * syncSiteGroupAuthWeapp */ async syncSiteGroupAuthWeapp(...args: any[]): Promise { - const version: WxOplatfromWeappVersion = wxOplatfromWeappVersionMapper.selectOne(new QueryWrapper() + const version: WxOplatfromWeappVersion = this.wxOplatfromWeappVersionRepository.findOne(new () .eq("site_group_id", param.getSiteGroupId()) .ne("template_id", "") .orderByDesc("id") .last("limit 1") ); - Assert.notNull(version, "平台尚未上传小程序到模板库"); + if (!version) throw new BadRequestException("平台尚未上传小程序到模板库"); - const siteIds: number[] = siteMapper.selectList(new QueryWrapper().select("site_id").eq("group_id", param.getSiteGroupId())).stream().map(Site::getSiteId).toList(); - if (ObjectUtil.isNotEmpty(siteIds)) { - const authSite: SysConfig[] = sysConfigMapper.selectList(new QueryWrapper().in("site_id", siteIds).eq("config_key", ConfigKeyEnum.path.basename(WEAPP_AUTHORIZATION_INFO))); - if (ObjectUtil.isNotEmpty(authSite)) { + number[] siteIds = this.siteRepository.find(new ().select("site_id").eq("group_id", param.getSiteGroupId())).map(Site::getSiteId).toList(); + if (!!siteIds) { + SysConfig[] authSite = this.sysConfigRepository.find(new ().in("site_id", siteIds).eq("config_key", ConfigKeyEnum.path.basename(WEAPP_AUTHORIZATION_INFO))); + if (!!authSite) { authSite.forEach(item => { weappCommit(item.getSiteId(), param.getSiteGroupId(), version); }); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/agreement/impl/agreement-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/agreement/impl/agreement-service-impl.service.ts index c6feaca6..43459e14 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/agreement/impl/agreement-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/agreement/impl/agreement-service-impl.service.ts @@ -13,16 +13,16 @@ export class AgreementServiceImplService { * info */ async info(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.select("site_id, agreement_key, title, content, create_time, update_time"); queryWrapper.eq("agreement_key", param.getKey()); queryWrapper.eq("site_id", param.siteId()); - const sysAgreement: SysAgreement = sysAgreementMapper.selectOne(queryWrapper); + const sysAgreement: SysAgreement = this.sysAgreementRepository.findOne(queryWrapper); if (sysAgreement == null) { return null; } const agreementInfoVo: AgreementInfoVo = new AgreementInfoVo(); - BeanUtils.copyProperties(sysAgreement, agreementInfoVo); + Object.assign(agreementInfoVo, sysAgreement); return agreementInfoVo; } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/channel/impl/app-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/channel/impl/app-service-impl.service.ts index bde11d93..833dac99 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/channel/impl/app-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/channel/impl/app-service-impl.service.ts @@ -26,7 +26,7 @@ export class AppServiceImplService { ObjectUtil.defaultIfNull(wxUser.getHeadImgUrl(), ""), param.getPid() ); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -35,7 +35,7 @@ export class AppServiceImplService { * getNewVersion */ async getNewVersion(...args: any[]): Promise { - const appVersion: AppVersion = appVersionMapper.selectOne(new QueryWrapper() + const appVersion: AppVersion = this.appVersionRepository.findOne(new () .eq("site_id", RequestUtils.siteId()) .eq("platform", param.getPlatform()) .gt("version_code", param.getVersionCode()) @@ -83,11 +83,11 @@ export class AppServiceImplService { async wechatRegister(...args: any[]): Promise { if (param.getOpenid().isEmpty()) throw new BadRequestException("openid不能为空"); try { - const member: Member = memberMapper.selectOne(new QueryWrapper().eq("wxapp_openid", param.getOpenid()).eq("site_id", RequestUtils.siteId())); + const member: Member = this.memberRepository.findOne(new ().eq("wxapp_openid", param.getOpenid()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(member)) throw new BadRequestException("账号已存在"); if (!param.getUnionid().isEmpty()) { - const unionidMember: Member = memberMapper.selectOne(new QueryWrapper().eq("wx_unionid", param.getUnionid()).eq("site_id", RequestUtils.siteId())); + const unionidMember: Member = this.memberRepository.findOne(new ().eq("wx_unionid", param.getUnionid()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(unionidMember)) throw new BadRequestException("账号已存在"); } @@ -103,7 +103,7 @@ export class AppServiceImplService { registerMember.setWxUnionid(param.getUnionid()); registerMember.setPid(param.getPid()); return registerService.register(registerMember); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/diy/impl/diy-form-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/diy/impl/diy-form-service-impl.service.ts index 98543309..9b7088f5 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/diy/impl/diy-form-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/diy/impl/diy-form-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class DiyFormServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -15,24 +14,24 @@ export class DiyFormServiceImplService { */ async getInfo(...args: any[]): Promise { // 查询 const writeConfigWrapper: DiyFormWriteConfig - QueryWrapper = new QueryWrapper<>(); + = {}; writeConfigWrapper.eq("form_id", formId) .eq("site_id", RequestUtils.siteId()); - const writeConfig: DiyFormWriteConfig = diyFormWriteConfigMapper.selectOne(writeConfigWrapper); + const writeConfig: DiyFormWriteConfig = this.diyFormWriteConfigRepository.findOne(writeConfigWrapper); // 查询表单信息 - const formWrapper: QueryWrapper = new QueryWrapper<>(); + formWrapper = {}; formWrapper.eq("form_id", formId) .eq("status", 1) .eq("site_id", RequestUtils.siteId()); - const formInfo: DiyForm = diyFormMapper.selectOne(formWrapper); + const formInfo: DiyForm = this.diyFormRepository.findOne(formWrapper); - const error: Record[] = []; + Record error = []; const info: DiyFormInfoVo = new DiyFormInfoVo(); if (formInfo != null) { BeanUtil.copyProperties(formInfo, info); // 过滤隐藏的组件 - const valueObj: Record = JSONUtil.parseObj(formInfo.getValue()); + const valueObj: Record = JSON.parse(formInfo.getValue()); if (valueObj.containsKey("value")) { const valueArray: JSONArray = valueObj.getJSONArray("value"); if (valueArray != null) { @@ -40,7 +39,7 @@ export class DiyFormServiceImplService { for (const obj of valueArray) { const item: Record = (Record) obj; if (!item.getBool("isHidden", false)) { - newArray.add(item); + newArray.push(item); } } valueObj.put("value", newArray); @@ -52,30 +51,30 @@ export class DiyFormServiceImplService { // 检查会员相关限制 const memberId: number = RequestUtils.memberId(); if (writeConfig != null && memberId != null) { - Map errorMsg; + Record errorMsg; errorMsg = checkMemberCanJoinOrNot(memberId, writeConfig); - if (ObjectUtil.isNotEmpty(errorMsg)) { - error.add(errorMsg); + if (!!errorMsg) { + error.push(errorMsg); } errorMsg = checkFormWriteTime(writeConfig); - if (ObjectUtil.isNotEmpty(errorMsg)) { - error.add(errorMsg); + if (!!errorMsg) { + error.push(errorMsg); } errorMsg = checkFormWriteLimitNum(formId, writeConfig); - if (ObjectUtil.isNotEmpty(errorMsg)) { - error.add(errorMsg); + if (!!errorMsg) { + error.push(errorMsg); } errorMsg = checkMemberWriteLimitNum(memberId, formId, writeConfig); - if (ObjectUtil.isNotEmpty(errorMsg)) { - error.add(errorMsg); + if (!!errorMsg) { + error.push(errorMsg); } } } else { - const errorMap: Record = {}; + const errorMap: Record = {}; errorMap.put("title", "当前表单无法查看"); errorMap.put("type", "表单状态"); errorMap.put("desc", "该表单已关闭"); - error.add(errorMap); + error.push(errorMap); } info.setError(error); return info; @@ -89,10 +88,10 @@ export class DiyFormServiceImplService { diyFormRecordsParam.setMemberId(RequestUtils.memberId()); // 检查表单是否存在且已开启 - const formQueryWrapper: QueryWrapper = new QueryWrapper<>(); + formQueryWrapper = {}; formQueryWrapper.eq("form_id", diyFormRecordsParam.getFormId()) .eq("site_id", RequestUtils.siteId()); - const formInfo: DiyForm = diyFormMapper.selectOne(formQueryWrapper); + const formInfo: DiyForm = this.diyFormRepository.findOne(formQueryWrapper); if (formInfo == null) { throw new ApiException("表单不存在"); } @@ -101,52 +100,52 @@ export class DiyFormServiceImplService { } // 查询表单填写配置 - const writeConfigQueryWrapper: QueryWrapper = new QueryWrapper<>(); + writeConfigQueryWrapper = {}; writeConfigQueryWrapper.eq("form_id", diyFormRecordsParam.getFormId()) .eq("site_id", RequestUtils.siteId()); - const writeConfig: DiyFormWriteConfig = diyFormWriteConfigMapper.selectOne(writeConfigQueryWrapper); + const writeConfig: DiyFormWriteConfig = this.diyFormWriteConfigRepository.findOne(writeConfigQueryWrapper); if (writeConfig != null) { // 检查会员是否可以参与 - const canJoinError: Record = checkMemberCanJoinOrNot(RequestUtils.memberId(), writeConfig); - if (canJoinError.length !== 0) { + const canJoinError: Record = checkMemberCanJoinOrNot(RequestUtils.memberId(), writeConfig); + if (canJoinError.length > 0) { throw new ApiException(canJoinError.get("desc")); } // 检查表单填写时间 - const timeError: Record = checkFormWriteTime(writeConfig); - if (timeError.length !== 0) { + const timeError: Record = checkFormWriteTime(writeConfig); + if (timeError.length > 0) { throw new ApiException(timeError.get("desc")); } // 检查表单总填写次数限制 - const formLimitError: Record = checkFormWriteLimitNum(diyFormRecordsParam.getFormId(), writeConfig); - if (formLimitError.length !== 0) { + const formLimitError: Record = checkFormWriteLimitNum(diyFormRecordsParam.getFormId(), writeConfig); + if (formLimitError.length > 0) { throw new ApiException(formLimitError.get("desc")); } // 检查会员填写次数限制 - const memberLimitError: Record = checkMemberWriteLimitNum(RequestUtils.memberId(), diyFormRecordsParam.getFormId(), writeConfig); - if (memberLimitError.length !== 0) { + const memberLimitError: Record = checkMemberWriteLimitNum(RequestUtils.memberId(), diyFormRecordsParam.getFormId(), writeConfig); + if (memberLimitError.length > 0) { throw new ApiException(memberLimitError.get("desc")); } } // 调用核心服务添加记录 - return coreDiyFormRecordsService.add(diyFormRecordsParam); + return coreDiyFormRecordsService.push(diyFormRecordsParam); } /** * getResult */ async getResult(...args: any[]): Promise { - const diyFormRecords: DiyFormRecords = diyFormRecordsMapper.selectOne(new QueryWrapper().eq("record_id", recordId).eq("site_id", RequestUtils.siteId()).eq("member_id", RequestUtils.memberId())); - if (ObjectUtil.isEmpty(diyFormRecords)) throw new ApiException("表单记录不存在"); + const diyFormRecords: DiyFormRecords = this.diyFormRecordsRepository.findOne(new ().eq("record_id", recordId).eq("site_id", RequestUtils.siteId()).eq("member_id", RequestUtils.memberId())); + if (!diyFormRecords) throw new ApiException("表单记录不存在"); const vo: DiyFormRecordsInfoVo = new DiyFormRecordsInfoVo(); BeanUtil.copyProperties(diyFormRecords, vo); - const diyFormSubmitConfig: DiyFormSubmitConfig = diyFormSubmitConfigMapper.selectOne(new QueryWrapper().eq("form_id", vo.getFormId())); + const diyFormSubmitConfig: DiyFormSubmitConfig = this.diyFormSubmitConfigRepository.findOne(new ().eq("form_id", vo.getFormId())); const configInfoVo: DiyFormSubmitConfigInfoVo = new DiyFormSubmitConfigInfoVo(); - if (ObjectUtil.isNotEmpty(diyFormSubmitConfig)) { + if (!!diyFormSubmitConfig) { BeanUtil.copyProperties(diyFormSubmitConfig, configInfoVo); } vo.setDiyFormSubmitConfig(configInfoVo); @@ -157,19 +156,19 @@ export class DiyFormServiceImplService { * getFormRecordInfo */ async getFormRecordInfo(...args: any[]): Promise { - const diyFormRecords: DiyFormRecords = diyFormRecordsMapper.selectOne(new QueryWrapper().eq("record_id", recordId).eq("site_id", RequestUtils.siteId()).eq("member_id", RequestUtils.memberId())); + const diyFormRecords: DiyFormRecords = this.diyFormRecordsRepository.findOne(new ().eq("record_id", recordId).eq("site_id", RequestUtils.siteId()).eq("member_id", RequestUtils.memberId())); const vo: DiyFormRecordsDetailVo = new DiyFormRecordsDetailVo(); - if (ObjectUtil.isEmpty(diyFormRecords)) { + if (!diyFormRecords) { return vo; } BeanUtil.copyProperties(diyFormRecords, vo); - const list: DiyFormRecordsFields[] = diyFormRecordsFieldsMapper.selectList(new QueryWrapper().eq("record_id", vo.getRecordId())); - if (ObjectUtil.isNotEmpty(list)) { - const volist: DiyFormRecordsFieldsListVo[] = []; + DiyFormRecordsFields[] list = this.diyFormRecordsFieldsRepository.find(new ().eq("record_id", vo.getRecordId())); + if (!!list) { + DiyFormRecordsFieldsListVo[] volist = []; for (const item of list) { const diyFormRecordsFieldsListVo: DiyFormRecordsFieldsListVo = new DiyFormRecordsFieldsListVo(); - BeanUtils.copyProperties(item, diyFormRecordsFieldsListVo); - volist.add(diyFormRecordsFieldsListVo); + Object.assign(diyFormRecordsFieldsListVo, item); + volist.push(diyFormRecordsFieldsListVo); } vo.setRecordsFieldList(volist); } @@ -181,35 +180,35 @@ export class DiyFormServiceImplService { */ async getMemberInfoRecord(...args: any[]): Promise { const memberConfig: MemberConfigVo = coreMemberConfigService.getMemberConfig(RequestUtils.siteId()); - if (ObjectUtil.isEmpty(memberConfig.getFormId())) { + if (!memberConfig.getFormId()) { return List.of(); } const formId: number = memberConfig.getFormId(); - const mpjqw: MPJQueryWrapper = new MPJQueryWrapper<>(); - mpjqw.setAlias("fr").leftJoin("?_diy_form_records_fields frf on frf.record_id = fr.record_id".replace("?_", this.config.get('tablePrefix'))); + MPJmpjqw = new MPJQueryWrapper<>(); + mpjqw.setAlias("fr").leftJoin("?_diy_form_records_fields frf on frf.record_id = fr.record_id".replace("?_", this.appConfig.tablePrefix)); mpjqw.select("frf.form_id, frf.form_field_id, frf.field_key, frf.field_type, frf.field_name, frf.field_value, frf.field_required, frf.field_unique, frf.privacy_protection"); mpjqw.eq("fr.member_id", RequestUtils.memberId()) .eq("fr.form_id", formId) .orderByDesc("fr.create_time"); - const diyFormRecordsFields: DiyFormRecordsFields[] = diyFormRecordsMapper.selectJoinList(DiyFormRecordsFields.class, mpjqw); + DiyFormRecordsFields[] diyFormRecordsFields = diyFormRecordsMapper.selectJoinList(DiyFormRecordsFields.class, mpjqw); - const diyFormMpjqw: MPJQueryWrapper = new MPJQueryWrapper<>(); + MPJdiyFormMpjqw = new MPJQueryWrapper<>(); diyFormMpjqw.setAlias("df") - .leftJoin("?_diy_form_fields dfi on dfi.form_id = df.form_id".replace("?_", this.config.get('tablePrefix'))); + .leftJoin("?_diy_form_fields dfi on dfi.form_id = df.form_id".replace("?_", this.appConfig.tablePrefix)); diyFormMpjqw.select("df.form_id,df.type, dfi.field_id, dfi.field_key, dfi.field_type, dfi.field_name, dfi.field_required, dfi.field_hidden, dfi.field_unique, dfi.privacy_protection"); diyFormMpjqw.eq("df.form_id", formId).eq("df.status", 1); - const diyFormFields: DiyFormFields[] = diyFormMapper.selectJoinList(DiyFormFields.class, diyFormMpjqw); + DiyFormFields[] diyFormFields = diyFormMapper.selectJoinList(DiyFormFields.class, diyFormMpjqw); - if (ObjectUtil.isEmpty(diyFormFields)) { + if (!diyFormFields) { return List.of(); } - if (ObjectUtil.isEmpty(diyFormRecordsFields)) { + if (!diyFormRecordsFields) { return setResult(diyFormFields); } const result: DiyMemberRecordVo = setResult(diyFormFields); - const fieldMap: Record = diyFormRecordsFields.stream().collect(Collectors.toMap(DiyFormRecordsFields::getFieldKey, field => field)); + const fieldMap: Record = diyFormRecordsFields.collect(Collectors.toMap(DiyFormRecordsFields::getFieldKey, field => field)); for (const field of result.getFormField()) { if (fieldMap.containsKey(field.getFieldKey())) { field.setFieldValue(fieldMap.get(field.getFieldKey()).getFieldValue() == null ? "" : fieldMap.get(field.getFieldKey()).getFieldValue()); @@ -223,44 +222,44 @@ export class DiyFormServiceImplService { */ async editRecord(...args: any[]): Promise { const diyFormRecords: DiyFormRecords = diyFormRecordsMapper.selectById(param.getRecordId()); - if (ObjectUtil.isEmpty(diyFormRecords)) { + if (!diyFormRecords) { throw new ApiException("表单记录不存在"); } - const diyForm: DiyForm = diyFormMapper.selectOne(new LambdaQueryWrapper().eq(DiyForm::getFormId, param.getFormId())); - if (ObjectUtil.isEmpty(diyForm)) { + const diyForm: DiyForm = this.diyFormRepository.findOne(new Lambda().eq(DiyForm::getFormId, param.getFormId())); + if (!diyForm) { throw new ApiException("表单不存在"); } if (diyForm.getStatus() == 0) { throw new ApiException("该表单已关闭"); } // 查询表单填写配置 - const writeConfigQueryWrapper: QueryWrapper = new QueryWrapper<>(); + writeConfigQueryWrapper = {}; writeConfigQueryWrapper.eq("form_id", param.getFormId()) .eq("site_id", RequestUtils.siteId()); - const writeConfig: DiyFormWriteConfig = diyFormWriteConfigMapper.selectOne(writeConfigQueryWrapper); + const writeConfig: DiyFormWriteConfig = this.diyFormWriteConfigRepository.findOne(writeConfigQueryWrapper); if (writeConfig != null) { // 检查会员是否可以参与 - const canJoinError: Record = checkMemberCanJoinOrNot(RequestUtils.memberId(), writeConfig); - if (canJoinError.length !== 0) { + const canJoinError: Record = checkMemberCanJoinOrNot(RequestUtils.memberId(), writeConfig); + if (canJoinError.length > 0) { throw new ApiException(canJoinError.get("desc")); } // 检查表单填写时间 - const timeError: Record = checkFormWriteTime(writeConfig); - if (timeError.length !== 0) { + const timeError: Record = checkFormWriteTime(writeConfig); + if (timeError.length > 0) { throw new ApiException(timeError.get("desc")); } // 检查表单总填写次数限制 - const formLimitError: Record = checkFormWriteLimitNum(param.getFormId(), writeConfig); - if (formLimitError.length !== 0) { + const formLimitError: Record = checkFormWriteLimitNum(param.getFormId(), writeConfig); + if (formLimitError.length > 0) { throw new ApiException(formLimitError.get("desc")); } // 检查会员填写次数限制 - const memberLimitError: Record = checkMemberWriteLimitNum(RequestUtils.memberId(), param.getFormId(), writeConfig); - if (memberLimitError.length !== 0) { + const memberLimitError: Record = checkMemberWriteLimitNum(RequestUtils.memberId(), param.getFormId(), writeConfig); + if (memberLimitError.length > 0) { throw new ApiException(memberLimitError.get("desc")); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/diy/impl/diy-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/diy/impl/diy-service-impl.service.ts index 33851397..e0dcc7fd 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/diy/impl/diy-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/diy/impl/diy-service-impl.service.ts @@ -25,7 +25,7 @@ export class DiyServiceImplService { if (!StrUtil.isEmpty(name)) { // 查询启动页 startUpPage = coreDiyConfigService.getStartUpPageConfig(param.siteId(), name); - log.info("startUpPage: {}", JSONUtil.toJsonStr(startUpPage)); + log.info("startUpPage: {}", JSON.stringify(startUpPage)); const templateParam: TemplateParam = new TemplateParam(); String[] key = { name }; @@ -37,7 +37,7 @@ export class DiyServiceImplService { log.info("enter if, template: {}", template.toString()); return startUpPage; } else { - const queryWrapper: QueryWrapper = new QueryWrapper(); + queryWrapper = new QueryWrapper(); queryWrapper.eq("site_id", param.siteId()); log.info("site_id: {}",param.siteId() ); @@ -46,19 +46,19 @@ export class DiyServiceImplService { log.info("id: {}, name: {}", id, name); if (id > 0) { queryWrapper.eq("id", id); - info = diyPageMapper.selectOne(queryWrapper); - } else if (name.length !== 0) { + info = this.diyPageRepository.findOne(queryWrapper); + } else if (name.length > 0) { queryWrapper.eq("name", name); queryWrapper.eq("is_default", 1); queryWrapper.orderByDesc("create_time"); queryWrapper.last("limit 1"); - info = diyPageMapper.selectOne(queryWrapper); + info = this.diyPageRepository.findOne(queryWrapper); } - log.info("info: {}", JSONUtil.toJsonStr(info)); + log.info("info: {}", JSON.stringify(info)); if (info == null) { - if (name.length !== 0) { + if (name.length > 0) { const pageData: Record = getFirstPageData(name, ""); if (pageData != null) { info = new DiyPage(); @@ -74,12 +74,12 @@ export class DiyServiceImplService { } } - log.info("info: {}", JSONUtil.toJsonStr(info)); + log.info("info: {}", JSON.stringify(info)); if (info == null) return null; const vo: DiyInfoVo = new DiyInfoVo(); - BeanUtils.copyProperties(info, vo); - log.info("vo: {}", JSONUtil.toJsonStr(vo)); + Object.assign(vo, info); + log.info("vo: {}", JSON.stringify(vo)); return vo; } } @@ -111,14 +111,14 @@ export class DiyServiceImplService { * tabbarList */ async tabbarList(...args: any[]): Promise { - const list: BottomConfigVo[] = coreDiyConfigService.getBottomList(); + BottomConfigVo[] list = coreDiyConfigService.getBottomList(); const site: SiteInfoVo = coreSiteService.getSiteCache(param.siteId()); - const tabbarList: BottomConfigVo[] = []; + BottomConfigVo[] tabbarList = []; for (const item of list) { - if (item.getKey() === "app" && list.size() > 1 && site.getApps().size() == 1) continue; + if (item.getKey() === "app" && list.length > 1 && site.getApps().size() == 1) continue; const config: BottomConfigVo = coreDiyConfigService.getBottomConfig(param.siteId(), item.getKey()); - tabbarList.add(config); + tabbarList.push(config); } return tabbarList; @@ -128,22 +128,22 @@ export class DiyServiceImplService { * share */ async share(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper(); + queryWrapper = new QueryWrapper(); queryWrapper.select("id,title,name,page,share,is_share"); queryWrapper.eq("page", param.getRoute()); queryWrapper.eq("site_id", param.siteId()); - const diyRoute: DiyRoute = diyRouteMapper.selectOne(queryWrapper); + const diyRoute: DiyRoute = this.diyRouteRepository.findOne(queryWrapper); if (diyRoute == null || diyRoute.getShare().isEmpty()) return new Record(); - const share: Record = JSONUtil.parseObj(diyRoute.getShare()); + const share: Record = JSON.parse(diyRoute.getShare()); share.set("route", diyRoute.getPage()); share.set("query", ""); const query: Record = new Record(); if (param.getParams() != null && !param.getParams().isEmpty()) { - query = JSONUtil.parseObj(param.getParams()); + query = JSON.parse(param.getParams()); } if (param.memberId() != null && param.memberId() > 0) { diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/login/impl/auth-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/login/impl/auth-service-impl.service.ts index ce42b4db..1c3a10ed 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/login/impl/auth-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/login/impl/auth-service-impl.service.ts @@ -16,13 +16,13 @@ export class AuthServiceImplService { const siteId: number = RequestUtils.apiSiteId(); if (siteId == 0) { - const site: Site = siteMapper.selectOne(new QueryWrapper().select("site_id").eq("site_domain", RequestUtils.getRequestDomain())); + const site: Site = this.siteRepository.findOne(new ().select("site_id").eq("site_domain", RequestUtils.getRequestDomain())); if (site == null) throw new UnauthorizedException("站点不存在", 403); siteId = site.getSiteId(); } const siteInfoVo: SiteInfoVo = coreSiteService.getSiteCache(siteId); - if(ObjectUtil.isEmpty(siteInfoVo)){ + if(!siteInfoVo){ throw new UnauthorizedException("站点不存在", 403); } const rule: string = RequestUtils.getReqeustURI(); @@ -43,7 +43,7 @@ export class AuthServiceImplService { memberInfoParam.setMemberId(RequestUtils.memberId()); memberInfoParam.setSiteId(RequestUtils.siteId()); const memberInfoVo: MemberInfoVo = memberService.info(memberInfoParam); - if(ObjectUtil.isNull(memberInfoVo) || ObjectUtil.isEmpty(memberInfoVo)){ + if(ObjectUtil.isNull(memberInfoVo) || !memberInfoVo){ // 退出登录 StpUtil.logout(RequestUtils.apiToken()); throw new UnauthorizedException("MEMBER_NOT_EXIST", 401); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/login/impl/register-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/login/impl/register-service-impl.service.ts index 4f7c38c0..88a2d3cf 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/login/impl/register-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/login/impl/register-service-impl.service.ts @@ -22,11 +22,11 @@ export class RegisterServiceImplService { * account */ async account(...args: any[]): Promise { - const memberExist: Member = memberMapper.selectOne(new QueryWrapper().select("member_id").eq("username", param.getUsername()).eq("site_id", RequestUtils.siteId())); + const memberExist: Member = this.memberRepository.findOne(new ().select("member_id").eq("username", param.getUsername()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(memberExist)) throw new BadRequestException("账号已存在"); if (!param.getMobile().isEmpty()) { - const mobileExist: Member = memberMapper.selectOne(new QueryWrapper().select("member_id").eq("mobile", param.getMobile()).eq("site_id", RequestUtils.siteId())); + const mobileExist: Member = this.memberRepository.findOne(new ().select("member_id").eq("mobile", param.getMobile()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(mobileExist)) throw new BadRequestException("当前手机号已绑定账号"); this.checkMobileCode(param.getMobile(), param.getMobileKey(), param.getMobileCode()); } @@ -47,7 +47,7 @@ export class RegisterServiceImplService { * mobile */ async mobile(...args: any[]): Promise { - const memberExist: Member = memberMapper.selectOne(new QueryWrapper().select("member_id").eq("mobile", param.getMobile()).eq("site_id", RequestUtils.siteId())); + const memberExist: Member = this.memberRepository.findOne(new ().select("member_id").eq("mobile", param.getMobile()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(memberExist)) throw new BadRequestException("账号已存在"); const member: Member = new Member(); @@ -68,20 +68,20 @@ export class RegisterServiceImplService { */ async register(...args: any[]): Promise { const request: HttpServletRequest = RequestUtils.handler(); - const pid: number = ObjectUtil.defaultIfNull(member.getPid(), 0); + const pid: number = (number) ObjectUtil.defaultIfNull(member.getPid(), 0); if (pid > 0) { - const inviteMember: Member = memberMapper.selectOne(new QueryWrapper().select("member_id").eq("member_id", member.getPid()).eq("site_id", RequestUtils.siteId())); + const inviteMember: Member = this.memberRepository.findOne(new ().select("member_id").eq("member_id", member.getPid()).eq("site_id", RequestUtils.siteId())); if (inviteMember == null) member.setPid(0); } if (member.getMobile() != null && !member.getMobile().isEmpty()) { - const mobile: Member = memberMapper.selectOne(new QueryWrapper().select("member_id").eq("mobile", member.getMobile()).eq("site_id", RequestUtils.siteId())); + const mobile: Member = this.memberRepository.findOne(new ().select("member_id").eq("mobile", member.getMobile()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(mobile)) throw new BadRequestException("账号已存在"); } - if (ObjectUtil.isEmpty(member.getNickname())) { - if (ObjectUtil.isNotEmpty(member.getUsername())) { + if (!member.getNickname()) { + if (!!member.getUsername()) { member.setNickname(member.getUsername()); - } else if (ObjectUtil.isNotEmpty(member.getMobile())) { + } else if (!!member.getMobile()) { member.setNickname(member.getMobile().substring(0, 3) + "****" + member.getMobile().substring(7)); } else { member.setNickname(createName()); @@ -89,10 +89,10 @@ export class RegisterServiceImplService { } member.setSiteId(RequestUtils.siteId()); - member.setCreateTime(System.currentTimeMillis() / 1000); + member.setCreateTime(Math.floor(Date.now() / 1000)); member.setMemberNo(coreMemberService.createMemberNo(RequestUtils.siteId())); member.setRegisterChannel(RequestUtils.channel()); - this.memberMapper.insert(member); + this.this.memberRepository.save(member); // 会员注册事件 const registerEvent: MemberRegisterEvent = new MemberRegisterEvent(); @@ -111,11 +111,11 @@ export class RegisterServiceImplService { async checkMobileCode(...args: any[]): Promise { if (mobile.length === 0) throw new BadRequestException("手机号必须填写"); const request: HttpServletRequest = RequestUtils.handler(); - if (ObjectUtil.isEmpty(mobileKey) || ObjectUtil.isEmpty(mobileCode)) throw new BadRequestException("手机验证码有误"); + if (!mobileKey || !mobileCode) throw new BadRequestException("手机验证码有误"); const cache: any = cached.get(mobileKey); if (ObjectUtil.isNull(cache)) throw new BadRequestException("手机验证码有误"); const vo: MobileCodeCacheVo = new MobileCodeCacheVo(); - BeanUtils.copyProperties(cache, vo); + Object.assign(vo, cache); if (vo.getMobile() !== mobile || !vo.getCode() === mobileCode) throw new BadRequestException("手机验证码有误"); cached.remove(mobileKey); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-account-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-account-service-impl.service.ts index 5dd74ee4..a4170020 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-account-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-account-service-impl.service.ts @@ -13,7 +13,7 @@ export class MemberAccountServiceImplService { * accountRecords */ async accountRecords(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper(); + queryWrapper = new QueryWrapper(); queryWrapper.select("id"); queryWrapper.eq("member_id", param.memberId()); if (StrUtil.isNotEmpty(param.getAccountType())) { @@ -22,10 +22,10 @@ export class MemberAccountServiceImplService { if (StrUtil.isNotEmpty(param.getFromType())) { queryWrapper.eq("from_type", param.getFromType()); } - if (ObjectUtil.isNotEmpty(param.getCreateTime())) { + if (!!param.getCreateTime()) { QueryMapperUtils.buildByTime(queryWrapper, "create_time", param.getCreateTime()); } - const count: number = this.memberAccountLogMapper.selectCount(queryWrapper); + const count: number = this.this.memberAccountLogRepository.count(queryWrapper); return count; } @@ -46,11 +46,11 @@ export class MemberAccountServiceImplService { */ async pointCount(...args: any[]): Promise { const accountPointCountVo: AccountPointCountVo = new AccountPointCountVo(); - const queryWrapper: QueryWrapper = new QueryWrapper(); + queryWrapper = new QueryWrapper(); queryWrapper.select("point,point_get"); queryWrapper.eq("site_id", param.siteId()); queryWrapper.eq("member_id", param.memberId()); - const member: Member = this.memberMapper.selectOne(queryWrapper); + const member: Member = this.this.memberRepository.findOne(queryWrapper); if (member == null) { throw new BaseException("会员不存在"); } @@ -61,7 +61,7 @@ export class MemberAccountServiceImplService { accountPointCountVo.setPointGet(member.getPointGet()); } - const accountLog: MemberAccountLog = memberAccountLogMapper.selectOne(new QueryWrapper() + const accountLog: MemberAccountLog = this.memberAccountLogRepository.findOne(new () .eq("site_id", param.siteId()) .eq("member_id", param.memberId()) .eq("account_type", AccountTypeEnum.POINT.getType()) diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-address-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-address-service-impl.service.ts index 23877abc..acfd9fa1 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-address-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-address-service-impl.service.ts @@ -19,7 +19,7 @@ export class MemberAddressServiceImplService { if (param.getIsDefault() != null && param.getIsDefault() == 1) { try { this.deleteDefaultAddress(param.memberId()); - } catch (e) { + } catch (Exception e) { log.error("更新会员默认地址数据库操作错误:", e.message); throw new BaseException("添加会员收货地址错误."); } @@ -31,7 +31,7 @@ export class MemberAddressServiceImplService { newMemberAddress.setMemberId(param.memberId()); // 插入显式的设置为空 newMemberAddress.setId(null); - const result: number = this.memberAddressMapper.insert(newMemberAddress); + const result: number = this.this.memberAddressRepository.save(newMemberAddress); if (result <= 0) { throw new BaseException("添加会员收货地址失败."); } @@ -42,11 +42,11 @@ export class MemberAddressServiceImplService { * delete */ async delete(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper(); + queryWrapper = new QueryWrapper(); queryWrapper.eq("site_id", param.siteId()); queryWrapper.eq("member_id", param.memberId()); queryWrapper.eq("id", param.getId()); - const result: number = this.memberAddressMapper.delete(queryWrapper); + const result: number = this.this.memberAddressRepository.delete(queryWrapper); if (result == 0) { throw new BaseException("删除会员收货地址失败."); } @@ -63,7 +63,7 @@ export class MemberAddressServiceImplService { if (param.getIsDefault() != null && param.getIsDefault() == 1) { try { deleteDefaultAddress(param.memberId()); - } catch (e) { + } catch (Exception e) { log.error("更新会员默认地址数据库操作错误:", e.message); throw new BaseException("添加会员收货地址错误."); } @@ -76,7 +76,7 @@ export class MemberAddressServiceImplService { // 修改实体表 const newMemberAddress: MemberAddress = CollectUtils.build(param, MemberAddress.class); newMemberAddress.setId(oldMemberAddress.getId()); - return this.memberAddressMapper.updateById(newMemberAddress); + return this.this.memberAddressRepository.save(newMemberAddress); } /** @@ -85,7 +85,7 @@ export class MemberAddressServiceImplService { async getInfo(...args: any[]): Promise { const memberAddress: MemberAddress = this.getMemberAddress(param.siteId(), param.memberId(), param.getId()); const memberAddressGetInfoVo: MemberAddressGetInfoVo = new MemberAddressGetInfoVo(); - BeanUtils.copyProperties(memberAddress, memberAddressGetInfoVo); + Object.assign(memberAddressGetInfoVo, memberAddress); return memberAddressGetInfoVo; } @@ -93,13 +93,13 @@ export class MemberAddressServiceImplService { * getList */ async getList(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.select("id,member_id,name,mobile,address,address_name,full_address,is_default,lng,lat"); queryWrapper.eq("site_id", param.siteId()); queryWrapper.eq("member_id", param.memberId()); queryWrapper.orderByDesc(Arrays.asList("is_default", "id")); - const memberAddressList: MemberAddress[] = memberAddressMapper.selectList(queryWrapper); - const memberAddressListInfoVo: MemberAddressListInfoVo[] = CollectUtils.convert(memberAddressList, MemberAddressListInfoVo.class); + MemberAddress[] memberAddressList = this.memberAddressRepository.find(queryWrapper); + MemberAddressListInfoVo[] memberAddressListInfoVo = CollectUtils.convert(memberAddressList, MemberAddressListInfoVo.class); return memberAddressListInfoVo; } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-cash-out-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-cash-out-service-impl.service.ts index e71f9718..00c8b67f 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-cash-out-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-cash-out-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class MemberCashOutServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -16,14 +15,14 @@ export class MemberCashOutServiceImplService { async cashOutInfo(...args: any[]): Promise { const vo: MemberCashOutInfoVo = memberCashOutMapper.selectJoinOne( MemberCashOutInfoVo.class, - new MPJQueryWrapper() + new MPJ() .select("mco.*,m.member_no,m.username,m.nickname,m.mobile,m.headimg,pt.transfer_voucher,pt.transfer_remark,pt.extra,pt.package_info") .eq("mco.id", param.getId()) .eq("mco.member_id", param.memberId()) .eq("mco.site_id", param.siteId()) .setAlias("mco") - .leftJoin("?_member m ON mco.member_id = m.member_id".replace("?_", this.config.get('tablePrefix'))) - .leftJoin("?_pay_transfer pt ON mco.transfer_no = pt.transfer_no".replace("?_", this.config.get('tablePrefix'))) + .leftJoin("?_member m ON mco.member_id = m.member_id".replace("?_", this.appConfig.tablePrefix)) + .leftJoin("?_pay_transfer pt ON mco.transfer_no = pt.transfer_no".replace("?_", this.appConfig.tablePrefix)) ); if (vo != null) { @@ -66,11 +65,11 @@ export class MemberCashOutServiceImplService { * cashOutCancel */ async cashOutCancel(...args: any[]): Promise { - const cashOut: MemberCashOut = memberCashOutMapper.selectOne(new QueryWrapper() + const cashOut: MemberCashOut = this.memberCashOutRepository.findOne(new () .eq("member_id", param.memberId()) .eq("site_id", param.siteId()) .eq("id", param.getId())); - if (ObjectUtil.isEmpty(cashOut)) throw new BadRequestException("提现申请不存在"); + if (!cashOut) throw new BadRequestException("提现申请不存在"); coreMemberCashOutService.cancel(cashOut.getSiteId(), cashOut.getId()); return true; @@ -80,11 +79,11 @@ export class MemberCashOutServiceImplService { * transfer */ async transfer(...args: any[]): Promise { - const cashOut: MemberCashOut = memberCashOutMapper.selectOne(new QueryWrapper() + const cashOut: MemberCashOut = this.memberCashOutRepository.findOne(new () .eq("member_id", RequestUtils.memberId()) .eq("site_id", RequestUtils.siteId()) .eq("id", param.getId())); - if (ObjectUtil.isEmpty(cashOut)) throw new BadRequestException("提现申请不存在"); + if (!cashOut) throw new BadRequestException("提现申请不存在"); if (cashOut.getStatus() !== MemberCashOutStatusEnum.WAIT_TRANSFER.getStatus()) throw new BadRequestException("当前提现申请未处于待转账状态"); return coreMemberCashOutService.transfer(cashOut, param); @@ -96,29 +95,29 @@ export class MemberCashOutServiceImplService { async accountList(...args: any[]): Promise { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper(); + queryWrapper = new QueryWrapper(); queryWrapper.select("account_id,site_id,member_id,account_type,bank_name,realname,account_no,transfer_payment_code"); queryWrapper.eq("site_id", param.siteId()); queryWrapper.eq("member_id", param.memberId()); - if (ObjectUtil.isNotEmpty(param.getAccountType())) queryWrapper.eq("account_type", param.getAccountType()); + if (!!param.getAccountType()) queryWrapper.eq("account_type", param.getAccountType()); queryWrapper.orderByDesc(Arrays.asList("create_time")); - const iPage: IPage = this.memberCashOutAccountMapper.selectPage(new Page<>(page, limit), queryWrapper); - const dataList: MemberCashOutAccountVo[] = CollectUtils.convert(iPage.getRecords(), MemberCashOutAccountVo.class); - return PageResult.build(page, limit, iPage.getTotal()).setData(dataList); + iPage = this.this.memberCashOutAccountRepository.findAndCount({ /* pagination */ }, queryWrapper); + MemberCashOutAccountVo[] dataList = CollectUtils.convert(records, MemberCashOutAccountVo.class); + return PageResult.build(page, limit, total).setData(dataList); } /** * accountDetails */ async accountDetails(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper(); + queryWrapper = new QueryWrapper(); queryWrapper.select("account_id,site_id,member_id,account_type,bank_name,realname,account_no,transfer_payment_code"); queryWrapper.eq("account_id", param.getAccountId()); queryWrapper.eq("site_id", param.siteId()); queryWrapper.eq("member_id", param.memberId()); - const memberCashOutAccount: MemberCashOutAccount = this.memberCashOutAccountMapper.selectOne(queryWrapper); + const memberCashOutAccount: MemberCashOutAccount = this.this.memberCashOutAccountRepository.findOne(queryWrapper); const memberCashOutAccountDetailsVo: MemberCashOutAccountDetailsVo = new MemberCashOutAccountDetailsVo(); - BeanUtils.copyProperties(memberCashOutAccount, memberCashOutAccountDetailsVo); + Object.assign(memberCashOutAccountDetailsVo, memberCashOutAccount); return memberCashOutAccountDetailsVo; } @@ -126,17 +125,17 @@ export class MemberCashOutServiceImplService { * accountDetailsOfFirst */ async accountDetailsOfFirst(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper(); + queryWrapper = new QueryWrapper(); queryWrapper.select("account_id,site_id,member_id,account_type,bank_name,realname,account_no,transfer_payment_code"); queryWrapper.eq("site_id", param.siteId()); queryWrapper.eq("member_id", param.memberId()); - if (ObjectUtil.isNotEmpty(param.getAccountType())) queryWrapper.eq("account_type", param.getAccountType()); + if (!!param.getAccountType()) queryWrapper.eq("account_type", param.getAccountType()); queryWrapper.orderByDesc("create_time"); queryWrapper.last("limit 1"); - const memberCashOutAccount: MemberCashOutAccount = this.memberCashOutAccountMapper.selectOne(queryWrapper); + const memberCashOutAccount: MemberCashOutAccount = this.this.memberCashOutAccountRepository.findOne(queryWrapper); if (memberCashOutAccount == null) return null; const memberCashOutFirstAccountDetailsVo: MemberCashOutFirstAccountDetailsVo = new MemberCashOutFirstAccountDetailsVo(); - BeanUtils.copyProperties(memberCashOutAccount, memberCashOutFirstAccountDetailsVo); + Object.assign(memberCashOutFirstAccountDetailsVo, memberCashOutAccount); return memberCashOutFirstAccountDetailsVo; } @@ -148,9 +147,9 @@ export class MemberCashOutServiceImplService { const newMemberCashOutAccount: MemberCashOutAccount = new MemberCashOutAccount(); newMemberCashOutAccount.setSiteId(param.siteId()); newMemberCashOutAccount.setMemberId(param.memberId()); - newMemberCashOutAccount.setCreateTime(System.currentTimeMillis() / 1000); - BeanUtils.copyProperties(param, newMemberCashOutAccount); - this.memberCashOutAccountMapper.insert(newMemberCashOutAccount); + newMemberCashOutAccount.setCreateTime(Math.floor(Date.now() / 1000)); + Object.assign(newMemberCashOutAccount, param); + this.this.memberCashOutAccountRepository.save(newMemberCashOutAccount); // 返回当前对象的ID return newMemberCashOutAccount.getAccountId(); } @@ -160,24 +159,24 @@ export class MemberCashOutServiceImplService { */ async editAccount(...args: any[]): Promise { // 根据ID查找实体对象,对象存在即更新数据库 - const oldMemberCashOutAccount: MemberCashOutAccount = this.memberCashOutAccountMapper.selectOne(new QueryWrapper() + const oldMemberCashOutAccount: MemberCashOutAccount = this.this.memberCashOutAccountRepository.findOne(new () .eq("account_id", accountId) .eq("member_id", param.memberId())); if (oldMemberCashOutAccount == null) { - throw new Error("会员账户不存在"); + throw new RuntimeException("会员账户不存在"); } const newMemberCashOutAccount: MemberCashOutAccount = new MemberCashOutAccount(); - BeanUtils.copyProperties(param, newMemberCashOutAccount); + Object.assign(newMemberCashOutAccount, param); newMemberCashOutAccount.setAccountId(accountId); - newMemberCashOutAccount.setUpdateTime(System.currentTimeMillis() / 1000); - return this.memberCashOutAccountMapper.updateById(newMemberCashOutAccount); + newMemberCashOutAccount.setUpdateTime(Math.floor(Date.now() / 1000)); + return this.this.memberCashOutAccountRepository.save(newMemberCashOutAccount); } /** * deleteAccount */ async deleteAccount(...args: any[]): Promise { - return this.memberCashOutAccountMapper.delete(new QueryWrapper() + return this.this.memberCashOutAccountRepository.delete(new () .eq("account_id", param.getAccountId()) .eq("member_id", param.memberId())); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-level-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-level-service-impl.service.ts index fe8871c6..140c7e1b 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-level-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-level-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class MemberLevelServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -21,10 +20,10 @@ export class MemberLevelServiceImplService { * findByIds */ async findByIds(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper(); + queryWrapper = new QueryWrapper(); queryWrapper.select("level_id,level_name"); queryWrapper.in("id", idSet); - const memberLevelList: MemberLevel[] = memberLevelMapper.selectList(queryWrapper); + MemberLevel[] memberLevelList = this.memberLevelRepository.find(queryWrapper); return CollectUtils.convert(memberLevelList, MemberLevelSimpleInfoVo.class); } @@ -32,10 +31,10 @@ export class MemberLevelServiceImplService { * list */ async list(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper(); + queryWrapper = new QueryWrapper(); queryWrapper.select("level_id,site_id,level_name,growth,remark,level_benefits,level_gifts"); queryWrapper.eq("site_id", param.siteId()); - const memberLevelList: MemberLevel[] = memberLevelMapper.selectList(queryWrapper); + MemberLevel[] memberLevelList = this.memberLevelRepository.find(queryWrapper); if (memberLevelList == null) return null; @@ -48,13 +47,13 @@ export class MemberLevelServiceImplService { filling.put("benefits_three", new Record().set("title", "尊享客服").set("desc", "尊享客服").set("icon", "/static/resource/images/member/benefits/benefits_badge.png")); const index: number = 0; - const list: MemberLevelInfoVo[] = []; + MemberLevelInfoVo[] list = []; for (const level of memberLevelList) { const vo: MemberLevelInfoVo = new MemberLevelInfoVo(); - BeanUtils.copyProperties(level, vo); + Object.assign(vo, level); - if (ObjectUtil.isNotEmpty(level.getLevelBenefits())) { - const benefits: Record = JSONUtil.parseObj(level.getLevelBenefits()); + if (!!level.getLevelBenefits()) { + const benefits: Record = JSON.parse(level.getLevelBenefits()); benefits = coreMemberService.getBenefitsContent(param.siteId(), benefits, "member_level"); vo.setLevelBenefits(benefits); } else { @@ -69,7 +68,7 @@ export class MemberLevelServiceImplService { } if (!level.getLevelGifts().isEmpty()) { - const gifts: Record = JSONUtil.parseObj(level.getLevelGifts()); + const gifts: Record = JSON.parse(level.getLevelGifts()); gifts = coreMemberService.getGiftContent(param.siteId(), gifts, "member_level"); vo.setLevelGifts(gifts); } @@ -80,7 +79,7 @@ export class MemberLevelServiceImplService { vo.setLevelTag("/static/resource/images/member/level/level_" + levelKey + ".png"); vo.setLevelStyle(levelStyle.getJSONObject("level_" + levelKey)); - list.add(vo); + list.push(vo); index++; } @@ -91,9 +90,9 @@ export class MemberLevelServiceImplService { * findMemberLevel */ async findMemberLevel(...args: any[]): Promise { - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); + MPJqueryWrapper = new MPJQueryWrapper<>(); queryWrapper.setAlias("m") - .leftJoin("?_member_level ml ON ml.level_id = m.member_level".replace("?_", this.config.get('tablePrefix'))); + .leftJoin("?_member_level ml ON ml.level_id = m.member_level".replace("?_", this.appConfig.tablePrefix)); queryWrapper.select("ml.*"); queryWrapper.eq("m.member_id", memberId); queryWrapper.ne("m.member_level", 0); @@ -101,10 +100,10 @@ export class MemberLevelServiceImplService { if (level == null) return null; const vo: MemberLevelInfoVo = new MemberLevelInfoVo(); - BeanUtils.copyProperties(level, vo); + Object.assign(vo, level); - if (ObjectUtil.isNotEmpty(level.getLevelBenefits()) && JSONUtil.isJson(level.getLevelBenefits())) vo.setLevelBenefits(JSONUtil.parseObj(level.getLevelBenefits())); - if (ObjectUtil.isNotEmpty(level.getLevelGifts()) && JSONUtil.isJson(level.getLevelGifts())) vo.setLevelGifts(JSONUtil.parseObj(level.getLevelGifts())); + if (!!level.getLevelBenefits() && JSONUtil.isJson(level.getLevelBenefits())) vo.setLevelBenefits(JSON.parse(level.getLevelBenefits())); + if (!!level.getLevelGifts() && JSONUtil.isJson(level.getLevelGifts())) vo.setLevelGifts(JSON.parse(level.getLevelGifts())); return vo; } @@ -117,13 +116,13 @@ export class MemberLevelServiceImplService { const phoneInfo: WxMaPhoneNumberInfo = WechatUtils.miniapp(RequestUtils.siteId()).getUserService().getPhoneNoInfo(mobileCode); const mobile: string = phoneInfo.getPurePhoneNumber(); - const member: Member = memberMapper.selectOne(new QueryWrapper().select("member_id").eq("mobile", mobile).eq("site_id", RequestUtils.siteId())); + const member: Member = this.memberRepository.findOne(new ().select("member_id").eq("mobile", mobile).eq("site_id", RequestUtils.siteId())); if (member != null) throw new BadRequestException("当前手机号已绑定账号"); const vo: MemberGetMobileVo = new MemberGetMobileVo(); vo.setMobile(mobile); return vo; - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-service-impl.service.ts index 1f026b4e..d00d89c2 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class MemberServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -14,24 +13,24 @@ export class MemberServiceImplService { * info */ async info(...args: any[]): Promise { - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); + MPJqueryWrapper = new MPJQueryWrapper<>(); queryWrapper.setAlias("m") - .leftJoin("?_member_level ml ON ml.level_id = m.member_level".replace("?_", this.config.get('tablePrefix'))); + .leftJoin("?_member_level ml ON ml.level_id = m.member_level".replace("?_", this.appConfig.tablePrefix)); queryWrapper.select("member_id, m.site_id, username, member_no, mobile, register_channel, nickname, headimg, member_level, member_label, login_ip, login_type, login_time, m.create_time, last_visit_time, last_consum_time, sex, m.status, birthday, point, balance, m.growth, is_member, member_time, is_del, province_id, city_id, district_id, address, location, money, money_get, wx_openid, weapp_openid, commission, commission_get, commission_cash_outing, ml.level_name as member_level_name"); queryWrapper.eq("member_id", param.memberId()); // SAAS域控制(交给SQL引擎处理) queryWrapper.eq("m.site_id", param.siteId()); const memberInfoVo: MemberInfoVo = memberMapper.selectJoinOne(MemberInfoVo.class, queryWrapper); - if (ObjectUtil.isNotEmpty(memberInfoVo)){ + if (!!memberInfoVo){ const memberConfig: MemberConfigVo = coreMemberConfigService.getMemberConfig(memberInfoVo.getSiteId()); memberInfoVo.setFormId(memberConfig.getFormId() == null ? "" : memberConfig.getFormId().toString()); memberInfoVo.setFormRecordId(""); - if ((memberInfoVo.getFormId( && memberInfoVo.getFormId(.trim() !== ''))){ - const diyFormRecords: DiyFormRecords = diyFormRecordsMapper.selectOne(new LambdaQueryWrapper() + if (StringUtils.isNotEmpty(memberInfoVo.getFormId())){ + const diyFormRecords: DiyFormRecords = this.diyFormRecordsRepository.findOne(new Lambda() .eq(DiyFormRecords::getFormId, memberConfig.getFormId()) .eq(DiyFormRecords::getMemberId, memberInfoVo.getMemberId()) .orderByDesc(DiyFormRecords::getCreateTime)); - if (ObjectUtil.isNotEmpty(diyFormRecords)){ + if (!!diyFormRecords){ memberInfoVo.setFormRecordId(diyFormRecords.getRecordId().toString()); } } @@ -43,17 +42,17 @@ export class MemberServiceImplService { * center */ async center(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper(); + queryWrapper = new QueryWrapper(); queryWrapper.select("member_id, site_id, username, member_no, mobile, register_channel, nickname, headimg, member_level, member_label, login_ip, login_type, login_time, create_time, last_visit_time, last_consum_time, sex, status, birthday, point, balance, growth, is_member, member_time, is_del, province_id, city_id, district_id, address, location, money, money_get, commission, commission_get, commission_cash_outing"); queryWrapper.eq("member_id", param.memberId()); queryWrapper.eq("site_id", param.siteId()); - const member: Member = memberMapper.selectOne(queryWrapper); + const member: Member = this.memberRepository.findOne(queryWrapper); if (member == null) { return null; } const memberCenterVo: MemberCenterVo = new MemberCenterVo(); - BeanUtils.copyProperties(member, memberCenterVo); + Object.assign(memberCenterVo, member); return memberCenterVo; } @@ -62,34 +61,34 @@ export class MemberServiceImplService { */ async modify(...args: any[]): Promise { const oldMember: Member = this.memberMapper.selectById(param.memberId()); - Assert.notNull(oldMember, "会员不存在"); + if (!oldMember) throw new BadRequestException("会员不存在"); const newMember: Member = new Member(); newMember.setMemberId(oldMember.getMemberId()); switch (param.getField()) { case "nickname": - newMember.setNickname(String.valueOf(param.getValue())); + newMember.setNickname(String(param.getValue())); break; case "headimg": - newMember.setHeadimg(String.valueOf(param.getValue())); + newMember.setHeadimg(String(param.getValue())); break; case "member_label": - newMember.setMemberLabel(String.valueOf(param.getValue())); + newMember.setMemberLabel(String(param.getValue())); break; case "member_level": - newMember.setMemberLevel(number.parseInt(String.valueOf(param.getValue()))); + newMember.setMemberLevel(number.parseInt(String(param.getValue()))); break; case "birthday": - newMember.setBirthday(String.valueOf(param.getValue())); + newMember.setBirthday(String(param.getValue())); break; case "sex": - newMember.setSex(number.parseInt(String.valueOf(param.getValue()))); + newMember.setSex(number.parseInt(String(param.getValue()))); break; default: throw new BadRequestException("不允许修改的信息"); } - return this.memberMapper.updateById(newMember); + return this.this.memberRepository.save(newMember); } /** @@ -97,16 +96,16 @@ export class MemberServiceImplService { */ async edit(...args: any[]): Promise { const oldMember: Member = this.memberMapper.selectById(param.memberId()); - Assert.notNull(oldMember, "会员不存在"); + if (!oldMember) throw new BadRequestException("会员不存在"); const newMember: Member = new Member(); newMember.setMemberId(oldMember.getMemberId()); - if (ObjectUtil.isNotEmpty(param.getData().getNickname())) newMember.setNickname(param.getData().getNickname()); - if (ObjectUtil.isNotEmpty(param.getData().getHeadimg())) newMember.setHeadimg(param.getData().getHeadimg()); - if (ObjectUtil.isNotEmpty(param.getData().getBirthday())) newMember.setBirthday(param.getData().getBirthday()); - if (ObjectUtil.isNotEmpty(param.getData().getSex())) newMember.setSex(param.getData().getSex()); - if (ObjectUtil.isNotEmpty(param.getData().getLastVisitTime())) newMember.setLastVisitTime(param.getData().getLastVisitTime()); - return this.memberMapper.updateById(newMember); + if (!!param.getData(.getNickname())) newMember.setNickname(param.getData().getNickname()); + if (!!param.getData(.getHeadimg())) newMember.setHeadimg(param.getData().getHeadimg()); + if (!!param.getData(.getBirthday())) newMember.setBirthday(param.getData().getBirthday()); + if (!!param.getData(.getSex())) newMember.setSex(param.getData().getSex()); + if (!!param.getData(.getLastVisitTime())) newMember.setLastVisitTime(param.getData().getLastVisitTime()); + return this.this.memberRepository.save(newMember); } /** @@ -114,29 +113,29 @@ export class MemberServiceImplService { */ async mobile(...args: any[]): Promise { const oldMember: Member = this.memberMapper.selectById(param.memberId()); - Assert.notNull(oldMember, "会员不存在"); + if (!oldMember) throw new BadRequestException("会员不存在"); - if (ObjectUtil.isNotEmpty(param.getMobile())) { + if (!!param.getMobile()) { registerService.checkMobileCode(param.getMobile(), param.getMobileKey(), param.getMobileCode()); - } else if (ObjectUtil.isNotEmpty(param.getMobileCode())) { + } else if (!!param.getMobileCode()) { try { const phoneInfo: WxMaPhoneNumberInfo = WechatUtils.miniapp(RequestUtils.siteId()).getUserService().getPhoneNoInfo(param.getMobileCode()); param.setMobile(phoneInfo.getPurePhoneNumber()); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } else { throw new BadRequestException("手机号不存在"); } - const mobileExist: Member = memberMapper.selectOne(new QueryWrapper().select("member_id").eq("mobile", param.getMobile()).eq("site_id", RequestUtils.siteId())); + const mobileExist: Member = this.memberRepository.findOne(new ().select("member_id").eq("mobile", param.getMobile()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(mobileExist)) throw new BadRequestException("当前手机号已绑定账号"); const newMember: Member = new Member(); newMember.setMemberId(param.memberId()); newMember.setMobile(param.getMobile()); - return this.memberMapper.updateById(newMember); + return this.this.memberRepository.save(newMember); } /** @@ -146,7 +145,7 @@ export class MemberServiceImplService { const updateMember: Member = new Member(); updateMember.setMemberId(param.memberId()); updateMember.setLastVisitTime(DateUtils.currTime()); - this.memberMapper.updateById(updateMember); + this.this.memberRepository.save(updateMember); return 1; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-sign-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-sign-service-impl.service.ts index b278e632..66718d1c 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-sign-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/member/impl/member-sign-service-impl.service.ts @@ -22,9 +22,9 @@ export class MemberSignServiceImplService { queryWrapper.eq("member_id", param.memberId()); queryWrapper.orderByDesc(Arrays.asList("create_time")); - const iPage: IPage = this.memberSignMapper.selectPage(new Page<>(page, limit), queryWrapper); - const dataList: MemberSignRecordVo[] = CollectUtils.convert(iPage.getRecords(), MemberSignRecordVo.class); - return PageResult.build(page, limit, iPage.getTotal()).setData(dataList); + iPage = this.this.memberSignRepository.findAndCount({ /* pagination */ }, queryWrapper); + MemberSignRecordVo[] dataList = CollectUtils.convert(records, MemberSignRecordVo.class); + return PageResult.build(page, limit, total).setData(dataList); } /** @@ -36,11 +36,11 @@ export class MemberSignServiceImplService { queryWrapper.eq("sign_id", param.getSignId()); queryWrapper.eq("site_id", param.siteId()); queryWrapper.eq("member_id", param.memberId()); - const memberSignList: MemberSign[] = this.memberSignMapper.selectList(queryWrapper); + MemberSign[] memberSignList = this.this.memberSignRepository.find(queryWrapper); const memberSignDetailsVo: MemberSignDetailsVo = null; - if (memberSignList != null && memberSignList.size() > 0) { + if (memberSignList != null && memberSignList.length > 0) { memberSignDetailsVo = new MemberSignDetailsVo(); - BeanUtils.copyProperties(memberSignList.get(0), memberSignDetailsVo); + Object.assign(memberSignDetailsVo, memberSignList.get(0)); } return memberSignDetailsVo; } @@ -50,13 +50,13 @@ export class MemberSignServiceImplService { */ async signOperate(...args: any[]): Promise { const signConfig: Record = coreConfigService.getConfigValue(RequestUtils.siteId(), "SIGN_CONFIG"); - const config: MemberSignConfigVo = JSONUtil.toBean(signConfig, MemberSignConfigVo.class); + const config: MemberSignConfigVo = Object.assign(new MemberSignConfigVo(), signConfig); - if (!config.getIsUse()) throw new Error("签到未开启"); + if (!config.getIsUse()) throw new RuntimeException("签到未开启"); // 获取今天的签到 const todayMemberSign: MemberSign = this.queryMemberSign(param.siteId(), param.memberId(), DateUtils.getFormatTodayString()); - if (todayMemberSign != null) throw new Error("今日已签到"); + if (todayMemberSign != null) throw new RuntimeException("今日已签到"); const vo: MemberSignOperateVo = new MemberSignOperateVo(); vo.setTitle("签到成功"); @@ -72,7 +72,7 @@ export class MemberSignServiceImplService { if (days > config.getSignPeriod()) { days = 1; } - if (ObjectUtil.isNotEmpty(config.getContinueAward())) { + if (!!config.getContinueAward()) { const continueSigns: JSONArray = config.getContinueAward(); CollUtil.sort(continueSigns, Comparator.comparing(o => ((Record) o).getInt("continue_sign")).reversed()); // 获取最大的连签天数 @@ -88,15 +88,15 @@ export class MemberSignServiceImplService { model.setSiteId(param.siteId()); model.setMemberId(param.memberId()); model.setIsSign(1); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setDays(days); model.setDayAward(config.getDayAward().toString()); model.setContinueAward(""); - if (days === 1) model.setStartTime(System.currentTimeMillis() / 1000); - memberSignMapper.insert(model); + if (days === 1) model.setStartTime(Math.floor(Date.now() / 1000)); + this.memberSignRepository.save(model); // 发放日签奖励 - const dayAwardVar: Record = {}; + const dayAwardVar: Record = new HashRecord<>(); dayAwardVar.put("from_type", "day_sign_award"); dayAwardVar.put("memo", "日签奖励"); coreMemberService.memberGiftGrant(param.siteId(), param.memberId(), config.getDayAward(), dayAwardVar); @@ -107,11 +107,11 @@ export class MemberSignServiceImplService { const continueAward: Record = null; for (const i of number = 0; i < config.getContinueAward().size(); i++) { const item: Record = config.getContinueAward().getJSONObject(i); - if (item.getInt("continue_sign") === days) { + if (item.getInt("continue_sign").equals(days)) { // 是否限制领取 - if (item.getInt("receive_limit") === 2) { + if (item.getInt("receive_limit").equals(2)) { // 周期开始时间 - const periodStartTime: number = memberSignMapper.selectOne(new QueryWrapper() + const periodStartTime: number = this.memberSignRepository.findOne(new () .select("start_time") .eq("member_id", param.memberId()) .eq("site_id", param.siteId()) @@ -123,7 +123,7 @@ export class MemberSignServiceImplService { // 周期结束时间 const periodEndTime: number = periodStartTime + (config.getSignPeriod() * 86400); // 领取次数 - const receiveNum: number = memberSignMapper.selectCount(new QueryWrapper() + const receiveNum: number = this.memberSignRepository.count(new () .eq("member_id", param.memberId()) .eq("site_id", param.siteId()) .between("create_time", periodStartTime, periodEndTime) @@ -146,13 +146,13 @@ export class MemberSignServiceImplService { continueAward.remove("receive_limit"); continueAward.remove("receive_num"); - const continueAwardVar: Record = {}; + const continueAwardVar: Record = {}; continueAwardVar.put("from_type", "continue_sign_award"); continueAwardVar.put("memo", "连签奖励"); coreMemberService.memberGiftGrant(param.siteId(), param.memberId(), continueAward, continueAwardVar); model.setContinueAward(continueAward.toString()); - memberSignMapper.updateById(model); + this.memberSignRepository.save(model); vo.setInfo("连签" + days.toString() + "天恭喜您获得以下奖励"); vo.setAwards(coreMemberService.getGiftContent(param.siteId(), continueAward, "member_sign")); @@ -167,21 +167,21 @@ export class MemberSignServiceImplService { */ async signMonthRecord(...args: any[]): Promise { const vo: MemberSignMonthRecordVo = new MemberSignMonthRecordVo(); - const days: number[] = []; - const period: MemberSignMonthRecordVo.Period[] = []; + number[] days = []; + MemberSignMonthRecordVo.Period[] period = []; const date: Date = DateUtil.parse(param.getYear() + "-" + param.getMonth() + "-1"); - const signRecord: MemberSign[] = this.memberSignMapper.selectList(new QueryWrapper() + MemberSign[] signRecord = this.this.memberSignRepository.find(new () .eq("member_id", param.memberId()) .between("create_time", DateUtil.beginOfMonth(date).getTime() / 1000, DateUtil.endOfMonth(date).getTime() / 1000) .orderByAsc("create_time")); - if (signRecord.size() > 0) { + if (signRecord.length > 0) { for (const item of signRecord) { - days.add(number.parseInt(DateUtil.format(new Date(item.getCreateTime() * 1000), "dd"))); + days.push(number.parseInt(DateUtil.format(new Date(item.getCreateTime() * 1000), "dd"))); } } @@ -202,7 +202,7 @@ export class MemberSignServiceImplService { */ async signConfig(...args: any[]): Promise { const config: Record = coreConfigService.getConfigValue(RequestUtils.siteId(), "SIGN_CONFIG"); - const signConfig: MemberSignConfigVo = JSONUtil.toBean(config, MemberSignConfigVo.class); + const signConfig: MemberSignConfigVo = Object.assign(new MemberSignConfigVo(), config); if (!signConfig.getDayAward().isEmpty()) { signConfig.setDayAward(coreMemberService.getGiftContent(RequestUtils.siteId(), signConfig.getDayAward(), "member_sign")); @@ -221,23 +221,23 @@ export class MemberSignServiceImplService { const award: Record = coreMemberService.getGiftContent(RequestUtils.siteId(), item, "member_sign_continue"); - const content: string[] = []; + String[] content = []; const icon: string = ""; for (const key of award.keySet()) { if (award.getJSONObject(key).get("content") != null) { - content.add(award.getByPath(key + ".content.text", String.class)); + content.push(award.getByPath(key + ".content.text", String.class)); icon = award.getByPath(key + ".content.icon", String.class); } } const gift: Record = new Record(); - if (content.size() > 0) { + if (content.length > 0) { gift.set("text", String.join("+", content)); - gift.set("icon", content.size() > 1 ? "static/resource/images/member/sign/pack01.png" : icon); + gift.set("icon", content.length > 1 ? "static/resource/images/member/sign/pack01.png" : icon); } awardItem.set("gift", new Record().set("total", gift)); - continueAward.add(awardItem); + continueAward.push(awardItem); } signConfig.setContinueAward(continueAward); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/pay/impl/pay-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/pay/impl/pay-service-impl.service.ts index 077b26b7..37758454 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/pay/impl/pay-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/pay/impl/pay-service-impl.service.ts @@ -18,11 +18,11 @@ export class PayServiceImplService { param.setBuyerId(RequestUtils.memberId()); if (RequestUtils.channel() === ChannelEnum.WECHAT.getCode() && param.getOpenid().isEmpty()) { - const member: Member = memberMapper.selectOne(new QueryWrapper().select("wx_openid").eq("site_id", param.getSiteId()).eq("member_id", RequestUtils.memberId())); + const member: Member = this.memberRepository.findOne(new ().select("wx_openid").eq("site_id", param.getSiteId()).eq("member_id", RequestUtils.memberId())); param.setOpenid(ObjectUtil.defaultIfNull(member.getWxOpenid(), "")); } if (RequestUtils.channel() === ChannelEnum.WEAPP.getCode() && param.getOpenid().isEmpty()) { - const member: Member = memberMapper.selectOne(new QueryWrapper().select("weapp_openid").eq("site_id", param.getSiteId()).eq("member_id", RequestUtils.memberId())); + const member: Member = this.memberRepository.findOne(new ().select("weapp_openid").eq("site_id", param.getSiteId()).eq("member_id", RequestUtils.memberId())); param.setOpenid(ObjectUtil.defaultIfNull(member.getWeappOpenid(), "")); } @@ -47,16 +47,16 @@ export class PayServiceImplService { * friendspayInfo */ async friendspayInfo(...args: any[]): Promise { - const payQueryWrapper: QueryWrapper = new QueryWrapper<>(); + payQueryWrapper = {}; payQueryWrapper.eq("trade_type", tradeType) .eq("trade_id", tradeId); - const fromPayInfos: Pay[] = payMapper.selectList(payQueryWrapper); - if (ObjectUtil.isEmpty(fromPayInfos) || fromPayInfos.stream().noneMatch(o => o.getSiteId() === RequestUtils.siteId())) { - throw new Error("支付单据不存在"); + Pay[] fromPayInfos = this.payRepository.find(payQueryWrapper); + if (!fromPayInfos || fromPayInfos.noneMatch(o => o.getSiteId() === RequestUtils.siteId())) { + throw new RuntimeException("支付单据不存在"); } const payInfo: GetInfoByTradeVo = getInfoByTrade(tradeType, tradeId, "friendspay"); - if (ObjectUtil.isEmpty(payInfo)) { + if (!payInfo) { return new FriendspayInfoVo(); } @@ -74,20 +74,20 @@ export class PayServiceImplService { } PayTradeInfoDefiner.const event: PayTradeInfoEvent = new PayTradeInfoDefiner.PayTradeInfoEvent(tradeType, tradeId); - const trades: PayTradeInfoDefiner.PayTradeInfoEventResult[] = EventAndSubscribeOfPublisher.publishAndCallback(event); - if (ObjectUtil.isNotEmpty(trades)) { + PayTradeInfoDefiner.PayTradeInfoEventResult[] trades = EventAndSubscribeOfPublisher.publishAndCallback(event); + if (!!trades) { vo.setTradeInfo(trades.get(0).getJsonObject()); } vo.setSelf(payInfo.getMainId() === RequestUtils.memberId()); - const posterQueryWrapper: QueryWrapper = new QueryWrapper<>(); + posterQueryWrapper = {}; posterQueryWrapper.eq("site_id", RequestUtils.siteId()) .eq("type", "friendspay") .eq("status", 1) .eq("is_default", 1); - const sysPoster: SysPoster = sysPosterMapper.selectOne(posterQueryWrapper); - if (ObjectUtil.isNotEmpty(sysPoster)) { + const sysPoster: SysPoster = this.sysPosterRepository.findOne(posterQueryWrapper); + if (!!sysPoster) { vo.setPosterId(sysPoster.getId()); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/sys/impl/sys-area-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/sys/impl/sys-area-service-impl.service.ts index c895ca9b..69e6817f 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/sys/impl/sys-area-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/sys/impl/sys-area-service-impl.service.ts @@ -16,7 +16,7 @@ export class SysAreaServiceImplService { // 缓存分组名称 const group: string = SysArea.class.getSimpleName(); // 缓存Key值计算参数 - const paramList: any[] = Arrays.asList(id); + Object[] paramList = Arrays.asList(id); // 自动缓存 return cached.rememberObject(useCache, group, paramList, (uniqueKey) => { const sysArea: SysArea = sysAreaMapper.selectById(id); @@ -32,17 +32,17 @@ export class SysAreaServiceImplService { // 缓存分组名称 const group: string = SysAreaListVo.class.getSimpleName(); // 缓存Key值计算参数 - const paramList: any[] = Arrays.asList(pid); + Object[] paramList = Arrays.asList(pid); // 自动缓存 - const outterSysAreaList: SysAreaListVo[] = cached.remember(useCache, group, paramList, uniqueKey => { - List sysAreaVoList = null; + SysAreaListVo[] outterSysAreaList = cached.remember(useCache, group, paramList, uniqueKey => { + SysAreaListVo[] sysAreaVoList = null; try { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.select("id,name"); queryWrapper.eq("pid", pid); - const sysAreaList: SysArea[] = sysAreaMapper.selectList(queryWrapper); + SysArea[] sysAreaList = this.sysAreaRepository.find(queryWrapper); sysAreaVoList = CollectUtils.convert(sysAreaList, SysAreaListVo.class); - } catch (e) { + } catch (Exception e) { log.error("查询区域错误:", e.message); throw new BaseException("查询区域错误"); } @@ -57,28 +57,28 @@ export class SysAreaServiceImplService { async getAreaTree(...args: any[]): Promise { if (level == 1) { // 参数级别:1,返回1级 - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.select("id, pid, name"); queryWrapper.eq("level", level); - const sysAreaList: SysArea[] = sysAreaMapper.selectList(queryWrapper); + SysArea[] sysAreaList = this.sysAreaRepository.find(queryWrapper); return CollectUtils.convert(sysAreaList, SysAreaLevelVo.class); } else if (level == 2) { // 参数级别:2,返回1级包含2级 - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.select("id, pid, name, level"); queryWrapper.in("level", 1, 2); - const sysAreaList: SysArea[] = sysAreaMapper.selectList(queryWrapper); - const sysAreaLevelVoList: SysAreaLevelVo[] = CollectUtils.convert(sysAreaList, SysAreaLevelVo.class); - const sysAreaMap: Record = ObjectGroupUtils.groupList(sysAreaLevelVoList, "pid"); + SysArea[] sysAreaList = this.sysAreaRepository.find(queryWrapper); + SysAreaLevelVo[] sysAreaLevelVoList = CollectUtils.convert(sysAreaList, SysAreaLevelVo.class); + Record sysAreaMap = ObjectGroupUtils.groupList(sysAreaLevelVoList, "pid"); return assembleAreaTree(sysAreaLevelVoList, sysAreaMap, 1, 2); } else if (level == 3) { // 参数级别:3,返回1级包含2级,2级包含3级 - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.select("id, pid, name, level"); queryWrapper.in("level", 1, 2, 3); - const sysAreaList: SysArea[] = sysAreaMapper.selectList(queryWrapper); - const sysAreaLevelVoList: SysAreaLevelVo[] = CollectUtils.convert(sysAreaList, SysAreaLevelVo.class); - const sysAreaMap: Record = ObjectGroupUtils.groupList(sysAreaLevelVoList, "pid"); + SysArea[] sysAreaList = this.sysAreaRepository.find(queryWrapper); + SysAreaLevelVo[] sysAreaLevelVoList = CollectUtils.convert(sysAreaList, SysAreaLevelVo.class); + Record sysAreaMap = ObjectGroupUtils.groupList(sysAreaLevelVoList, "pid"); return assembleAreaTree(sysAreaLevelVoList, sysAreaMap, 1, 3); } return []; diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/sys/impl/sys-verify-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/sys/impl/sys-verify-service-impl.service.ts index 84163081..ba676d20 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/sys/impl/sys-verify-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/sys/impl/sys-verify-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class SysVerifyServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -15,8 +14,8 @@ export class SysVerifyServiceImplService { */ async getVerifyCode(...args: any[]): Promise { // 生成核销码(对应业务调用) - const verifyCodeList: string[] = this.createVerifyCode(param.siteId(), param.memberId(), param.getType(), param.getData()); - const sysVerifyGetCodeVoList: SysVerifyGetCodeVo[] = []; + String[] verifyCodeList = this.createVerifyCode(param.siteId(), param.memberId(), param.getType(), param.getData()); + SysVerifyGetCodeVo[] sysVerifyGetCodeVoList = []; for (const verifyCode of verifyCodeList) { const sysVerifyGetCodeVo: SysVerifyGetCodeVo = new SysVerifyGetCodeVo(); sysVerifyGetCodeVo.setCode(verifyCode); @@ -24,16 +23,16 @@ export class SysVerifyServiceImplService { if (param.getNeedBarcode() == 1){ const barcode: string = null; try { - const qrcodeDir: string = this.config.get('webRootDownResource') + "upload/temp/"; + const qrcodeDir: string = this.appConfig.webRootDownResource + "upload/temp/"; const barcodePath: string = BarcodeUtils.generateBarcode(verifyCode, qrcodeDir); barcode = ImageUtils.imageToBase64(barcodePath); - } catch (e) { + } catch (Exception e) { log.error("条形码生成失败:{}", e.message, e); throw new BadRequestException("条形码生成失败"); } sysVerifyGetCodeVo.setBarcode(barcode); } - sysVerifyGetCodeVoList.add(sysVerifyGetCodeVo); + sysVerifyGetCodeVoList.push(sysVerifyGetCodeVo); } return sysVerifyGetCodeVoList; } @@ -42,7 +41,7 @@ export class SysVerifyServiceImplService { * checkVerifier */ async checkVerifier(...args: any[]): Promise { - const queryWrapper: LambdaQueryWrapper = new LambdaQueryWrapper(); + LambdaqueryWrapper = new LambdaQueryWrapper(); queryWrapper.eq(Verifier::getMemberId, RequestUtils.memberId()); queryWrapper.eq(Verifier::getSiteId, RequestUtils.siteId()); return verifierMapper.exists(queryWrapper); @@ -65,7 +64,7 @@ export class SysVerifyServiceImplService { if (StrUtil.isNotEmpty(param.getType())) { queryWrapper.eq("type", param.getType()); } - if (ObjectUtil.isNotEmpty(param.getCreateTime())) { + if (!!param.getCreateTime()) { QueryMapperUtils.buildByTime(queryWrapper, "create_time", param.getCreateTime()); } if (StrUtil.isNotEmpty(param.getRelateTag())) { @@ -76,29 +75,29 @@ export class SysVerifyServiceImplService { } queryWrapper.orderByDesc(Arrays.asList("create_time")); - const iPage: IPage = this.verifyMapper.selectPage(new Page<>(page, limit), queryWrapper); - const dataList: SysVerifyRecordsVo[] = CollectUtils.convert(iPage.getRecords(), SysVerifyRecordsVo.class); + iPage = this.this.verifyRepository.findAndCount({ /* pagination */ }, queryWrapper); + SysVerifyRecordsVo[] dataList = CollectUtils.convert(records, SysVerifyRecordsVo.class); - if (dataList.size() > 0) { + if (dataList.length > 0) { // 以下代码块=====>用以填充SysVerifyRecordsVo类对象的:nickname, mobile, headimg属性 // 根据集合ID主键索引查询到对象列表 const withQueryWrapper: QueryWrapper = new QueryWrapper(); withQueryWrapper.select("member_id, nickname, mobile, headimg"); - const memberIdList: number[] = CollectBuildUtils.getKeyValueList(dataList, "verifierMemberId"); + number[] memberIdList = CollectBuildUtils.getKeyValueList(dataList, "verifierMemberId"); withQueryWrapper.in("member_id", memberIdList); - const memberList: Member[] = memberMapper.selectList(withQueryWrapper); + Member[] memberList = this.memberRepository.find(withQueryWrapper); // 先将数据分组,然后放入结果集 - const memberMap: Record = ObjectGroupUtils.group(memberList, "memberId"); - dataList.stream().forEach(bean => { + const memberMap: Record = ObjectGroupUtils.group(memberList, "memberId"); + dataList.forEach(bean => { const member: Member = memberMap.get(bean.getVerifierMemberId()); if (member != null) { const membervo: MemberBriefInfoVo = new MemberBriefInfoVo(); - BeanUtils.copyProperties(member, membervo); + Object.assign(membervo, member); bean.setMember(membervo); } }); } - return PageResult.build(page, limit, iPage.getTotal()).setData(dataList); + return PageResult.build(page, limit, total).setData(dataList); } /** @@ -107,62 +106,62 @@ export class SysVerifyServiceImplService { async records2(...args: any[]): Promise { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const mpjQueryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); + MPJmpjQueryWrapper = new MPJQueryWrapper<>(); mpjQueryWrapper.select("t.*"); mpjQueryWrapper.setAlias("t"); mpjQueryWrapper.innerJoin("?_site_group nsg ON ns.group_id = nsg.group_id"); mpjQueryWrapper.eq("site_id", param.siteId()); mpjQueryWrapper.eq("verifier_member_id", param.memberId()); - const iPage: IPage = memberMapper.selectJoinPage(new Page<>(page, limit), SysVerifyRecordsVo.class, mpjQueryWrapper ); - return PageResult.build(page, limit, iPage.getTotal()).setData(iPage.getRecords()); + iPage = memberMapper.selectJoinPage({ /* pagination */ }, SysVerifyRecordsVo.class, mpjQueryWrapper ); + return PageResult.build(page, limit, total).setData(records); } /** * detail */ async detail(...args: any[]): Promise { - const verifyQueryWrapper: QueryWrapper = new QueryWrapper(); + verifyQueryWrapper = new QueryWrapper(); verifyQueryWrapper.eq("site_id", param.siteId()); verifyQueryWrapper.eq("verifier_member_id", param.memberId()); verifyQueryWrapper.eq("code", param.getCode()); - const verify: Verify = this.verifyMapper.selectOne(verifyQueryWrapper); + const verify: Verify = this.this.verifyRepository.findOne(verifyQueryWrapper); const sysVerifyDetailVo: SysVerifyDetailVo = new SysVerifyDetailVo(); if (verify != null) { - BeanUtils.copyProperties(verify, sysVerifyDetailVo); - const memberQueryWrapper: QueryWrapper = new QueryWrapper(); + Object.assign(sysVerifyDetailVo, verify); + memberQueryWrapper = new QueryWrapper(); memberQueryWrapper.select("member_id, nickname, mobile, headimg"); memberQueryWrapper.eq("member_id", param.memberId()); - const member: Member = this.memberMapper.selectOne(memberQueryWrapper); + const member: Member = this.this.memberRepository.findOne(memberQueryWrapper); if (member != null) { const membervo: MemberBriefInfoVo = new MemberBriefInfoVo(); - BeanUtils.copyProperties(member, membervo); + Object.assign(membervo, member); sysVerifyDetailVo.setMember(membervo); } } //处理时间的问题 解析JSON字符串 - const jsonObject: Record = JSONUtil.parseObj(sysVerifyDetailVo.getValue().toString()); + const jsonObject: Record = JSON.parse(sysVerifyDetailVo.getValue().toString()); // 获取content下的diy数组 const diyArray: JSONArray = jsonObject.getJSONObject("content").getJSONArray("diy"); // 遍历diy数组 - for (const i of number = 0; i < diyArray.size(); i++) { + for (const i of number = 0; i < diyArray.length; i++) { const diyItem: Record = diyArray.getJSONObject(i); const listArray: JSONArray = diyItem.getJSONArray("list"); // 遍历list数组 - for (const j of number = 0; j < listArray.size(); j++) { + for (const j of number = 0; j < listArray.length; j++) { const listItem: Record = listArray.getJSONObject(j); const title: string = listItem.getStr("title"); // 如果是支付时间,则转换格式 - if ("支付时间" === title) { + if ("支付时间".equals(title)) { const timestamp: number = listItem.getLong("value"); const timeStr: string = DateUtils.timestampToString(timestamp); listItem.put("value", timeStr); } } } - sysVerifyDetailVo.setValue(JSONUtil.toJsonStr(jsonObject)); + sysVerifyDetailVo.setValue(JSON.stringify(jsonObject)); return sysVerifyDetailVo; } @@ -172,22 +171,22 @@ export class SysVerifyServiceImplService { */ async verifyCode(...args: any[]): Promise { // 1、获取核销码数据 - const verifyMap: Record = this.getCodeData(param.getCode()); + const verifyMap: Record = this.getCodeData(param.getCode()); // 检测站点数据 - if (verifyMap.get("site_id") == null || !verifyMap.get("site_id") === param.siteId()) { + if (verifyMap.get("site_id") == null || !verifyMap.get("site_id").equals(param.siteId())) { // 核销码已过期 - throw new Error("当前核销码已核销或已失效"); + throw new RuntimeException("当前核销码已核销或已失效"); } // 检测核销员身份 - const queryWrapper: LambdaQueryWrapper = new LambdaQueryWrapper(); + LambdaqueryWrapper = new LambdaQueryWrapper(); queryWrapper.eq(Verifier::getMemberId, param.memberId()); queryWrapper.eq(Verifier::getSiteId, param.siteId()); const verifier: boolean = verifierMapper.exists(queryWrapper); if (!verifier) { - throw new Error("核销员不存在"); + throw new RuntimeException("核销员不存在"); } // 核销操作 - const verifyDataMap: Record = {}; + const verifyDataMap: Record = {}; verifyDataMap.put("site_id", verifyMap.get("site_id")); verifyDataMap.put("code", param.getCode()); verifyDataMap.put("body", verifyMap.get("body")); @@ -205,9 +204,9 @@ export class SysVerifyServiceImplService { // 添加核销记录 const model: Verify = new Verify(); - BeanUtils.copyProperties(verifyEvent, model); - model.setData(JSONUtil.parseObj(verifyEvent.getData()).toString()); - verifyMapper.insert(model); + Object.assign(model, verifyEvent); + model.setData(JSON.parse(verifyEvent.getData()).toString()); + this.verifyRepository.save(model); // 核销码失效 this.clearCode(param.getCode()); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/weapp/impl/serve-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/weapp/impl/serve-service-impl.service.ts index 4d26ed1a..1fbfce38 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/weapp/impl/serve-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/weapp/impl/serve-service-impl.service.ts @@ -38,10 +38,10 @@ export class ServeServiceImplService { const inMessage: WxMaMessage = null; - if ("raw" === encryptType) { + if ("raw".equals(encryptType)) { // 明文传输的消息 inMessage = inMessage.fromXml(request.getInputStream()); - } else if ("aes" === encryptType) { + } else if ("aes".equals(encryptType)) { // 是aes加密的消息 const msgSignature: string = request.getParameter("msg_signature"); inMessage = WxMaMessage.fromEncryptedXml(request.getInputStream(), wxMaService.getWxMaConfig(), timestamp, nonce, msgSignature); @@ -52,15 +52,15 @@ export class ServeServiceImplService { const outMessage: WxMaXmlOutMessage = this.message(inMessage); if (outMessage != null) { - if ("raw" === encryptType) { + if ("raw".equals(encryptType)) { response.getWriter().write(outMessage.toXml()); - } else if ("aes" === encryptType) { + } else if ("aes".equals(encryptType)) { response.getWriter().write(outMessage.toEncryptedXml(wxMaService.getWxMaConfig())); } return; } - } catch (e) { - e.printStackTrace(); + } catch (Exception e) { + console.error(e); } } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/weapp/impl/weapp-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/weapp/impl/weapp-service-impl.service.ts index f63359ac..56c53ca9 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/weapp/impl/weapp-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/weapp/impl/weapp-service-impl.service.ts @@ -16,13 +16,13 @@ export class WeappServiceImplService { try { const wxUser: WxMaJscode2SessionResult = WechatUtils.miniapp(RequestUtils.siteId()).getUserService().getSessionInfo(param.getCode()); - const member: Member = memberMapper.selectOne(new QueryWrapper().eq("weapp_openid", wxUser.getOpenid()).eq("site_id", RequestUtils.siteId())); + const member: Member = this.memberRepository.findOne(new ().eq("weapp_openid", wxUser.getOpenid()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(member)) { const vo: LoginVo = loginService.login(member); return vo; } - if (ObjectUtil.isNotEmpty(wxUser.getUnionid())) { - const unionidMember: Member = memberMapper.selectOne(new QueryWrapper().eq("wx_unionid", wxUser.getUnionid()).eq("site_id", RequestUtils.siteId())); + if (!!wxUser.getUnionid()) { + const unionidMember: Member = this.memberRepository.findOne(new ().eq("wx_unionid", wxUser.getUnionid()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(unionidMember)) { const vo: LoginVo = loginService.login(unionidMember); return vo; @@ -47,15 +47,15 @@ export class WeappServiceImplService { // 开启自动注册会员 if (config.getIsAuthRegister() == 1) { if (config.getIsBindMobile() == 1 && config.getIsForceAccessUserInfo() == 1) { - if (ObjectUtil.isNotEmpty(param.getMobile()) && ObjectUtil.isNotEmpty(param.getHeadimg()) && ObjectUtil.isNotEmpty(param.getNickname())) { + if (!!param.getMobile() && !!param.getHeadimg() && !!param.getNickname()) { return this.register(registerParam); } } else if (config.getIsForceAccessUserInfo() == 1) { - if (ObjectUtil.isNotEmpty(param.getHeadimg()) && ObjectUtil.isNotEmpty(param.getNickname())) { + if (!!param.getHeadimg() && !!param.getNickname()) { return this.register(registerParam); } } else if (config.getIsBindMobile() == 1) { - if (ObjectUtil.isNotEmpty(param.getMobile()) || ObjectUtil.isNotEmpty(param.getMobileCode())) { + if (!!param.getMobile() || !!param.getMobileCode()) { return this.register(registerParam); } } else { @@ -64,14 +64,14 @@ export class WeappServiceImplService { } else { // 关闭自动注册,但是开启了强制绑定手机号,必须获取手机号才能进行注册 if (config.getIsBindMobile() == 1 || config.getIsMobile() == 1) { - if (ObjectUtil.isNotEmpty(param.getMobile()) || ObjectUtil.isNotEmpty(param.getMobileCode())) { + if (!!param.getMobile() || !!param.getMobileCode()) { return this.register(registerParam); } } } return loginVo; - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -82,11 +82,11 @@ export class WeappServiceImplService { async register(...args: any[]): Promise { if (param.getOpenid().isEmpty()) throw new BadRequestException("openid不能为空"); try { - const member: Member = memberMapper.selectOne(new QueryWrapper().eq("weapp_openid", param.getOpenid()).eq("site_id", RequestUtils.siteId())); + const member: Member = this.memberRepository.findOne(new ().eq("weapp_openid", param.getOpenid()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(member)) throw new BadRequestException("账号已存在"); if (!param.getUnionid().isEmpty()) { - const unionidMember: Member = memberMapper.selectOne(new QueryWrapper().eq("wx_unionid", param.getUnionid()).eq("site_id", RequestUtils.siteId())); + const unionidMember: Member = this.memberRepository.findOne(new ().eq("wx_unionid", param.getUnionid()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(unionidMember)) throw new BadRequestException("账号已存在"); } @@ -110,7 +110,7 @@ export class WeappServiceImplService { registerMember.setNickname(param.getNickname()); registerMember.setHeadimg(param.getHeadimg()); return registerService.register(registerMember); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -122,14 +122,14 @@ export class WeappServiceImplService { try { const wxUser: WxMaJscode2SessionResult = WechatUtils.miniapp(RequestUtils.siteId()).getUserService().getSessionInfo(param.getCode()); - const member: Member = memberMapper.selectOne(new QueryWrapper().eq("wx_openid", wxUser.getOpenid()).eq("site_id", RequestUtils.siteId())); + const member: Member = this.memberRepository.findOne(new ().eq("wx_openid", wxUser.getOpenid()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(member)) throw new BadRequestException("账号已存在"); const updateMember: Member = new Member(); updateMember.setMemberId(RequestUtils.memberId()); updateMember.setWxOpenid(wxUser.getOpenid()); - this.memberMapper.updateById(updateMember); - } catch (e) { + this.this.memberRepository.save(updateMember); + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -138,13 +138,13 @@ export class WeappServiceImplService { * subscribeMessage */ async subscribeMessage(...args: any[]): Promise { - return sysNoticeMapper.selectList(new QueryWrapper() + return this.sysNoticeRepository.find(new () .select("weapp_template_id") .in("`key`", keys.split(",")) .eq("is_weapp", 1) .eq("site_id", RequestUtils.siteId()) .ne("weapp_template_id", "") - ).stream().map(item => item.getWeappTemplateId()).collect(Collectors.toList()); + ).map(item => item.getWeappTemplateId()); } /** @@ -158,13 +158,13 @@ export class WeappServiceImplService { * getMsgJumpPath */ async getMsgJumpPath(...args: any[]): Promise { - const pay: Pay = payMapper.selectOne(new QueryWrapper().eq("out_trade_no", outTradeNo)); + const pay: Pay = this.payRepository.findOne(new ().eq("out_trade_no", outTradeNo)); if (pay == null) return null; WapOrderDetailPathDefiner.const event: WapOrderDetailPathEvent = new WapOrderDetailPathDefiner.WapOrderDetailPathEvent(pay); - const eventData: WapOrderDetailPathDefiner.WapOrderDetailPathResult[] = EventAndSubscribeOfPublisher.publishAndCallback(event); + WapOrderDetailPathDefiner.WapOrderDetailPathResult[] eventData = EventAndSubscribeOfPublisher.publishAndCallback(event); - if (ObjectUtil.isNotEmpty(eventData)) { + if (!!eventData) { return eventData.get(0); } return null; diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/wechat/impl/serve-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/wechat/impl/serve-service-impl.service.ts index 3402f59d..e2384b29 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/wechat/impl/serve-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/wechat/impl/serve-service-impl.service.ts @@ -39,10 +39,10 @@ export class ServeServiceImplService { const inMessage: WxMpXmlMessage = null; - if ("raw" === encryptType) { + if ("raw".equals(encryptType)) { // 明文传输的消息 inMessage = WxMpXmlMessage.fromXml(request.getInputStream()); - } else if ("aes" === encryptType) { + } else if ("aes".equals(encryptType)) { // 是aes加密的消息 const msgSignature: string = request.getParameter("msg_signature"); inMessage = WxMpXmlMessage.fromEncryptedXml(request.getInputStream(), wxMpService.getWxMpConfigStorage(), timestamp, nonce, msgSignature); @@ -53,15 +53,15 @@ export class ServeServiceImplService { const outMessage: WxMpXmlOutMessage = this.message(inMessage); if (outMessage != null) { - if ("raw" === encryptType) { + if ("raw".equals(encryptType)) { response.getWriter().write(outMessage.toXml()); - } else if ("aes" === encryptType) { + } else if ("aes".equals(encryptType)) { response.getWriter().write(outMessage.toEncryptedXml(wxMpService.getWxMpConfigStorage())); } return; } - } catch (e) { - e.printStackTrace(); + } catch (Exception e) { + console.error(e); } } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/wechat/impl/wechat-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/wechat/impl/wechat-service-impl.service.ts index b44e959e..0f17c6fe 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/wechat/impl/wechat-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/api/wechat/impl/wechat-service-impl.service.ts @@ -41,7 +41,7 @@ export class WechatServiceImplService { ObjectUtil.defaultIfNull(wxUser.getHeadImgUrl(), ""), param.getPid() ); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -50,7 +50,7 @@ export class WechatServiceImplService { * wechatLogin */ async wechatLogin(...args: any[]): Promise { - const data: Record = JSONUtil.parseObj(param.getData()); + const data: Record = JSON.parse(param.getData()); return this.login( data.getStr("openid", ""), @@ -67,11 +67,11 @@ export class WechatServiceImplService { async register(...args: any[]): Promise { if (param.getOpenid().isEmpty()) throw new BadRequestException("openid不能为空"); try { - const member: Member = memberMapper.selectOne(new QueryWrapper().eq("wx_openid", param.getOpenid()).eq("site_id", RequestUtils.siteId())); + const member: Member = this.memberRepository.findOne(new ().eq("wx_openid", param.getOpenid()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(member)) throw new BadRequestException("账号已存在"); if (!param.getUnionid().isEmpty()) { - const unionidMember: Member = memberMapper.selectOne(new QueryWrapper().eq("wx_unionid", param.getUnionid()).eq("site_id", RequestUtils.siteId())); + const unionidMember: Member = this.memberRepository.findOne(new ().eq("wx_unionid", param.getUnionid()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(unionidMember)) throw new BadRequestException("账号已存在"); } @@ -87,7 +87,7 @@ export class WechatServiceImplService { registerMember.setWxUnionid(param.getUnionid()); registerMember.setPid(param.getPid()); return registerService.register(registerMember); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -104,8 +104,8 @@ export class WechatServiceImplService { member.setMemberId(RequestUtils.memberId()); member.setNickname(ObjectUtil.defaultIfNull(wxUser.getNickname(), "")); member.setHeadimg(ObjectUtil.defaultIfNull(wxUser.getHeadImgUrl(), "")); - this.memberMapper.updateById(member); - } catch (e) { + this.this.memberRepository.save(member); + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -130,7 +130,7 @@ export class WechatServiceImplService { vo.setAvatar(ObjectUtil.defaultIfNull(userInfo.getHeadImgUrl(), "")); } return vo; - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -149,7 +149,7 @@ export class WechatServiceImplService { vo.setUrl(url); return vo; - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -162,14 +162,14 @@ export class WechatServiceImplService { const wxOAuth2AccessToken: WxOAuth2AccessToken = WechatUtils.mp(RequestUtils.siteId()).getOAuth2Service().getAccessToken(param.getCode()); const wxUser: WxOAuth2UserInfo = WechatUtils.mp(RequestUtils.siteId()).getOAuth2Service().getUserInfo(wxOAuth2AccessToken, null); - const member: Member = memberMapper.selectOne(new QueryWrapper().eq("wx_openid", wxUser.getOpenid()).eq("site_id", RequestUtils.siteId())); + const member: Member = this.memberRepository.findOne(new ().eq("wx_openid", wxUser.getOpenid()).eq("site_id", RequestUtils.siteId())); if (ObjectUtil.isNotNull(member)) throw new BadRequestException("账号已存在"); const updateMember: Member = new Member(); updateMember.setMemberId(RequestUtils.memberId()); updateMember.setWxOpenid(wxUser.getOpenid()); - this.memberMapper.updateById(updateMember); - } catch (e) { + this.this.memberRepository.save(updateMember); + } catch (Exception e) { throw new BadRequestException(e.message); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/addon/impl/core-addon-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/addon/impl/core-addon-service-impl.service.ts index 304519fc..af2018ad 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/addon/impl/core-addon-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/addon/impl/core-addon-service-impl.service.ts @@ -1,14 +1,13 @@ import { Injectable } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as fs from 'fs'; import * as path from 'path'; @Injectable() export class CoreAddonServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -16,7 +15,7 @@ export class CoreAddonServiceImplService { * getInfoByKey */ async getInfoByKey(...args: any[]): Promise { - return addonMapper.selectOne(new MPJQueryWrapper().select("*").eq("`key`", key)); + return this.addonRepository.findOne(new MPJ().select("*").eq("`key`", key)); } /** @@ -26,17 +25,17 @@ export class CoreAddonServiceImplService { const localAddonCount: number = 0; try { // 获取本地所有的插件 - const localAddons: string[] = Files.list(Paths.get(this.config.get('webRootDownAddon'))) + File[] localAddons = Files.list(path.join(this.appConfig.webRootDownAddon)) .map(path => path.toFile()) .filter(file => fs.lstatSync(file).isDirectory()) - .collect(Collectors.toList()); + ; for (const file of localAddons) { - if (file, "info.json".exists()) { + if (fs.existsSync(path.join(file, "info.json"))) { localAddonCount++; } } - } catch (e) { + } catch (Exception e) { } return localAddonCount; } @@ -45,8 +44,8 @@ export class CoreAddonServiceImplService { * getAddonCountByCondition */ async getAddonCountByCondition(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); - const addonCount: number = addonMapper.selectCount(queryWrapper); + queryWrapper = {}; + const addonCount: number = this.addonRepository.count(queryWrapper); return addonCount.intValue(); } @@ -54,14 +53,14 @@ export class CoreAddonServiceImplService { * set */ async set(...args: any[]): Promise { - const model: Addon = addonMapper.selectOne(new QueryWrapper().eq("`key`", addon.getKey())); + const model: Addon = this.addonRepository.findOne(new ().eq("`key`", addon.getKey())); if (model != null) { - addon.setUpdateTime(System.currentTimeMillis() / 1000); - addonMapper.update(addon, new QueryWrapper().eq("`key`", addon.getKey())); + addon.setUpdateTime(Math.floor(Date.now() / 1000)); + addonMapper.update(addon, new ().eq("`key`", addon.getKey())); } else { - addon.setInstallTime(System.currentTimeMillis() / 1000); - addonMapper.insert(addon); + addon.setInstallTime(Math.floor(Date.now() / 1000)); + this.addonRepository.save(addon); } } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/aliapp/impl/core-aliapp-config-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/aliapp/impl/core-aliapp-config-service-impl.service.ts index 2b5b2bf6..860bf7fe 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/aliapp/impl/core-aliapp-config-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/aliapp/impl/core-aliapp-config-service-impl.service.ts @@ -17,7 +17,7 @@ export class CoreAliappConfigServiceImplService { const vo: AliappConfigVo = new AliappConfigVo(); if(ObjectUtil.isNotNull(coreSysConfigVo.getValueJson())) { - vo = JSONUtil.toBean(coreSysConfigVo.getValueJson(), AliappConfigVo.class); + vo = Object.assign(new AliappConfigVo(), coreSysConfigVo.getValueJson()); } return vo; } @@ -26,7 +26,7 @@ export class CoreAliappConfigServiceImplService { * setAliappConfig */ async setAliappConfig(...args: any[]): Promise { - const json: Record = JSONUtil.parseObj(aliappConfigParam); + const json: Record = JSON.parse(aliappConfigParam); coreConfigService.setConfig(siteId, "aliapp", json); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/captcha/impl/core-captcha-img-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/captcha/impl/core-captcha-img-service-impl.service.ts index 787de5c9..1b3977a4 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/captcha/impl/core-captcha-img-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/captcha/impl/core-captcha-img-service-impl.service.ts @@ -18,7 +18,7 @@ export class CoreCaptchaImgServiceImplService { const responseModel: ResponseModel = captchaService.get(captchaVO); const coreCaptchaInfoVo: CoreCaptchaInfoVo = new CoreCaptchaInfoVo(); if(responseModel.isSuccess()){ - const jsonObject: Record = JSONUtil.parseObj(responseModel.getRepData()); + const jsonObject: Record = JSON.parse(responseModel.getRepData()); coreCaptchaInfoVo.setToken(jsonObject.getStr("token")); coreCaptchaInfoVo.setJigsawImageBase64(jsonObject.getStr("jigsawImageBase64")); coreCaptchaInfoVo.setOriginalImageBase64(jsonObject.getStr("originalImageBase64")); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/captcha/impl/default-captcha-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/captcha/impl/default-captcha-service-impl.service.ts index df70a3c1..8dad023d 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/captcha/impl/default-captcha-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/captcha/impl/default-captcha-service-impl.service.ts @@ -45,7 +45,7 @@ export class DefaultCaptchaServiceImplService { if (captchaVO == null) { return RepCodeEnum.NULL_ERROR.parseError("captchaVO"); } else { - return (!captchaVO.getCaptchaType( || captchaVO.getCaptchaType(.trim() === '')) ? RepCodeEnum.NULL_ERROR.parseError("类型") : this.getService(captchaVO.getCaptchaType()).get(captchaVO); + return StringUtils.isEmpty(captchaVO.getCaptchaType()) ? RepCodeEnum.NULL_ERROR.parseError("类型") : this.getService(captchaVO.getCaptchaType()).get(captchaVO); } } @@ -55,10 +55,10 @@ export class DefaultCaptchaServiceImplService { async check(...args: any[]): Promise { if (captchaVO == null) { return RepCodeEnum.NULL_ERROR.parseError("captchaVO"); - } else if ((!captchaVO.getCaptchaType( || captchaVO.getCaptchaType(.trim() === ''))) { + } else if (StringUtils.isEmpty(captchaVO.getCaptchaType())) { return RepCodeEnum.NULL_ERROR.parseError("类型"); } else { - return (!captchaVO.getToken( || captchaVO.getToken(.trim() === '')) ? RepCodeEnum.NULL_ERROR.parseError("token") : this.getService(captchaVO.getCaptchaType()).check(captchaVO); + return StringUtils.isEmpty(captchaVO.getToken()) ? RepCodeEnum.NULL_ERROR.parseError("token") : this.getService(captchaVO.getCaptchaType()).check(captchaVO); } } @@ -68,7 +68,7 @@ export class DefaultCaptchaServiceImplService { async verification(...args: any[]): Promise { if (captchaVO == null) { return RepCodeEnum.NULL_ERROR.parseError("captchaVO"); - } else if ((!captchaVO.getCaptchaVerification( || captchaVO.getCaptchaVerification(.trim() === ''))) { + } else if (StringUtils.isEmpty(captchaVO.getCaptchaVerification())) { return RepCodeEnum.NULL_ERROR.parseError("二次校验参数"); } else { try { @@ -77,7 +77,7 @@ export class DefaultCaptchaServiceImplService { return ResponseModel.errorMsg(RepCodeEnum.API_CAPTCHA_INVALID); } CaptchaServiceFactory.getCache(cacheType).delete(codeKey); - } catch (var3) { + } catch (Exception var3) { this.logger.error("验证码坐标解析失败", var3); return ResponseModel.errorMsg(var3.message); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-app-cloud-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-app-cloud-service-impl.service.ts index 99b01079..bcc5cb90 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-app-cloud-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-app-cloud-service-impl.service.ts @@ -1,13 +1,12 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as fs from 'fs'; @Injectable() export class CoreAppCloudServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -17,14 +16,14 @@ export class CoreAppCloudServiceImplService { async appCloudBuid(...args: any[]): Promise { const appConfig: AppConfigVo = coreAppService.getConfig(param.getSiteId()); - if (ObjectUtil.isEmpty(appConfig.getAppName())) throw new BadRequestException("请先配置应用名称"); - if (ObjectUtil.isEmpty(appConfig.getUniAppId())) throw new BadRequestException("请先配置应用ID"); - if (ObjectUtil.isEmpty(appConfig.getAndroidAppKey())) throw new BadRequestException("请先配置应用密钥"); - if (ObjectUtil.isEmpty(appConfig.getApplicationId())) throw new BadRequestException("请先配置应用包名"); + if (!appConfig.getAppName()) throw new BadRequestException("请先配置应用名称"); + if (!appConfig.getUniAppId()) throw new BadRequestException("请先配置应用ID"); + if (!appConfig.getAndroidAppKey()) throw new BadRequestException("请先配置应用密钥"); + if (!appConfig.getApplicationId()) throw new BadRequestException("请先配置应用包名"); - const taskKey: string = String.valueOf(System.currentTimeMillis() / 1000); + const taskKey: string = String(Math.floor(Date.now() / 1000)); - const tempDir: string = this.config.get('webRootDownRuntime') + "app_build/" + taskKey + "/"; + const tempDir: string = this.appConfig.webRootDownRuntime + "app_build/" + taskKey + "/"; const packageDir: string = tempDir + "package/"; FileTools.createDirs(packageDir); @@ -59,14 +58,14 @@ export class CoreAppCloudServiceImplService { // 拷贝证书文件 if (param.getCert().getType() === "private"){ - const certFile: string = this.config.get('webRootDownResource', param.getCert().getFile()); + const certFile: string = this.appConfig.webRootDownResource, param.getCert(.getFile()); if (!fs.existsSync(certFile)) throw new BadRequestException("证书文件不存在"); fs.copyFileSync(certFile, packageDir, "cert.jks"); } // 拷贝icon文件 - const iconFile: string = this.config.get('webRootDownResource', param.getBuild().getIcon()); + const iconFile: string = this.appConfig.webRootDownResource, param.getBuild(.getIcon()); if (!fs.existsSync(iconFile)) throw new BadRequestException("icon文件不存在"); fs.copyFileSync(iconFile, packageDir, "drawable.zip"); @@ -75,11 +74,11 @@ export class CoreAppCloudServiceImplService { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const actionQuery: Record = {}; + const actionQuery: Record = new HashRecord<>(); actionQuery.put("data[product_key]", instance.getProductKey()); const actionToken: Record = niucloudService.getActionToken("appbuild", actionQuery); - const query: Record = {}; + const query: Record = new HashRecord<>(); query.put("authorize_code", instance.getCode()); query.put("timestamp", taskKey); query.put("token", actionToken == null ? "" : actionToken.getStr("token")); @@ -90,12 +89,12 @@ export class CoreAppCloudServiceImplService { }) .method(Method.POST).execute(); - const res: Record = JSONUtil.parseObj(response.body()); + const res: Record = JSON.parse(response.body()); - if (!res.getInt("code", 0) === 1) throw new BadRequestException(res.getStr("msg")); + if (!res.getInt("code", 0).equals(1)) throw new BadRequestException(res.getStr("msg")); return taskKey; - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -106,33 +105,33 @@ export class CoreAppCloudServiceImplService { async getAppCompileLog(...args: any[]): Promise { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const query: Record = {}; + const query: Record = new HashRecord<>(); query.put("authorize_code", instance.getCode()); query.put("timestamp", key); const response: HttpResponse = new NiucloudUtils.Cloud().build("cloud/get_appbuild_logs").query(query).method(Method.GET).execute(); try { const vo: AppCompileLogVo = new AppCompileLogVo(); - const log: Record = JSONUtil.parseObj(response.body()); + const log: Record = JSON.parse(response.body()); vo.setBuildLog(log); if (log != null) { const data: JSONArray = ObjectUtil.defaultIfNull(log.getByPath("data.0", JSONArray.class), new JSONArray()); - if (data.size() > 0) { - const last: Record = data.getJSONObject(data.size() - 1); - if (last.getInt("code", -1) === 0) { + if (data.length > 0) { + const last: Record = data.getJSONObject(data.length - 1); + if (last.getInt("code", -1).equals(0)) { vo.setStatus("fail"); vo.setFailReason(last.getStr("msg", "")); return vo; } - if (last.getInt("percent", 0) === 100) { + if (last.getInt("percent", 0).equals(100)) { buildSuccess(key, vo); } } } return vo; - } catch (e) { + } catch (Exception e) { return null; } } @@ -141,7 +140,7 @@ export class CoreAppCloudServiceImplService { * generateSignCert */ async generateSignCert(...args: any[]): Promise { - const query: Record = {}; + const query: Record = {}; query.put("key_alias", param.getKeyAlias()); query.put("key_password", param.getKeyPassword()); query.put("store_password", param.getStorePassword()); @@ -150,14 +149,14 @@ export class CoreAppCloudServiceImplService { const response: HttpResponse = new NiucloudUtils.Cloud().build("cloud/getcert").query(query).method(Method.GET).execute(); - if (response.header("Content-Type") === "application/json") { - const content: Record = JSONUtil.parseObj(response.body()); + if (response.header("Content-Type").equals("application/json")) { + const content: Record = JSON.parse(response.body()); if (content.getInt("code", -1) == 0) { throw new BadRequestException(ObjectUtil.defaultIfBlank(content.getStr("msg", ""), "获取证书失败")); } } - const tempDir: string = this.config.get('webRootDownResource') + "upload/download/cert/"; + const tempDir: string = this.appConfig.webRootDownResource + "upload/download/cert/"; FileTools.createDirs(tempDir); try { @@ -165,8 +164,8 @@ export class CoreAppCloudServiceImplService { const fos: FileOutputStream = new FileOutputStream(file, true); fos.write(response.bodyBytes()); return "upload/download/cert/" + param.getKeyAlias() + ".zip"; - } catch (e) { - e.printStackTrace(); + } catch (Exception e) { + console.error(e); throw new BadRequestException(e.message); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-app-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-app-service-impl.service.ts index 5eaa0dd1..c8db7b25 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-app-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-app-service-impl.service.ts @@ -18,13 +18,13 @@ export class CoreAppServiceImplService { if (config == null || config.getValueJson() == null) { return new AppConfigVo(); } - return JSONUtil.toBean(config.getValueJson(), AppConfigVo.class); + return Object.assign(new AppConfigVo(), config.getValueJson()); } /** * setConfig */ async setConfig(...args: any[]): Promise { - coreConfigService.setConfig(siteId, ConfigKeyEnum.path.basename(APP), JSONUtil.parseObj(param)); + coreConfigService.setConfig(siteId, ConfigKeyEnum.path.basename(APP), JSON.parse(param)); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-h5-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-h5-service-impl.service.ts index 2b708b9b..86fb04a3 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-h5-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-h5-service-impl.service.ts @@ -17,7 +17,7 @@ export class CoreH5ServiceImplService { const vo: H5ConfigVo = new H5ConfigVo(); if(ObjectUtil.isNotNull(coreSysConfigVo.getValueJson())) { - vo = JSONUtil.toBean(coreSysConfigVo.getValueJson(), H5ConfigVo.class); + vo = Object.assign(new H5ConfigVo(), coreSysConfigVo.getValueJson()); } return vo; } @@ -26,7 +26,7 @@ export class CoreH5ServiceImplService { * setH5 */ async setH5(...args: any[]): Promise { - const json: Record = JSONUtil.parseObj(param); + const json: Record = JSON.parse(param); coreConfigService.setConfig(RequestUtils.siteId(), "h5", json); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-pc-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-pc-service-impl.service.ts index 01ede4c8..d29ec9f9 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-pc-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/channel/impl/core-pc-service-impl.service.ts @@ -17,7 +17,7 @@ export class CorePcServiceImplService { const vo: PcConfigVo = new PcConfigVo(); if(ObjectUtil.isNotNull(coreSysConfigVo.getValueJson())) { - vo = JSONUtil.toBean(coreSysConfigVo.getValueJson(), PcConfigVo.class); + vo = Object.assign(new PcConfigVo(), coreSysConfigVo.getValueJson()); } return vo; } @@ -26,7 +26,7 @@ export class CorePcServiceImplService { * setPc */ async setPc(...args: any[]): Promise { - const json: Record = JSONUtil.parseObj(param); + const json: Record = JSON.parse(param); coreConfigService.setConfig(RequestUtils.siteId(), "pc", json); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/diy/impl/core-diy-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/diy/impl/core-diy-service-impl.service.ts index c3355e84..3d41223c 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/diy/impl/core-diy-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/diy/impl/core-diy-service-impl.service.ts @@ -34,11 +34,11 @@ export class CoreDiyServiceImplService { return; } - const diyThemes: DiyTheme[] = []; + DiyTheme[] diyThemes = []; // 处理主题配置 themeColorList.forEach(item => { - const themeColor: Record = JSONUtil.parseObj(item); + const themeColor: Record = JSON.parse(item); const themeType: string = themeColor.getStr("theme_type"); const colors: JSONArray = themeColor.getJSONArray("theme_color"); @@ -47,30 +47,30 @@ export class CoreDiyServiceImplService { } // 处理应用主题 - if ("app_theme" === themeType) { + if ("app_theme".equals(themeType)) { addAppThemes(diyThemes, siteId, "app", "app", colors); return; } // 处理其他应用和插件主题 - siteCache.getApps().stream() - .filter(app => (themeType + "_theme") === app.getKey()) + siteCache.getApps() + .filter(app => (themeType + "_theme").equals(app.getKey())) .forEach(app => { // 添加应用主题 addAppThemes(diyThemes, siteId, "app", app.getKey(), colors); // 添加关联插件主题 - const addons: Addon[] = addonMapper.selectList( - new LambdaQueryWrapper() + Addon[] addons = this.addonRepository.find( + new Lambda() .eq(Addon::getSupportApp, app.getKey())); - if ((addons && addons.length > 0)) { + if (StringUtils.isNotEmptyArray(addons)) { addons.forEach(addon => addAppThemes(diyThemes, siteId, "addon", addon.getKey(), colors)); } }); }); - if ((diyThemes && diyThemes.length > 0)) { + if (StringUtils.isNotEmptyArray(diyThemes)) { insertNewThemes(diyThemes, siteId); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/diy_form/impl/core-diy-form-config-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/diy_form/impl/core-diy-form-config-service-impl.service.ts index 93e6c40c..d51f9a40 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/diy_form/impl/core-diy-form-config-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/diy_form/impl/core-diy-form-config-service-impl.service.ts @@ -13,22 +13,22 @@ export class CoreDiyFormConfigServiceImplService { * getWriteConfig */ async getWriteConfig(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", siteId).eq("form_id", formId); - const writeConfig: DiyFormWriteConfig = diyFormWriteConfigMapper.selectOne(queryWrapper); - if (ObjectUtil.isEmpty(writeConfig)) { + const writeConfig: DiyFormWriteConfig = this.diyFormWriteConfigRepository.findOne(queryWrapper); + if (!writeConfig) { return null; } const infoVo: DiyFormWriteConfigInfoVo = new DiyFormWriteConfigInfoVo(); BeanUtil.copyProperties(writeConfig, infoVo); infoVo.setTimeLimitRule(writeConfig.getTimeLimitRule()); - const timeLimitRule: Record = JSONUtil.parseObj(infoVo.getTimeLimitRule()); + const timeLimitRule: Record = JSON.parse(infoVo.getTimeLimitRule()); if(timeLimitRule.containsKey("specify_time") && timeLimitRule.getJSONArray("specify_time").size() > 0) { const specifyTime: JSONArray = timeLimitRule.getJSONArray("specify_time"); const specifyTimeVo: JSONArray = new JSONArray(); - specifyTimeVo.add(DateUtils.timestampToString(specifyTime.getLong(0))); - specifyTimeVo.add(DateUtils.timestampToString(specifyTime.getLong(1))); + specifyTimeVo.push(DateUtils.timestampToString(specifyTime.getLong(0))); + specifyTimeVo.push(DateUtils.timestampToString(specifyTime.getLong(1))); timeLimitRule.put("specify_time", specifyTimeVo); } @@ -37,8 +37,8 @@ export class CoreDiyFormConfigServiceImplService { const beginOfDay: number = DateUtil.beginOfDay(DateUtil.date()).getTime() / 1000; const openDayTime: JSONArray = timeLimitRule.getJSONArray("open_day_time"); const openDayTimeVo: JSONArray = new JSONArray(); - openDayTimeVo.add(DateUtils.timestampToString( (beginOfDay + openDayTime.getLong(0)), "yyyy-MM-dd")); - openDayTimeVo.add(DateUtils.timestampToString((beginOfDay + openDayTime.getLong(1)), "yyyy-MM-dd")); + openDayTimeVo.push(DateUtils.timestampToString( (beginOfDay + openDayTime.getLong(0)), "yyyy-MM-dd")); + openDayTimeVo.push(DateUtils.timestampToString((beginOfDay + openDayTime.getLong(1)), "yyyy-MM-dd")); timeLimitRule.put("specify_time", openDayTimeVo); } return infoVo; @@ -54,19 +54,19 @@ export class CoreDiyFormConfigServiceImplService { const writeConfig: DiyFormWriteConfig = new DiyFormWriteConfig(); BeanUtil.copyProperties(addParam, writeConfig); - writeConfig.setCreateTime(System.currentTimeMillis() / 1000); - writeConfig.setUpdateTime(System.currentTimeMillis() / 1000); - diyFormWriteConfigMapper.insert(writeConfig); + writeConfig.setCreateTime(Math.floor(Date.now() / 1000)); + writeConfig.setUpdateTime(Math.floor(Date.now() / 1000)); + this.diyFormWriteConfigRepository.save(writeConfig); } /** * editWriteConfig */ async editWriteConfig(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("id", editParam.getId()).eq("form_id", editParam.getFormId()).eq("site_id", editParam.getSiteId()); - const existingConfig: DiyFormWriteConfig = diyFormWriteConfigMapper.selectOne(queryWrapper); - if (ObjectUtil.isEmpty(existingConfig)) { + const existingConfig: DiyFormWriteConfig = this.diyFormWriteConfigRepository.findOne(queryWrapper); + if (!existingConfig) { throw new BadRequestException("表单填写配置不存在"); } BeanUtil.copyProperties(editParam, existingConfig); @@ -81,8 +81,8 @@ export class CoreDiyFormConfigServiceImplService { { const specifyTime: JSONArray = timeLimitRule.getJSONArray("specify_time"); const specifyTimeVo: JSONArray = new JSONArray(); - specifyTimeVo.add(DateUtils.StringToTimestamp(specifyTime.getStr(0))); - specifyTimeVo.add(DateUtils.StringToTimestamp(specifyTime.getStr(1))); + specifyTimeVo.push(DateUtils.StringToTimestamp(specifyTime.getStr(0))); + specifyTimeVo.push(DateUtils.StringToTimestamp(specifyTime.getStr(1))); timeLimitRule.put("specify_time", specifyTimeVo); } @@ -93,22 +93,22 @@ export class CoreDiyFormConfigServiceImplService { const openDayTimeVo: JSONArray = new JSONArray(); const startTimeStr: string = DateUtil.format(DateUtil.date(), "yyyy-MM-dd") + " " + openDayTime.getStr(0) + ":00"; const endTimeStr: string = DateUtil.format(DateUtil.date(), "yyyy-MM-dd") + " " + openDayTime.getStr(1) + ":00"; - openDayTimeVo.add(DateUtils.StringToTimestamp(startTimeStr) - beginOfDay); - openDayTimeVo.add(DateUtils.StringToTimestamp(endTimeStr) - beginOfDay); + openDayTimeVo.push(DateUtils.StringToTimestamp(startTimeStr) - beginOfDay); + openDayTimeVo.push(DateUtils.StringToTimestamp(endTimeStr) - beginOfDay); timeLimitRule.put("specify_time", openDayTimeVo); } existingConfig.setTimeLimitRule(timeLimitRule.toString()); - existingConfig.setUpdateTime(System.currentTimeMillis() / 1000); - diyFormWriteConfigMapper.updateById(existingConfig); + existingConfig.setUpdateTime(Math.floor(Date.now() / 1000)); + this.diyFormWriteConfigRepository.save(existingConfig); } /** * getSubmitConfig */ async getSubmitConfig(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", siteId).eq("form_id", formId).last("limit 1"); - const submitConfig: DiyFormSubmitConfig = diyFormSubmitConfigMapper.selectOne(queryWrapper); + const submitConfig: DiyFormSubmitConfig = this.diyFormSubmitConfigRepository.findOne(queryWrapper); const infoVo: DiyFormSubmitConfigInfoVo = new DiyFormSubmitConfigInfoVo(); BeanUtil.copyProperties(submitConfig, infoVo); @@ -132,19 +132,19 @@ export class CoreDiyFormConfigServiceImplService { submitConfig.setTipsText(addParam.getTipsText()); submitConfig.setTipsType(addParam.getTipsType()); submitConfig.setFormId(addParam.getFormId()); - submitConfig.setCreateTime(System.currentTimeMillis() / 1000); - submitConfig.setUpdateTime(System.currentTimeMillis() / 1000); - diyFormSubmitConfigMapper.insert(submitConfig); + submitConfig.setCreateTime(Math.floor(Date.now() / 1000)); + submitConfig.setUpdateTime(Math.floor(Date.now() / 1000)); + this.diyFormSubmitConfigRepository.save(submitConfig); } /** * editSubmitConfig */ async editSubmitConfig(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("id", editParam.getId()).eq("site_id", editParam.getSiteId()).eq("form_id", editParam.getFormId()); - const existingConfig: DiyFormSubmitConfig = diyFormSubmitConfigMapper.selectOne(queryWrapper); - if (ObjectUtil.isEmpty(existingConfig)) { + const existingConfig: DiyFormSubmitConfig = this.diyFormSubmitConfigRepository.findOne(queryWrapper); + if (!existingConfig) { throw new BadRequestException("表单提交成功页配置不存在"); } existingConfig.setSubmitAfterAction(editParam.getSubmitAfterAction()); @@ -157,7 +157,7 @@ export class CoreDiyFormConfigServiceImplService { existingConfig.setTipsType(editParam.getTipsType()); - existingConfig.setUpdateTime(System.currentTimeMillis() / 1000); - diyFormSubmitConfigMapper.updateById(existingConfig); + existingConfig.setUpdateTime(Math.floor(Date.now() / 1000)); + this.diyFormSubmitConfigRepository.save(existingConfig); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/diy_form/impl/core-diy-form-records-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/diy_form/impl/core-diy-form-records-service-impl.service.ts index 6376f742..dd08fd8e 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/diy_form/impl/core-diy-form-records-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/diy_form/impl/core-diy-form-records-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class CoreDiyFormRecordsServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -17,18 +16,18 @@ export class CoreDiyFormRecordsServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: MPJQueryWrapper = new MPJQueryWrapper<>(); + MPJqueryWrapper = new MPJQueryWrapper<>(); //sql语句 queryWrapper.select("ndfr.record_id, ndfr.site_id, ndfr.form_id, ndfr.value, ndfr.member_id, ndfr.relate_id, ndfr.create_time, nm.username, nm.member_no, nm.mobile, nm.nickname, nm.headimg") .setAlias("ndfr") - .leftJoin("?_member nm ON ndfr.member_id = nm.member_id".replace("?_", this.config.get('tablePrefix'))); + .leftJoin("?_member nm ON ndfr.member_id = nm.member_id".replace("?_", this.appConfig.tablePrefix)); queryWrapper.eq("ndfr.site_id", searchParam.getSiteId()); - if (ObjectUtil.isNotEmpty(searchParam.getFormId())) { + if (!!searchParam.getFormId()) { queryWrapper.eq("ndfr.form_id", searchParam.getFormId()); } - if (ObjectUtil.isNotEmpty(searchParam.getKeyword())) { + if (!!searchParam.getKeyword()) { queryWrapper.and(i => i.or(j => j.like("nm.nickname", searchParam.getKeyword())) .or(j => j.like("nm.username", searchParam.getKeyword())) .or(j => j.like("nm.member_no", searchParam.getKeyword())) @@ -37,19 +36,19 @@ export class CoreDiyFormRecordsServiceImplService { } queryWrapper.orderByDesc("ndfr.create_time"); - const iPage: IPage = diyFormRecordsMapper.selectJoinPage(new Page<>(page, limit), DiyFormRecordsListVo.class, queryWrapper); + iPage = diyFormRecordsMapper.selectJoinPage({ /* pagination */ }, DiyFormRecordsListVo.class, queryWrapper); - for (const vo of iPage.getRecords()) { - const list: DiyFormRecordsFields[] = diyFormRecordsFieldsMapper.selectList(new QueryWrapper().eq("record_id", vo.getRecordId())); + for (const vo of records) { + DiyFormRecordsFields[] list = this.diyFormRecordsFieldsRepository.find(new ().eq("record_id", vo.getRecordId())); const memberVo: Member = new Member(); - BeanUtils.copyProperties(vo, memberVo); + Object.assign(memberVo, vo); vo.setMember(memberVo); - if (ObjectUtil.isNotEmpty(list)) { - const map: Record = {}; + if (!!list) { + const map: Record = {}; for (const item of list) { const diyFormRecordsFieldsListVo: DiyFormRecordsFieldsListVo = new DiyFormRecordsFieldsListVo(); - BeanUtils.copyProperties(item, diyFormRecordsFieldsListVo); + Object.assign(diyFormRecordsFieldsListVo, item); map.put(item.getFieldKey(), diyFormRecordsFieldsListVo); } vo.setRecordsFieldList(map); @@ -62,22 +61,22 @@ export class CoreDiyFormRecordsServiceImplService { * info */ async info(...args: any[]): Promise { - const model: DiyFormRecords = diyFormRecordsMapper.selectOne( - new QueryWrapper() + const model: DiyFormRecords = this.diyFormRecordsRepository.findOne( + new () .eq("record_id", id) .eq("site_id", RequestUtils.siteId())); - Assert.notNull(model, "万能表单填写记录不存在"); + if (!model) throw new BadRequestException("万能表单填写记录不存在"); const vo: DiyFormRecordsInfoVo = new DiyFormRecordsInfoVo(); - BeanUtils.copyProperties(model, vo); - const list: DiyFormRecordsFields[] = diyFormRecordsFieldsMapper.selectList(new QueryWrapper().eq("record_id", vo.getRecordId())); - if (ObjectUtil.isNotEmpty(list)) { - const map: Record = {}; + Object.assign(vo, model); + DiyFormRecordsFields[] list = this.diyFormRecordsFieldsRepository.find(new ().eq("record_id", vo.getRecordId())); + if (!!list) { + const map: Record = {}; for (const item of list) { const diyFormRecordsFieldsListVo: DiyFormRecordsFieldsListVo = new DiyFormRecordsFieldsListVo(); - BeanUtils.copyProperties(item, diyFormRecordsFieldsListVo); + Object.assign(diyFormRecordsFieldsListVo, item); map.put(item.getFieldKey(), diyFormRecordsFieldsListVo); } vo.setRecordsFieldList(map); @@ -89,32 +88,32 @@ export class CoreDiyFormRecordsServiceImplService { * add */ async add(...args: any[]): Promise { - const diyForm: DiyForm = diyFormMapper.selectOne(new QueryWrapper().eq("site_id", addParam.getSiteId()).eq("form_id", addParam.getFormId())); + const diyForm: DiyForm = this.diyFormRepository.findOne(new ().eq("site_id", addParam.getSiteId()).eq("form_id", addParam.getFormId())); if (diyForm == null) return null; if (diyForm.getStatus() == 0) return null; const model: DiyFormRecords = new DiyFormRecords(); - BeanUtils.copyProperties(addParam, model); - model.setCreateTime(System.currentTimeMillis() / 1000); - model.setValue(JSONUtil.toJsonStr(addParam.getValue())); - diyFormRecordsMapper.insert(model); - const list: DiyFormFields[] = diyFormFieldsMapper.selectList(new QueryWrapper().eq("form_id", addParam.getFormId()).eq("site_id", addParam.getSiteId())); - const fieldList: Record = {}; - if (ObjectUtil.isNotEmpty(list)) { + Object.assign(model, addParam); + model.setCreateTime(Math.floor(Date.now() / 1000)); + model.setValue(JSON.stringify(addParam.getValue())); + this.diyFormRecordsRepository.save(model); + DiyFormFields[] list = this.diyFormFieldsRepository.find(new ().eq("form_id", addParam.getFormId()).eq("site_id", addParam.getSiteId())); + const fieldList: Record = new HashRecord<>(); + if (!!list) { for (const item of list) { fieldList.put(item.getFieldKey(), item); } } - const recordsFieldsList: DiyFormRecordsFields[] = []; + DiyFormRecordsFields[] recordsFieldsList = []; - if (ObjectUtil.isNotEmpty(addParam.getValue())) { + if (!!addParam.getValue()) { const components: JSONArray = JSONUtil.parseArray(addParam.getValue()); for (const componentObj of components) { - const component: Record = JSONUtil.parseObj(componentObj); + const component: Record = JSON.parse(componentObj); // 过滤非表单组件和表单提交按钮组件 - if (!"diy_form" === component.getStr("componentType") || "FormSubmit" === component.getStr("componentName") || component.getBool("isHidden")) { + if (!"diy_form".equals(component.getStr("componentType")) || "FormSubmit".equals(component.getStr("componentName")) || component.getBool("isHidden")) { continue; } @@ -123,28 +122,28 @@ export class CoreDiyFormRecordsServiceImplService { const checkFieldValue: any = fieldValue; if (fieldValue instanceof List) { // 这里假设 DiyFormRecordsFieldsMapper 有对应的方法,需要根据实际情况修改 - // checkFieldValue = diyFormRecordsFieldsMapper.getRenderValueAttr("", (List) fieldValue, component.get("componentName")); + // checkFieldValue = diyFormRecordsFieldsMapper.getRenderValueAttr("", (?[]) fieldValue, (String) component.get("componentName")); checkFieldValue = ""; } const formFieldInfo: DiyFormFields = fieldList.get(component.getStr("id")); if (formFieldInfo != null) { if (formFieldInfo.getFieldRequired() == 1 && fieldValue == null) { - throw new BadRequestException(field.getOrDefault("name", component.get("componentTitle")) + "不能为空"); + throw new BadRequestException((String) field.getOrDefault("name", component.get("componentTitle")) + "不能为空"); } else if (checkFieldValue == null) { // 过滤空数据 continue; } // 检测字段是否重复 - const uniqueQuery: QueryWrapper = new QueryWrapper<>(); + uniqueQuery = {}; uniqueQuery.eq("site_id", addParam.getSiteId()) .eq("form_id", addParam.getFormId()) .eq("field_key", component.get("id")) .eq("field_type", component.get("componentName")); - const fieldValues: any[] = diyFormRecordsFieldsMapper.selectObjs(uniqueQuery); + Object[] fieldValues = diyFormRecordsFieldsMapper.selectObjs(uniqueQuery); if (formFieldInfo.getFieldUnique() == 1 && fieldValues.includes(fieldValue)) { - throw new BadRequestException(field.getOrDefault("name", component.get("componentTitle")) + "不能重复"); + throw new BadRequestException((String) field.getOrDefault("name", component.get("componentTitle")) + "不能重复"); } } else if (checkFieldValue == null) { // 过滤空数据 @@ -161,22 +160,22 @@ export class CoreDiyFormRecordsServiceImplService { recordsField.setFormId(addParam.getFormId()); recordsField.setRecordId(model.getRecordId()); recordsField.setMemberId(addParam.getMemberId()); - recordsField.setFieldKey(component.get("id")); - recordsField.setFieldType(component.get("componentName")); - recordsField.setFieldName(field.getOrDefault("name", "")); + recordsField.setFieldKey((String) component.get("id")); + recordsField.setFieldType((String) component.get("componentName")); + recordsField.setFieldName((String) field.getOrDefault("name", "")); recordsField.setFieldValue(fieldValue.toString()); - recordsField.setFieldRequired((Boolean) field.get("required") ? 1 : 0); - recordsField.setFieldHidden((Boolean) component.get("isHidden") ? 1 : 0); - recordsField.setFieldUnique(component.containsKey("unique") && (Boolean) component.get("unique") ? 1 : 0); - recordsField.setPrivacyProtection(component.containsKey("privacyProtection") && (Boolean) component.get("privacyProtection") ? 1 : 0); - recordsField.setCreateTime(System.currentTimeMillis() / 1000); - recordsField.setUpdateTime(System.currentTimeMillis() / 1000); - recordsFieldsList.add(recordsField); + recordsField.setFieldRequired((boolean) field.get("required") ? 1 : 0); + recordsField.setFieldHidden((boolean) component.get("isHidden") ? 1 : 0); + recordsField.setFieldUnique(component.containsKey("unique") && (boolean) component.get("unique") ? 1 : 0); + recordsField.setPrivacyProtection(component.containsKey("privacyProtection") && (boolean) component.get("privacyProtection") ? 1 : 0); + recordsField.setCreateTime(Math.floor(Date.now() / 1000)); + recordsField.setUpdateTime(Math.floor(Date.now() / 1000)); + recordsFieldsList.push(recordsField); } } - if (recordsFieldsList.length !== 0) { - diyFormRecordsFieldsMapper.insert(recordsFieldsList); + if (recordsFieldsList.length > 0) { + this.diyFormRecordsFieldsRepository.save(recordsFieldsList); // 累计填写数量 diyFormMapper.update(new UpdateWrapper().eq("form_id", addParam.getFormId()).setSql(" write_num = write_num + 1")); @@ -193,7 +192,7 @@ export class CoreDiyFormRecordsServiceImplService { * del */ async del(...args: any[]): Promise { - diyFormRecordsMapper.delete(new QueryWrapper().eq("record_id", id).eq("site_id", siteId)); + this.diyFormRecordsRepository.delete(new ().eq("record_id", id).eq("site_id", siteId)); } /** @@ -201,7 +200,7 @@ export class CoreDiyFormRecordsServiceImplService { */ async edit(...args: any[]): Promise { // 验证表单状态 - const formInfo: DiyForm = diyFormMapper.selectOne(new LambdaQueryWrapper() + const formInfo: DiyForm = this.diyFormRepository.findOne(new Lambda() .select(DiyForm::getFormId, DiyForm::getStatus) .eq(DiyForm::getFormId, param.getFormId()) .last("LIMIT 1")); @@ -216,21 +215,21 @@ export class CoreDiyFormRecordsServiceImplService { // 更新主记录 diyFormRecordsMapper.update(null, new LambdaUpdateWrapper() .eq(DiyFormRecords::getRecordId, param.getRecordId()) - .set(DiyFormRecords::getValue, JSONUtil.toJsonStr(param.getValue()))); + .set(DiyFormRecords::getValue, JSON.stringify(param.getValue()))); // 获取字段配置 - const formFieldMap: Record = diyFormFieldsMapper.selectList( - new LambdaQueryWrapper() + const formFieldMap: Record = this.diyFormFieldsRepository.find( + new Lambda() .select(DiyFormFields::getFieldKey, DiyFormFields::getFieldRequired, DiyFormFields::getFieldUnique) .eq(DiyFormFields::getFormId, param.getFormId())) - .stream() + .collect(Collectors.toMap(DiyFormFields::getFieldKey, Function.identity())); // 处理字段数据 - const recordsFields: DiyFormRecordsFields[] = []; - if ((param.getValue( && param.getValue(.length > 0))) { + DiyFormRecordsFields[] recordsFields = []; + if (StringUtils.isNotEmptyArray(param.getValue())) { for (const comp of param.getValue()) { if (!(comp instanceof Record)) continue; const component: Record = (Record) comp; @@ -240,9 +239,9 @@ export class CoreDiyFormRecordsServiceImplService { const componentName: string = component.getStr("componentName"); const isHidden: boolean = component.getBool("isHidden", false); - if (!"diy_form" === componentType || - "FormSubmit" === componentName || - Boolean.TRUE === isHidden) { + if (!"diy_form".equals(componentType) || + "FormSubmit".equals(componentName) || + boolean.TRUE === isHidden) { continue; } @@ -256,12 +255,12 @@ export class CoreDiyFormRecordsServiceImplService { if (fieldConfig != null) { validateField(fieldConfig, fieldValue, component, param); } else if (fieldValue == null || - (fieldValue instanceof String && StrUtil.isBlank(fieldValue))) { + (fieldValue instanceof String && StrUtil.isBlank((String) fieldValue))) { continue; } // 构建字段记录 - recordsFields.add(buildRecordField(param, component, fieldValue)); + recordsFields.push(buildRecordField(param, component, fieldValue)); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-account-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-account-service-impl.service.ts index f10d7352..6ffd5e9c 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-account-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-account-service-impl.service.ts @@ -13,15 +13,15 @@ export class CoreMemberAccountServiceImplService { * addLog */ async addLog(...args: any[]): Promise { - const memberQuery: QueryWrapper = new QueryWrapper().eq("site_id", siteId).eq("member_id", memberId); - const member: Member = memberMapper.selectOne(memberQuery); - Assert.notNull(member, "会员不存在"); + const memberQuery: QueryWrapper = new ().eq("site_id", siteId).eq("member_id", memberId); + const member: Member = this.memberRepository.findOne(memberQuery); + if (!member) throw new BadRequestException("会员不存在"); const accountData: number = new BigDecimal(data); const memberWrapper: BeanWrapper = new BeanWrapperImpl(member); const originalData: number = new BigDecimal(new number(memberWrapper.getPropertyValue(StringUtils.toCamelCase(accountType)).toString())); - const accountNewData: number = originalData.add(accountData); + const accountNewData: number = originalData.push(accountData); if (accountNewData.signum() < 0) throw new BadRequestException("账户余额不足"); // 添加账户变更记录 @@ -34,8 +34,8 @@ export class CoreMemberAccountServiceImplService { model.setFromType(fromType); model.setMemo(memo); model.setRelatedId(relatedId); - model.setCreateTime(System.currentTimeMillis() / 1000); - memberAccountLogMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.memberAccountLogRepository.save(model); // 修改会员账户 const memberModel: Member = new Member(); @@ -44,9 +44,9 @@ export class CoreMemberAccountServiceImplService { updateMemberWrapper.setPropertyValue(StringUtils.toCamelCase(accountType), accountNewData); if (accountData.signum() > 0) { const originalGetData: number = new BigDecimal(new number(memberWrapper.getPropertyValue(StringUtils.toCamelCase(accountType + "_get")).toString())); - updateMemberWrapper.setPropertyValue(StringUtils.toCamelCase(accountType + "_get"), originalGetData.add(accountData)); + updateMemberWrapper.setPropertyValue(StringUtils.toCamelCase(accountType + "_get"), originalGetData.push(accountData)); } - memberMapper.updateById(memberModel); + this.memberRepository.save(memberModel); // 账户变更事件 const accountEvent: MemberAccountEvent = new MemberAccountEvent(); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-cash-out-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-cash-out-service-impl.service.ts index 27b7d681..cb49b3cd 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-cash-out-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-cash-out-service-impl.service.ts @@ -13,10 +13,10 @@ export class CoreMemberCashOutServiceImplService { * apply */ async apply(...args: any[]): Promise { - const member: Member = memberMapper.selectOne(new QueryWrapper() + const member: Member = this.memberRepository.findOne(new () .eq("member_id", param.getMemberId()) .eq("site_id", param.getSiteId())); - if (ObjectUtil.isEmpty(member)) throw new BadRequestException("会员不存在"); + if (!member) throw new BadRequestException("会员不存在"); const config: CashOutConfigVo = coreMemberConfigService.getCashOutConfig(param.getSiteId()); if (config.getIsOpen() === "0") throw new BadRequestException("会员提现业务未开启"); @@ -30,11 +30,11 @@ export class CoreMemberCashOutServiceImplService { const cashoutAccount: MemberCashOutAccount = new MemberCashOutAccount(); if (param.getTransferType() !== TransferTypeEnum.WECHATPAY.getKey()) { - cashoutAccount = memberCashOutAccountMapper.selectOne(new QueryWrapper() + cashoutAccount = this.memberCashOutAccountRepository.findOne(new () .eq("member_id", param.getMemberId()) .eq("site_id", param.getSiteId()) .eq("account_id", param.getAccountId())); - if (ObjectUtil.isEmpty(cashoutAccount)) throw new BadRequestException("提现账户不存在"); + if (!cashoutAccount) throw new BadRequestException("提现账户不存在"); } const serviceMoney: number = applyMoney.multiply(config.getRate()).divide(BigDecimal.valueOf(100), 2, BigDecimal.ROUND_HALF_UP); @@ -54,7 +54,7 @@ export class CoreMemberCashOutServiceImplService { model.setTransferAccount(ObjectUtil.defaultIfNull(cashoutAccount.getAccountNo(), "")); model.setRate(config.getRate()); model.setTransferPaymentCode(ObjectUtil.defaultIfNull(cashoutAccount.getTransferPaymentCode(), "")); - model.setTransferPayee(ObjectUtil.isNull(param.getTransferPayee()) ? "" : JSONUtil.parseObj(param.getTransferPayee()).toString()); + model.setTransferPayee(ObjectUtil.isNull(param.getTransferPayee()) ? "" : JSON.parse(param.getTransferPayee()).toString()); this.addCashOutRecord(model, member, config); return model.getId(); @@ -64,13 +64,13 @@ export class CoreMemberCashOutServiceImplService { * audit */ async audit(...args: any[]): Promise { - const cashOut: MemberCashOut = memberCashOutMapper.selectOne( - new QueryWrapper() + const cashOut: MemberCashOut = this.memberCashOutRepository.findOne( + new () .eq("id", id) .eq("site_id", siteId) .last("limit 1")); - Assert.notNull(cashOut, "提现记录不存在"); + if (!cashOut) throw new BadRequestException("提现记录不存在"); if (cashOut.getStatus() !== MemberCashOutStatusEnum.WAIT_AUDIT.getStatus()) { throw new BadRequestException("当前提现申请未处于待审核状态"); @@ -90,19 +90,19 @@ export class CoreMemberCashOutServiceImplService { * agree */ async agree(...args: any[]): Promise { - cashOut.setAuditTime(System.currentTimeMillis() / 1000); + cashOut.setAuditTime(Math.floor(Date.now() / 1000)); cashOut.setStatus(MemberCashOutStatusEnum.WAIT_TRANSFER.getStatus()); - memberCashOutMapper.updateById(cashOut); + this.memberCashOutRepository.save(cashOut); } /** * transfer */ async transfer(...args: any[]): Promise { - Assert.notNull(cashOut, "提现记录不存在"); + if (!cashOut) throw new BadRequestException("提现记录不存在"); if (cashOut.getStatus() !== MemberCashOutStatusEnum.WAIT_TRANSFER.getStatus() && cashOut.getStatus() !== MemberCashOutStatusEnum.TRANSFER_ING.getStatus()) throw new BadRequestException("当前提现申请未处于待转账状态"); - if (ObjectUtil.isEmpty(cashOut.getTransferNo())) { + if (!cashOut.getTransferNo()) { const transfer: PayTransfer = new PayTransfer(); transfer.setSiteId(cashOut.getSiteId()); transfer.setMainType(PayMainType.MEMBER.getType()); @@ -113,10 +113,10 @@ export class CoreMemberCashOutServiceImplService { transfer.setExtra(""); cashOut.setTransferNo(coreTransferService.create(transfer)); cashOut.setStatus(MemberCashOutStatusEnum.TRANSFER_ING.getStatus()); - memberCashOutMapper.updateById(cashOut); + this.memberCashOutRepository.save(cashOut); } - const data: Record = {}; + const data: Record = {}; data.put("transfer_voucher", ObjectUtil.defaultIfEmpty(param.getTransferVoucher(), "")); data.put("transfer_remark", ObjectUtil.defaultIfEmpty(param.getTransferRemark(), "")); @@ -147,13 +147,13 @@ export class CoreMemberCashOutServiceImplService { * transferFinish */ async transferFinish(...args: any[]): Promise { - const cashOut: MemberCashOut = memberCashOutMapper.selectOne(new QueryWrapper().eq("transfer_no", transferNo)); - Assert.notNull(cashOut, "提现记录不存在"); + const cashOut: MemberCashOut = this.memberCashOutRepository.findOne(new ().eq("transfer_no", transferNo)); + if (!cashOut) throw new BadRequestException("提现记录不存在"); if (cashOut.getStatus() !== MemberCashOutStatusEnum.WAIT_TRANSFER.getStatus() && cashOut.getStatus() !== MemberCashOutStatusEnum.TRANSFER_ING.getStatus()) throw new BadRequestException("当前提现申请未处于待转账状态"); - cashOut.setTransferTime(System.currentTimeMillis() / 1000); + cashOut.setTransferTime(Math.floor(Date.now() / 1000)); cashOut.setStatus(MemberCashOutStatusEnum.TRANSFERED.getStatus()); - memberCashOutMapper.updateById(cashOut); + this.memberCashOutRepository.save(cashOut); this.give(cashOut); } @@ -162,10 +162,10 @@ export class CoreMemberCashOutServiceImplService { * refuse */ async refuse(...args: any[]): Promise { - cashOut.setAuditTime(System.currentTimeMillis() / 1000); + cashOut.setAuditTime(Math.floor(Date.now() / 1000)); cashOut.setStatus(MemberCashOutStatusEnum.REFUSE.getStatus()); cashOut.setRefuseReason(param.getRefuseReason() == null ? "": param.getRefuseReason()); - memberCashOutMapper.updateById(cashOut); + this.memberCashOutRepository.save(cashOut); this.giveback(cashOut); } @@ -184,7 +184,7 @@ export class CoreMemberCashOutServiceImplService { if (cashOut.getAccountType() === AccountTypeEnum.COMMISSION.getType()) { updateMember.setCommissionCashOuting(member.getCommissionCashOuting().subtract(cashOut.getApplyMoney())); } - memberMapper.updateById(updateMember); + this.memberRepository.save(updateMember); } /** @@ -204,15 +204,15 @@ export class CoreMemberCashOutServiceImplService { if (cashOut.getAccountType() === AccountTypeEnum.COMMISSION.getType()) { updateMember.setCommissionCashOuting(member.getCommissionCashOuting().subtract(cashOut.getApplyMoney())); } - memberMapper.updateById(updateMember); + this.memberRepository.save(updateMember); } /** * cancel */ async cancel(...args: any[]): Promise { - const cashOut: MemberCashOut = memberCashOutMapper.selectOne(new QueryWrapper().eq("id", id).eq("site_id", siteId)); - Assert.notNull(cashOut, "提现记录不存在"); + const cashOut: MemberCashOut = this.memberCashOutRepository.findOne(new ().eq("id", id).eq("site_id", siteId)); + if (!cashOut) throw new BadRequestException("提现记录不存在"); number[] status = new number[]{ MemberCashOutStatusEnum.WAIT_AUDIT.getStatus(), @@ -229,7 +229,7 @@ export class CoreMemberCashOutServiceImplService { } cashOut.setStatus(MemberCashOutStatusEnum.CANCEL.getStatus()); - memberCashOutMapper.updateById(cashOut); + this.memberCashOutRepository.save(cashOut); giveback(cashOut); } @@ -238,8 +238,8 @@ export class CoreMemberCashOutServiceImplService { * checkTransferStatus */ async checkTransferStatus(...args: any[]): Promise { - const cashOut: MemberCashOut = memberCashOutMapper.selectOne(new QueryWrapper().eq("id", id).eq("site_id", siteId)); - Assert.notNull(cashOut, "提现记录不存在"); + const cashOut: MemberCashOut = this.memberCashOutRepository.findOne(new ().eq("id", id).eq("site_id", siteId)); + if (!cashOut) throw new BadRequestException("提现记录不存在"); coreTransferService.check(cashOut.getSiteId(), cashOut.getTransferNo()); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-config-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-config-service-impl.service.ts index 22153240..4a938325 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-config-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-config-service-impl.service.ts @@ -21,14 +21,14 @@ export class CoreMemberConfigServiceImplService { */ async getLoginConfig(...args: any[]): Promise { const config: Record = coreConfigService.getConfigValue(siteId, "LOGIN"); - return JSONUtil.toBean(config, LoginConfigVo.class); + return Object.assign(new LoginConfigVo(), config); } /** * setLoginConfig */ async setLoginConfig(...args: any[]): Promise { - coreConfigService.setConfig(siteId, "LOGIN", JSONUtil.parseObj(configParam)); + coreConfigService.setConfig(siteId, "LOGIN", JSON.parse(configParam)); } /** @@ -36,14 +36,14 @@ export class CoreMemberConfigServiceImplService { */ async getCashOutConfig(...args: any[]): Promise { const config: Record = coreConfigService.getConfigValue(siteId, "member_cash_out"); - return JSONUtil.toBean(config, CashOutConfigVo.class); + return Object.assign(new CashOutConfigVo(), config); } /** * setCashOutConfig */ async setCashOutConfig(...args: any[]): Promise { - coreConfigService.setConfig(siteId, "member_cash_out", JSONUtil.parseObj(configParam)); + coreConfigService.setConfig(siteId, "member_cash_out", JSON.parse(configParam)); } /** @@ -51,14 +51,14 @@ export class CoreMemberConfigServiceImplService { */ async getMemberConfig(...args: any[]): Promise { const config: Record = coreConfigService.getConfigValue(siteId, "MEMBER"); - return JSONUtil.toBean(config, MemberConfigVo.class); + return Object.assign(new MemberConfigVo(), config); } /** * setMemberConfig */ async setMemberConfig(...args: any[]): Promise { - coreConfigService.setConfig(siteId, "MEMBER", JSONUtil.parseObj(configParam)); + coreConfigService.setConfig(siteId, "MEMBER", JSON.parse(configParam)); } /** @@ -84,9 +84,9 @@ export class CoreMemberConfigServiceImplService { const config: Record = coreConfigService.getConfigValue(siteId, "POINT_RULE"); if (config != null) { const grant: Record = config.get("consume") instanceof Record ? config.getJSONObject("grant") : new Record(); - if (grant != null && grant.size() > 0) config.set("grant", coreMemberService.getPointGrantRuleContent(siteId, grant, "admin")); + if (grant != null && grant.length > 0) config.set("grant", coreMemberService.getPointGrantRuleContent(siteId, grant, "admin")); const consume: Record = config.get("consume") instanceof Record ? config.getJSONObject("consume") : new Record(); - if (consume != null && consume.size() > 0) config.set("consume", coreMemberService.getPointConsumeRuleContent(siteId, consume, "admin")); + if (consume != null && consume.length > 0) config.set("consume", coreMemberService.getPointConsumeRuleContent(siteId, consume, "admin")); } return config; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-level-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-level-service-impl.service.ts index 0950b474..c3c623e7 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-level-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-level-service-impl.service.ts @@ -14,40 +14,40 @@ export class CoreMemberLevelServiceImplService { */ async checkLevelUpgrade(...args: any[]): Promise { try { - const member: Member = memberMapper.selectOne(new QueryWrapper().select("member_id,growth,member_level").eq("member_id", memberId).eq("site_id", siteId)); + const member: Member = this.memberRepository.findOne(new ().select("member_id,growth,member_level").eq("member_id", memberId).eq("site_id", siteId)); if (member == null) return; // 查询达到的等级 - const upgradeQuery: QueryWrapper = new QueryWrapper(); + const upgradeQuery: QueryWrapper = new (); upgradeQuery.eq("site_id", siteId); upgradeQuery.le("growth", member.getGrowth()); if (member.getMemberLevel() > 0) { - const memberLevel: MemberLevel = memberLevelMapper.selectOne(new QueryWrapper().select("growth").eq("level_id", member.getMemberLevel())); + const memberLevel: MemberLevel = this.memberLevelRepository.findOne(new ().select("growth").eq("level_id", member.getMemberLevel())); if (memberLevel != null) { upgradeQuery.gt("growth", memberLevel.getGrowth()); } } upgradeQuery.orderByAsc("growth"); - const upgrade: MemberLevel[] = memberLevelMapper.selectList(upgradeQuery); + MemberLevel[] upgrade = this.memberLevelRepository.find(upgradeQuery); - if (ObjectUtil.isNotEmpty(upgrade)) { - const vars: Record = {}; + if (!!upgrade) { + const vars: Record = new HashRecord(); vars.put("from_type", "level_upgrade"); vars.put("memo", "会员升级奖励"); for (const level of upgrade) { - if (ObjectUtil.isNotEmpty(level.getLevelGifts()) && JSONUtil.isJson(level.getLevelGifts())) { - coreMemberService.memberGiftGrant(siteId, memberId, JSONUtil.parseObj(level.getLevelGifts()), vars); + if (!!level.getLevelGifts() && JSONUtil.isJson(level.getLevelGifts())) { + coreMemberService.memberGiftGrant(siteId, memberId, JSON.parse(level.getLevelGifts()), vars); } } - const end: MemberLevel = upgrade.get(upgrade.size() - 1); + const end: MemberLevel = upgrade.get(upgrade.length - 1); member.setMemberLevel(end.getLevelId()); - memberMapper.updateById(member); + this.memberRepository.save(member); } - } catch (e) { + } catch (Exception e) { log.info("会员检测升级异常"); - e.printStackTrace(); + console.error(e); } } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-service-impl.service.ts index f5f96815..90bca500 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/member/impl/core-member-service-impl.service.ts @@ -13,10 +13,10 @@ export class CoreMemberServiceImplService { * getMember */ async getMember(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", siteId); queryWrapper.eq("member_id", memberId); - return memberMapper.selectOne(queryWrapper); + return this.memberRepository.findOne(queryWrapper); } /** @@ -29,7 +29,7 @@ export class CoreMemberServiceImplService { const no: string = (site.getMemberNo() + 1) + ""; const memberNo: string = memberConfig.getPrefix() + (memberConfig.getPrefix().length() > memberConfig.getLength() ? no : StringUtils.leftPad(no, memberConfig.getLength() - memberConfig.getPrefix().length(), "0")); - const member: Member = memberMapper.selectOne(new QueryWrapper() + const member: Member = this.memberRepository.findOne(new () .eq("site_id", siteId).eq("member_no", memberNo).last("limit 1")); if (member == null) { @@ -37,7 +37,7 @@ export class CoreMemberServiceImplService { } site.setMemberNo(number.parseInt(no)); - siteMapper.updateById(site); + this.siteRepository.save(site); return this.createMemberNo(siteId); } @@ -46,8 +46,8 @@ export class CoreMemberServiceImplService { * getMemberCount */ async getMemberCount(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); - if (ObjectUtil.isNotEmpty(memberStatSearchParam.getSiteId())) { + queryWrapper = {}; + if (!!memberStatSearchParam.getSiteId()) { queryWrapper.eq("site_id", memberStatSearchParam.getSiteId()); } if (ObjectUtil.isNotNull(memberStatSearchParam.getCreateTime())) { @@ -77,7 +77,7 @@ export class CoreMemberServiceImplService { queryWrapper.le("last_visit_time", endLastVisitTime); } } - const memberCount: number = memberMapper.selectCount(queryWrapper); + const memberCount: number = this.memberRepository.count(queryWrapper); return memberCount.intValue(); } @@ -92,8 +92,8 @@ export class CoreMemberServiceImplService { for (const key of gifts.keySet()) { try { const config: Record = gifts.getJSONObject(key); - const driver: string = giftEnum.getByPath(key + ".content." + scene + ".driver"); - if (config.getInt("is_use") != null && config.getInt("is_use") > 0 && driver != null && driver.length !== 0) { + const driver: string = (String) giftEnum.getByPath(key + ".content." + scene + ".driver"); + if (config.getInt("is_use") != null && config.getInt("is_use") > 0 && driver != null && driver.length > 0) { Class clazz = ClassLoaderUtil.loadClass(driver); const obj: any = clazz.getDeclaredConstructor().newInstance(); const method: Method = clazz.getMethod("content", number.class, Record.class, String.class); @@ -101,8 +101,8 @@ export class CoreMemberServiceImplService { const content: any = method.invoke(obj, params); gifts.putByPath(key + ".content", content); } - } catch (e) { - e.printStackTrace(); + } catch (Exception e) { + console.error(e); } } @@ -119,8 +119,8 @@ export class CoreMemberServiceImplService { for (const key of benefits.keySet()) { try { const config: Record = benefits.getJSONObject(key); - const driver: string = benefitsEnum.getByPath(key + ".content." + scene + ".driver"); - if (config.getInt("is_use") != null && config.getInt("is_use") > 0 && driver != null && driver.length !== 0) { + const driver: string = (String) benefitsEnum.getByPath(key + ".content." + scene + ".driver"); + if (config.getInt("is_use") != null && config.getInt("is_use") > 0 && driver != null && driver.length > 0) { Class clazz = ClassLoaderUtil.loadClass(driver); const obj: any = clazz.getDeclaredConstructor().newInstance(); const method: Method = clazz.getMethod("content", number.class, Record.class, String.class); @@ -128,8 +128,8 @@ export class CoreMemberServiceImplService { const content: any = method.invoke(obj, params); benefits.putByPath(key + ".content", content); } - } catch (e) { - e.printStackTrace(); + } catch (Exception e) { + console.error(e); } } @@ -145,8 +145,8 @@ export class CoreMemberServiceImplService { for (const key of rules.keySet()) { try { const config: Record = rules.getJSONObject(key); - const driver: string = growthRuleEnum.getByPath(key + ".content." + scene + ".driver"); - if (config.getInt("is_use") != null && config.getInt("is_use") > 0 && driver != null && driver.length !== 0) { + const driver: string = (String) growthRuleEnum.getByPath(key + ".content." + scene + ".driver"); + if (config.getInt("is_use") != null && config.getInt("is_use") > 0 && driver != null && driver.length > 0) { Class clazz = ClassLoaderUtil.loadClass(driver); const obj: any = clazz.getDeclaredConstructor().newInstance(); const method: Method = clazz.getMethod("content", number.class, Record.class, String.class); @@ -154,8 +154,8 @@ export class CoreMemberServiceImplService { const content: any = method.invoke(obj, params); rules.putByPath(key + ".content", content); } - } catch (e) { - e.printStackTrace(); + } catch (Exception e) { + console.error(e); } } @@ -171,8 +171,8 @@ export class CoreMemberServiceImplService { for (const key of rules.keySet()) { try { const config: Record = rules.getJSONObject(key); - const driver: string = pointRuleEnum.getByPath(key + ".content." + scene + ".driver"); - if (config.getInt("is_use") != null && config.getInt("is_use") > 0 && driver != null && driver.length !== 0) { + const driver: string = (String) pointRuleEnum.getByPath(key + ".content." + scene + ".driver"); + if (config.getInt("is_use") != null && config.getInt("is_use") > 0 && driver != null && driver.length > 0) { Class clazz = ClassLoaderUtil.loadClass(driver); const obj: any = clazz.getDeclaredConstructor().newInstance(); const method: Method = clazz.getMethod("content", number.class, Record.class, String.class); @@ -180,8 +180,8 @@ export class CoreMemberServiceImplService { const content: any = method.invoke(obj, params); rules.putByPath(key + ".content", content); } - } catch (e) { - e.printStackTrace(); + } catch (Exception e) { + console.error(e); } } @@ -197,8 +197,8 @@ export class CoreMemberServiceImplService { for (const key of rules.keySet()) { try { const config: Record = rules.getJSONObject(key); - const driver: string = pointRuleEnum.getByPath(key + ".content." + scene + ".driver"); - if (config.getInt("is_use") != null && config.getInt("is_use") > 0 && driver != null && driver.length !== 0) { + const driver: string = (String) pointRuleEnum.getByPath(key + ".content." + scene + ".driver"); + if (config.getInt("is_use") != null && config.getInt("is_use") > 0 && driver != null && driver.length > 0) { Class clazz = ClassLoaderUtil.loadClass(driver); const obj: any = clazz.getDeclaredConstructor().newInstance(); const method: Method = clazz.getMethod("content", number.class, Record.class, String.class); @@ -206,8 +206,8 @@ export class CoreMemberServiceImplService { const content: any = method.invoke(obj, params); rules.putByPath(key + ".content", content); } - } catch (e) { - e.printStackTrace(); + } catch (Exception e) { + console.error(e); } } @@ -222,7 +222,7 @@ export class CoreMemberServiceImplService { if (ruleConfig == null) return; const config: Record = ruleConfig.getJSONObject(key); - if (config == null || config.getInt("is_use", 0) === 0) return; + if (config == null || config.getInt("is_use", 0).equals(0)) return; const rule: Record = GrowthRuleEnum.getType().getJSONObject(key); if (rule == null) return; @@ -237,13 +237,13 @@ export class CoreMemberServiceImplService { Object[] params = {siteId, key, config, data}; const growth: any = method.invoke(obj, params); - if (growth instanceof number && growth > 0) { + if (growth instanceof number && (number) growth > 0) { const accountData: number = number.parseDouble(growth.toString()); - coreMemberAccountService.addLog(siteId, memberId, AccountTypeEnum.GROWTH.getType(), accountData, String.valueOf(ObjectUtil.defaultIfNull(data.get("from_type"), "")), String.valueOf(ObjectUtil.defaultIfNull(data.get("memo"), "")), String.valueOf(ObjectUtil.defaultIfNull(data.get("related_id"), ""))); + coreMemberAccountService.addLog(siteId, memberId, AccountTypeEnum.GROWTH.getType(), accountData, String(ObjectUtil.defaultIfNull(data.get("from_type"), "")), String(ObjectUtil.defaultIfNull(data.get("memo"), "")), String(ObjectUtil.defaultIfNull(data.get("related_id"), ""))); } - } catch (e) { + } catch (Exception e) { console.log("成长值发放异常"); - e.printStackTrace(); + console.error(e); } } @@ -255,7 +255,7 @@ export class CoreMemberServiceImplService { if (ruleConfig == null) return; const config: Record = ruleConfig.getJSONObject(key); - if (config == null || config.getInt("is_use", 0) === 0) return; + if (config == null || config.getInt("is_use", 0).equals(0)) return; const rule: Record = PointRuleEnum.getType().getJSONObject("grant"); if (rule == null) return; @@ -270,13 +270,13 @@ export class CoreMemberServiceImplService { Object[] params = {siteId, key, config, data}; const growth: any = method.invoke(obj, params); - if (growth instanceof number && growth > 0) { + if (growth instanceof number && (number) growth > 0) { const accountData: number = number.parseDouble(growth.toString()); - coreMemberAccountService.addLog(siteId, memberId, AccountTypeEnum.POINT.getType(), accountData, String.valueOf(ObjectUtil.defaultIfNull(data.get("from_type"), "")), String.valueOf(ObjectUtil.defaultIfNull(data.get("memo"), "")), String.valueOf(ObjectUtil.defaultIfNull(data.get("related_id"), ""))); + coreMemberAccountService.addLog(siteId, memberId, AccountTypeEnum.POINT.getType(), accountData, String(ObjectUtil.defaultIfNull(data.get("from_type"), "")), String(ObjectUtil.defaultIfNull(data.get("memo"), "")), String(ObjectUtil.defaultIfNull(data.get("related_id"), ""))); } - } catch (e) { + } catch (Exception e) { console.log("积分发放异常"); - e.printStackTrace(); + console.error(e); } } @@ -291,8 +291,8 @@ export class CoreMemberServiceImplService { try { for (const key of gifts.keySet()) { const config: Record = gifts.getJSONObject(key); - const driver: string = giftEnum.getByPath(key + ".grant.driver"); - if (config.getInt("is_use") != null && config.getInt("is_use") > 0 && driver != null && driver.length !== 0) { + const driver: string = (String) giftEnum.getByPath(key + ".grant.driver"); + if (config.getInt("is_use") != null && config.getInt("is_use") > 0 && driver != null && driver.length > 0) { Class clazz = ClassLoaderUtil.loadClass(driver); const obj: any = clazz.getDeclaredConstructor().newInstance(); const method: Method = clazz.getMethod("grant", number.class, number.class, Record.class, Map.class); @@ -300,8 +300,8 @@ export class CoreMemberServiceImplService { method.invoke(obj, params); } } - } catch (e) { - e.printStackTrace(); + } catch (Exception e) { + console.error(e); console.log("会员礼包发放失败"); } } @@ -310,7 +310,7 @@ export class CoreMemberServiceImplService { * getInfoByMemberId */ async getInfoByMemberId(...args: any[]): Promise { - const member: Member = memberMapper.selectOne(new QueryWrapper().eq("site_id", siteId).eq("member_id", memberId)); + const member: Member = this.memberRepository.findOne(new ().eq("site_id", siteId).eq("member_id", memberId)); return member; } @@ -320,8 +320,8 @@ export class CoreMemberServiceImplService { async getMemberInfo(...args: any[]): Promise { const member: Member = memberMapper.selectById(memberId); const result: MemberInfoDto = new MemberInfoDto(); - BeanUtils.copyProperties(member, result); - if((member.getHeadimg( && member.getHeadimg(.trim() !== ''))){ + Object.assign(result, member); + if(StringUtils.isNotEmpty(member.getHeadimg())){ result.setHeadimgSmall(CommonUtils.thumbImageSmall(member.getSiteId(), member.getHeadimg())); result.setHeadimgMiddle(CommonUtils.thumbImageMiddle(member.getSiteId(), member.getHeadimg())); result.setHeadimgBig(CommonUtils.thumbImageBig(member.getSiteId(), member.getHeadimg())); @@ -331,7 +331,7 @@ export class CoreMemberServiceImplService { try { label = memberLabelService.info(memberId); level = memberLevelService.info(memberId); - } catch (e) { + } catch (Exception e) { log.error("获取会员标签或会员等级失败:{}", e.message); } finally { result.setLabelInfo(label); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/notice/impl/core-notice-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/notice/impl/core-notice-service-impl.service.ts index 0803dc67..8ee1450c 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/notice/impl/core-notice-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/notice/impl/core-notice-service-impl.service.ts @@ -23,7 +23,7 @@ export class CoreNoticeServiceImplService { const queryWrapper: QueryWrapper = new QueryWrapper(); queryWrapper.eq("site_id", siteId); queryWrapper.eq("`key`", key); - const sysNotice: SysNotice = sysNoticeMapper.selectOne(queryWrapper); + const sysNotice: SysNotice = this.sysNoticeRepository.findOne(queryWrapper); return sysNotice; } @@ -31,14 +31,14 @@ export class CoreNoticeServiceImplService { * getAddonList */ async getAddonList(...args: any[]): Promise { - const list: SysNotice[] = sysNoticeMapper.selectList(new QueryWrapper().eq("site_id", siteId)); - const map: Record = {}; + SysNotice[] list = this.sysNoticeRepository.find(new ().eq("site_id", siteId)); + const map: Record = new HashRecord<>(); if (ObjectUtil.isNotNull(list)) { for (const item of list) { map.put(item.getKey(), item); } } - const notice: Record = {}; + const notice: Record = new HashRecord<>(); for (Map.Entry noticeMap : NoticeEnum.getNotice().entrySet()) { const vo: NoticeInfoVo = new NoticeInfoVo(); @@ -48,7 +48,7 @@ export class CoreNoticeServiceImplService { } //针对短信,微信公众号,小程序配置 - if (ObjectUtil.isNotEmpty(noticeMap.getValue().getSupport_type_map())) { + if (!!noticeMap.getValue(.getSupport_type_map())) { for (Map.Entry> supportTypeMap : noticeMap.getValue().getSupport_type_map().entrySet()) { if (supportTypeMap.getKey() === "sms") { vo.setSms(supportTypeMap.getValue()); @@ -65,12 +65,12 @@ export class CoreNoticeServiceImplService { notice.put(noticeMap.getKey(), vo); } - const addonList: Addon[] = coreSiteService.getSiteAddons(siteId); + Addon[] addonList = coreSiteService.getSiteAddons(siteId); const adminAddon: Addon = new Addon(); adminAddon.setKey("system"); adminAddon.setTitle("系统"); - addonList.add(0, adminAddon); - const noticeAddonList: AddonNoticeListVo[] = []; + addonList.push(0, adminAddon); + AddonNoticeListVo[] noticeAddonList = []; for (const addon of addonList) { const noticeListVo: AddonNoticeListVo = new AddonNoticeListVo(); noticeListVo.setKey(addon.getKey()); @@ -81,7 +81,7 @@ export class CoreNoticeServiceImplService { noticeListVo.getNotice().add(noticeMap.getValue()); } } - noticeAddonList.add(noticeListVo); + noticeAddonList.push(noticeListVo); } return noticeAddonList; } @@ -100,7 +100,7 @@ export class CoreNoticeServiceImplService { ReflectCallField.setForInstance(vo, type, notice.getSupport_type_map().get(type)); } - const model: SysNotice = sysNoticeMapper.selectOne(new QueryWrapper().eq("site_id", siteId).eq("`key`", key)); + const model: SysNotice = this.sysNoticeRepository.findOne(new ().eq("site_id", siteId).eq("`key`", key)); if (model != null) { BeanUtil.copyProperties(model, vo); } @@ -112,20 +112,20 @@ export class CoreNoticeServiceImplService { * edit */ async edit(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper(); + const queryWrapper: QueryWrapper = new (); queryWrapper.eq("`key`", key); queryWrapper.eq("site_id", siteId); - const model: SysNotice = sysNoticeMapper.selectOne(queryWrapper); - if (ObjectUtil.isNotEmpty(model)) { - const sysNotice: SysNotice = JSONUtil.toBean(data, SysNotice.class); + const model: SysNotice = this.sysNoticeRepository.findOne(queryWrapper); + if (!!model) { + const sysNotice: SysNotice = Object.assign(new SysNotice(), data); sysNoticeMapper.update(sysNotice, queryWrapper); } else { - const sysNotice: SysNotice = JSONUtil.toBean(data, SysNotice.class); + const sysNotice: SysNotice = Object.assign(new SysNotice(), data); sysNotice.setSiteId(siteId); const noticeEnum: NoticeEnumListVo = NoticeEnum.getNotice().get(key); BeanUtil.copyProperties(noticeEnum, sysNotice); - sysNoticeMapper.insert(sysNotice); + this.sysNoticeRepository.save(sysNotice); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/notice/impl/core-notice-sms-log-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/notice/impl/core-notice-sms-log-service-impl.service.ts index 5bdef685..4fe3966a 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/notice/impl/core-notice-sms-log-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/notice/impl/core-notice-sms-log-service-impl.service.ts @@ -16,19 +16,19 @@ export class CoreNoticeSmsLogServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("id"); - const iPage: IPage = sysNoticeSmsLogMapper.selectPage(new Page<>(page, limit), queryWrapper); - return PageResult.build(page, limit, iPage.getTotal()).setData(iPage.getRecords()); + iPage = this.sysNoticeSmsLogRepository.findAndCount({ /* pagination */ }, queryWrapper); + return PageResult.build(page, limit, total).setData(records); } /** * info */ async info(...args: any[]): Promise { - const model: SysNoticeSmsLog = sysNoticeSmsLogMapper.selectOne( - new QueryWrapper() + const model: SysNoticeSmsLog = this.sysNoticeSmsLogRepository.findOne( + new () .eq("id", id)); return model; } @@ -37,20 +37,20 @@ export class CoreNoticeSmsLogServiceImplService { * add */ async add(...args: any[]): Promise { - sysNoticeSmsLogMapper.insert(addParam); + this.sysNoticeSmsLogRepository.save(addParam); } /** * edit */ async edit(...args: any[]): Promise { - sysNoticeSmsLogMapper.updateById(editParam); + this.sysNoticeSmsLogRepository.save(editParam); } /** * del */ async del(...args: any[]): Promise { - sysNoticeSmsLogMapper.deleteById(id); + this.sysNoticeSmsLogRepository.delete(id); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-pay-channel-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-pay-channel-service-impl.service.ts index fe1dfced..944a3a89 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-pay-channel-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-pay-channel-service-impl.service.ts @@ -20,22 +20,22 @@ export class CorePayChannelServiceImplService { * find */ async find(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper(); + queryWrapper = new QueryWrapper(); queryWrapper.select("config"); queryWrapper.eq("site_id", siteId); queryWrapper.eq("type", type); queryWrapper.eq("channel", channel); queryWrapper.eq("status", 1); - return payChannelMapper.selectOne(queryWrapper); + return this.payChannelRepository.findOne(queryWrapper); } /** * getAllowPayTypeByChannel */ async getAllowPayTypeByChannel(...args: any[]): Promise { - const list: PayTypeVo[] = []; + PayTypeVo[] list = []; - const payChannelList: PayChannel[] = payChannelMapper.selectList(new QueryWrapper() + PayChannel[] payChannelList = this.payChannelRepository.find(new () .select("site_id, type, config") .eq("site_id", siteId) .eq("status", 1) @@ -46,7 +46,7 @@ export class CorePayChannelServiceImplService { const type: PayTypeVo = corePayService.driver(siteId, channel, item.getType()).filterPayTypeByTradeType(tradeType); if (type != null) { type.setConfig(item.getConfig()); - list.add(type); + list.push(type); } } @@ -57,7 +57,7 @@ export class CorePayChannelServiceImplService { * getConfigByChannelAndType */ async getConfigByChannelAndType(...args: any[]): Promise { - const payChannel: PayChannel = payChannelMapper.selectOne(new QueryWrapper() + const payChannel: PayChannel = this.payChannelRepository.findOne(new () .select("config") .eq("site_id", siteId) .eq("channel", channel) @@ -66,7 +66,7 @@ export class CorePayChannelServiceImplService { if (payChannel == null || payChannel.getConfig().isEmpty()) return null; - const config: Record = JSONUtil.parseObj(payChannel.getConfig()); + const config: Record = JSON.parse(payChannel.getConfig()); if (type === "wechatpay") { const wechatConfig: WechatConfigVo = coreWechatConfigService.getWechatConfig(siteId); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-pay-event-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-pay-event-service-impl.service.ts index 43e15059..5b70a94f 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-pay-event-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-pay-event-service-impl.service.ts @@ -1,4 +1,4 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { QueueService, EventBus, Result } from '@wwjBoot'; @@ -16,32 +16,32 @@ export class CorePayEventServiceImplService { const page: number = pageParam.getPage(); const limit: number = pageParam.getLimit(); - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.orderByDesc("id"); - const iPage: IPage = payRefundMapper.selectPage(new Page<>(page, limit), queryWrapper); - const list: PayRefundListVo[] = []; - for (const item of iPage.getRecords()) { + iPage = this.payRefundRepository.findAndCount({ /* pagination */ }, queryWrapper); + PayRefundListVo[] list = []; + for (const item of records) { const vo: PayRefundListVo = new PayRefundListVo(); - BeanUtils.copyProperties(item, vo); - list.add(vo); + Object.assign(vo, item); + list.push(vo); } - return PageResult.build(page, limit, iPage.getTotal()).setData(list); + return PageResult.build(page, limit, total).setData(list); } /** * info */ async info(...args: any[]): Promise { - const model: PayRefund = payRefundMapper.selectOne( - new QueryWrapper() + const model: PayRefund = this.payRefundRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在"); + if (!model) throw new BadRequestException("数据不存在"); const vo: PayRefundInfoVo = new PayRefundInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -58,7 +58,7 @@ export class CorePayEventServiceImplService { model.setMoney(addParam.getMoney()); model.setReason(addParam.getReason()); model.setStatus(addParam.getStatus()); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setRefundTime(addParam.getRefundTime()); model.setCloseTime(addParam.getCloseTime()); model.setFailReason(addParam.getFailReason()); @@ -69,19 +69,19 @@ export class CorePayEventServiceImplService { model.setMainType(addParam.getMainType()); model.setMainId(addParam.getMainId()); model.setPayRefundNo(addParam.getPayRefundNo()); - payRefundMapper.insert(model); + this.payRefundRepository.save(model); } /** * edit */ async edit(...args: any[]): Promise { - const model: PayRefund = payRefundMapper.selectOne( - new QueryWrapper() + const model: PayRefund = this.payRefundRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); model.setId(id); model.setSiteId(editParam.getSiteId()); model.setRefundNo(editParam.getRefundNo()); @@ -101,20 +101,20 @@ export class CorePayEventServiceImplService { model.setMainType(editParam.getMainType()); model.setMainId(editParam.getMainId()); model.setPayRefundNo(editParam.getPayRefundNo()); - payRefundMapper.updateById(model); + this.payRefundRepository.save(model); } /** * del */ async del(...args: any[]): Promise { - const model: PayRefund = payRefundMapper.selectOne( - new QueryWrapper() + const model: PayRefund = this.payRefundRepository.findOne( + new () .eq("id", id) .last("limit 1")); - Assert.notNull(model, "数据不存在!"); + if (!model) throw new BadRequestException("数据不存在!"); - payRefundMapper.delete(new QueryWrapper().eq("id", id)); + this.payRefundRepository.delete(new ().eq("id", id)); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-pay-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-pay-service-impl.service.ts index d5ee08a2..51997709 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-pay-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-pay-service-impl.service.ts @@ -22,10 +22,10 @@ export class CorePayServiceImplService { const driver: BasePay = this.driver(param.getSiteId(), param.getChannel(), param.getType()); - const json: Record = {}; + const json: Record = {}; json.put("openid", param.getOpenid()); - pay.setJson(JSONUtil.toJsonStr(json)); - this.payMapper.updateById(pay); + pay.setJson(JSON.stringify(json)); + this.this.payRepository.save(pay); return driver.pay(param); } @@ -66,7 +66,7 @@ export class CorePayServiceImplService { baseUrl = RequestUtils.getDomain(true); cached.put("payBaseurl", baseUrl); } else if (cached.get("payBaseurl") != null) { - baseUrl = cached.get("payBaseurl"); + baseUrl = (String) cached.get("payBaseurl"); } else { throw new BadRequestException("build notify url error"); } @@ -112,15 +112,15 @@ export class CorePayServiceImplService { const vo: GetInfoByTradeVo = new GetInfoByTradeVo(); BeanUtil.copyProperties(pay, vo); - const payTypeList: PayTypeVo[] = corePayChannelService.getAllowPayTypeByChannel(siteId, channel, tradeType); + PayTypeVo[] payTypeList = corePayChannelService.getAllowPayTypeByChannel(siteId, channel, tradeType); vo.setPayTypeList(payTypeList); - if (ObjectUtil.isNotEmpty(payTypeList) && ObjectUtil === scene, "friendspay") { - payTypeList.stream() + if (!!payTypeList && ObjectUtil === scene, "friendspay") { + payTypeList .filter(pt => pt.getKey() === "friendspay") .findFirst() - .ifPresent(payTypeVo => vo.setConfig(JSONUtil.parseObj(payTypeVo.getConfig()))); - vo.setPayTypeList(payTypeList.stream().filter(pt => pt.getKey() !== "friendspay").toList()); + .ifPresent(payTypeVo => vo.setConfig(JSON.parse(payTypeVo.getConfig()))); + vo.setPayTypeList(payTypeList.filter(pt => pt.getKey() !== "friendspay").toList()); } return vo; @@ -130,7 +130,7 @@ export class CorePayServiceImplService { * findPayInfoByTrade */ async findPayInfoByTrade(...args: any[]): Promise { - return payMapper.selectOne(new QueryWrapper() + return this.payRepository.findOne(new () .eq("site_id", siteId) .eq("trade_type", tradeType) .eq("trade_id", tradeId) @@ -142,7 +142,7 @@ export class CorePayServiceImplService { * findPayInfoByOutTradeNo */ async findPayInfoByOutTradeNo(...args: any[]): Promise { - return payMapper.selectOne(new QueryWrapper() + return this.payRepository.findOne(new () .eq("site_id", siteId) .eq("out_trade_no", outTradeNo) ); @@ -158,9 +158,9 @@ export class CorePayServiceImplService { event.setName("PayCreateEvent"); event.setTradeType(tradeType); event.setTradeId(tradeId); - const eventData: PayCreateEventDefiner.PayCreateEventResult[] = EventAndSubscribeOfPublisher.publishAndCallback(event); + PayCreateEventDefiner.PayCreateEventResult[] eventData = EventAndSubscribeOfPublisher.publishAndCallback(event); - if (eventData.size() == 0) throw new BadRequestException("无效的交易类型"); + if (eventData.length == 0) throw new BadRequestException("无效的交易类型"); PayCreateEventDefiner.const data: PayCreateEventResult = eventData.get(0); const model: Pay = new Pay(); @@ -169,9 +169,9 @@ export class CorePayServiceImplService { model.setTradeType(tradeType); model.setTradeId(tradeId); model.setOutTradeNo(createOutTradeNo()); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setChannel(RequestUtils.channel()); - payMapper.insert(model); + this.payRepository.save(model); return this.findPayInfoByOutTradeNo(siteId, model.getOutTradeNo()); } @@ -182,9 +182,9 @@ export class CorePayServiceImplService { async paySuccess(...args: any[]): Promise { BeanUtil.copyProperties(param, pay); pay.setStatus(PayStatusEnum.STATUS_FINISH.getCode()); - pay.setPayTime(System.currentTimeMillis() / 1000); + pay.setPayTime(Math.floor(Date.now() / 1000)); - payMapper.updateById(pay); + this.payRepository.save(pay); const event: PaySuccessEvent = new PaySuccessEvent(); event.setSiteId(param.getSiteId()); @@ -210,8 +210,8 @@ export class CorePayServiceImplService { */ async payClose(...args: any[]): Promise { pay.setStatus(PayStatusEnum.STATUS_CANCLE.getCode()); - pay.setCancelTime(System.currentTimeMillis() / 1000); - payMapper.updateById(pay); + pay.setCancelTime(Math.floor(Date.now() / 1000)); + this.payRepository.save(pay); const event: PayCloseEvent = new PayCloseEvent(); event.setSiteId(siteId); @@ -278,7 +278,7 @@ export class CorePayServiceImplService { pay.setMainType(mainType); // 保存到数据库 - payMapper.insert(pay); + this.payRepository.save(pay); return pay; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-refund-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-refund-service-impl.service.ts index 32ccedd6..a98f9df0 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-refund-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-refund-service-impl.service.ts @@ -13,7 +13,7 @@ export class CoreRefundServiceImplService { * create */ async create(...args: any[]): Promise { - const pay: Pay = payMapper.selectOne(new QueryWrapper().eq("site_id", param.getSiteId()).eq("out_trade_no", param.getOutTradeNo())); + const pay: Pay = this.payRepository.findOne(new ().eq("site_id", param.getSiteId()).eq("out_trade_no", param.getOutTradeNo())); if (pay == null) throw new BadRequestException("无效的支付交易号"); if (param.getMoney().compareTo(new BigDecimal(0)) <= 0) throw new BadRequestException("退款金额需大于0元"); @@ -28,9 +28,9 @@ export class CoreRefundServiceImplService { model.setTradeType(param.getTradeType()); model.setTradeId(param.getTradeId()); model.setStatus(RefundStatusEnum.WAIT.getStatus()); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); - payRefundMapper.insert(model); + this.payRefundRepository.save(model); return model.getRefundNo(); } @@ -41,7 +41,7 @@ export class CoreRefundServiceImplService { const refund: PayRefund = this.findPayInfoByOutTradeNo(param.getSiteId(), param.getRefundNo()); if (refund == null) throw new BadRequestException("无效的退款单据"); - const pay: Pay = payMapper.selectOne(new QueryWrapper().eq("site_id", refund.getSiteId()).eq("out_trade_no", refund.getOutTradeNo())); + const pay: Pay = this.payRepository.findOne(new ().eq("site_id", refund.getSiteId()).eq("out_trade_no", refund.getOutTradeNo())); if (pay == null) throw new BadRequestException("无效的支付交易号"); if (param.getRefundType() === RefundTypeEnum.BACK.getKey()) { @@ -55,7 +55,7 @@ export class CoreRefundServiceImplService { corePayService.driver(param.getSiteId(), refund.getChannel(), refund.getType()).refund(refundParam); } else if (param.getRefundType() === RefundTypeEnum.OFFLINE.getKey()) { refund.setVoucher(param.getVoucher()); - this.payRefundMapper.updateById(refund); + this.this.payRefundRepository.save(refund); const notifyParam: RefundNotifyParam = new RefundNotifyParam(); notifyParam.setRefundNo(param.getRefundNo()); notifyParam.setSiteId(param.getSiteId()); @@ -70,7 +70,7 @@ export class CoreRefundServiceImplService { * findPayInfoByOutTradeNo */ async findPayInfoByOutTradeNo(...args: any[]): Promise { - return payRefundMapper.selectOne(new QueryWrapper() + return this.payRefundRepository.findOne(new () .eq("site_id", siteId) .eq("refund_no", refundNo) ); @@ -103,8 +103,8 @@ export class CoreRefundServiceImplService { */ async refundSuccess(...args: any[]): Promise { refund.setStatus(RefundStatusEnum.SUCCESS.getStatus()); - refund.setRefundTime(System.currentTimeMillis() / 1000); - payRefundMapper.updateById(refund); + refund.setRefundTime(Math.floor(Date.now() / 1000)); + this.payRefundRepository.save(refund); const event: RefundSuccessEvent = new RefundSuccessEvent(); event.setSiteId(siteId); @@ -121,7 +121,7 @@ export class CoreRefundServiceImplService { */ async refundFail(...args: any[]): Promise { refund.setStatus(RefundStatusEnum.FAIL.getStatus()); - payRefundMapper.updateById(refund); + this.payRefundRepository.save(refund); const event: RefundFailEvent = new RefundFailEvent(); event.setSiteId(siteId); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-transfer-scene-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-transfer-scene-service-impl.service.ts index dabe6370..4735e6ae 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-transfer-scene-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-transfer-scene-service-impl.service.ts @@ -30,7 +30,7 @@ export class CoreTransferSceneServiceImplService { * setTradeScene */ async setTradeScene(...args: any[]): Promise { - const tradeScene: PayTransferScene = payTransferSceneMapper.selectOne(new QueryWrapper().eq("site_id", siteId).eq("type", type)); + const tradeScene: PayTransferScene = this.payTransferSceneRepository.findOne(new ().eq("site_id", siteId).eq("type", type)); const model: PayTransferScene = new PayTransferScene(); model.setSiteId(siteId); @@ -40,11 +40,11 @@ export class CoreTransferSceneServiceImplService { model.setInfos(param.getInfos().toString()); if (tradeScene == null) { - model.setCreateTime(System.currentTimeMillis() / 1000); - payTransferSceneMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.payTransferSceneRepository.save(model); } else { model.setId(tradeScene.getId()); - payTransferSceneMapper.updateById(model); + this.payTransferSceneRepository.save(model); } } @@ -52,12 +52,12 @@ export class CoreTransferSceneServiceImplService { * getSceneInfoByType */ async getSceneInfoByType(...args: any[]): Promise { - const tradeScene: PayTransferScene = payTransferSceneMapper.selectOne(new QueryWrapper().eq("site_id", siteId).eq("type", type)); + const tradeScene: PayTransferScene = this.payTransferSceneRepository.findOne(new ().eq("site_id", siteId).eq("type", type)); const vo: TransferSceneInfo = new TransferSceneInfo(); if (tradeScene == null) { const transferScene: Record = JsonModuleLoader.build().mergeResultElement(RequestUtils.siteId(), "pay/wechat_transfer_scene.json"); - vo = JSONUtil.toBean(transferScene.getJSONObject(type), TransferSceneInfo.class); + vo = Object.assign(new TransferSceneInfo(), transferScene.getJSONObject(type)); } else { BeanUtil.copyProperties(tradeScene, vo); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-transfer-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-transfer-service-impl.service.ts index da73a1e5..25be55df 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-transfer-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/pay/impl/core-transfer-service-impl.service.ts @@ -15,8 +15,8 @@ export class CoreTransferServiceImplService { async create(...args: any[]): Promise { model.setTransferNo(createTransferNo()); model.setTransferStatus(TransferStatusEnum.WAIT.getStatus()); - model.setCreateTime(System.currentTimeMillis() / 1000); - payTransferMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.payTransferRepository.save(model); return model.getTransferNo(); } @@ -24,7 +24,7 @@ export class CoreTransferServiceImplService { * findTransferByTransferNo */ async findTransferByTransferNo(...args: any[]): Promise { - return payTransferMapper.selectOne(new QueryWrapper() + return this.payTransferRepository.findOne(new () .eq("site_id", siteId) .eq("transfer_no", transferNo)); } @@ -40,21 +40,21 @@ export class CoreTransferServiceImplService { } transfer.setTransferType(transferType); - transfer.setTransferRemark(data.getOrDefault("transfer_remark", "")); - transfer.setTransferVoucher(data.getOrDefault("transfer_voucher", "")); - transfer.setTransferRealname(data.getOrDefault("transfer_realname", "")); - transfer.setTransferBank(data.getOrDefault("transfer_bank", "")); - transfer.setTransferMobile(data.getOrDefault("transfer_mobile", "")); - transfer.setTransferAccount(data.getOrDefault("transfer_account", "")); - transfer.setOpenid(data.getOrDefault("openid", "")); - transfer.setTransferPayee(data.getOrDefault("transfer_payee", "")); - transfer.setTransferPaymentCode(data.getOrDefault("transfer_payment_code", "")); - payTransferMapper.updateById(transfer); + transfer.setTransferRemark((String) data.getOrDefault("transfer_remark", "")); + transfer.setTransferVoucher((String) data.getOrDefault("transfer_voucher", "")); + transfer.setTransferRealname((String) data.getOrDefault("transfer_realname", "")); + transfer.setTransferBank((String) data.getOrDefault("transfer_bank", "")); + transfer.setTransferMobile((String) data.getOrDefault("transfer_mobile", "")); + transfer.setTransferAccount((String) data.getOrDefault("transfer_account", "")); + transfer.setOpenid((String) data.getOrDefault("openid", "")); + transfer.setTransferPayee((String) data.getOrDefault("transfer_payee", "")); + transfer.setTransferPaymentCode((String) data.getOrDefault("transfer_payment_code", "")); + this.payTransferRepository.save(transfer); const transferTypeEnum: Record = TransferTypeEnum.getMap().get(transferType); if (transferTypeEnum == null) throw new BadRequestException("不支持的转账方式"); - if ((Boolean) transferTypeEnum.get("is_online")) { + if ((boolean) transferTypeEnum.get("is_online")) { const param: TransferParam = new TransferParam(); param.setTransfer(transfer); param.setNotifyUrl(corePayService.buildNotifyUrl(siteId, "transfer", transferType, "transfer")); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/poster/impl/core-poster-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/poster/impl/core-poster-service-impl.service.ts index 9f4b4e2c..18ac5735 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/poster/impl/core-poster-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/poster/impl/core-poster-service-impl.service.ts @@ -1,13 +1,12 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as fs from 'fs'; @Injectable() export class CorePosterServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -15,28 +14,28 @@ export class CorePosterServiceImplService { * get */ async get(...args: any[]): Promise { - const query: QueryWrapper = new QueryWrapper<>(); + const query: QueryWrapper = {}; query.eq("site_id", param.getSiteId()); query.eq("type", param.getType()); query.eq("status", 1); query.last("limit 1"); - if (ObjectUtil.isNotEmpty(param.getId()) && param.getId() > 0) { + if (!!param.getId() && param.getId() > 0) { query.eq("id", param.getId()); } else { query.eq("is_default", 1); } - const model: SysPoster = sysPosterMapper.selectOne(query); + const model: SysPoster = this.sysPosterRepository.findOne(query); try { // 海报模板 const poster: Record = new Record(); if (model == null) { const template: JSONArray = template("", param.getType()); - if (template.size() > 0) { + if (template.length > 0) { poster = template.getJSONObject(0).getJSONObject("data"); } } else { - poster = JSONUtil.parseObj(model.getValue()); + poster = JSON.parse(model.getValue()); } // 获取海报数据 @@ -47,24 +46,24 @@ export class CorePosterServiceImplService { event.setType(param.getType()); event.setParam(param.getParam()); event.setChannel(param.getChannel()); - const eventData: GetPosterDataEventDefiner.GetPosterDataResult[] = EventAndSubscribeOfPublisher.publishAndCallback(event); - if (eventData.size() == 0) throw new BadRequestException("未获取到海报数据"); + GetPosterDataEventDefiner.GetPosterDataResult[] eventData = EventAndSubscribeOfPublisher.publishAndCallback(event); + if (eventData.length == 0) throw new BadRequestException("未获取到海报数据"); GetPosterDataEventDefiner.const posterData: GetPosterDataResult = eventData.get(0); const dir: string = "upload/poster/" + param.getSiteId() + "/"; - const posterName: string = "poster_" + SecureUtil.md5(poster.toString()) + "_" + SecureUtil.md5(JSONUtil.parseObj(posterData).toString()) + "_" + param.getChannel() + ".png"; + const posterName: string = "poster_" + SecureUtil.md5(poster.toString()) + "_" + SecureUtil.md5(JSON.parse(posterData).toString()) + "_" + param.getChannel() + ".png"; - if (fs.existsSync(this.config.get('webRootDownResource', dir + posterName))) { + if (this.appConfig.webRootDownResource, dir + fs.existsSync(posterName)) { return dir + posterName; } // 绘制海报 create(param.getSiteId(), poster, posterData.getData(), dir, posterName); return dir + posterName; - } catch (e) { + } catch (Exception e) { console.log("海报生成错误"); - e.printStackTrace(); + console.error(e); if (param.getIsThrowException()) throw new BadRequestException(e.message); return ""; } @@ -75,21 +74,21 @@ export class CorePosterServiceImplService { */ async template(...args: any[]): Promise { const template: final JSONArray = new JSONArray(); - if (ObjectUtil.isNotEmpty(addon)) { + if (!!addon) { const coreTemplate: JSONArray = JsonModuleLoader.build().findResultSet("code", "poster/template.json"); - coreTemplate.stream().forEach(e => template.add(e)); + coreTemplate.forEach(e => template.push(e)); const addonTemplate: JSONArray = JsonModuleLoader.build().findResultSet(addon, "poster/template.json"); - addonTemplate.stream().forEach(e => template.add(e)); + addonTemplate.forEach(e => template.push(e)); } else { const all: JSONArray = JsonModuleLoader.build().mergeResultSet("poster/template.json"); - all.stream().forEach(e => template.add(e)); + all.forEach(e => template.push(e)); } - if (ObjectUtil.isNotEmpty(type) && template.size() > 0) { + if (!!type && template.length > 0) { return CollUtil.filter(template, i => { const item: Record = (Record) i; - return item.getStr("type", "") === type; + return item.getStr("type", "").equals(type); }); } @@ -101,22 +100,22 @@ export class CorePosterServiceImplService { */ async add(...args: any[]): Promise { const sysPoster: SysPoster = new SysPoster(); - BeanUtils.copyProperties(param, sysPoster); - sysPosterMapper.insert(sysPoster); + Object.assign(sysPoster, param); + this.sysPosterRepository.save(sysPoster); } /** * getDefaultPosterIdByType */ async getDefaultPosterIdByType(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper<>(); + queryWrapper = {}; queryWrapper.eq("site_id", siteId) .eq("type", type) .eq("addon", addon) .eq("is_default", 1) .eq("status", 1); - const poster: SysPoster = sysPosterMapper.selectOne(queryWrapper); + const poster: SysPoster = this.sysPosterRepository.findOne(queryWrapper); return poster != null ? poster.getId() : 0; } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/schedule/impl/core-schedule-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/schedule/impl/core-schedule-service-impl.service.ts index 77838833..d4defb52 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/schedule/impl/core-schedule-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/schedule/impl/core-schedule-service-impl.service.ts @@ -1,13 +1,12 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as fs from 'fs'; @Injectable() export class CoreScheduleServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -18,29 +17,29 @@ export class CoreScheduleServiceImplService { const jsonModuleLoader: JsonModuleLoader = new JsonModuleLoader(); const schedule: JSONArray = jsonModuleLoader.getResultSet("core", "schedule.json"); - if (ObjectUtil.isNotEmpty(schedule)) { - const scheduleList: SysSchedule[] = sysScheduleMapper.selectList(new QueryWrapper().eq("addon", "").select("id,`key`")); - const scheduleMap: Record = scheduleList.stream().collect(Collectors.toMap(SysSchedule::getKey, i => i)); + if (!!schedule) { + SysSchedule[] scheduleList = this.sysScheduleRepository.find(new ().eq("addon", "").select("id,`key`")); + const scheduleMap: Record = scheduleList.collect(Collectors.toMap(SysSchedule::getKey, i => i)); - const list: SysSchedule[] = []; + SysSchedule[] list = []; - for (const i of number = 0; i < schedule.size(); i++) { + for (const i of number = 0; i < schedule.length; i++) { const item: Record = schedule.getJSONObject(i); const key: string = item.getStr("key"); if (scheduleMap.get(key) == null) { - const sysScheduleVo: SysSchedule = JSONUtil.toBean(item, SysSchedule.class); + const sysScheduleVo: SysSchedule = Object.assign(new SysSchedule(), item); sysScheduleVo.setAddon(""); sysScheduleVo.setStatus(1); - list.add(sysScheduleVo); + list.push(sysScheduleVo); } } - if (list.size() > 0) { + if (list.length > 0) { for (const sysScheduleVo of list) { try { QuartzJobManager.stopJob(sysScheduleVo.getKey()); QuartzJobManager.startJob(sysScheduleVo); - } catch (e) { + } catch (Exception e) { } } super.saveBatch(list); @@ -52,54 +51,54 @@ export class CoreScheduleServiceImplService { * uninstallSystemSchedule */ async uninstallSystemSchedule(...args: any[]): Promise { - sysScheduleMapper.delete(new QueryWrapper().eq("addon", "")); + this.sysScheduleRepository.delete(new ().eq("addon", "")); } /** * installAddonSchedule */ async installAddonSchedule(...args: any[]): Promise { - Map> addonModule = AddonModuleContext.getAddonModuleMap(); + Record> addonModule = AddonModuleContext.getAddonModuleMap(); const schedule: JSONArray = null; if (addonModule.get(addon) != null) { const jsonModuleLoader: JsonModuleLoader = new JsonModuleLoader(); schedule = jsonModuleLoader.getResultSet(addon, "schedule.json"); } else { - const file: string = this.config.get('webRootDownAddon' + addon + "/java/src/main/resources/"+ addon +"/loader/schedule.json"); + const file: string = this.appConfig.webRootDownAddon + addon + "/java/src/main/resources/"+ addon +"/loader/schedule.json"; if (fs.existsSync(file)) { try { const content: string = fs.readFileSync(file, 'utf-8'); - if (ObjectUtil.isNotEmpty(content)) { + if (!!content) { schedule = JSONUtil.parseArray(content); } - } catch (e) { + } catch (Exception e) { } } } - if (ObjectUtil.isNotEmpty(schedule)) { - const scheduleList: SysSchedule[] = sysScheduleMapper.selectList(new QueryWrapper().eq("addon", addon).select("id,`key`")); - const scheduleMap: Record = scheduleList.stream().collect(Collectors.toMap(SysSchedule::getKey, i => i)); + if (!!schedule) { + SysSchedule[] scheduleList = this.sysScheduleRepository.find(new ().eq("addon", addon).select("id,`key`")); + const scheduleMap: Record = scheduleList.collect(Collectors.toMap(SysSchedule::getKey, i => i)); - const list: SysSchedule[] = []; + SysSchedule[] list = []; - for (const i of number = 0; i < schedule.size(); i++) { + for (const i of number = 0; i < schedule.length; i++) { const item: Record = schedule.getJSONObject(i); const key: string = item.getStr("key"); if (scheduleMap.get(key) == null) { - const sysScheduleVo: SysSchedule = JSONUtil.toBean(item, SysSchedule.class); + const sysScheduleVo: SysSchedule = Object.assign(new SysSchedule(), item); sysScheduleVo.setAddon(addon); sysScheduleVo.setStatus(1); - list.add(sysScheduleVo); + list.push(sysScheduleVo); } } - if (list.size() > 0) { + if (list.length > 0) { for (const sysScheduleVo of list) { try { QuartzJobManager.stopJob(sysScheduleVo.getKey()); QuartzJobManager.startJob(sysScheduleVo); - } catch (e) { + } catch (Exception e) { } } super.saveBatch(list); @@ -111,7 +110,7 @@ export class CoreScheduleServiceImplService { * uninstallAddonSchedule */ async uninstallAddonSchedule(...args: any[]): Promise { - sysScheduleMapper.delete(new QueryWrapper().eq("addon", addon)); + this.sysScheduleRepository.delete(new ().eq("addon", addon)); } /** @@ -119,13 +118,13 @@ export class CoreScheduleServiceImplService { */ async resetSchedule(...args: any[]): Promise { try { - sysScheduleMapper.delete(new QueryWrapper()); + this.sysScheduleRepository.delete(new ()); installSystemSchedule(); - const addonList: Addon[] = addonMapper.selectList(new LambdaQueryWrapper().eq(Addon::getStatus, 1)); + Addon[] addonList = this.addonRepository.find(new Lambda().eq(Addon::getStatus, 1)); addonList.forEach(addon => { installAddonSchedule(addon.getKey()); }); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/site/impl/core-site-account-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/site/impl/core-site-account-service-impl.service.ts index 24489fe3..24e44f9b 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/site/impl/core-site-account-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/site/impl/core-site-account-service-impl.service.ts @@ -18,8 +18,8 @@ export class CoreSiteAccountServiceImplService { model.setType("pay"); model.setMoney(pay.getMoney()); model.setTradeNo(pay.getOutTradeNo()); - model.setCreateTime(System.currentTimeMillis() / 1000); - siteAccountLogMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.siteAccountLogRepository.save(model); return model.getId(); } @@ -32,8 +32,8 @@ export class CoreSiteAccountServiceImplService { model.setType("refund"); model.setMoney(refund.getMoney().multiply(new BigDecimal("-1"))); model.setTradeNo(refund.getRefundNo()); - model.setCreateTime(System.currentTimeMillis() / 1000); - siteAccountLogMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.siteAccountLogRepository.save(model); return model.getId(); } @@ -46,8 +46,8 @@ export class CoreSiteAccountServiceImplService { model.setType("transfer"); model.setMoney(transfer.getMoney().multiply(new BigDecimal("-1"))); model.setTradeNo(transfer.getTransferNo()); - model.setCreateTime(System.currentTimeMillis() / 1000); - siteAccountLogMapper.insert(model); + model.setCreateTime(Math.floor(Date.now() / 1000)); + this.siteAccountLogRepository.save(model); return model.getId(); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/site/impl/core-site-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/site/impl/core-site-service-impl.service.ts index 516e0db4..e9cd68c8 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/site/impl/core-site-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/site/impl/core-site-service-impl.service.ts @@ -1,12 +1,11 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class CoreSiteServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -18,7 +17,7 @@ export class CoreSiteServiceImplService { const siteInfo: Site = siteMapper.selectById(siteId); if (ObjectUtil.isNull(siteInfo)) { - return []; + return new ArrayString[](); } //查询站点分组 const siteGroup: SiteGroup = siteGroupMapper.selectById(siteInfo.getGroupId()); @@ -42,7 +41,7 @@ export class CoreSiteServiceImplService { } } //去重 - const list: string[] = JSONUtil.toList(siteAddonJson, String.class); + String[] list = JSONUtil.toList(siteAddonJson, String.class); return CollectionUtil.distinct(list); }); } @@ -52,17 +51,17 @@ export class CoreSiteServiceImplService { */ async getSiteCache(...args: any[]): Promise { const siteCache: SiteInfoCacheVo = cached.rememberObject(useCache, cacheTagName + "_" + siteId, Arrays.asList("getSiteCache", siteId), uniqueKey => { - MPJQueryWrapper siteMPJQueryWrapper = new MPJQueryWrapper<>(); + MPJsiteMPJQueryWrapper = new MPJQueryWrapper<>(); siteMPJQueryWrapper.select("ns.site_id, ns.site_name, ns.group_id, ns.keywords, ns.app_type, ns.logo, ns.`desc`, ns.status, ns.latitude, ns.longitude, ns.province_id, ns.city_id, ns.district_id, ns.address, ns.full_address, ns.phone, ns.business_hours, ns.create_time, ns.expire_time, ns.front_end_name, ns.front_end_logo, ns.front_end_icon, ns.icon, ns.member_no, ns.app, ns.addons, ns.initalled_addon, ns.site_domain, nsg.group_name") .setAlias("ns") - .leftJoin("?_site_group nsg ON ns.group_id = nsg.group_id".replace("?_", this.config.get('tablePrefix'))); + .leftJoin("?_site_group nsg ON ns.group_id = nsg.group_id".replace("?_", this.appConfig.tablePrefix)); siteMPJQueryWrapper.eq("ns.site_id", siteId); return siteMapper.selectJoinOne(SiteInfoCacheVo.class, siteMPJQueryWrapper); }); const siteInfoVo: SiteInfoVo = new SiteInfoVo(); - if (ObjectUtil.isNotEmpty(siteCache)) { + if (!!siteCache) { BeanUtil.copyProperties(siteCache, siteInfoVo); siteInfoVo.setAddonKeys(getAddonKeysBySiteId(siteInfoVo.getSiteId())); if (siteInfoVo.getAddonKeys().size() != 0) { @@ -72,8 +71,8 @@ export class CoreSiteServiceImplService { siteInfoVo.setSiteAddons([]); siteInfoVo.setApps([]); } - const sysUserRole: SysUserRole = sysUserRoleMapper.selectOne(new QueryWrapper().select("uid").eq("site_id", siteId).eq("is_admin", 1)); - if (ObjectUtil.isNotEmpty(sysUserRole)) { + const sysUserRole: SysUserRole = this.sysUserRoleRepository.findOne(new ().select("uid").eq("site_id", siteId).eq("is_admin", 1)); + if (!!sysUserRole) { siteInfoVo.setUid(sysUserRole.getUid()); } } @@ -84,14 +83,14 @@ export class CoreSiteServiceImplService { * getSiteAddons */ async getSiteAddons(...args: any[]): Promise { - return addonMapper.selectList(new QueryWrapper().in("`key`", getAddonKeysBySiteId(siteId))); + return this.addonRepository.find(new ().in("`key`", getAddonKeysBySiteId(siteId))); } /** * siteAddonIsInit */ async siteAddonIsInit(...args: any[]): Promise { - const count: number = siteAddonInitRecordMapper.selectCount(new QueryWrapper().eq("site_id", siteId).eq("addon", addon)); + const count: number = this.siteAddonInitRecordRepository.count(new ().eq("site_id", siteId).eq("addon", addon)); const count: return = = 1 ? true : false; } @@ -102,7 +101,7 @@ export class CoreSiteServiceImplService { const model: SiteAddonInitRecord = new SiteAddonInitRecord(); model.setSiteId(siteId); model.setAddon(addon); - siteAddonInitRecordMapper.insert(model); + this.siteAddonInitRecordRepository.save(model); } /** @@ -111,9 +110,9 @@ export class CoreSiteServiceImplService { async siteExpireClose(...args: any[]): Promise { const model: Site = new Site(); model.setStatus(SiteStatusEnum.EXPIRE.getCode()); - siteMapper.update(model, new QueryWrapper() + siteMapper.update(model, new () .gt("expire_time", 0) - .lt("expire_time", System.currentTimeMillis() / 1000) + .lt("expire_time", Math.floor(Date.now() / 1000)) .ne("status", SiteStatusEnum.EXPIRE.getCode()) ); } @@ -129,29 +128,29 @@ export class CoreSiteServiceImplService { * siteInitBySiteId */ async siteInitBySiteId(...args: any[]): Promise { - const userIds: number[] = []; + number[] userIds = []; try { for (const table of tables) { if (!isTableExists(table)) { continue; } - if ("nc_sys_user_role" === table) { - const queryWrapper: LambdaQueryWrapper = new LambdaQueryWrapper() + if ("nc_sys_user_role".equals(table)) { + LambdaqueryWrapper = new Lambda() .eq(SysUserRole::getSiteId, siteId) .eq(SysUserRole::getIsAdmin, 0) .select(SysUserRole::getUid); - userIds = sysUserRoleMapper.selectList(queryWrapper).stream() + userIds = this.sysUserRoleRepository.find(queryWrapper) .map(SysUserRole::getUid) - .collect(Collectors.toList()); + ; - if (userIds.length !== 0) { - sysUserRoleMapper.delete(queryWrapper); + if (userIds.length > 0) { + this.sysUserRoleRepository.delete(queryWrapper); } } - else if ("nc_sys_user" === table) { - if (userIds.length !== 0) { + else if ("nc_sys_user".equals(table)) { + if (userIds.length > 0) { sysUserMapper.deleteByIds(userIds); } } @@ -172,9 +171,9 @@ export class CoreSiteServiceImplService { EventAndSubscribeOfPublisher.publishAll(event); // 清除缓存 - cached.getAllKeys().stream().forEach(key => cached.remove(key)); + cached.getAllKeys().forEach(key => cached.remove(key)); return true; - } catch (e) { + } catch (Exception e) { throw new BadRequestException("站点初始化失败: " + e.message); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sms/impl/core-sms-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sms/impl/core-sms-service-impl.service.ts index 76a40111..63ee5f9b 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sms/impl/core-sms-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sms/impl/core-sms-service-impl.service.ts @@ -22,9 +22,9 @@ export class CoreSmsServiceImplService { model.setKey(notice.getKey()); model.setContent(notice.getSms().getStr("content", "")); model.setStatus(SmsStatusEnum.SENDING.getStatus()); - model.setCreateTime(System.currentTimeMillis() / 1000); + model.setCreateTime(Math.floor(Date.now() / 1000)); model.setParams(JSONUtil.parse(noticeData.getVars()).toString()); - sysNoticeSmsLogMapper.insert(model); + this.sysNoticeSmsLogRepository.save(model); const smsDriver: BaseSms = SmsLoader.getDriver(config.getStr("sms_type"), config); const result: SendResultVo = smsDriver.send(notice, noticeData); @@ -33,7 +33,7 @@ export class CoreSmsServiceImplService { updateModel.setId(model.getId()); updateModel.setStatus(result.getStatus().getStatus()); updateModel.setResult(ObjectUtil.defaultIfNull(result.getFailReason(), "")); - sysNoticeSmsLogMapper.updateById(updateModel); + this.sysNoticeSmsLogRepository.save(updateModel); if (result.getStatus().getStatus() === SmsStatusEnum.FAIL.getStatus()) { throw new BadRequestException(updateModel.getResult()); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-agreement-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-agreement-service-impl.service.ts index fad313cc..b89d0420 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-agreement-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-agreement-service-impl.service.ts @@ -13,7 +13,7 @@ export class CoreAgreementServiceImplService { * getAgreement */ async getAgreement(...args: any[]): Promise { - const model: SysAgreement = sysAgreementMapper.selectOne(new QueryWrapper().eq("agreement_key", key).eq("site_id", siteId).last(" limit 1")); + const model: SysAgreement = this.sysAgreementRepository.findOne(new ().eq("agreement_key", key).eq("site_id", siteId).last(" limit 1")); if(ObjectUtil.isNull(model)) { const defaultModel: SysAgreement = new SysAgreement(); @@ -30,21 +30,21 @@ export class CoreAgreementServiceImplService { * setAgreement */ async setAgreement(...args: any[]): Promise { - const model: SysAgreement = sysAgreementMapper.selectOne(new QueryWrapper().eq("agreement_key", key).eq("site_id", siteId).last(" limit 1")); + const model: SysAgreement = this.sysAgreementRepository.findOne(new ().eq("agreement_key", key).eq("site_id", siteId).last(" limit 1")); if(ObjectUtil.isNull(model)){ const addModel: SysAgreement = new SysAgreement(); addModel.setSiteId(siteId); addModel.setAgreementKey(key); addModel.setTitle(title); addModel.setContent(content); - addModel.setCreateTime(System.currentTimeMillis() / 1000); - addModel.setUpdateTime(System.currentTimeMillis() / 1000); - sysAgreementMapper.insert(addModel); + addModel.setCreateTime(Math.floor(Date.now() / 1000)); + addModel.setUpdateTime(Math.floor(Date.now() / 1000)); + this.sysAgreementRepository.save(addModel); }else{ - model.setUpdateTime(System.currentTimeMillis() / 1000); + model.setUpdateTime(Math.floor(Date.now() / 1000)); model.setTitle(title); model.setContent(content); - sysAgreementMapper.updateById(model); + this.sysAgreementRepository.save(model); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-config-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-config-service-impl.service.ts index f1887a52..269487a8 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-config-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-config-service-impl.service.ts @@ -13,10 +13,10 @@ export class CoreConfigServiceImplService { * getConfig */ async getConfig(...args: any[]): Promise { - const model: SysConfig = sysConfigMapper.selectOne(new QueryWrapper().eq("config_key", key).eq("site_id", siteId).last(" limit 1")); + const model: SysConfig = this.sysConfigRepository.findOne(new ().eq("config_key", key).eq("site_id", siteId).last(" limit 1")); const vo: CoreSysConfigVo = new CoreSysConfigVo(); if (ObjectUtil.isNotNull(model)) { - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); if (model.getValue() !== "") { vo.setValueJson(JSONUtil.parse(model.getValue())); } @@ -30,7 +30,7 @@ export class CoreConfigServiceImplService { async getConfigValue(...args: any[]): Promise { const jsonObject: any = cached.rememberObject(useCache, cacheTagName, Arrays.asList("getConfigValue", siteId, key), uniqueKey => { - SysConfig model = sysConfigMapper.selectOne(new QueryWrapper().eq("config_key", key).eq("site_id", siteId).last(" limit 1")); + SysConfig model = this.sysConfigRepository.findOne(new ().eq("config_key", key).eq("site_id", siteId).last(" limit 1")); if (ObjectUtil.isNotNull(model)) { if (model.getValue() !== "") { return model.getValue(); @@ -40,8 +40,8 @@ export class CoreConfigServiceImplService { } return ""; }); - if(ObjectUtil.isNotEmpty(jsonObject)){ - return JSONUtil.parseObj(jsonObject); + if(!!jsonObject){ + return JSON.parse(jsonObject); }else{ return new Record(); } @@ -52,7 +52,7 @@ export class CoreConfigServiceImplService { */ async getConfigArrayValue(...args: any[]): Promise { const jsonObject: any = cached.rememberObject(useCache, cacheTagName, Arrays.asList("getConfigArrayValue", siteId, key), uniqueKey => { - SysConfig model = sysConfigMapper.selectOne(new QueryWrapper().eq("config_key", key).eq("site_id", siteId).last(" limit 1")); + SysConfig model = this.sysConfigRepository.findOne(new ().eq("config_key", key).eq("site_id", siteId).last(" limit 1")); if (ObjectUtil.isNotNull(model)) { if (model.getValue() !== "") { return model.getValue(); @@ -63,7 +63,7 @@ export class CoreConfigServiceImplService { return ""; }); - if(ObjectUtil.isNotEmpty(jsonObject)){ + if(!!jsonObject){ return JSONUtil.parseArray(jsonObject.toString()); }else{ return new JSONArray(); @@ -74,8 +74,8 @@ export class CoreConfigServiceImplService { * setConfig */ async setConfig(...args: any[]): Promise { - const model: SysConfig = sysConfigMapper.selectOne( - new QueryWrapper() + const model: SysConfig = this.sysConfigRepository.findOne( + new () .eq("config_key", key) .eq("site_id", siteId) .last("limit 1")); @@ -85,17 +85,17 @@ export class CoreConfigServiceImplService { addModel.setSiteId(siteId); addModel.setConfigKey(key); addModel.setStatus(1); - addModel.setUpdateTime(System.currentTimeMillis() / 1000); + addModel.setUpdateTime(Math.floor(Date.now() / 1000)); addModel.setAddon(""); addModel.setValue(valueJson.toString()); - addModel.setCreateTime(System.currentTimeMillis() / 1000); - sysConfigMapper.insert(addModel); + addModel.setCreateTime(Math.floor(Date.now() / 1000)); + this.sysConfigRepository.save(addModel); cached.tag(cacheTagName).clear(); } else { cached.tag(cacheTagName).clear(); - model.setUpdateTime(System.currentTimeMillis() / 1000); + model.setUpdateTime(Math.floor(Date.now() / 1000)); model.setValue(valueJson.toString()); - sysConfigMapper.update(model, new QueryWrapper().eq("config_key", key).eq("site_id", siteId)); + sysConfigMapper.update(model, new ().eq("config_key", key).eq("site_id", siteId)); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-export-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-export-service-impl.service.ts index 6ecf9dd5..b0d79d47 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-export-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-export-service-impl.service.ts @@ -1,12 +1,11 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class CoreExportServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -14,7 +13,7 @@ export class CoreExportServiceImplService { * add */ async add(...args: any[]): Promise { - sysExportMapper.insert(sysExport); + this.sysExportRepository.save(sysExport); } /** @@ -23,14 +22,14 @@ export class CoreExportServiceImplService { async edit(...args: any[]): Promise { const sysExport: SysExport = sysExportMapper.selectById(exportId); - Assert.notNull(sysExport, "数据不存在"); + if (!sysExport) throw new BadRequestException("数据不存在"); sysExport.setExportKey(sysExportParam.getExportKey()); sysExport.setExportNum(sysExportParam.getExportNum()); sysExport.setFailReason(sysExportParam.getFailReason()); sysExport.setFilePath(sysExportParam.getFilePath()); sysExport.setFailReason(sysExportParam.getFailReason()); - sysExportMapper.updateById(sysExport); + this.sysExportRepository.save(sysExport); } /** @@ -38,11 +37,11 @@ export class CoreExportServiceImplService { */ async getExportDataColumn(...args: any[]): Promise { const exportDataColumn: JSONArray = JsonModuleLoader.build().mergeResultSet("export/ExportType.json"); - if (ObjectUtil.isNotNull(type) && ObjectUtil.isNotEmpty(type)) { + if (ObjectUtil.isNotNull(type) && !!type) { const typeColumn: JSONArray = new JSONArray(); for (const obj of exportDataColumn) { const jsonObject: Record = (Record) obj; - const setString: Set = jsonObject.keySet(); + String[] setString = jsonObject.keySet(); for (const key of setString) { if (key === type) { const values: Record = jsonObject.getJSONObject(key); @@ -64,10 +63,10 @@ export class CoreExportServiceImplService { exportDataEvent.setType(type); exportDataEvent.setWhere(where); exportDataEvent.setPageParam(pageParam); - const resultList: ExportDataEventDefiner.ExportDataEventResult[] = EventAndSubscribeOfPublisher.publishAndCallback(exportDataEvent); + ExportDataEventDefiner.ExportDataEventResult[] resultList = EventAndSubscribeOfPublisher.publishAndCallback(exportDataEvent); const exportResult: JSONArray = new JSONArray(); for (ExportDataEventDefiner.ExportDataEventResult itemResult : resultList) { - if (ObjectUtil.isNotEmpty(itemResult.getResultData())) { + if (!!itemResult.getResultData()) { exportResult.addAll(itemResult.getResultData()); } } @@ -82,29 +81,29 @@ export class CoreExportServiceImplService { const fileName: string = dataType + "_" + DateUtils.currTime() + ".xlsx"; const relativePath: string = "upload/export/"; exportDynamic.setFileName(fileName); - const filePath: string = this.config.get('webRootDownResource') + relativePath; + const filePath: string = this.appConfig.webRootDownResource + relativePath; exportDynamic.setFilePath(filePath); - const headsList: ExportHeads[] = new ArrayList<>(CollectionUtil.size(headColumn)); - const keyList: string[] = new ArrayList<>(CollectionUtil.size(headColumn)); + ExportHeads[] headsList = new ArrayList<>(CollectionUtil.size(headColumn)); + String[] keyList = new ArrayList<>(CollectionUtil.size(headColumn)); for (const headObj of headColumn) { const itemObject: Record = (Record) headObj; - const itemKey: string = itemObject.keySet().stream().iterator().next(); + const itemKey: string = itemObject.keySet().iterator().next(); const itemValue: Record = itemObject.getJSONObject(itemKey); const titleHead: string = itemValue.getStr("name"); const exportHeads: ExportHeads = new ExportHeads(); exportHeads.setLabel(titleHead); - headsList.add(exportHeads); - keyList.add(itemKey); + headsList.push(exportHeads); + keyList.push(itemKey); } exportDynamic.setHeads(headsList); - const datas: any[][] = new ArrayList<>(CollectionUtil.size(valueData)); + const datas: Object[][] = new ArrayList<>(CollectionUtil.size(valueData)); for (const itemObj of valueData) { const itemJsonObject: Record = (Record) itemObj; - const itemDatas: any[] = []; + Object[] itemDatas = []; for (const itemKey of keyList) { - itemDatas.add(itemJsonObject.getStr(itemKey, "")); + itemDatas.push(itemJsonObject.getStr(itemKey, "")); } - datas.add(itemDatas); + datas.push(itemDatas); } exportDynamic.setDatas(datas); exportDynamic.setRelativePath(relativePath); @@ -115,7 +114,7 @@ export class CoreExportServiceImplService { * deleteExportFile */ async deleteExportFile(...args: any[]): Promise { - const path: string = this.config.get('webRootDownResource') + filePath; + const path: string = this.appConfig.webRootDownResource + filePath; if (!FileUtil.exist(path)) { return; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-menu-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-menu-service-impl.service.ts index f2e3caf1..529f53c0 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-menu-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-menu-service-impl.service.ts @@ -1,13 +1,13 @@ import { Injectable } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as fs from 'fs'; +import * as path from 'path'; @Injectable() export class CoreMenuServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -18,16 +18,16 @@ export class CoreMenuServiceImplService { this.deleteMenu(addon, false); const adminMenu: Record = JsonModuleLoader.build().getResultElement(addon, "menu/admin.json"); - if(ObjectUtil.isNotEmpty(adminMenu)){ + if(!!adminMenu){ if (adminMenu.getJSONArray("menu") != null) { - const adminMenuBeanList: SysMenu[] = this.menuTreeToList(TreeUtils.treeToList(adminMenu.getJSONArray("menu"), "parent_key", "", "menu_key", "children"), addon, "admin"); + SysMenu[] adminMenuBeanList = this.menuTreeToList(TreeUtils.treeToList(adminMenu.getJSONArray("menu"), "parent_key", "", "menu_key", "children"), addon, "admin"); super.saveBatch(adminMenuBeanList); } } const siteMenu: Record = JsonModuleLoader.build().getResultElement(addon, "menu/site.json"); - if(ObjectUtil.isNotEmpty(siteMenu)){ + if(!!siteMenu){ if (siteMenu.getJSONArray("menu") != null) { - const siteMenuBeanList: SysMenu[] = this.menuTreeToList(TreeUtils.treeToList(siteMenu.getJSONArray("menu"), "parent_key", "", "menu_key", "children"), addon, "site"); + SysMenu[] siteMenuBeanList = this.menuTreeToList(TreeUtils.treeToList(siteMenu.getJSONArray("menu"), "parent_key", "", "menu_key", "children"), addon, "site"); super.saveBatch(siteMenuBeanList); } } @@ -42,20 +42,20 @@ export class CoreMenuServiceImplService { async installAddonMenu(...args: any[]): Promise { this.deleteMenu(addon, false); - const menuDir: string = this.config.get('webRootDownAddon') + addon + "/menu/"; + const menuDir: string = this.appConfig.webRootDownAddon + addon + "/menu/"; const adminMenu: string = menuDir + "admin.json"; const siteMenu: string = menuDir + "site.json"; if (fs.existsSync(adminMenu)) { - const jsonString: string = JsonLoadUtils.loadJsonString(adminMenu); - const menuList: Record[] = TreeUtils.treeToList(JSONUtil.parseObj(jsonString).getJSONArray("menu"), "parent_key", "", "menu_key", "children"); - const adminMenuBeanList: SysMenu[] = this.menuTreeToList(menuList, addon, "admin"); + const jsonString: string = JSON.parse(fs.readFileSync(path.join(adminMenu); + Record[] menuList = TreeUtils.treeToList(JSON.parse(jsonString), 'utf-8')).getJSONArray("menu"), "parent_key", "", "menu_key", "children"); + SysMenu[] adminMenuBeanList = this.menuTreeToList(menuList, addon, "admin"); super.saveBatch(adminMenuBeanList); } if (fs.existsSync(siteMenu)) { - const jsonString: string = JsonLoadUtils.loadJsonString(siteMenu); - const menuList: Record[] = TreeUtils.treeToList(JSONUtil.parseObj(jsonString).getJSONArray("menu"), "parent_key", "", "menu_key", "children"); - const siteMenuBeanList: SysMenu[] = this.menuTreeToList(menuList, addon, "site"); + const jsonString: string = JSON.parse(fs.readFileSync(path.join(siteMenu); + Record[] menuList = TreeUtils.treeToList(JSON.parse(jsonString), 'utf-8')).getJSONArray("menu"), "parent_key", "", "menu_key", "children"); + SysMenu[] siteMenuBeanList = this.menuTreeToList(menuList, addon, "site"); super.saveBatch(siteMenuBeanList); } @@ -67,11 +67,11 @@ export class CoreMenuServiceImplService { * deleteMenu */ async deleteMenu(...args: any[]): Promise { - const queryWrapper: QueryWrapper = new QueryWrapper() + queryWrapper = new () .eq("addon", addon); if (!isAll) queryWrapper.eq("source", "system"); - sysMenuMapper.delete(queryWrapper); + this.sysMenuRepository.delete(queryWrapper); } /** @@ -79,7 +79,7 @@ export class CoreMenuServiceImplService { */ async refreshAllAddonMenu(...args: any[]): Promise { //查询所有的插件 - const addonList: Addon[] = addonMapper.selectList(new QueryWrapper()); + Addon[] addonList=this.addonRepository.find(new ()); for (const addon of addonList) { this.refreshAddonMenu(addon.getKey()); } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-printer-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-printer-service-impl.service.ts index c821209a..62e0ab7e 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-printer-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-printer-service-impl.service.ts @@ -21,14 +21,14 @@ export class CorePrinterServiceImplService { */ async getYlyTokenConfig(...args: any[]): Promise { const config: CoreSysConfigVo = coreConfigService.getConfig(RequestUtils.siteId(), "PRINTER_YLY_TOKEN"); - if (ObjectUtil.isEmpty(config)) { + if (!config) { const valueJsonObject: Record = new Record(); valueJsonObject.set("access_token", "") .set("end_time", "0"); return valueJsonObject; } - return JSONUtil.parseObj(config.getValueJson()); + return JSON.parse(config.getValueJson()); } /** @@ -62,13 +62,13 @@ export class CorePrinterServiceImplService { event.setSiteId(param.getSiteId()); event.setParam(param); event.setAuthority(false); - const results: SysPrinterPrintTicketResult[] = CallbackPublisher.publishReturnList(event) - .stream() + SysPrinterPrintTicketResult[] results = CallbackPublisher.publishReturnList(event) + .map(result => (SysPrinterPrintTicketResult) result) .toList(); const vo: SysPrinterPrintTicketVo = new SysPrinterPrintTicketVo(); - const error: Optional = results.stream().filter(result => result.getCode() != 0).findFirst(); + const error: Optional = results.filter(result => result.getCode() != 0).findFirst(); if (error.isPresent()) { const result: SysPrinterPrintTicketResult = error.get(); vo.setCode(result.getCode()); @@ -76,10 +76,10 @@ export class CorePrinterServiceImplService { return vo; } - const items: SysPrinterPrintTicketResult.Item[] = results.stream() - .flatMap(result => result.getData().stream()) - .collect(Collectors.toList()); - if (ObjectUtil.isEmpty(items)) { + SysPrinterPrintTicketResult.Item[] items = results + .flatMap(result => result.getData()) + ; + if (!items) { vo.setCode(-1); vo.setMessage("未找到小票模板内容"); return vo; @@ -87,7 +87,7 @@ export class CorePrinterServiceImplService { try { for (SysPrinterPrintTicketResult.Item item : items) { - if (ObjectUtil.isEmpty(item.getPrinterInfo())) { + if (!item.getPrinterInfo()) { continue; } @@ -98,10 +98,10 @@ export class CorePrinterServiceImplService { if (Objects.requireNonNull(SysPrinterBrandEnum.getEnumByBrand(printer.getBrand())) == SysPrinterBrandEnum.YI_LIAN_YUN) { const sdk: YlyPrinterSdk = getSdk(printer.getOpenId(), printer.getApikey()); - sdk.printIndex(printer.getPrinterCode(), item.getContent(), String.valueOf(item.getOriginId())); + sdk.printIndex(printer.getPrinterCode(), item.getContent(), String(item.getOriginId())); } } - } catch (e) { + } catch (Exception e) { log.error(e.message); vo.setCode(-1); vo.setMessage(e.message); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-scan-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-scan-service-impl.service.ts index 81064064..b544ca8a 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-scan-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-scan-service-impl.service.ts @@ -17,7 +17,7 @@ export class CoreScanServiceImplService { data.set("status", "wait"); data.set("is_scan", false); data.set("action", action); - data.set("expire", DateUtils.timestampToString(System.currentTimeMillis() / 1000 + expire)); + data.set("expire", DateUtils.timestampToString(Math.floor(Date.now() / 1000) + expire)); cached.put("scan_" + key, data.toString(), expire); return key; } @@ -26,9 +26,9 @@ export class CoreScanServiceImplService { * actionByScan */ async actionByScan(...args: any[]): Promise { - const cache: string = cached.get("scan_" + key); - if (ObjectUtil.isNotNull(cache) && cache.length !== 0) { - const cacheData: Record = JSONUtil.parseObj(cache); + const cache: string = (String) cached.get("scan_" + key); + if (ObjectUtil.isNotNull(cache) && cache.length > 0) { + const cacheData: Record = JSON.parse(cache); cacheData.set("is_scan", true); cacheData = JsonModuleLoader.deepMerge(cacheData, data); cached.put("scan_" + key, cacheData.toString()); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-sys-config-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-sys-config-service-impl.service.ts index 00bd59c4..b8f99104 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-sys-config-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-sys-config-service-impl.service.ts @@ -1,12 +1,11 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; @Injectable() export class CoreSysConfigServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -14,14 +13,14 @@ export class CoreSysConfigServiceImplService { * getWebSite */ async getWebSite(...args: any[]): Promise { - const model: Site = siteMapper.selectOne(new QueryWrapper().eq("site_id", siteId).last("limit 1")); - Assert.notNull(model, "站点不存在"); + const model: Site = this.siteRepository.findOne(new ().eq("site_id", siteId).last("limit 1")); + if (!model) throw new BadRequestException("站点不存在"); const vo: SysWebsiteVo = new SysWebsiteVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); const sysService: SysServiceVo = getService(siteId); - if (sysService != null) BeanUtils.copyProperties(sysService, vo); + if (sysService != null) Object.assign(vo, sysService); return vo; } @@ -32,8 +31,8 @@ export class CoreSysConfigServiceImplService { async setWebSite(...args: any[]): Promise { const model: Site = new Site(); model.setSiteId(siteId); - BeanUtils.copyProperties(configParam, model); - siteMapper.updateById(model); + Object.assign(model, configParam); + this.siteRepository.save(model); coreSiteService.clearSiteCache(siteId); const service: Record = new Record(); @@ -50,7 +49,7 @@ export class CoreSysConfigServiceImplService { */ async getService(...args: any[]): Promise { const config: Record = coreConfigService.getConfigValue(siteId, "SERVICE_INFO"); - return JSONUtil.toBean(config, SysServiceVo.class); + return Object.assign(new SysServiceVo(), config); } /** @@ -58,14 +57,14 @@ export class CoreSysConfigServiceImplService { */ async getCopyRight(...args: any[]): Promise { const config: Record = coreConfigService.getConfigValue(siteId, "COPYRIGHT"); - return JSONUtil.toBean(config, SysCopyRightVo.class); + return Object.assign(new SysCopyRightVo(), config); } /** * setCopyRight */ async setCopyRight(...args: any[]): Promise { - const json: Record = JSONUtil.parseObj(configParam); + const json: Record = JSON.parse(configParam); coreConfigService.setConfig(RequestUtils.siteId(), "COPYRIGHT", json); } @@ -74,14 +73,14 @@ export class CoreSysConfigServiceImplService { */ async getMap(...args: any[]): Promise { const config: Record = coreConfigService.getConfigValue(siteId, "MAPKEY"); - return JSONUtil.toBean(config, SysMapVo.class); + return Object.assign(new SysMapVo(), config); } /** * setMap */ async setMap(...args: any[]): Promise { - const json: Record = JSONUtil.parseObj(configParam); + const json: Record = JSON.parse(configParam); coreConfigService.setConfig(RequestUtils.siteId(), "MAPKEY", json); if (RequestUtils.defaultSiteId() === siteId) { @@ -106,14 +105,14 @@ export class CoreSysConfigServiceImplService { */ async getDeveloperToken(...args: any[]): Promise { const config: Record = coreConfigService.getConfigValue(RequestUtils.defaultSiteId(), "DEVELOPER_TOKEN"); - return JSONUtil.toBean(config, SysDeveloperTokenVo.class); + return Object.assign(new SysDeveloperTokenVo(), config); } /** * setDeveloperToken */ async setDeveloperToken(...args: any[]): Promise { - const json: Record = JSONUtil.parseObj(configParam); + const json: Record = JSON.parse(configParam); coreConfigService.setConfig(RequestUtils.defaultSiteId(), "DEVELOPER_TOKEN", json); } @@ -156,14 +155,14 @@ export class CoreSysConfigServiceImplService { */ async getLogin(...args: any[]): Promise { const config: Record = coreConfigService.getConfigValue(siteId, "admin_login"); - return JSONUtil.toBean(config, SysLoginConfigVo.class); + return Object.assign(new SysLoginConfigVo(), config); } /** * setLogin */ async setLogin(...args: any[]): Promise { - const json: Record = JSONUtil.parseObj(configParam); + const json: Record = JSON.parse(configParam); coreConfigService.setConfig(RequestUtils.siteId(), "admin_login", json); } @@ -171,16 +170,16 @@ export class CoreSysConfigServiceImplService { * getSceneDomain */ async getSceneDomain(...args: any[]): Promise { - const wapDomain: string = ObjectUtil.isNotEmpty(this.config.get('wapDomain')) ? this.config.get('wapDomain').replace("#/$#", "") : RequestUtils.getRequestSecure() + "://" + RequestUtils.getRequestDomain(); + const wapDomain: string = !!this.appConfig.wapDomain ? this.appConfig.wapDomain.replace("#/$#", "") : RequestUtils.getRequestSecure() + "://" + RequestUtils.getRequestDomain(); const siteInfoVo: SiteInfoVo = coreSiteService.getSiteCache(siteId); const siteDomain: string = siteInfoVo.getSiteDomain(); - if (siteDomain.length !== 0) siteDomain = RequestUtils.getRequestSecure() + "://" + siteDomain; + if (siteDomain.length > 0) siteDomain = RequestUtils.getRequestSecure() + "://" + siteDomain; const sceneDomainVo: SceneDomainVo = new SceneDomainVo(); sceneDomainVo.setWapDomain(wapDomain); - sceneDomainVo.setWapUrl(ObjectUtil.isNotEmpty(siteDomain) ? siteDomain + "/wap" : wapDomain + "/wap/" + siteId); - sceneDomainVo.setWebUrl(ObjectUtil.isNotEmpty(siteDomain) ? siteDomain + "/web" : wapDomain + "/web/" + siteId); + sceneDomainVo.setWapUrl(!!siteDomain ? siteDomain + "/wap" : wapDomain + "/wap/" + siteId); + sceneDomainVo.setWebUrl(!!siteDomain ? siteDomain + "/web" : wapDomain + "/web/" + siteId); return sceneDomainVo; } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-upload-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-upload-service-impl.service.ts index 5964a44d..a240faf3 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-upload-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/sys/impl/core-upload-service-impl.service.ts @@ -22,7 +22,7 @@ export class CoreUploadServiceImplService { const configObject: Record = null; // 获取站点的上传配置 - if (ObjectUtil.isNotEmpty(attachmentUploadParam.getStorageType())) { + if (!!attachmentUploadParam.getStorageType()) { configObject = coreStorageService.getStorageByType(attachmentUploadParam.getSiteId(), attachmentUploadParam.getStorageType()); } else { configObject = coreStorageService.getDefaultStorage(attachmentUploadParam.getSiteId()); @@ -47,7 +47,7 @@ export class CoreUploadServiceImplService { if (attachmentUploadParam.getIsAttachment() === 1) { const newSysAttachment: SysAttachment = this.buildSysAttachment(attachmentUploadParam, uploadModelResult); newSysAttachment.setUrl(uploadProvider.getAccessUrl(uploadModelResult.getAccessUrl())); - sysAttachmentMapper.insert(newSysAttachment); + this.sysAttachmentRepository.save(newSysAttachment); attachmentUploadVo.setUrl(uploadProvider.getAccessUrl(uploadModelResult.getAccessUrl())); attachmentUploadVo.setAttId(newSysAttachment.getAttId()); } else { diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/upload/impl/core-storage-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/upload/impl/core-storage-service-impl.service.ts index 1608c299..9e643d88 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/upload/impl/core-storage-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/upload/impl/core-storage-service-impl.service.ts @@ -19,9 +19,9 @@ export class CoreStorageServiceImplService { const storageConfig: Record = getStorageConfig(siteId); const storageTypeList: Record = UploadLoader.getType(); - const coreStorAgeConfigVoList: CoreStorAgeConfigVo[] = []; + CoreStorAgeConfigVo[] coreStorAgeConfigVoList = []; for (const key of storageTypeList.keySet()) { - const storageValues: Record = JSONUtil.parseObj(storageTypeList.get(key)); + const storageValues: Record = JSON.parse(storageTypeList.get(key)); const coreStorAgeConfigVo: CoreStorAgeConfigVo = new CoreStorAgeConfigVo(); coreStorAgeConfigVo.setStorageType(key); coreStorAgeConfigVo.setIsUse(key === storageConfig.get("default") ? StorageEnum.ON.getCode() : StorageEnum.OFF.getCode()); @@ -29,10 +29,10 @@ export class CoreStorageServiceImplService { coreStorAgeConfigVo.setComponent(storageValues.get("component").toString()); const params: Record = new Record(); if (ObjectUtil.isNotNull(storageValues.get("params"))) { - const valuesParams: Record = JSONUtil.parseObj(storageValues.get("params")); + const valuesParams: Record = JSON.parse(storageValues.get("params")); const configParams: Record = new Record(); if (ObjectUtil.isNotNull(storageConfig.get(key))) { - configParams = JSONUtil.parseObj(storageConfig.get(key)); + configParams = JSON.parse(storageConfig.get(key)); } for (const paramsKey of valuesParams.keySet()) { const itemParam: Record = new Record(); @@ -44,7 +44,7 @@ export class CoreStorageServiceImplService { params.set("config_params", configParams); } coreStorAgeConfigVo.setParams(params); - coreStorAgeConfigVoList.add(coreStorAgeConfigVo); + coreStorAgeConfigVoList.push(coreStorAgeConfigVo); } return coreStorAgeConfigVoList; } @@ -54,7 +54,7 @@ export class CoreStorageServiceImplService { */ async getStorageConfig(...args: any[]): Promise { const jsonObject: Record = coreConfigService.getConfigValue(siteId, "STORAGE"); - if (ObjectUtil.isNull(jsonObject) || ObjectUtil.isEmpty(jsonObject)) { + if (ObjectUtil.isNull(jsonObject) || !jsonObject) { jsonObject = new Record(); jsonObject.set("default", FileEnum.LOCAL.getCode()); } @@ -65,7 +65,7 @@ export class CoreStorageServiceImplService { * getDefaultStorage */ async getDefaultStorage(...args: any[]): Promise { - const storageList: CoreStorAgeConfigVo[] = this.getStorageList(siteId); + CoreStorAgeConfigVo[] storageList = this.getStorageList(siteId); const config: Record = new Record(); for (const item of storageList) { if (item.getIsUse() === StorageEnum.ON.getCode()) { @@ -80,7 +80,7 @@ export class CoreStorageServiceImplService { * getStorageByType */ async getStorageByType(...args: any[]): Promise { - const storageList: CoreStorAgeConfigVo[] = this.getStorageList(siteId); + CoreStorAgeConfigVo[] storageList = this.getStorageList(siteId); const config: Record = new Record(); for (const item of storageList) { if (item.getIsUse() === StorageEnum.ON.getCode() && item.getStorageType() === StorageType) { diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/user/impl/core-user-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/user/impl/core-user-service-impl.service.ts index 5cbf0c88..102ad395 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/user/impl/core-user-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/user/impl/core-user-service-impl.service.ts @@ -15,7 +15,7 @@ export class CoreUserServiceImplService { async getUserInfo(...args: any[]): Promise { const sysUser: SysUser = sysUserMapper.selectById(uid); const result: UserInfoDto = new UserInfoDto(); - BeanUtils.copyProperties(sysUser, result); + Object.assign(result, sysUser); result.setRole(userRoleService.getUserRole(RequestUtils.siteId(), uid)); return result; } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-cloud-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-cloud-service-impl.service.ts index 05f0c014..aa9e96e5 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-cloud-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-cloud-service-impl.service.ts @@ -1,13 +1,12 @@ import { Injectable, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { QueueService, EventBus, Result, ConfigService } from '@wwjBoot'; +import { QueueService, EventBus, Result } from '@wwjBoot'; import * as fs from 'fs'; @Injectable() export class CoreWeappCloudServiceImplService { constructor( - private readonly config: ConfigService, private readonly eventBus: EventBus, private readonly queueService: QueueService, ) {} @@ -15,14 +14,14 @@ export class CoreWeappCloudServiceImplService { * uploadWeapp */ async uploadWeapp(...args: any[]): Promise { - const taskKey: string = String.valueOf(System.currentTimeMillis() / 1000); + const taskKey: string = String(Math.floor(Date.now() / 1000)); - const tempDir: string = this.config.get('webRootDownRuntime') + "weapp_build/" + taskKey + "/"; + const tempDir: string = this.appConfig.webRootDownRuntime + "weapp_build/" + taskKey + "/"; const packageDir: string = tempDir + "package/"; FileTools.createDirs(packageDir); // 整理编译文件 - const compileAddon: Addon = addonMapper.selectOne(new QueryWrapper().select("`key`").like("compile", "weapp").last("limit 1")); + const compileAddon: Addon = this.addonRepository.findOne(new ().select("`key`").like("compile", "weapp").last("limit 1")); if (compileAddon == null) { handleUniapp(packageDir + "uni-app/", param); } else { @@ -30,8 +29,8 @@ export class CoreWeappCloudServiceImplService { } try { - fs.copyFileSync(this.config.get('webRootDownResource' + param.getUploadPrivateKey()), packageDir + "private.key"); - } catch (e) { + fs.copyFileSync(this.appConfig.webRootDownResource + param.getUploadPrivateKey(), packageDir + "private.key"); + } catch (Exception e) { throw new BadRequestException(e.message); } @@ -39,11 +38,11 @@ export class CoreWeappCloudServiceImplService { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const actionQuery: Record = {}; + const actionQuery: Record = new HashRecord<>(); actionQuery.put("data[product_key]", instance.getProductKey()); const actionToken: Record = niucloudService.getActionToken("weappbuild", actionQuery); - const query: Record = {}; + const query: Record = new HashRecord<>(); query.put("authorize_code", instance.getCode()); query.put("compile", compileAddon != null ? 1 : 0); query.put("appid", param.getAppId()); @@ -59,9 +58,9 @@ export class CoreWeappCloudServiceImplService { }) .method(Method.POST).execute(); - const res: Record = JSONUtil.parseObj(response.body()); + const res: Record = JSON.parse(response.body()); - if (!res.getInt("code", 0) === 1) throw new BadRequestException(res.getStr("msg")); + if (!res.getInt("code", 0).equals(1)) throw new BadRequestException(res.getStr("msg")); return taskKey; } @@ -72,15 +71,15 @@ export class CoreWeappCloudServiceImplService { async getWeappCompileLog(...args: any[]): Promise { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const query: Record = {}; + const query: Record = {}; query.put("authorize_code", instance.getCode()); query.put("timestamp", key); const response: HttpResponse = new NiucloudUtils.Cloud().useThirdBuild().build("cloud/get_weapp_logs").query(query).method(Method.GET).execute(); try { - const res: Record = JSONUtil.parseObj(response.body()); + const res: Record = JSON.parse(response.body()); return res; - } catch (e) { + } catch (Exception e) { return null; } } @@ -92,14 +91,14 @@ export class CoreWeappCloudServiceImplService { try { const instance: NiucloudUtils = NiucloudUtils.getInstance(); - const query: Record = {}; + const query: Record = {}; query.put("authorize_code", instance.getCode()); const response: HttpResponse = new NiucloudUtils.Cloud().useThirdBuild().build("cloud/get_weapp_preview").query(query).execute(); - if (JSONUtil.isJson(response.body()) && JSONUtil.parseObj(response.body()).getInt("code") === "0") return ""; + if (JSONUtil.isJson(response.body()) && JSON.parse(response.body()).getInt("code").equals("0")) return ""; if (checkImageType(response.bodyStream()) === "unknown") return ""; return "data:image/"+ checkImageType(response.bodyStream()) +";base64," + Base64.getEncoder().encodeToString(response.bodyBytes()); - } catch (e) { + } catch (Exception e) { return ""; } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-config-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-config-service-impl.service.ts index 5f81af56..5a9aa7c3 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-config-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-config-service-impl.service.ts @@ -18,7 +18,7 @@ export class CoreWeappConfigServiceImplService { const vo: WeappConfigVo = new WeappConfigVo(); if(ObjectUtil.isNotNull(coreSysConfigVo.getValueJson())) { - vo = JSONUtil.toBean(coreSysConfigVo.getValueJson(), WeappConfigVo.class); + vo = Object.assign(new WeappConfigVo(), coreSysConfigVo.getValueJson()); } return vo; } @@ -27,7 +27,7 @@ export class CoreWeappConfigServiceImplService { * setWeappConfig */ async setWeappConfig(...args: any[]): Promise { - coreConfigService.setConfig(siteId, ConfigKeyEnum.path.basename(WEAPP), JSONUtil.parseObj(weappConfigParam)); + coreConfigService.setConfig(siteId, ConfigKeyEnum.path.basename(WEAPP), JSON.parse(weappConfigParam)); } /** @@ -36,13 +36,13 @@ export class CoreWeappConfigServiceImplService { async getWeappAuthorizationInfo(...args: any[]): Promise { const config: Record = coreConfigService.getConfigValue(siteId, ConfigKeyEnum.path.basename(WEAPP_AUTHORIZATION_INFO)); if (config == null) return null; - return JSONUtil.toBean(config, WxOpenAuthorizerInfoResult.class); + return Object.assign(new WxOpenAuthorizerInfoResult(), config); } /** * setWeappAuthorizationInfo */ async setWeappAuthorizationInfo(...args: any[]): Promise { - coreConfigService.setConfig(siteId, ConfigKeyEnum.path.basename(WEAPP_AUTHORIZATION_INFO), JSONUtil.parseObj(weappAuthorizationInfo)); + coreConfigService.setConfig(siteId, ConfigKeyEnum.path.basename(WEAPP_AUTHORIZATION_INFO), JSON.parse(weappAuthorizationInfo)); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-delivery-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-delivery-service-impl.service.ts index d3e00b97..c85997ae 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-delivery-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-delivery-service-impl.service.ts @@ -22,7 +22,7 @@ export class CoreWeappDeliveryServiceImplService { console.log("小程序未开通发货信息管理服务" + res.getErrMsg()); } vo.setIsTradeManaged(res.getTradeManaged()); - } catch (e) { + } catch (Exception e) { } return vo; } @@ -45,7 +45,7 @@ export class CoreWeappDeliveryServiceImplService { const response: WxMaOrderShippingInfoBaseResponse = new WxMaOrderShippingInfoBaseResponse(); response.setErrCode(0); return response; - } catch (e) { + } catch (Exception e) { const response: WxMaOrderShippingInfoBaseResponse = new WxMaOrderShippingInfoBaseResponse(); response.setErrCode(1); response.setErrMsg(e.message); @@ -61,7 +61,7 @@ export class CoreWeappDeliveryServiceImplService { log.info("PINTUAN-开始上传微信发货信息 - siteId: {}, data: {}", siteId, shippingData); // 获取微信支付配置 - const payChannel: PayChannel = payChannelMapper.selectOne(new LambdaQueryWrapper() + const payChannel: PayChannel = this.payChannelRepository.findOne(new Lambda() .eq(PayChannel::getSiteId, siteId) .eq(PayChannel::getType, CertEnum.WECHATPAY.getCode()) .eq(PayChannel::getChannel, CertEnum.WEAPP.getCode())); @@ -69,7 +69,7 @@ export class CoreWeappDeliveryServiceImplService { const mchId: string = ""; if (payChannel != null && !ObjectUtils.isEmpty(payChannel.getConfig())) { const config: string = payChannel.getConfig(); - const jsonObject: Record = JSONUtil.parseObj(config); + const jsonObject: Record = JSON.parse(config); mchId = jsonObject.getStr("mch_id"); } @@ -88,20 +88,20 @@ export class CoreWeappDeliveryServiceImplService { shippingInfo.setDeliveryMode(shippingData.getDeliveryMode()); // 处理发货列表 - const wxShippingList: ShippingListBean[] = []; + ShippingListBean[] wxShippingList = []; for (WeappUploadShippingParam.UploadShippingParam item : shippingData.getShippingList()) { const shipping: ShippingListBean = new ShippingListBean(); - BeanUtils.copyProperties(item, shipping); + Object.assign(shipping, item); WeappUploadShippingParam.const contact: ContactInfo = item.getContact(); if (contact != null) { const wxContact: ContactBean = new ContactBean(); - BeanUtils.copyProperties(contact, wxContact); + Object.assign(wxContact, contact); shipping.setContact(wxContact); } - wxShippingList.add(shipping); + wxShippingList.push(shipping); } shippingInfo.setShippingList(wxShippingList); @@ -116,12 +116,12 @@ export class CoreWeappDeliveryServiceImplService { // 发货完成标识 shippingInfo.setIsAllDelivered(shippingData.getIsAllDelivered()); - log.info("PINTUAN-发货信息录入接口参数: {}", JSONUtil.toJsonStr(shippingInfo)); + log.info("PINTUAN-发货信息录入接口参数: {}", JSON.stringify(shippingInfo)); // 微信订单录入有时差,延时3秒执行 try { Thread.sleep(3000); - } catch (InterruptedException e) { + } catch (e) { Thread.currentThread().interrupt(); } @@ -130,11 +130,11 @@ export class CoreWeappDeliveryServiceImplService { .getWxMaOrderShippingService() .upload(shippingInfo); - log.info("PINTUAN-发货信息录入接口返回结果: {}", JSONUtil.toJsonStr(response)); + log.info("PINTUAN-发货信息录入接口返回结果: {}", JSON.stringify(response)); return response; - } catch (e) { + } catch (Exception e) { const errorMsg: string = String.format("uploadShippingInfo报错: %s, File: %s, line: %d", e.message, e.getStackTrace()[0].getFileName(), e.getStackTrace()[0].getLineNumber()); log.error(errorMsg, e); diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-service-impl.service.ts index 9c64db0c..d82d6713 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/weapp/impl/core-weapp-service-impl.service.ts @@ -14,9 +14,9 @@ export class CoreWeappServiceImplService { */ async qrcodeBytes(...args: any[]): Promise { try { - const scene: string[] = []; + String[] scene = []; for (const key of data.keySet()) { - scene.add(key + "-" + data.get(key).toString()); + scene.push(key + "-" + data.get(key).toString()); } return WechatUtils.miniapp(siteId).getQrcodeService().createWxaCodeUnlimitBytes( @@ -29,7 +29,7 @@ export class CoreWeappServiceImplService { null, false ); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } @@ -39,9 +39,9 @@ export class CoreWeappServiceImplService { */ async qrcodeFile(...args: any[]): Promise { try { - const scene: string[] = []; + String[] scene = []; for (const key of data.keySet()) { - scene.add(key + "-" + data.get(key).toString()); + scene.push(key + "-" + data.get(key).toString()); } return WechatUtils.miniapp(siteId).getQrcodeService().createWxaCodeUnlimit( @@ -55,7 +55,7 @@ export class CoreWeappServiceImplService { null, false ); - } catch (e) { + } catch (Exception e) { throw new BadRequestException(e.message); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wechat/impl/core-wechat-config-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wechat/impl/core-wechat-config-service-impl.service.ts index da9f7a28..40fde1b9 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wechat/impl/core-wechat-config-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wechat/impl/core-wechat-config-service-impl.service.ts @@ -18,7 +18,7 @@ export class CoreWechatConfigServiceImplService { const vo: WechatConfigVo = new WechatConfigVo(); if(ObjectUtil.isNotNull(coreSysConfigVo.getValueJson())) { - vo = JSONUtil.toBean(coreSysConfigVo.getValueJson(), WechatConfigVo.class); + vo = Object.assign(new WechatConfigVo(), coreSysConfigVo.getValueJson()); } return vo; } @@ -27,14 +27,14 @@ export class CoreWechatConfigServiceImplService { * setWechatConfig */ async setWechatConfig(...args: any[]): Promise { - coreConfigService.setConfig(siteId, ConfigKeyEnum.path.basename(WECHAT), JSONUtil.parseObj(wechatConfigParam)); + coreConfigService.setConfig(siteId, ConfigKeyEnum.path.basename(WECHAT), JSON.parse(wechatConfigParam)); } /** * setWechatAuthorizationInfo */ async setWechatAuthorizationInfo(...args: any[]): Promise { - coreConfigService.setConfig(siteId, ConfigKeyEnum.path.basename(WECHAT_AUTHORIZATION_INFO), JSONUtil.parseObj(wechatAuthorizationInfo)); + coreConfigService.setConfig(siteId, ConfigKeyEnum.path.basename(WECHAT_AUTHORIZATION_INFO), JSON.parse(wechatAuthorizationInfo)); } /** @@ -43,6 +43,6 @@ export class CoreWechatConfigServiceImplService { async getWechatAuthorizationInfo(...args: any[]): Promise { const config: Record = coreConfigService.getConfigValue(siteId, ConfigKeyEnum.path.basename(WECHAT_AUTHORIZATION_INFO)); if (config == null) return null; - return JSONUtil.toBean(config, WxOpenAuthorizerInfoResult.class); + return Object.assign(new WxOpenAuthorizerInfoResult(), config); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wechat/impl/core-wechat-reply-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wechat/impl/core-wechat-reply-service-impl.service.ts index 797d8a8b..b6264d64 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wechat/impl/core-wechat-reply-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wechat/impl/core-wechat-reply-service-impl.service.ts @@ -13,14 +13,14 @@ export class CoreWechatReplyServiceImplService { * getDefault */ async getDefault(...args: any[]): Promise { - const model: WechatReply = wechatReplyMapper.selectOne(new QueryWrapper() + const model: WechatReply = this.wechatReplyRepository.findOne(new () .eq("reply_type", WechatReplyTypeEnum.REPLY_DEFAULT.getType()) .eq("site_id", siteId)); if (!ObjectUtil.isNotNull(model)) return null; const vo: WechatReplyInfoVo = new WechatReplyInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } @@ -28,14 +28,14 @@ export class CoreWechatReplyServiceImplService { * getSubscribe */ async getSubscribe(...args: any[]): Promise { - const model: WechatReply = wechatReplyMapper.selectOne(new QueryWrapper() + const model: WechatReply = this.wechatReplyRepository.findOne(new () .eq("reply_type", WechatReplyTypeEnum.REPLY_SUBSCRIBE.getType()) .eq("site_id", siteId)); if (!ObjectUtil.isNotNull(model)) return null; const vo: WechatReplyInfoVo = new WechatReplyInfoVo(); - BeanUtils.copyProperties(model, vo); + Object.assign(vo, model); return vo; } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wxoplatform/impl/core-oplatform-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wxoplatform/impl/core-oplatform-service-impl.service.ts index 73969d4f..eefb9182 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wxoplatform/impl/core-oplatform-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wxoplatform/impl/core-oplatform-service-impl.service.ts @@ -15,7 +15,7 @@ export class CoreOplatformServiceImplService { */ async getSiteIdByAuthorizerAppid(...args: any[]): Promise { String[] configKey = new String[]{ ConfigKeyEnum.path.basename(WECHAT), ConfigKeyEnum.path.basename(WEAPP), ConfigKeyEnum.path.basename(WEAPP_AUTHORIZATION_INFO), ConfigKeyEnum.path.basename(WECHAT_AUTHORIZATION_INFO)}; - const config: SysConfig = sysConfigMapper.selectOne(new QueryWrapper().like("value", appid).in("config_key", configKey).last("limit 1")); + const config: SysConfig = this.sysConfigRepository.findOne(new ().like("value", appid).in("config_key", configKey).last("limit 1")); const config: return = = null ? 0 : config.getSiteId(); } } diff --git a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wxoplatform/impl/core-oplatform-static-config-service-impl.service.ts b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wxoplatform/impl/core-oplatform-static-config-service-impl.service.ts index 92713f02..87dbcc6c 100644 --- a/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wxoplatform/impl/core-oplatform-static-config-service-impl.service.ts +++ b/wwjcloud-nest-v1/wwjcloud/libs/wwjcloud-core/src/services/core/wxoplatform/impl/core-oplatform-static-config-service-impl.service.ts @@ -21,7 +21,7 @@ export class CoreOplatformStaticConfigServiceImplService { coreOplatformStaticConfigVo.setWechatAuthDomain(RequestUtils.getDomain(false)); try { coreOplatformStaticConfigVo.setUploadIp(InetAddress.getByName("java.oss.niucloud.com").getHostAddress()); - } catch (e) { + } catch (Exception e) { coreOplatformStaticConfigVo.setUploadIp(""); } return coreOplatformStaticConfigVo; @@ -47,7 +47,7 @@ export class CoreOplatformStaticConfigServiceImplService { async getWxOplatformConfig(...args: any[]): Promise { const vo: OplatformConfigVo = new OplatformConfigVo(); const config: Record = coreConfigService.getConfigValue(RequestUtils.defaultSiteId(), ConfigKeyEnum.path.basename(WXOPLATFORM)); - if (ObjectUtil.isNotEmpty(config)) vo = JSONUtil.toBean(config, OplatformConfigVo.class); + if (!!config) vo = Object.assign(new OplatformConfigVo(), config); return vo; } }