diff --git a/src/main/java/com/gxwebsoft/common/core/utils/BtUtil.java b/src/main/java/com/gxwebsoft/common/core/utils/BtUtil.java deleted file mode 100644 index 53e1d3f..0000000 --- a/src/main/java/com/gxwebsoft/common/core/utils/BtUtil.java +++ /dev/null @@ -1,149 +0,0 @@ -package com.gxwebsoft.common.core.utils; - -import com.gxwebsoft.oa.entity.Assets; -import com.gxwebsoft.oa.service.AssetsService; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStreamReader; -import java.io.PrintWriter; -import java.math.BigInteger; -import java.net.URL; -import java.net.URLConnection; -import java.security.MessageDigest; -import java.util.Date; - -/** - * 宝塔工具类 - * @author 科技小王子 - * - */ -@Component -public class BtUtil { - public static Integer tenantId; - public static String server; - public static String token; - private static String timestamp; - @Resource - private AssetsService assetsService; - - // 实例化客户端 - public BtUtil client(Integer id) { - Assets assets = assetsService.getByIdRel(id); - try { - String btSign = assets.getBtSign(); - server = "http://".concat(assets.getCode()).concat(":9003"); - String url = "http://".concat(assets.getCode()) + ":9003/system?action=GetSystemTotal"; - timestamp = (new Date().getTime()+""); - String md5Sign = getMd5(btSign); - String temp = timestamp+md5Sign; - token = getMd5(temp); - - String json = "request_time="+timestamp+"&request_token="+token; - String responseText = sendPost(url,json); - System.out.println("responseText = " + responseText); - System.out.println(responseText); - } catch (Exception e) { - e.printStackTrace(); - } - return this; - } - - public String getSystemTotal(){ - String url = server.concat("/system?action=GetSystemTotal"); - String json = "request_time="+timestamp+"&request_token="+token; - String responseText = sendPost(url,json); - System.out.println("responseText = " + responseText); - return responseText; - } - - public String getDiskInfo(){ - String url = server.concat("/system?action=GetDiskInfo"); - String json = "request_time="+timestamp+"&request_token="+token; - return sendPost(url,json); - } - -// public void config() -// { -// try { -// System.out.println("tenantId = " + tenantId); -// String btSign = "XXXXXXXXXXXXXXXXXXXXXXXX"; -// String url = "http://XXX.XXX.XXX.XXX:8888/system?action=GetSystemTotal"; -// String timestamp = (new Date().getTime()+""); -// String md5Sign = getMd5(btSign); -// String temp = timestamp+md5Sign; -// String token = getMd5(temp); -// -// String json = "request_time="+timestamp+"&request_token="+token; -// String responseText = sendPost(url,json); -// System.out.println(responseText); -// } catch (Exception e) { -// e.printStackTrace(); -// } -// } - - public static String getMd5(String str) throws Exception - { - try { - // 生成一个MD5加密计算摘要 - MessageDigest md = MessageDigest.getInstance("MD5"); - // 计算md5函数 - md.update(str.getBytes()); - // digest()最后确定返回md5 hash值,返回值为8为字符串。因为md5 hash值是16位的hex值,实际上就是8位的字符 - // BigInteger函数则将8位的字符串转换成16位hex值,用字符串来表示;得到字符串形式的hash值 - return new BigInteger(1, md.digest()).toString(16); - } catch (Exception e) { - throw new Exception("MD5加密出现错误,"+e.toString()); - } - } - - public static String sendPost(String url, String param) { - PrintWriter out = null; - BufferedReader in = null; - StringBuffer result = new StringBuffer(); - try { - URL realUrl = new URL(url); - // 打开和URL之间的连接 - URLConnection conn = realUrl.openConnection(); - // 设置通用的请求属性 - conn.setRequestProperty("accept", "text/xml,text/javascript,text/html,application/json"); - conn.setRequestProperty("connection", "Keep-Alive"); - // 发送POST请求必须设置如下两行 - conn.setDoOutput(true); - conn.setDoInput(true); - // 获取URLConnection对象对应的输出流 - out = new PrintWriter(conn.getOutputStream()); - // 发送请求参数 - out.print(param); - // flush输出流的缓冲 - out.flush(); - // 定义BufferedReader输入流来读取URL的响应 - in = new BufferedReader(new InputStreamReader(conn.getInputStream())); - String line; - while ((line = in.readLine()) != null) { - result.append(line); - } - } catch (Exception e) { - System.out.println("发送 POST 请求出现异常!"+e); - e.printStackTrace(); - } - //使用finally块来关闭输出流、输入流 - finally{ - try{ - if(out!=null){ - out.close(); - } - if(in!=null){ - in.close(); - } - } - catch(IOException ex){ - ex.printStackTrace(); - } - } - return result.toString(); - } - -} diff --git a/src/main/java/com/gxwebsoft/common/core/utils/SignCheckUtil.java b/src/main/java/com/gxwebsoft/common/core/utils/SignCheckUtil.java index 743130e..c2fe06a 100644 --- a/src/main/java/com/gxwebsoft/common/core/utils/SignCheckUtil.java +++ b/src/main/java/com/gxwebsoft/common/core/utils/SignCheckUtil.java @@ -3,7 +3,6 @@ package com.gxwebsoft.common.core.utils; import java.util.*; import cn.hutool.crypto.SecureUtil; -import com.gxwebsoft.oa.entity.Tenant; import org.apache.commons.lang3.StringUtils; import com.alibaba.fastjson.JSONObject; diff --git a/src/main/java/com/gxwebsoft/common/system/controller/MainController.java b/src/main/java/com/gxwebsoft/common/system/controller/MainController.java index 34ab4fe..e6ea0d2 100644 --- a/src/main/java/com/gxwebsoft/common/system/controller/MainController.java +++ b/src/main/java/com/gxwebsoft/common/system/controller/MainController.java @@ -33,7 +33,6 @@ import com.gxwebsoft.common.system.param.UpdatePasswordParam; import com.gxwebsoft.common.system.result.CaptchaResult; import com.gxwebsoft.common.system.result.LoginResult; import com.gxwebsoft.common.system.service.*; -import com.gxwebsoft.oa.service.CustomerService; import com.wf.captcha.SpecCaptcha; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/src/main/java/com/gxwebsoft/common/system/controller/SettingController.java b/src/main/java/com/gxwebsoft/common/system/controller/SettingController.java index b355520..15cfa38 100644 --- a/src/main/java/com/gxwebsoft/common/system/controller/SettingController.java +++ b/src/main/java/com/gxwebsoft/common/system/controller/SettingController.java @@ -9,8 +9,6 @@ import com.gxwebsoft.common.core.web.*; import com.gxwebsoft.common.system.entity.Setting; import com.gxwebsoft.common.system.param.SettingParam; import com.gxwebsoft.common.system.service.SettingService; -import com.gxwebsoft.oa.entity.Tenant; -import com.gxwebsoft.oa.service.TenantService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.security.access.prepost.PreAuthorize; @@ -34,8 +32,6 @@ public class SettingController extends BaseController { @Resource private SettingService settingService; @Resource - private TenantService tenantService; - @Resource private CacheClient cacheClient; @PreAuthorize("hasAuthority('sys:setting:save')") @@ -99,11 +95,6 @@ public class SettingController extends BaseController { final String siteName = jsonObject.getString("siteName"); final String logo = jsonObject.getString("logo"); System.out.println("siteName = " + siteName); - final Tenant tenant = new Tenant(); - tenant.setTenantName(siteName); - tenant.setTenantId(getTenantId()); - tenant.setLogo(logo); - tenantService.updateById(tenant); } return success("修改成功"); } diff --git a/src/main/java/com/gxwebsoft/common/system/entity/User.java b/src/main/java/com/gxwebsoft/common/system/entity/User.java index 6a9bb9f..cf4631d 100644 --- a/src/main/java/com/gxwebsoft/common/system/entity/User.java +++ b/src/main/java/com/gxwebsoft/common/system/entity/User.java @@ -3,7 +3,6 @@ package com.gxwebsoft.common.system.entity; import cn.hutool.core.util.DesensitizedUtil; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; -import com.gxwebsoft.oa.entity.App; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -200,10 +199,6 @@ public class User implements UserDetails { @TableField(exist = false) private String mobile; - @ApiModelProperty("应用信息") - @TableField(exist = false) - private App appInfo; - @ApiModelProperty("企业信息") @TableField(exist = false) private Company companyInfo; diff --git a/src/main/java/com/gxwebsoft/common/system/service/impl/UserServiceImpl.java b/src/main/java/com/gxwebsoft/common/system/service/impl/UserServiceImpl.java index 3bd8e39..d671370 100644 --- a/src/main/java/com/gxwebsoft/common/system/service/impl/UserServiceImpl.java +++ b/src/main/java/com/gxwebsoft/common/system/service/impl/UserServiceImpl.java @@ -18,8 +18,6 @@ import com.gxwebsoft.common.system.service.CompanyService; import com.gxwebsoft.common.system.service.RoleMenuService; import com.gxwebsoft.common.system.service.UserRoleService; import com.gxwebsoft.common.system.service.UserService; -import com.gxwebsoft.oa.entity.App; -import com.gxwebsoft.oa.service.AppService; import com.gxwebsoft.shop.entity.Merchant; import com.gxwebsoft.shop.entity.MerchantClerk; import com.gxwebsoft.shop.service.MerchantClerkService; @@ -62,8 +60,6 @@ public class UserServiceImpl extends ServiceImpl implements Us @Resource private CacheClient cacheClient; @Resource - private AppService appService; - @Resource private CompanyService companyService; @Resource private StringRedisTemplate stringRedisTemplate; @@ -93,12 +89,12 @@ public class UserServiceImpl extends ServiceImpl implements Us public void listRanking(UserParam param) { List list = baseMapper.selectListRel(param); Map map = new HashMap<>(); - list.forEach(d -> { - int count = appService.count(new LambdaQueryWrapper() - .eq(App::getUserId, d.getUserId())); - // 更新全部用户的插件数量 - cacheClient.zAdd(USER_RANKING_BY_APPS,d.getUserId(), (double) count); - }); +// list.forEach(d -> { +// int count = appService.count(new LambdaQueryWrapper() +// .eq(App::getUserId, d.getUserId())); +// // 更新全部用户的插件数量 +// cacheClient.zAdd(USER_RANKING_BY_APPS,d.getUserId(), (double) count); +// }); } @Override diff --git a/src/main/java/com/gxwebsoft/oa/constants/NoticeConstants.java b/src/main/java/com/gxwebsoft/oa/constants/NoticeConstants.java deleted file mode 100644 index adaa556..0000000 --- a/src/main/java/com/gxwebsoft/oa/constants/NoticeConstants.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.gxwebsoft.oa.constants; - -public class NoticeConstants { - // 通知类型 - public static final String NOTICE = "notice"; // 提醒 - public static final String LETTER = "letter"; // 私信 - public static final String TODO = "todo"; // 待办 - public static final String CHAT_GPT = "chatGPT"; // AI机器人 - -} diff --git a/src/main/java/com/gxwebsoft/oa/constants/TaskConstants.java b/src/main/java/com/gxwebsoft/oa/constants/TaskConstants.java deleted file mode 100644 index 2299d33..0000000 --- a/src/main/java/com/gxwebsoft/oa/constants/TaskConstants.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.gxwebsoft.oa.constants; - -public class TaskConstants { - // 进度管理 - public static final Integer PROGRESS0 = 0; // 待分派 - public static final Integer PROGRESS1 = 1; // 待处理 - public static final Integer PROGRESS2 = 2; // 处理中 - public static final Integer PROGRESS3 = 3; // 待确认 - public static final Integer PROGRESS4 = 4; // 待反馈 - public static final Integer PROGRESS5 = 5; // 已完结 - public static final Integer PROGRESS6 = 6; // 已关闭 - -} diff --git a/src/main/java/com/gxwebsoft/oa/controller/AppController.java b/src/main/java/com/gxwebsoft/oa/controller/AppController.java deleted file mode 100644 index 5919d7b..0000000 --- a/src/main/java/com/gxwebsoft/oa/controller/AppController.java +++ /dev/null @@ -1,173 +0,0 @@ -package com.gxwebsoft.oa.controller; - -import cn.hutool.core.util.IdUtil; -import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.utils.CacheClient; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.core.web.BatchParam; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.oa.entity.App; -import com.gxwebsoft.oa.entity.AppUser; -import com.gxwebsoft.oa.param.AppParam; -import com.gxwebsoft.oa.service.AppService; -import com.gxwebsoft.oa.service.AppUserService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; -import java.util.Set; -import java.util.stream.Collectors; - -/** - * 应用管理记录表控制器 - * - * @author 科技小王子 - * @since 2023-03-28 10:45:39 - */ -@Api(tags = "应用管理记录表管理") -@RestController -@RequestMapping("/api/oa/app") -public class AppController extends BaseController { - @Resource - private AppService appService; - @Resource - private CacheClient cacheClient; - @Resource - private AppUserService appUserService; - - @PreAuthorize("hasAuthority('oa:app:list')") - @OperationLog - @ApiOperation("分页查询应用管理记录表") - @GetMapping("/page") - public ApiResult> page(AppParam param) { - final User loginUser = getLoginUser(); - final Integer userId = loginUser.getUserId(); - loginUser.getRoles().forEach(d -> { - if(!StrUtil.equals(d.getRoleCode(),"superAdmin") && !StrUtil.equals(d.getRoleCode(),"admin")){ - // 非管理员按项目成员权限显示 - final List list = appUserService.list(new LambdaQueryWrapper().eq(AppUser::getUserId, userId)); - final Set collect = list.stream().map(AppUser::getAppId).collect(Collectors.toSet()); - param.setAppIds(collect); - } - }); - // 使用关联查询 - return success(appService.pageRel(param)); - } - - @PreAuthorize("hasAuthority('oa:app:list')") - @OperationLog - @ApiOperation("查询全部应用管理记录表") - @GetMapping() - public ApiResult> list(AppParam param) { - // 使用关联查询 - return success(appService.listRel(param)); - } - - @PreAuthorize("hasAuthority('oa:app:list')") - @OperationLog - @ApiOperation("根据id查询应用管理记录表") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - // 使用关联查询 - return success(appService.getByIdRel(id)); - } - - @PreAuthorize("hasAuthority('oa:app:save')") - @OperationLog - @ApiOperation("添加应用管理记录表") - @PostMapping() - public ApiResult save(@RequestBody App app) { - // 记录当前登录用户id、租户id、商户编号 - User loginUser = getLoginUser(); - if (loginUser != null) { - app.setUserId(loginUser.getUserId()); - app.setTenantId(loginUser.getTenantId()); - } - if (appService.count(new LambdaQueryWrapper() - .eq(App::getAppCode, app.getAppCode())) > 0) { - return fail("应用标识已存在"); - } - if (appService.save(app)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:app:update')") - @OperationLog - @ApiOperation("修改应用管理记录表") - @PutMapping() - public ApiResult update(@RequestBody App app) { - if (appService.updateById(app)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:app:remove')") - @OperationLog - @ApiOperation("删除应用管理记录表") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - if (appService.removeById(id)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @PreAuthorize("hasAuthority('oa:app:save')") - @OperationLog - @ApiOperation("批量添加应用管理记录表") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - if (appService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:app:update')") - @OperationLog - @ApiOperation("批量修改应用管理记录表") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - if (batchParam.update(appService, "app_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:app:remove')") - @OperationLog - @ApiOperation("批量删除应用管理记录表") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - if (appService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @PreAuthorize("hasAuthority('oa:app:update')") - @ApiOperation("重置秘钥") - @PostMapping("/updateAppSecret") - public ApiResult updateAppSecret(@RequestBody App app) { - if (app.getAppId() == null) { - return fail("请勿重复操作"); - } - App result = appService.getByIdRel(app.getAppId()); - String key = cacheClient.key("AppSecret", app.getAppId()); - String appSecret = IdUtil.fastSimpleUUID(); - cacheClient.set(key,appSecret); - result.setAppSecret(appSecret); - return success("重置成功",result); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/controller/AppUserController.java b/src/main/java/com/gxwebsoft/oa/controller/AppUserController.java deleted file mode 100644 index 9f31677..0000000 --- a/src/main/java/com/gxwebsoft/oa/controller/AppUserController.java +++ /dev/null @@ -1,133 +0,0 @@ -package com.gxwebsoft.oa.controller; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.core.web.BatchParam; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.entity.AppUser; -import com.gxwebsoft.oa.param.AppUserParam; -import com.gxwebsoft.oa.service.AppUserService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; - -/** - * 应用成员控制器 - * - * @author 科技小王子 - * @since 2023-05-31 13:18:55 - */ -@Api(tags = "应用成员管理") -@RestController -@RequestMapping("/api/oa/app-user") -public class AppUserController extends BaseController { - @Resource - private AppUserService appUserService; - - @PreAuthorize("hasAuthority('oa:appUser:list')") - @OperationLog - @ApiOperation("分页查询应用成员") - @GetMapping("/page") - public ApiResult> page(AppUserParam param) { - // 使用关联查询 - return success(appUserService.pageRel(param)); - } - - @PreAuthorize("hasAuthority('oa:appUser:list')") - @OperationLog - @ApiOperation("查询全部应用成员") - @GetMapping() - public ApiResult> list(AppUserParam param) { - // 使用关联查询 - if (param.getAppId() == null) { - return fail("AppId不存在",null); - } - return success(appUserService.listRel(param)); - } - - @PreAuthorize("hasAuthority('oa:appUser:list')") - @OperationLog - @ApiOperation("根据id查询应用成员") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - // 使用关联查询 - return success(appUserService.getByIdRel(id)); - } - - @PreAuthorize("hasAuthority('oa:appUser:save')") - @OperationLog - @ApiOperation("添加应用成员") - @PostMapping() - public ApiResult save(@RequestBody AppUser appUser) { - if (appUserService.count(new LambdaQueryWrapper() - .eq(AppUser::getUserId, appUser.getUserId()).eq(AppUser::getAppId,appUser.getAppId())) > 0) { - return fail("该成员已存在"); - } - if (appUserService.save(appUser)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:appUser:update')") - @OperationLog - @ApiOperation("修改应用成员") - @PutMapping() - public ApiResult update(@RequestBody AppUser appUser) { - if (appUserService.updateById(appUser)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:appUser:remove')") - @OperationLog - @ApiOperation("删除应用成员") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - if (appUserService.removeById(id)) { - return success("移除成功"); - } - return fail("移除失败"); - } - - @PreAuthorize("hasAuthority('oa:appUser:save')") - @OperationLog - @ApiOperation("批量添加应用成员") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - if (appUserService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:appUser:update')") - @OperationLog - @ApiOperation("批量修改应用成员") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - if (batchParam.update(appUserService, "app_user_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:appUser:remove')") - @OperationLog - @ApiOperation("批量删除应用成员") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - if (appUserService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/controller/AssetsController.java b/src/main/java/com/gxwebsoft/oa/controller/AssetsController.java deleted file mode 100644 index d87e153..0000000 --- a/src/main/java/com/gxwebsoft/oa/controller/AssetsController.java +++ /dev/null @@ -1,141 +0,0 @@ -package com.gxwebsoft.oa.controller; - -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.utils.BtUtil; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.core.web.BatchParam; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.oa.entity.Assets; -import com.gxwebsoft.oa.param.AssetsParam; -import com.gxwebsoft.oa.service.AssetsService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; - -/** - * 服务器资产记录表控制器 - * - * @author WebSoft - * @since 2022-11-16 11:13:16 - */ -@Api(tags = "服务器资产记录表管理") -@RestController -@RequestMapping("/api/oa/assets") -public class AssetsController extends BaseController { - @Resource - private AssetsService assetsService; - @Resource - private BtUtil btUtil; - - @PreAuthorize("hasAuthority('oa:assets:list')") - @OperationLog - @ApiOperation("分页查询服务器资产记录表") - @GetMapping("/page") - public ApiResult> page(AssetsParam param) { - // 使用关联查询 - return success(assetsService.pageRel(param)); - } - - @PreAuthorize("hasAuthority('oa:assets:list')") - @OperationLog - @ApiOperation("查询全部服务器资产记录表") - @GetMapping() - public ApiResult> list(AssetsParam param) { - // 使用关联查询 - return success(assetsService.listRel(param)); - } - - @PreAuthorize("hasAuthority('oa:assets:list')") - @OperationLog - @ApiOperation("根据id查询服务器资产记录表") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - final Assets assets = assetsService.getByIdRel(id); - final BtUtil client = btUtil.client(id); - final String systemTotal = client.getSystemTotal(); - final String diskInfo = client.getDiskInfo(); - System.out.println("diskInfo = " + diskInfo); - System.out.println("systemTotal = " + systemTotal); - assets.setSystemTotal(systemTotal); - assets.setDiskInfo(diskInfo); - // 使用关联查询 - return success(assets); - } - - @PreAuthorize("hasAuthority('oa:assets:save')") - @OperationLog - @ApiOperation("添加服务器资产记录表") - @PostMapping() - public ApiResult save(@RequestBody Assets assets) { - // 记录当前登录用户id、租户id - User loginUser = getLoginUser(); - if (loginUser != null) { - assets.setUserId(loginUser.getUserId()); - } - if (assetsService.save(assets)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:assets:update')") - @OperationLog - @ApiOperation("修改服务器资产记录表") - @PutMapping() - public ApiResult update(@RequestBody Assets assets) { - if (assetsService.updateById(assets)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:assets:remove')") - @OperationLog - @ApiOperation("删除服务器资产记录表") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - if (assetsService.removeById(id)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @PreAuthorize("hasAuthority('oa:assets:save')") - @OperationLog - @ApiOperation("批量添加服务器资产记录表") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - if (assetsService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:assets:update')") - @OperationLog - @ApiOperation("批量修改服务器资产记录表") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - if (batchParam.update(assetsService, "assets_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:assets:remove')") - @OperationLog - @ApiOperation("批量删除服务器资产记录表") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - if (assetsService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } -} diff --git a/src/main/java/com/gxwebsoft/oa/controller/CustomerController.java b/src/main/java/com/gxwebsoft/oa/controller/CustomerController.java deleted file mode 100644 index aefcb93..0000000 --- a/src/main/java/com/gxwebsoft/oa/controller/CustomerController.java +++ /dev/null @@ -1,131 +0,0 @@ -package com.gxwebsoft.oa.controller; - -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.core.web.BatchParam; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.oa.entity.Customer; -import com.gxwebsoft.oa.param.CustomerParam; -import com.gxwebsoft.oa.service.CustomerService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; - -/** - * 客户管理记录表控制器 - * - * @author WebSoft - * @since 2022-11-16 11:16:14 - */ -@Api(tags = "客户管理记录表管理") -@RestController -@RequestMapping("/api/oa/customer") -public class CustomerController extends BaseController { - @Resource - private CustomerService customerService; - - @PreAuthorize("hasAuthority('oa:customer:list')") - @OperationLog - @ApiOperation("分页查询客户管理记录表") - @GetMapping("/page") - public ApiResult> page(CustomerParam param) { - // 使用关联查询 - return success(customerService.pageRel(param)); - } - - @PreAuthorize("hasAuthority('oa:customer:list')") - @OperationLog - @ApiOperation("查询全部客户管理记录表") - @GetMapping() - public ApiResult> list(CustomerParam param) { - // 使用关联查询 - return success(customerService.listRel(param)); - } - - @PreAuthorize("hasAuthority('oa:customer:list')") - @OperationLog - @ApiOperation("根据id查询客户管理记录表") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - // 使用关联查询 - return success(customerService.getByIdRel(id)); - } - - @PreAuthorize("hasAuthority('oa:customer:save')") - @OperationLog - @ApiOperation("添加客户管理记录表") - @PostMapping() - public ApiResult save(@RequestBody Customer customer) { - // 记录当前登录用户id、租户id - User loginUser = getLoginUser(); - if (loginUser != null) { - customer.setUserId(loginUser.getUserId()); - } - if (customerService.save(customer)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:customer:update')") - @OperationLog - @ApiOperation("修改客户管理记录表") - @PutMapping() - public ApiResult update(@RequestBody Customer customer) { - if (customerService.updateById(customer)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:customer:remove')") - @OperationLog - @ApiOperation("删除客户管理记录表") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - if (customerService.removeById(id)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @PreAuthorize("hasAuthority('oa:customer:save')") - @OperationLog - @ApiOperation("批量添加客户管理记录表") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - if (customerService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:customer:update')") - @OperationLog - @ApiOperation("批量修改客户管理记录表") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - if (batchParam.update(customerService, "customer_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:customer:remove')") - @OperationLog - @ApiOperation("批量删除客户管理记录表") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - if (customerService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/controller/NoticeController.java b/src/main/java/com/gxwebsoft/oa/controller/NoticeController.java deleted file mode 100644 index 012273e..0000000 --- a/src/main/java/com/gxwebsoft/oa/controller/NoticeController.java +++ /dev/null @@ -1,160 +0,0 @@ -package com.gxwebsoft.oa.controller; - -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.oa.entity.Customer; -import com.gxwebsoft.oa.entity.Task; -import com.gxwebsoft.oa.service.NoticeService; -import com.gxwebsoft.oa.entity.Notice; -import com.gxwebsoft.oa.param.NoticeParam; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.BatchParam; -import com.gxwebsoft.common.core.annotation.OperationLog; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.List; - -/** - * 消息记录表控制器 - * - * @author 科技小王子 - * @since 2023-03-22 14:07:26 - */ -@Api(tags = "消息记录表管理") -@RestController -@RequestMapping("/api/oa/notice") -public class NoticeController extends BaseController { - @Resource - private NoticeService noticeService; - - @PreAuthorize("hasAuthority('oa:notice:list')") - @OperationLog - @ApiOperation("分页查询消息记录表") - @GetMapping("/page") - public ApiResult> page(NoticeParam param) { - // 使用关联查询 - param.setUserId(getLoginUserId()); - return success(noticeService.pageRel(param)); - } - - @PreAuthorize("hasAuthority('oa:notice:list')") - @OperationLog - @ApiOperation("查询全部消息记录表") - @GetMapping() - public ApiResult> list(NoticeParam param) { - // 使用关联查询 - param.setUserId(getLoginUserId()); - return success(noticeService.listRel(param)); - } - - @PreAuthorize("hasAuthority('oa:notice:list')") - @OperationLog - @ApiOperation("根据id查询消息记录表") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - return success(noticeService.getById(id)); - // 使用关联查询 - //return success(noticeService.getByIdRel(id)); - } - - @PreAuthorize("hasAuthority('oa:notice:save')") - @OperationLog - @ApiOperation("添加消息记录表") - @PostMapping() - public ApiResult save(@RequestBody Notice notice) { - // 记录当前登录用户id、租户id、商户编号 - User loginUser = getLoginUser(); - if (loginUser != null) { - notice.setUserId(loginUser.getUserId()); - } - if (noticeService.save(notice)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:notice:update')") - @OperationLog - @ApiOperation("修改消息记录表") - @PutMapping() - public ApiResult update(@RequestBody Notice notice) { - if (noticeService.updateById(notice)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:notice:remove')") - @OperationLog - @ApiOperation("删除消息记录表") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - if (noticeService.removeById(id)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @PreAuthorize("hasAuthority('oa:notice:save')") - @OperationLog - @ApiOperation("批量添加消息记录表") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - if (noticeService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:notice:update')") - @OperationLog - @ApiOperation("批量修改消息记录表") - @PutMapping("/batch") - public ApiResult updateBatch(@RequestBody List list) { - System.out.println("list = " + list); - if (noticeService.updateBatchById(list)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:notice:remove')") - @OperationLog - @ApiOperation("批量删除消息记录表") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - if (noticeService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @PreAuthorize("hasAuthority('oa:notice:list')") - @ApiOperation("统计信息") - @GetMapping("/getUnReadNum") - public ApiResult getUnReadNum(){ - JSONObject json = new JSONObject(); - json.put("notice",noticeService.count(new LambdaQueryWrapper() - .eq(Notice::getUserId, getLoginUserId()) - .eq(Notice::getType,"notice") - .eq(Notice::getStatus,0))); - json.put("letter",noticeService.count(new LambdaQueryWrapper() - .eq(Notice::getUserId, getLoginUserId()) - .eq(Notice::getType,"letter") - .eq(Notice::getStatus,0))); - json.put("todo",noticeService.count(new LambdaQueryWrapper() - .eq(Notice::getUserId, getLoginUserId()) - .eq(Notice::getType,"todo") - .eq(Notice::getStatus,0))); - return success("操作成功",json); - } -} diff --git a/src/main/java/com/gxwebsoft/oa/controller/ProjectController.java b/src/main/java/com/gxwebsoft/oa/controller/ProjectController.java deleted file mode 100644 index 7e67813..0000000 --- a/src/main/java/com/gxwebsoft/oa/controller/ProjectController.java +++ /dev/null @@ -1,139 +0,0 @@ -package com.gxwebsoft.oa.controller; - -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.oa.service.ProjectService; -import com.gxwebsoft.oa.entity.Project; -import com.gxwebsoft.oa.param.ProjectParam; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.BatchParam; -import com.gxwebsoft.common.core.annotation.OperationLog; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; - -/** - * 项目管理表控制器 - * - * @author WebSoft - * @since 2022-11-16 11:00:43 - */ -@Api(tags = "项目管理表管理") -@RestController -@RequestMapping("/api/oa/project") -public class ProjectController extends BaseController { - @Resource - private ProjectService projectService; - - @PreAuthorize("hasAuthority('oa:project:list')") - @OperationLog - @ApiOperation("分页查询项目管理表") - @GetMapping("/page") - public ApiResult> page(ProjectParam param) { - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - return success(projectService.page(page, page.getWrapper())); - // 使用关联查询 - //return success(projectService.pageRel(param)); - } - - @PreAuthorize("hasAuthority('oa:project:list')") - @OperationLog - @ApiOperation("查询全部项目管理表") - @GetMapping() - public ApiResult> list(ProjectParam param) { - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - return success(projectService.list(page.getOrderWrapper())); - // 使用关联查询 - //return success(projectService.listRel(param)); - } - - @PreAuthorize("hasAuthority('oa:project:list')") - @OperationLog - @ApiOperation("根据id查询项目管理表") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - return success(projectService.getById(id)); - // 使用关联查询 - //return success(projectService.getByIdRel(id)); - } - - @PreAuthorize("hasAuthority('oa:project:save')") - @OperationLog - @ApiOperation("添加项目管理表") - @PostMapping() - public ApiResult save(@RequestBody Project project) { - // 记录当前登录用户id、租户id - User loginUser = getLoginUser(); - if (loginUser != null) { - project.setUserId(loginUser.getUserId()); - } - if (projectService.save(project)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:project:update')") - @OperationLog - @ApiOperation("修改项目管理表") - @PutMapping() - public ApiResult update(@RequestBody Project project) { - if (projectService.updateById(project)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:project:remove')") - @OperationLog - @ApiOperation("删除项目管理表") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - if (projectService.removeById(id)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @PreAuthorize("hasAuthority('oa:project:save')") - @OperationLog - @ApiOperation("批量添加项目管理表") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - if (projectService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:project:update')") - @OperationLog - @ApiOperation("批量修改项目管理表") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - if (batchParam.update(projectService, "project_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:project:remove')") - @OperationLog - @ApiOperation("批量删除项目管理表") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - if (projectService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/controller/TaskController.java b/src/main/java/com/gxwebsoft/oa/controller/TaskController.java deleted file mode 100644 index 7f9b397..0000000 --- a/src/main/java/com/gxwebsoft/oa/controller/TaskController.java +++ /dev/null @@ -1,193 +0,0 @@ -package com.gxwebsoft.oa.controller; - -import cn.hutool.core.util.StrUtil; -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.web.*; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.common.system.service.UserService; -import com.gxwebsoft.oa.entity.Task; -import com.gxwebsoft.oa.entity.TaskRecord; -import com.gxwebsoft.oa.entity.TaskUser; -import com.gxwebsoft.oa.param.TaskParam; -import com.gxwebsoft.oa.service.NoticeService; -import com.gxwebsoft.oa.service.TaskRecordService; -import com.gxwebsoft.oa.service.TaskService; -import com.gxwebsoft.oa.service.TaskUserService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.List; - -/** - * 工单记录表控制器 - * - * @author WebSoft - * @since 2022-11-16 11:21:43 - */ -@Api(tags = "工单记录表管理") -@RestController -@RequestMapping("/api/oa/task") -public class TaskController extends BaseController { - @Resource - private TaskService taskService; - @Resource - private TaskRecordService taskRecordService; - @Resource - private TaskUserService taskUserService; - @Resource - private UserService userService; - @Resource - private NoticeService noticeService; - - @PreAuthorize("hasAuthority('oa:task:list')") - @OperationLog - @ApiOperation("分页查询工单记录表") - @GetMapping("/page") - public ApiResult> page(TaskParam param) { - // 使用关联查询 - final User loginUser = getLoginUser(); - final Integer type = loginUser.getType(); - loginUser.getRoles().forEach(d -> { - if(!StrUtil.equals(d.getRoleCode(),"superAdmin") && !StrUtil.equals(d.getRoleCode(),"admin")){ - // 如果是开发者账号则按受理人查询 - if (type.equals(6)) { - param.setCommander(loginUser.getUserId()); - }else{ - param.setPromoter(getLoginUserId()); - } - } - }); - return success(taskService.pageRel(param)); - } - - @PreAuthorize("hasAuthority('oa:task:list')") - @OperationLog - @ApiOperation("查询全部工单记录表") - @GetMapping() - public ApiResult> list(TaskParam param) { - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - return success(taskService.list(page.getOrderWrapper())); - // 使用关联查询 - //return success(taskService.listRel(param)); - } - - @PreAuthorize("hasAuthority('oa:task:list')") - @OperationLog - @ApiOperation("根据id查询工单记录表") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - // 使用关联查询 - return success(taskService.getByIdRel(id)); - } - - @PreAuthorize("hasAuthority('oa:task:save')") - @OperationLog - @ApiOperation("添加工单记录表") - @PostMapping() - public ApiResult save(@RequestBody Task task) { - // 记录用户id - final Integer loginUserId = getLoginUserId(); - Integer promoter = task.getPromoter(); - task.setUserId(loginUserId); - task.setComments(StrUtil.sub(task.getContent(),0,200)); - task.setPromoter(promoter != null ? promoter : loginUserId); - task.setLastReadUser(loginUserId); - if (taskService.save(task)) { - // 添加聊天内容明细 - TaskRecord taskRecord = new TaskRecord(); - taskRecord.setUserId(loginUserId); - taskRecord.setContent(task.getContent()); - taskRecord.setTaskId(task.getTaskId()); - taskRecord.setFiles(task.getFiles()); - taskRecordService.save(taskRecord); - // 添加工单成员 - TaskUser taskUser = new TaskUser(); - taskUser.setUserId(loginUserId); - taskUser.setTaskId(task.getTaskId()); - taskUserService.save(taskUser); - // 发待办提醒 - if(task.getCommander() != null){ - noticeService.addTodo(task); - } - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:task:update')") - @OperationLog - @ApiOperation("修改工单记录表") - @PutMapping() - public ApiResult update(@RequestBody Task task) { - if(task.getCommander() != null && userService.getById(task.getCommander()) == null){ - return fail("受理人不存在"); - } - if (taskService.updateById(task)) { - // 发待办提醒 - noticeService.addTodo(task); - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:task:remove')") - @OperationLog - @ApiOperation("删除工单记录表") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - if (taskService.removeById(id)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @PreAuthorize("hasAuthority('oa:task:save')") - @OperationLog - @ApiOperation("批量添加工单记录表") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - if (taskService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:task:update')") - @OperationLog - @ApiOperation("批量修改工单记录表") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - if (batchParam.update(taskService, "task_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:task:remove')") - @OperationLog - @ApiOperation("批量删除工单记录表") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - if (taskService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @PreAuthorize("hasAuthority('oa:task:list')") - @ApiOperation("统计信息") - @GetMapping("/count") - public ApiResult count(TaskParam param){ - // 验证签名 - isCheckSign(); - User loginUser = getLoginUser(); - ArrayList countNum = taskService.getCountNum(loginUser,param); - return success("操作成功",countNum); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/controller/TaskRecordController.java b/src/main/java/com/gxwebsoft/oa/controller/TaskRecordController.java deleted file mode 100644 index 869772f..0000000 --- a/src/main/java/com/gxwebsoft/oa/controller/TaskRecordController.java +++ /dev/null @@ -1,157 +0,0 @@ -package com.gxwebsoft.oa.controller; - -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.oa.entity.Task; -import com.gxwebsoft.oa.service.*; -import com.gxwebsoft.oa.entity.TaskRecord; -import com.gxwebsoft.oa.param.TaskRecordParam; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.BatchParam; -import com.gxwebsoft.common.core.annotation.OperationLog; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; - -import static com.gxwebsoft.oa.constants.NoticeConstants.LETTER; -import static com.gxwebsoft.oa.constants.TaskConstants.*; - -/** - * 工单回复记录表控制器 - * - * @author 科技小王子 - * @since 2023-03-05 00:52:21 - */ -@Api(tags = "工单回复记录表管理") -@RestController -@RequestMapping("/api/oa/task-record") -public class TaskRecordController extends BaseController { - @Resource - private TaskRecordService taskRecordService; - @Resource - private TaskService taskService; - @Resource - private NoticeService noticeService; - - @PreAuthorize("hasAuthority('oa:task:list')") - @OperationLog - @ApiOperation("分页查询工单回复记录表") - @GetMapping("/page") - public ApiResult> page(TaskRecordParam param) { - // 使用关联查询 - return success(taskRecordService.pageRel(param)); - } - - @PreAuthorize("hasAuthority('oa:task:list')") - @OperationLog - @ApiOperation("查询全部工单回复记录表") - @GetMapping() - public ApiResult> list(TaskRecordParam param) { - // 更新查阅状态 - Task task = taskService.getById(param.getTaskId()); - if(!getLoginUserId().equals(task.getLastReadUser())){ - task.setIsRead(1); - } - taskService.updateById(task); - // 使用关联查询 - return success(taskRecordService.listRel(param)); - } - - @PreAuthorize("hasAuthority('oa:task:list')") - @OperationLog - @ApiOperation("根据id查询工单回复记录表") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - // 使用关联查询 - return success(taskRecordService.getByIdRel(id)); - } - - @PreAuthorize("hasAuthority('oa:task:save')") - @OperationLog - @ApiOperation("添加工单回复记录表") - @PostMapping() - public ApiResult save(@RequestBody TaskRecord taskRecord) { - // 记录当前登录用户id、租户id、商户编号 - User loginUser = getLoginUser(); - if (loginUser != null) { - taskRecord.setUserId(loginUser.getUserId()); - } - if (taskRecordService.save(taskRecord)) { - Task task = new Task(); - task.setTaskId(taskRecord.getTaskId()); - task.setProgress(PROGRESS2); - task.setIsRead(0); - task.setLastReadUser(getLoginUserId()); - taskService.updateById(task); - // 发送私信 - noticeService.addLetter(taskRecord); - return success("提交成功"); - } - return fail("提交失败"); - } - - @PreAuthorize("hasAuthority('oa:task:update')") - @OperationLog - @ApiOperation("修改工单回复记录表") - @PutMapping() - public ApiResult update(@RequestBody TaskRecord taskRecord) { - if (taskRecordService.updateById(taskRecord)) { - Task task = taskService.getById(taskRecord.getTaskId()); - task.setIsRead(0); - task.setLastReadUser(getLoginUserId()); - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:task:remove')") - @OperationLog - @ApiOperation("删除工单回复记录表") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - if (taskRecordService.removeById(id)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @PreAuthorize("hasAuthority('oa:task:save')") - @OperationLog - @ApiOperation("批量添加工单回复记录表") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - if (taskRecordService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:task:update')") - @OperationLog - @ApiOperation("批量修改工单回复记录表") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - if (batchParam.update(taskRecordService, "task_record_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:task:remove')") - @OperationLog - @ApiOperation("批量删除工单回复记录表") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - if (taskRecordService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/controller/TaskUserController.java b/src/main/java/com/gxwebsoft/oa/controller/TaskUserController.java deleted file mode 100644 index e5d627c..0000000 --- a/src/main/java/com/gxwebsoft/oa/controller/TaskUserController.java +++ /dev/null @@ -1,153 +0,0 @@ -package com.gxwebsoft.oa.controller; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.exception.BusinessException; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.core.web.BatchParam; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.common.system.service.UserService; -import com.gxwebsoft.oa.entity.Task; -import com.gxwebsoft.oa.entity.TaskUser; -import com.gxwebsoft.oa.param.TaskUserParam; -import com.gxwebsoft.oa.service.TaskService; -import com.gxwebsoft.oa.service.TaskUserService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; - -import static com.gxwebsoft.oa.constants.TaskConstants.PROGRESS1; - -/** - * 工单成员控制器 - * - * @author 科技小王子 - * @since 2023-03-06 12:00:41 - */ -@Api(tags = "工单成员管理") -@RestController -@RequestMapping("/api/oa/task-user") -public class TaskUserController extends BaseController { - @Resource - private UserService userService; - @Resource - private TaskUserService taskUserService; - @Resource - private TaskService taskService; - - @PreAuthorize("hasAuthority('oa:taskUser:list')") - @OperationLog - @ApiOperation("分页查询工单成员") - @GetMapping("/page") - public ApiResult> page(TaskUserParam param) { - // 使用关联查询 - return success(taskUserService.pageRel(param)); - } - - @PreAuthorize("hasAuthority('oa:taskUser:list')") - @OperationLog - @ApiOperation("查询全部工单成员") - @GetMapping() - public ApiResult> list(TaskUserParam param) { - // 使用关联查询 - return success(taskUserService.listRel(param)); - } - - @PreAuthorize("hasAuthority('oa:taskUser:list')") - @OperationLog - @ApiOperation("根据id查询工单成员") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { -// return success(taskUserService.getById(id)); - // 使用关联查询 - return success(taskUserService.getByIdRel(id)); - } - - @PreAuthorize("hasAuthority('oa:taskUser:save')") - @OperationLog - @ApiOperation("添加工单成员") - @PostMapping() - public ApiResult save(@RequestBody TaskUser taskUser) { - User user = userService.getOne(new LambdaQueryWrapper().eq(User::getUsername, taskUser.getName())); - if(user == null){ - throw new BusinessException("找不到该用户"); - } - int count = taskUserService.count(new LambdaQueryWrapper().eq(TaskUser::getUserId, user.getUserId()).eq(TaskUser::getTaskId,taskUser.getTaskId())); - if( count > 0) { - return fail("请勿重复指派"); - } - taskUser.setUserId(user.getUserId()); - if (taskUserService.save(taskUser)) { - Task task = new Task(); - task.setTaskId(taskUser.getTaskId()); - task.setProgress(PROGRESS1); - task.setIsRead(0); - task.setLastReadUser(getLoginUserId()); - taskService.updateById(task); - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:taskUser:update')") - @OperationLog - @ApiOperation("修改工单成员") - @PutMapping() - public ApiResult update(@RequestBody TaskUser taskUser) { - if (taskUserService.updateById(taskUser)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:taskUser:remove')") - @OperationLog - @ApiOperation("删除工单成员") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - if (taskUserService.removeById(id)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @PreAuthorize("hasAuthority('oa:taskUser:save')") - @OperationLog - @ApiOperation("批量添加工单成员") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - if (taskUserService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:taskUser:update')") - @OperationLog - @ApiOperation("批量修改工单成员") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - if (batchParam.update(taskUserService, "task_user_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:taskUser:remove')") - @OperationLog - @ApiOperation("批量删除工单成员") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - if (taskUserService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/controller/TenantController.java b/src/main/java/com/gxwebsoft/oa/controller/TenantController.java deleted file mode 100644 index c7552d1..0000000 --- a/src/main/java/com/gxwebsoft/oa/controller/TenantController.java +++ /dev/null @@ -1,1236 +0,0 @@ -package com.gxwebsoft.oa.controller; - -import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.exception.BusinessException; -import com.gxwebsoft.common.core.utils.CommonUtil; -import com.gxwebsoft.common.core.utils.JSONUtil; -import com.gxwebsoft.common.core.web.*; -import com.gxwebsoft.common.system.entity.*; -import com.gxwebsoft.common.system.service.*; -import com.gxwebsoft.oa.entity.Tenant; -import com.gxwebsoft.oa.param.TenantParam; -import com.gxwebsoft.oa.service.TenantService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.redis.core.StringRedisTemplate; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Collectors; - -/** - * 租户控制器 - * - * @author WebSoft - * @since 2022-11-17 17:13:39 - */ -@Api(tags = "租户管理") -@RestController -@RequestMapping("/api/oa/tenant") -public class TenantController extends BaseController { - @Resource - private TenantService tenantService; - @Resource - private UserService userService; - @Resource - private RoleService roleService; - @Resource - private UserRoleService userRoleService; - @Resource - private MenuService menuService; - @Resource - private RoleMenuService roleMenuService; - @Resource - private StringRedisTemplate stringRedisTemplate; - - @PreAuthorize("hasAuthority('oa:tenant:list')") - @ApiOperation("分页查询租户") - @GetMapping("/page") - public ApiResult> page(TenantParam param) { - if(!getTenantId().equals(5)){ - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - return success(tenantService.page(page, page.getWrapper())); - } - // 使用关联查询 - return success(tenantService.pageRel(param)); - } - - @PreAuthorize("hasAuthority('oa:tenant:list')") - @ApiOperation("查询全部租户") - @GetMapping() - public ApiResult> list(TenantParam param) { - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - return success(tenantService.list(page.getOrderWrapper())); - // 使用关联查询 - //return success(tenantService.listRel(param)); - } - - @PreAuthorize("hasAuthority('oa:tenant:list')") - @OperationLog - @ApiOperation("根据id查询租户") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - return success(tenantService.getById(id)); - // 使用关联查询 -// return success(tenantService.getByIdRel(id)); - } - - @PreAuthorize("hasAuthority('sys:profile:list')") - @OperationLog - @ApiOperation("查询租户基本资料") - @GetMapping("/profile") - public ApiResult profile() { - // 使用关联查询 - return success(tenantService.getByIdRel(getTenantId())); - } - - @Transactional(rollbackFor = {Exception.class}) - @PreAuthorize("hasAuthority('oa:tenant:save')") - @OperationLog - @ApiOperation("添加租户") - @PostMapping() - public ApiResult save(@RequestBody Tenant tenant) { - // 记录当前登录用户id、租户id - User loginUser = getLoginUser(); - if (loginUser != null) { - tenant.setUserId(loginUser.getUserId()); - if (loginUser.getTenantId() != 5) return fail("权限不足!"); - } - // 添加租户 - tenant.setTenantCode(CommonUtil.randomUUID16()); - tenantService.save(tenant); - - // 添加超级管理员 - User user = new User(); - user.setUsername("admin"); - user.setNickname("超级管理员"); - user.setPassword(userService.encodePassword(tenant.getPassword())); - user.setTenantId(tenant.getTenantId()); - boolean result = userService.save(user); - Integer superAdminUserId = user.getUserId(); - - // 创建角色 - if (result) { - Role role = new Role(); - role.setRoleName("超级管理员"); - role.setRoleCode("superAdmin"); - role.setComments("超级管理员"); - role.setTenantId(tenant.getTenantId()); - roleService.save(role); - - // 保存超级管理员角色ID - Integer superAdminRoleId = role.getRoleId(); - role.setRoleName("注册用户"); - role.setRoleCode("user"); - role.setComments("普通注册用户"); - roleService.save(role); - role.setRoleName("游客"); - role.setRoleCode("guest"); - role.setComments("用于未登录时的浏览权限"); - roleService.save(role); - Integer guestRoleId = role.getRoleId(); - - // 添加游客账号 - user.setUsername("www"); - user.setNickname("游客"); - user.setPassword(userService.encodePassword("123456")); - userService.save(user); - - // 添加超管用户角色 - UserRole userRole = new UserRole(); - userRole.setUserId(superAdminUserId); - userRole.setRoleId(superAdminRoleId); - userRole.setTenantId(tenant.getTenantId()); - userRoleService.save(userRole); - - // 添加游客用户角色 - userRole.setUserId(user.getUserId()); - userRole.setRoleId(guestRoleId); - boolean resultUserRole = userRoleService.save(userRole); - - /// 添加系统菜单 - if (resultUserRole) { - Menu menu = new Menu(); - // 10.系统管理 - menu.setTitle("系统管理"); - menu.setParentId(0); - menu.setPath("/system"); - menu.setIcon("setting-outlined"); - menu.setSortNumber(10); - menu.setTenantId(tenant.getTenantId()); - menuService.save(menu); - Integer parentId = menu.getMenuId(); - menu.setParentId(menu.getMenuId()); - menu.setTitle("用户管理"); - menu.setPath("/system/user"); - menu.setComponent("/system/user"); - menu.setIcon("team-outlined"); - menu.setSortNumber(2); - menuService.save(menu); - Integer userParentId = menu.getMenuId(); - menu.setParentId(userParentId); - menu.setMenuType(1); - menu.setTitle("查询"); - menu.setIcon(""); - menu.setAuthority("sys:user:list"); - menuService.save(menu); - menu.setParentId(userParentId); - menu.setTitle("添加"); - menu.setAuthority("sys:user:save"); - menuService.save(menu); - menu.setParentId(userParentId); - menu.setTitle("修改"); - menu.setAuthority("sys:user:update"); - menuService.save(menu); - menu.setParentId(userParentId); - menu.setTitle("删除"); - menu.setAuthority("sys:user:remove"); - menuService.save(menu); - menu.setMenuType(0); - menu.setParentId(parentId); - menu.setTitle("角色管理"); - menu.setPath("/system/role"); - menu.setComponent("/system/role"); - menu.setIcon("idcard-outlined"); - menu.setAuthority(""); - menu.setSortNumber(3); - menuService.save(menu); - Integer roleParentId = menu.getMenuId(); - menu.setParentId(roleParentId); - menu.setMenuType(1); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menu.setTitle("查询"); - menu.setAuthority("sys:role:list"); - menuService.save(menu); - menu.setParentId(roleParentId); - menu.setTitle("添加"); - menu.setAuthority("sys:role:save"); - menuService.save(menu); - menu.setParentId(roleParentId); - menu.setTitle("修改"); - menu.setAuthority("sys:role:update"); - menuService.save(menu); - menu.setParentId(roleParentId); - menu.setTitle("删除"); - menu.setAuthority("sys:role:remove"); - menuService.save(menu); - menu.setMenuType(0); - menu.setParentId(parentId); - menu.setTitle("菜单管理"); - menu.setPath("/system/menu"); - menu.setComponent("/system/menu"); - menu.setIcon("appstore-outlined"); - menu.setAuthority(""); - menu.setSortNumber(1); - menuService.save(menu); - Integer menuParentId = menu.getMenuId(); - menu.setParentId(menuParentId); - menu.setMenuType(1); - menu.setTitle("查询"); - menu.setAuthority("sys:menu:list"); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menuService.save(menu); - menu.setParentId(menuParentId); - menu.setTitle("添加"); - menu.setAuthority("sys:menu:save"); - menuService.save(menu); - menu.setParentId(menuParentId); - menu.setTitle("修改"); - menu.setAuthority("sys:menu:update"); - menuService.save(menu); - menu.setParentId(menuParentId); - menu.setTitle("删除"); - menu.setAuthority("sys:menu:remove"); - menuService.save(menu); - menu.setMenuType(0); - menu.setParentId(parentId); - menu.setTitle("机构管理"); - menu.setPath("/system/organization"); - menu.setComponent("/system/organization"); - menu.setIcon("bank-outlined"); - menu.setAuthority(""); - menu.setSortNumber(5); - menuService.save(menu); - Integer orgParentId = menu.getMenuId(); - menu.setParentId(orgParentId); - menu.setMenuType(1); - menu.setPath(""); - menu.setComponent(""); - menu.setIcon(""); - menu.setTitle("查询"); - menu.setAuthority("sys:org:list"); - menuService.save(menu); - menu.setParentId(orgParentId); - menu.setTitle("添加"); - menu.setAuthority("sys:org:save"); - menuService.save(menu); - menu.setParentId(orgParentId); - menu.setTitle("修改"); - menu.setAuthority("sys:org:update"); - menuService.save(menu); - menu.setParentId(orgParentId); - menu.setTitle("删除"); - menu.setAuthority("sys:org:remove"); - menuService.save(menu); - menu.setMenuType(0); - menu.setParentId(parentId); - menu.setTitle("字典管理"); - menu.setPath("/system/dict"); - menu.setComponent("/system/dict"); - menu.setIcon("profile-outlined"); - menu.setAuthority(""); - menu.setSortNumber(4); - menuService.save(menu); - Integer dictParentId = menu.getMenuId(); - menu.setParentId(dictParentId); - menu.setMenuType(1); - menu.setTitle("查询"); - menu.setAuthority("sys:dict:list"); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menuService.save(menu); - menu.setParentId(dictParentId); - menu.setTitle("添加"); - menu.setAuthority("sys:dict:save"); - menuService.save(menu); - menu.setParentId(dictParentId); - menu.setTitle("修改"); - menu.setAuthority("sys:dict:update"); - menuService.save(menu); - menu.setParentId(dictParentId); - menu.setTitle("删除"); - menu.setAuthority("sys:dict:remove"); - menuService.save(menu); - menu.setMenuType(0); - menu.setParentId(parentId); - menu.setTitle("登录日志"); - menu.setPath("/system/login-record"); - menu.setComponent("/system/login-record"); - menu.setIcon("calendar-outlined"); - menu.setAuthority("sys:login-record:list"); - menu.setSortNumber(7); - menuService.save(menu); - menu.setParentId(parentId); - menu.setTitle("操作日志"); - menu.setPath("/system/operation-record"); - menu.setComponent("/system/operation-record"); - menu.setIcon("file-search-outlined"); - menu.setAuthority("sys:operation-record:list"); - menu.setSortNumber(8); - menuService.save(menu); - menu.setParentId(parentId); - menu.setTitle("文件管理"); - menu.setPath("/system/file"); - menu.setComponent("/system/file"); - menu.setIcon("folder-outlined"); - menu.setAuthority(""); - menu.setSortNumber(6); - menuService.save(menu); - Integer fileParentId = menu.getMenuId(); - menu.setParentId(fileParentId); - menu.setMenuType(1); - menu.setTitle("查看记录"); - menu.setPath(""); - menu.setComponent(""); - menu.setIcon(""); - menu.setAuthority("sys:file:list"); - menuService.save(menu); - menu.setParentId(fileParentId); - menu.setTitle("上传文件"); - menu.setAuthority("sys:file:upload"); - menuService.save(menu); - menu.setParentId(fileParentId); - menu.setTitle("修改文件"); - menu.setAuthority("sys:file:update"); - menuService.save(menu); - menu.setParentId(fileParentId); - menu.setTitle("删除文件"); - menu.setAuthority("sys:org:remove"); - menuService.save(menu); - menu.setMenuType(0); - menu.setParentId(parentId); - menu.setTitle("系统设置"); - menu.setPath("/system/setting"); - menu.setComponent("/system/setting"); - menu.setIcon("setting-outlined"); - menu.setAuthority("sys:setting:save"); - menu.setSortNumber(10); - menuService.save(menu); - menu.setParentId(parentId); - menu.setTitle("用户信息"); - menu.setPath("/system/user-info"); - menu.setComponent("/system/user-info"); - menu.setIcon("team-outlined"); - menu.setAuthority(""); - menu.setHide(1); - menu.setMenuType(0); - menu.setSortNumber(9); - menuService.save(menu); - Integer userInfoParentId = menu.getMenuId(); - menu.setParentId(userInfoParentId); - menu.setMenuType(1); - menu.setTitle("修改个人密码"); - menu.setAuthority("sys:auth:password"); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menuService.save(menu); - menu.setParentId(userInfoParentId); - menu.setTitle("修改个人资料"); - menu.setAuthority("sys:auth:user"); - menuService.save(menu); - menu.setTitle("扩展插件"); - menu.setParentId(parentId); - menu.setIcon("AppstoreAddOutlined"); - menu.setPath("/system/appstore"); - menu.setComponent("/system/appstore"); - menu.setMenuType(0); - menu.setAuthority("oa:app:list"); - menu.setSortNumber(100); - menu.setHide(0); - menuService.save(menu); - // 1.控制台 - menu.setParentId(0); - menu.setTitle("控制台"); - menu.setPath("/dashboard"); - menu.setIcon("home-outlined"); - menu.setComponent(""); - menu.setAuthority(""); - menu.setSortNumber(1); - menu.setMenuType(0); - menuService.save(menu); - Integer dashboardParentId = menu.getMenuId(); - menu.setTitle("工作台"); - menu.setPath("/dashboard/workplace"); - menu.setComponent("/dashboard/workplace"); - menu.setIcon("DesktopOutlined"); - menu.setParentId(dashboardParentId); - menu.setMenuType(0); - menu.setSortNumber(0); - menuService.save(menu); - menu.setTitle("统计分析"); - menu.setPath("/dashboard/analysis"); - menu.setComponent("/dashboard/analysis"); - menu.setIcon("BarChartOutlined"); - menu.setParentId(dashboardParentId); - menu.setMenuType(0); - menu.setSortNumber(1); - menuService.save(menu); - // 2.办公协同 - menu.setParentId(0); - menu.setTitle("办公协同"); - menu.setPath("/oa"); - menu.setComponent(""); - menu.setAuthority(""); - menu.setMenuType(0); - menu.setIcon("LaptopOutlined"); - menu.setHide(0); - menu.setSortNumber(2); - menuService.save(menu); - Integer oaParentId = menu.getMenuId(); - menu.setParentId(oaParentId); - menu.setTitle("服务器管理"); - menu.setPath("/oa/assets/server"); - menu.setComponent("/oa/assets/server"); - menu.setIcon("AuditOutlined"); - menu.setMenuType(0); - menu.setSortNumber(0); - menuService.save(menu); - Integer serverParentId = menu.getMenuId(); - menu.setTitle("查询"); - menu.setParentId(serverParentId); - menu.setMenuType(1); - menu.setPath(""); - menu.setIcon(""); - menu.setComponent(""); - menu.setAuthority("oa:assets:list"); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("oa:assets:save"); - menuService.save(menu); - menu.setTitle("更新"); - menu.setAuthority("oa:assets:update"); - menuService.save(menu); - menu.setTitle("移除"); - menu.setAuthority("oa:assets:remove"); - menuService.save(menu); - menu.setParentId(oaParentId); - menu.setMenuType(0); - menu.setTitle("客户管理"); - menu.setPath("/oa/customer"); - menu.setComponent("/oa/customer"); - menu.setIcon("TeamOutlined"); - menu.setSortNumber(1); - menuService.save(menu); - Integer customerParentId = menu.getMenuId(); - menu.setParentId(customerParentId); - menu.setTitle("查询"); - menu.setMenuType(1); - menu.setPath(""); - menu.setIcon(""); - menu.setComponent(""); - menu.setSortNumber(0); - menu.setAuthority("oa:customer:list"); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("oa:customer:save"); - menuService.save(menu); - menu.setTitle("更新"); - menu.setAuthority("oa:customer:update"); - menuService.save(menu); - menu.setTitle("移除"); - menu.setAuthority("oa:customer:remove"); - menuService.save(menu); - // 3.商户管理 - menu.setParentId(0); - menu.setTitle("商户管理"); - menu.setPath("/merchant"); - menu.setIcon("ShopOutlined"); - menu.setComponent(""); - menu.setAuthority(""); - menu.setSortNumber(3); - menu.setMenuType(0); - menuService.save(menu); - Integer merchantParentId = menu.getMenuId(); - menu.setTitle("商户列表"); - menu.setPath("/merchant/index"); - menu.setComponent("/merchant/index"); - menu.setIcon("ShopOutlined"); - menu.setParentId(merchantParentId); - menu.setMenuType(0); - menu.setSortNumber(0); - menuService.save(menu); - Integer shopInfoParentId = menu.getMenuId(); - menu.setTitle("列表"); - menu.setParentId(shopInfoParentId); - menu.setMenuType(1); - menu.setPath(""); - menu.setIcon(""); - menu.setComponent(""); - menu.setAuthority("shop:merchant:list"); - menu.setSortNumber(0); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("shop:merchant:save"); - menuService.save(menu); - menu.setTitle("编辑"); - menu.setAuthority("shop:merchant:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("shop:merchant:remove"); - menuService.save(menu); - menu.setTitle("入驻审核"); - menu.setPath("/merchant/apply"); - menu.setComponent("/merchant/apply"); - menu.setIcon("HourglassOutlined"); - menu.setParentId(merchantParentId); - menu.setMenuType(0); - menu.setSortNumber(1); - menuService.save(menu); - menu.setTitle("地址管理"); - menu.setPath("/merchant/address"); - menu.setComponent("/merchant/address"); - menu.setIcon("EnvironmentOutlined"); - menu.setParentId(merchantParentId); - menu.setMenuType(0); - menu.setSortNumber(2); - menuService.save(menu); - menu.setTitle("店铺装修"); - menu.setPath("/merchant/decorate"); - menu.setComponent("/merchant/decorate"); - menu.setIcon("FormatPainterOutlined"); - menu.setParentId(merchantParentId); - menu.setMenuType(0); - menu.setSortNumber(3); - menuService.save(menu); - menu.setTitle("主题风格"); - menu.setPath("/merchant/theme"); - menu.setComponent("/merchant/theme"); - menu.setIcon("BgColorsOutlined"); - menu.setParentId(merchantParentId); - menu.setMenuType(0); - menu.setSortNumber(4); - menuService.save(menu); - menu.setTitle("资金提现"); - menu.setPath("/merchant/withdraw"); - menu.setComponent("/merchant/withdraw"); - menu.setIcon("RedEnvelopeOutlined"); - menu.setParentId(merchantParentId); - menu.setMenuType(0); - menu.setSortNumber(5); - menuService.save(menu); - // 4.商品管理 - menu.setParentId(0); - menu.setTitle("商品管理"); - menu.setPath("/goods"); - menu.setIcon("ShoppingOutlined"); - menu.setComponent(""); - menu.setAuthority(""); - menu.setSortNumber(4); - menu.setMenuType(0); - menuService.save(menu); - Integer goodsParentId = menu.getMenuId(); - menu.setTitle("商品列表"); - menu.setPath("/goods/index"); - menu.setComponent("/goods/index"); - menu.setIcon("SkinOutlined"); - menu.setParentId(goodsParentId); - menu.setMenuType(0); - menu.setSortNumber(0); - menuService.save(menu); - Integer shopIndexParentId = menu.getMenuId(); - menu.setTitle("列表"); - menu.setParentId(shopIndexParentId); - menu.setMenuType(1); - menu.setPath(""); - menu.setIcon(""); - menu.setComponent(""); - menu.setAuthority("shop:goods:list"); - menu.setSortNumber(0); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("shop:goods:save"); - menuService.save(menu); - menu.setTitle("编辑"); - menu.setAuthority("shop:goods:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("shop:goods:remove"); - menuService.save(menu); - menu.setTitle("商品分类"); - menu.setPath("/goods/category"); - menu.setComponent("/goods/category"); - menu.setIcon("ApartmentOutlined"); - menu.setParentId(goodsParentId); - menu.setMenuType(0); - menu.setSortNumber(1); - menuService.save(menu); - Integer goodsCategoryParentId = menu.getMenuId(); - menu.setTitle("列表"); - menu.setParentId(goodsCategoryParentId); - menu.setMenuType(1); - menu.setPath(""); - menu.setIcon(""); - menu.setComponent(""); - menu.setAuthority("shop:category:list"); - menu.setSortNumber(0); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("shop:category:save"); - menuService.save(menu); - menu.setTitle("编辑"); - menu.setAuthority("shop:category:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("shop:category:remove"); - menuService.save(menu); - menu.setTitle("商品评价"); - menu.setPath("/goods/comment"); - menu.setComponent("/goods/comment"); - menu.setIcon("GiftOutlined"); - menu.setParentId(goodsParentId); - menu.setMenuType(0); - menu.setSortNumber(2); - menuService.save(menu); - Integer goodsCommentParentId = menu.getMenuId(); - menu.setTitle("列表"); - menu.setParentId(goodsCommentParentId); - menu.setMenuType(1); - menu.setPath(""); - menu.setIcon(""); - menu.setComponent(""); - menu.setAuthority("shop:comment:list"); - menu.setSortNumber(0); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("shop:comment:save"); - menuService.save(menu); - menu.setTitle("编辑"); - menu.setAuthority("shop:comment:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("shop:comment:remove"); - menuService.save(menu); - menu.setTitle("服务承诺"); - menu.setPath("/goods/service"); - menu.setComponent("/goods/service"); - menu.setIcon("InsuranceOutlined"); - menu.setParentId(goodsParentId); - menu.setMenuType(0); - menu.setSortNumber(3); - menuService.save(menu); - Integer goodsServiceParentId = menu.getMenuId(); - menu.setTitle("列表"); - menu.setParentId(goodsServiceParentId); - menu.setMenuType(1); - menu.setPath(""); - menu.setIcon(""); - menu.setComponent(""); - menu.setAuthority("shop:goodsService:list"); - menu.setSortNumber(0); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("shop:goodsService:save"); - menuService.save(menu); - menu.setTitle("编辑"); - menu.setAuthority("shop:goodsService:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("shop:goodsService:remove"); - menuService.save(menu); - // 5.订单管理 - menu.setParentId(0); - menu.setTitle("订单管理"); - menu.setPath("/order"); - menu.setIcon("CalendarOutlined"); - menu.setComponent(""); - menu.setAuthority(""); - menu.setSortNumber(5); - menu.setMenuType(0); - menuService.save(menu); - Integer orderParentId = menu.getMenuId(); - menu.setTitle("全部订单"); - menu.setPath("/order/all"); - menu.setComponent("/order/all"); - menu.setIcon("ProfileOutlined"); - menu.setParentId(orderParentId); - menu.setMenuType(0); - menu.setSortNumber(0); - menuService.save(menu); - Integer orderAllParentId = menu.getMenuId(); - menu.setTitle("列表"); - menu.setParentId(orderAllParentId); - menu.setMenuType(1); - menu.setPath(""); - menu.setIcon(""); - menu.setComponent(""); - menu.setAuthority("shop:order:list"); - menu.setSortNumber(0); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("shop:order:save"); - menuService.save(menu); - menu.setTitle("编辑"); - menu.setAuthority("shop:order:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("shop:order:remove"); - menuService.save(menu); - menu.setTitle("退款单"); - menu.setPath("/order/refund"); - menu.setComponent("/order/refund"); - menu.setIcon("MoneyCollectOutlined"); - menu.setParentId(orderParentId); - menu.setMenuType(0); - menu.setSortNumber(1); - menuService.save(menu); - menu.setTitle("发货管理"); - menu.setPath("/order/delivery"); - menu.setComponent("/order/delivery"); - menu.setIcon("CarOutlined"); - menu.setParentId(orderParentId); - menu.setMenuType(0); - menu.setSortNumber(2); - menuService.save(menu); - menu.setTitle("订单导出"); - menu.setPath("/order/export"); - menu.setComponent("/order/export"); - menu.setIcon("UploadOutlined"); - menu.setParentId(orderParentId); - menu.setMenuType(0); - menu.setSortNumber(3); - menuService.save(menu); - // 6.用户管理 - menu.setParentId(0); - menu.setTitle("用户管理"); - menu.setPath("/user"); - menu.setIcon("TeamOutlined"); - menu.setComponent(""); - menu.setAuthority(""); - menu.setSortNumber(6); - menu.setMenuType(0); - menuService.save(menu); - Integer outUserParentId = menu.getMenuId(); - menu.setTitle("用户列表"); - menu.setPath("/user/index"); - menu.setComponent("/user/index"); - menu.setIcon("TeamOutlined"); - menu.setParentId(outUserParentId); - menu.setMenuType(0); - menu.setSortNumber(0); - menuService.save(menu); - Integer memberListParentId = menu.getMenuId(); - menu.setTitle("列表"); - menu.setParentId(memberListParentId); - menu.setMenuType(1); - menu.setPath(""); - menu.setIcon(""); - menu.setComponent(""); - menu.setAuthority("shop:member:list"); - menu.setSortNumber(0); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("shop:member:save"); - menuService.save(menu); - menu.setTitle("编辑"); - menu.setAuthority("shop:member:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("shop:member:remove"); - menuService.save(menu); - menu.setTitle("余额明细"); - menu.setPath("/user/balance-log"); - menu.setComponent("/user/balance-log"); - menu.setIcon("WalletOutlined"); - menu.setParentId(outUserParentId); - menu.setMenuType(0); - menu.setSortNumber(1); - menuService.save(menu); - Integer balanceLogParentId = menu.getMenuId(); - menu.setTitle("列表"); - menu.setParentId(balanceLogParentId); - menu.setMenuType(1); - menu.setPath(""); - menu.setIcon(""); - menu.setComponent(""); - menu.setAuthority("shop:memberBalanceLog:list"); - menu.setSortNumber(0); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("shop:memberBalanceLog:save"); - menuService.save(menu); - menu.setTitle("编辑"); - menu.setAuthority("shop:memberBalanceLog:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("shop:memberBalanceLog:remove"); - menuService.save(menu); - menu.setTitle("充值记录"); - menu.setPath("/user/recharge"); - menu.setComponent("/user/recharge"); - menu.setIcon("UngroupOutlined"); - menu.setParentId(outUserParentId); - menu.setMenuType(0); - menu.setSortNumber(2); - menuService.save(menu); - Integer userRechargeParentId = menu.getMenuId(); - menu.setTitle("列表"); - menu.setParentId(userRechargeParentId); - menu.setMenuType(1); - menu.setPath(""); - menu.setIcon(""); - menu.setComponent(""); - menu.setAuthority("shop:memberRecharge:list"); - menu.setSortNumber(0); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("shop:memberRecharge:save"); - menuService.save(menu); - menu.setTitle("编辑"); - menu.setAuthority("shop:memberRecharge:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("shop:memberRecharge:remove"); - menuService.save(menu); - menu.setTitle("消息提醒"); - menu.setPath("/user/notice"); - menu.setComponent("/user/notice"); - menu.setIcon("SoundOutlined"); - menu.setParentId(outUserParentId); - menu.setMenuType(0); - menu.setSortNumber(3); - menuService.save(menu); - Integer userNoticeParentId = menu.getMenuId(); - menu.setTitle("列表"); - menu.setParentId(userNoticeParentId); - menu.setMenuType(1); - menu.setPath(""); - menu.setIcon(""); - menu.setComponent(""); - menu.setAuthority("shop:memberNotice:list"); - menu.setSortNumber(0); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("shop:memberNotice:save"); - menuService.save(menu); - menu.setTitle("编辑"); - menu.setAuthority("shop:memberNotice:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("shop:memberNotice:remove"); - menuService.save(menu); - // 7.内容管理 - menu.setParentId(0); - menu.setTitle("内容管理"); - menu.setPath("/cms"); - menu.setComponent(""); - menu.setAuthority(""); - menu.setIcon("FileSearchOutlined"); - menu.setHide(0); - menu.setMenuType(0); - menu.setSortNumber(7); - menuService.save(menu); - Integer contentParentId = menu.getMenuId(); - menu.setTitle("文章管理"); - menu.setPath("/cms/article"); - menu.setComponent("/cms/article"); - menu.setIcon("FileSearchOutlined"); - menu.setAuthority(""); - menu.setSortNumber(1); - menu.setMenuType(0); - menu.setParentId(contentParentId); - menuService.save(menu); - Integer articleParentId = menu.getMenuId(); - menu.setParentId(articleParentId); - menu.setMenuType(1); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menu.setTitle("查询"); - menu.setSortNumber(0); - menu.setAuthority("cms:article:list"); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("cms:article:save"); - menuService.save(menu); - menu.setTitle("修改"); - menu.setAuthority("cms:article:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("cms:article:remove"); - menuService.save(menu); - menu.setTitle("文章分类"); - menu.setPath("/cms/category"); - menu.setComponent("/cms/category"); - menu.setIcon("ApartmentOutlined"); - menu.setAuthority(""); - menu.setMenuType(0); - menu.setSortNumber(2); - menu.setParentId(contentParentId); - menuService.save(menu); - Integer categoryParentId = menu.getMenuId(); - menu.setParentId(categoryParentId); - menu.setMenuType(1); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menu.setSortNumber(0); - menu.setTitle("查询"); - menu.setAuthority("cms:articleCategory:list"); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("cms:articleCategory:save"); - menuService.save(menu); - menu.setTitle("修改"); - menu.setAuthority("cms:articleCategory:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("cms:articleCategory:remove"); - menuService.save(menu); - menu.setTitle("文档管理"); - menu.setPath("/cms/docs/:id"); - menu.setComponent("/cms/docs"); - menu.setIcon("ReadOutlined"); - menu.setAuthority(""); - menu.setSortNumber(3); - menu.setMenuType(0); - menu.setParentId(contentParentId); - menuService.save(menu); - Integer docsParentId = menu.getMenuId(); - menu.setParentId(docsParentId); - menu.setMenuType(1); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menu.setSortNumber(0); - menu.setTitle("查询"); - menu.setAuthority("cms:docs:list"); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("cms:docs:save"); - menuService.save(menu); - menu.setTitle("修改"); - menu.setAuthority("cms:docs:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("cms:docs:remove"); - menuService.save(menu); - menu.setTitle("视频管理"); - menu.setPath("/cms/video"); - menu.setComponent("/cms/video"); - menu.setIcon("YoutubeOutlined"); - menu.setAuthority(""); - menu.setSortNumber(4); - menu.setMenuType(0); - menu.setParentId(contentParentId); - menuService.save(menu); - Integer cmsVideoParentId = menu.getMenuId(); - menu.setParentId(cmsVideoParentId); - menu.setMenuType(1); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menu.setSortNumber(0); - menu.setTitle("列表"); - menu.setAuthority("cms:file:list"); - menuService.save(menu); - menu.setTitle("上传"); - menu.setAuthority("sys:file:upload"); - menuService.save(menu); - menu.setTitle("编辑"); - menu.setAuthority("sys:file:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("sys:file:remove"); - menuService.save(menu); - menu.setTitle("视频播放"); - menu.setIcon(""); - menu.setPath("/cms/video/player"); - menu.setComponent("/cms/video/player"); - menu.setMenuType(0); - menu.setHide(1); - menu.setMeta("{\"active\": \"/cms/video\", \"tabUnique\": false}"); - menuService.save(menu); - menu.setTitle("文件下载"); - menu.setPath("/cms/down"); - menu.setComponent("/cms/down"); - menu.setIcon("LinkOutlined"); - menu.setAuthority(""); - menu.setHide(0); - menu.setSortNumber(5); - menu.setMenuType(0); - menu.setParentId(contentParentId); - menuService.save(menu); - // 8.营销管理 - menu.setParentId(0); - menu.setTitle("营销管理"); - menu.setPath("/market"); - menu.setIcon("CrownOutlined"); - menu.setComponent(""); - menu.setAuthority(""); - menu.setSortNumber(8); - menu.setMenuType(0); - menuService.save(menu); - Integer marketParentId = menu.getMenuId(); - menu.setTitle("优惠券"); - menu.setPath("/market/coupon"); - menu.setComponent("/market/coupon"); - menu.setIcon("TagsOutlined"); - menu.setParentId(marketParentId); - menu.setMenuType(0); - menu.setSortNumber(0); - menuService.save(menu); - Integer marketCouponParentId = menu.getMenuId(); - menu.setParentId(marketCouponParentId); - menu.setMenuType(1); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menu.setTitle("查询"); - menu.setSortNumber(0); - menu.setAuthority("cms:coupon:list"); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("cms:coupon:save"); - menuService.save(menu); - menu.setTitle("修改"); - menu.setAuthority("cms:coupon:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("cms:coupon:remove"); - menuService.save(menu); - menu.setTitle("会员充值"); - menu.setPath("/market/recharge"); - menu.setComponent("/market/recharge"); - menu.setIcon("MoneyCollectOutlined"); - menu.setParentId(marketParentId); - menu.setMenuType(0); - menu.setSortNumber(1); - menuService.save(menu); - menu.setTitle("积分管理"); - menu.setPath("/market/points"); - menu.setComponent("/market/points"); - menu.setIcon("PayCircleOutlined"); - menu.setParentId(marketParentId); - menu.setMenuType(0); - menu.setSortNumber(2); - menuService.save(menu); - // 9.应用中心 - menu.setParentId(0); - menu.setTitle("应用中心"); - menu.setPath("/apps"); - menu.setIcon("AppstoreAddOutlined"); - menu.setComponent(""); - menu.setAuthority(""); - menu.setSortNumber(9); - menu.setMenuType(0); - menuService.save(menu); - - // 个人中心 - menu.setParentId(0); - menu.setTitle("个人中心"); - menu.setPath("/user-center"); - menu.setIcon("UserOutlined"); - menu.setComponent(""); - menu.setAuthority(""); - menu.setMenuType(0); - menu.setHide(1); - menu.setSortNumber(99); - menuService.save(menu); - Integer userCenterParentId = menu.getMenuId(); - menu.setTitle("个人资料"); - menu.setPath("/user/profile"); - menu.setComponent("/user/profile"); - menu.setIcon("IdcardOutlined"); - menu.setParentId(userCenterParentId); - menu.setMenuType(0); - menu.setSortNumber(0); - menuService.save(menu); - Integer userProfileParentId = menu.getMenuId(); - menu.setParentId(userProfileParentId); - menu.setMenuType(1); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menu.setTitle("修改资料"); - menu.setSortNumber(0); - menu.setAuthority("sys:auth:user"); - menuService.save(menu); - menu.setTitle("修改密码"); - menu.setAuthority("sys:auth:password"); - menuService.save(menu); - menu.setTitle("上传头像"); - menu.setAuthority("sys:file:upload"); - menu.setTitle("预览头像"); - menu.setAuthority("sys:file:list"); - menu.setTitle("保存头像"); - menu.setAuthority("sys:user:update"); - menuService.save(menu); - menu.setParentId(userCenterParentId); - menu.setTitle("用户注册"); - menu.setAuthority("sys:user:save"); - menuService.save(menu); - menu.setTitle("字典查询"); - menu.setAuthority("sys:dict:list"); - - boolean resultMenu = menuService.save(menu); - // 添加菜单ID到超级管理员所属角色ID - if (resultMenu) { - saveRedis(tenant); - return success("创建成功"); - } - } - } - throw new BusinessException("创建失败"); - } - - @PreAuthorize("hasAuthority('oa:tenant:update')") - @OperationLog - @ApiOperation("修改租户") - @PutMapping() - public ApiResult update(@RequestBody Tenant tenant) { - saveRedis(tenant); - if (tenantService.updateById(tenant)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - // 缓存租户信息 - private void saveRedis(Tenant tenant) { - String key = "cache:tenant"; - String tenantId = tenant.getTenantId().toString(); - if (StrUtil.isEmpty(tenant.getTenantCode())) { - tenant.setTenantCode(CommonUtil.randomUUID16()); - } - String data = JSONUtil.toJSONString(tenant); - stringRedisTemplate.opsForHash().put(key,tenantId, data); - } - - @PreAuthorize("hasAuthority('oa:tenant:remove')") - @OperationLog - @ApiOperation("删除租户") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - if (tenantService.removeById(id)) { - String key = "cache:tenant"; - stringRedisTemplate.opsForHash().delete(key,id.toString()); - return success("删除成功"); - } - return fail("删除失败"); - } - - @PreAuthorize("hasAuthority('oa:tenant:save')") - @OperationLog - @ApiOperation("批量添加租户") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - if (tenantService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:tenant:update')") - @OperationLog - @ApiOperation("批量修改租户") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - if (batchParam.update(tenantService, "tenant_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:tenant:remove')") - @OperationLog - @ApiOperation("批量删除租户") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - if (tenantService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @ApiOperation("租户角色权限初始化") - @GetMapping("/role-menu/{id}") - public ApiResult> initialization(@PathVariable("id") Integer roleId) { - List menus = menuService.list(new LambdaQueryWrapper().orderByAsc(Menu::getSortNumber)); - List roleMenus = roleMenuService.list(new LambdaQueryWrapper() - .eq(RoleMenu::getRoleId, roleId)); - for (Menu menu : menus) { - menu.setChecked(roleMenus.stream().anyMatch((d) -> d.getMenuId().equals(menu.getMenuId()))); - } - List menuIds = menus.stream().map(Menu::getMenuId).collect(Collectors.toList()); - roleMenuService.remove(new LambdaUpdateWrapper().eq(RoleMenu::getRoleId, roleId)); - if (menuIds.size() > 0) { - List roleMenuList = new ArrayList<>(); - for (Integer menuId : menuIds) { - RoleMenu roleMenu = new RoleMenu(); - roleMenu.setRoleId(roleId); - roleMenu.setMenuId(menuId); - roleMenuList.add(roleMenu); - } - if (!roleMenuService.saveBatch(roleMenuList)) { - throw new BusinessException("保存失败"); - } - } - return success(menus); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/entity/App.java b/src/main/java/com/gxwebsoft/oa/entity/App.java deleted file mode 100644 index 6d52359..0000000 --- a/src/main/java/com/gxwebsoft/oa/entity/App.java +++ /dev/null @@ -1,242 +0,0 @@ -package com.gxwebsoft.oa.entity; - -import com.baomidou.mybatisplus.annotation.*; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -/** - * 应用管理记录表 - * - * @author 科技小王子 - * @since 2023-03-28 10:45:39 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@ApiModel(value = "App对象", description = "应用管理记录表") -@TableName("oa_app") -public class App implements Serializable { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "应用ID") - @TableId(value = "app_id", type = IdType.AUTO) - private Integer appId; - - @ApiModelProperty(value = "应用名称") - private String appName; - - @ApiModelProperty(value = "上级id, 0是顶级") - private Integer parentId; - - @ApiModelProperty(value = "应用标识") - private String appCode; - - @ApiModelProperty(value = "类型, 0菜单, 1按钮") - private String appType; - - @ApiModelProperty(value = "应用类型多选") - private String appTypeMultiple; - - @ApiModelProperty(value = "类型, 0菜单, 1按钮") - private Integer menuType; - - @ApiModelProperty(value = "企业ID") - private Integer companyId; - - @ApiModelProperty(value = "应用图标") - private String appIcon; - - @ApiModelProperty(value = "二维码") - private String appQrcode; - - @ApiModelProperty(value = "链接地址") - private String appUrl; - - @ApiModelProperty(value = "后台管理地址") - private String adminUrl; - - @ApiModelProperty(value = "下载地址") - private String downUrl; - - @ApiModelProperty(value = "服务器地址") - private String serverUrl; - - @ApiModelProperty(value = "回调地址") - private String callbackUrl; - - @ApiModelProperty(value = "腾讯文档地址") - private String docsUrl; - - @ApiModelProperty(value = "仓库地址") - private String gitUrl; - - @ApiModelProperty(value = "文件服务器") - private String fileUrl; - - @ApiModelProperty(value = "原型图地址") - private String prototypeUrl; - - @ApiModelProperty(value = "IP白名单") - private String ipAddress; - - @ApiModelProperty(value = "应用截图") - private String images; - - @ApiModelProperty(value = "应用包名") - private String packageName; - - @ApiModelProperty(value = "下载次数") - private Integer clicks; - - @ApiModelProperty(value = "安装次数") - private Integer installs; - - @ApiModelProperty(value = "备注") - private String comments; - - @ApiModelProperty(value = "应用介绍") - private String content; - - @ApiModelProperty(value = "项目需求") - private String requirement; - - @ApiModelProperty(value = "开发者(个人或公司)") - private String developer; - - @ApiModelProperty(value = "项目负责人") - private String director; - - @ApiModelProperty(value = "项目经理") - private String projectDirector; - - @ApiModelProperty(value = "业务经理") - private String salesman; - - @ApiModelProperty(value = "软件定价") - private BigDecimal price; - - @ApiModelProperty(value = "划线价格") - private BigDecimal linePrice; - - @ApiModelProperty(value = "评分") - private String score; - - @ApiModelProperty(value = "星级") - private String star; - - @ApiModelProperty(value = "菜单路由地址") - private String path; - - @ApiModelProperty(value = "菜单组件地址, 目录可为空") - private String component; - - @ApiModelProperty(value = "权限标识") - private String authority; - - @ApiModelProperty(value = "打开位置") - private String target; - - @ApiModelProperty(value = "是否隐藏, 0否, 1是(仅注册路由不显示在左侧菜单)") - private Integer hide; - - @ApiModelProperty(value = "禁止搜索,1禁止 0 允许") - private Integer search; - - @ApiModelProperty(value = "菜单侧栏选中的path") - private String active; - - @ApiModelProperty(value = "其它路由元信息") - private String meta; - - @ApiModelProperty(value = "版本,0正式版 1体验版 2开发版") - private String edition; - - @ApiModelProperty(value = "版本号") - private String version; - - @ApiModelProperty(value = "是否已安装") - private Integer isUse; - - @ApiModelProperty(value = "应用状态") - private String appStatus; - - @ApiModelProperty(value = "排序(数字越小越靠前)") - private Integer sortNumber; - - @ApiModelProperty(value = "状态, 0正常, 1冻结") - private Integer status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @TableLogic - private Integer deleted; - - @ApiModelProperty(value = "用户ID") - private Integer userId; - - @ApiModelProperty(value = "机构id") - private Integer organizationId; - - @ApiModelProperty(value = "应用秘钥") - @TableField(exist = false) - private String appSecret; - - @ApiModelProperty(value = "租户编号") - private String tenantCode; - - @ApiModelProperty(value = "注册时间") - private Date createTime; - - @ApiModelProperty(value = "修改时间") - private Date updateTime; - - @ApiModelProperty(value = "附件1") - private String file1; - - @ApiModelProperty(value = "附件2") - private String file2; - - @ApiModelProperty(value = "附件3") - private String file3; - - @ApiModelProperty(value = "成员管理") - @TableField(exist = false) - private List users; - - @ApiModelProperty(value = "主体名称") - @TableField(exist = false) - private String tenantName; - - @ApiModelProperty(value = "主体ID") - @TableField(exist = false) - private Integer tenantId; - - @ApiModelProperty(value = "租户信息") - @TableField(exist = false) - private Tenant tenant; - - @ApiModelProperty(value = "开发者名称") - @TableField(exist = false) - private String realName; - - @ApiModelProperty(value = "开发者名称") - @TableField(exist = false) - private String nickname; - - @ApiModelProperty(value = "开发者头像") - @TableField(exist = false) - private String avatar; - - @ApiModelProperty(value = "公司名称") - private String companyName; - - @ApiModelProperty(value = "公司简称") - @TableField(exist = false) - private String shortName; - -} diff --git a/src/main/java/com/gxwebsoft/oa/entity/AppUser.java b/src/main/java/com/gxwebsoft/oa/entity/AppUser.java deleted file mode 100644 index 1f47710..0000000 --- a/src/main/java/com/gxwebsoft/oa/entity/AppUser.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.gxwebsoft.oa.entity; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.io.Serializable; -import java.util.Date; - -/** - * 应用成员 - * - * @author 科技小王子 - * @since 2023-05-31 13:18:55 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@ApiModel(value = "AppUser对象", description = "应用成员") -@TableName("oa_app_user") -public class AppUser implements Serializable { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "自增ID") - @TableId(value = "app_user_id", type = IdType.AUTO) - private Integer appUserId; - - @ApiModelProperty(value = "角色,10体验成员 20开发者成员 30管理员 ") - private Integer role; - - @ApiModelProperty(value = "用户ID") - private Integer userId; - - @ApiModelProperty(value = "应用ID") - private Integer appId; - - @ApiModelProperty(value = "状态, 0正常, 1待确认") - private Integer status; - - @ApiModelProperty(value = "租户id") - private Integer tenantId; - - @ApiModelProperty(value = "注册时间") - private Date createTime; - - @ApiModelProperty(value = "昵称") - @TableField(exist = false) - private String nickname; - - @ApiModelProperty(value = "用户名") - @TableField(exist = false) - private String username; - - @ApiModelProperty(value = "手机号码") - @TableField(exist = false) - private String phone; - - @ApiModelProperty(value = "邮箱") - @TableField(exist = false) - private String email; - - @ApiModelProperty(value = "头像") - @TableField(exist = false) - private String avatar; - -} diff --git a/src/main/java/com/gxwebsoft/oa/entity/Assets.java b/src/main/java/com/gxwebsoft/oa/entity/Assets.java deleted file mode 100644 index 87dae06..0000000 --- a/src/main/java/com/gxwebsoft/oa/entity/Assets.java +++ /dev/null @@ -1,167 +0,0 @@ -package com.gxwebsoft.oa.entity; - -import com.baomidou.mybatisplus.annotation.*; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -/** - * 服务器资产记录表 - * - * @author WebSoft - * @since 2022-11-16 11:13:16 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@ApiModel(value = "Assets对象", description = "服务器资产记录表") -@TableName("oa_assets") -public class Assets implements Serializable { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "资产ID") - @TableId(value = "assets_id", type = IdType.AUTO) - private Integer assetsId; - - @ApiModelProperty(value = "资产名称") - private String name; - - @ApiModelProperty(value = "资产标识") - private String code; - - @ApiModelProperty(value = "资产类型") - private String type; - - @ApiModelProperty(value = "服务器厂商") - private String brand; - - @ApiModelProperty(value = "服务器配置") - private String configuration; - - @ApiModelProperty(value = "初始账号") - private String account; - - @ApiModelProperty(value = "初始密码") - private String password; - - @ApiModelProperty(value = "(阿里云/腾讯云)登录账号") - private String brandAccount; - - @ApiModelProperty(value = "(阿里云/腾讯云)登录密码") - private String brandPassword; - - @ApiModelProperty(value = "宝塔面板") - private String panel; - - @ApiModelProperty(value = "宝塔面板账号") - private String panelAccount; - - @ApiModelProperty(value = "宝塔面板密码") - private String panelPassword; - - @ApiModelProperty(value = "财务信息-合同金额") - private BigDecimal financeAmount; - - @ApiModelProperty(value = "购买年限") - private Integer financeYears; - - @ApiModelProperty(value = "续费金额") - private BigDecimal financeRenew; - - @ApiModelProperty(value = "客户名称") - private String financeCustomerName; - - @ApiModelProperty(value = "客户联系人") - private String financeCustomerContact; - - @ApiModelProperty(value = "客户联系电话") - private String financeCustomerPhone; - - @ApiModelProperty(value = "客户ID") - private Integer customerId; - - @ApiModelProperty(value = "客户名称") - private String customerName; - - @ApiModelProperty(value = "开放端口") - private String openPort; - - @ApiModelProperty(value = "详情内容") - private String content; - - @ApiModelProperty(value = "购买时间") - private Date startTime; - - @ApiModelProperty(value = "到期时间") - private Date endTime; - - @ApiModelProperty(value = "置顶状态") - private String isTop; - - @ApiModelProperty(value = "可见性(public,private,protected)") - private String visibility; - - @ApiModelProperty(value = "宝塔接口秘钥") - private String btSign; - - @ApiModelProperty(value = "文章排序(数字越小越靠前)") - private Integer sortNumber; - - @ApiModelProperty(value = "描述") - private String comments; - - @ApiModelProperty(value = "用户ID") - private Integer userId; - - @ApiModelProperty(value = "机构id") - private Integer organizationId; - - @ApiModelProperty(value = "状态, 0正常, 1冻结") - private String status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @TableLogic - private Integer deleted; - - @ApiModelProperty(value = "租户id") - private Integer tenantId; - - @ApiModelProperty(value = "注册时间") - private Date createTime; - - @ApiModelProperty(value = "修改时间") - private Date updateTime; - - @ApiModelProperty(value = "昵称") - @TableField(exist = false) - private String nickname; - - @ApiModelProperty(value = "开发者头像") - @TableField(exist = false) - private String avatar; - - @ApiModelProperty(value = "客户名称") - @TableField(exist = false) - private String companyName; - - @ApiModelProperty(value = "系统基础统计") - @TableField(exist = false) - private Object systemTotal; - - @ApiModelProperty(value = "磁盘分区信息") - @TableField(exist = false) - private Object diskInfo; - - @ApiModelProperty(value = "实时状态信息(CPU、内存、网络、负载)") - @TableField(exist = false) - private Object netWork; - - @ApiModelProperty(value = "网站列表") - @TableField(exist = false) - private Object sites; - -} diff --git a/src/main/java/com/gxwebsoft/oa/entity/Customer.java b/src/main/java/com/gxwebsoft/oa/entity/Customer.java deleted file mode 100644 index 2b34480..0000000 --- a/src/main/java/com/gxwebsoft/oa/entity/Customer.java +++ /dev/null @@ -1,115 +0,0 @@ -package com.gxwebsoft.oa.entity; - -import com.baomidou.mybatisplus.annotation.TableName; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import java.time.LocalDateTime; -import com.baomidou.mybatisplus.annotation.TableLogic; -import java.io.Serializable; -import java.util.Date; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -/** - * 客户管理记录表 - * - * @author WebSoft - * @since 2022-11-16 11:16:14 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@ApiModel(value = "Customer对象", description = "客户管理记录表") -@TableName("oa_customer") -public class Customer implements Serializable { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "客户ID") - @TableId(value = "customer_id", type = IdType.AUTO) - private Integer customerId; - - @ApiModelProperty(value = "客户名称") - private String customerName; - - @ApiModelProperty(value = "客户标识") - private String customerCode; - - @ApiModelProperty(value = "客户全称") - private String customerFullName; - - @ApiModelProperty(value = "头像") - private String customerAvatar; - - @ApiModelProperty(value = "客户类型") - private String customerType; - - @ApiModelProperty(value = "客户来源") - private String customerSource; - - @ApiModelProperty(value = "公司座机") - private String customerPhone; - - @ApiModelProperty(value = "手机号码") - private String customerMobile; - - @ApiModelProperty(value = "联系人") - private String customerContacts; - - @ApiModelProperty(value = "所在省份") - private String customerProvince; - - @ApiModelProperty(value = "所在城市") - private String customerCity; - - @ApiModelProperty(value = "所在地区") - private String customerRegion; - - @ApiModelProperty(value = "所在地址") - private String customerAddress; - - @ApiModelProperty(value = "经度") - private String longitude; - - @ApiModelProperty(value = "纬度") - private String latitude; - - @ApiModelProperty(value = "跟进状态") - private String progress; - - @ApiModelProperty(value = "是否含税") - private Boolean isTax; - - @ApiModelProperty(value = "用户ID") - private Integer userId; - - @ApiModelProperty(value = "机构id") - private Integer organizationId; - - @ApiModelProperty(value = "可见性(public,private,protected)") - private String visibility; - - @ApiModelProperty(value = "排序(数字越小越靠前)") - private Integer sortNumber; - - @ApiModelProperty(value = "备注") - private String comments; - - @ApiModelProperty(value = "状态, 0正常, 1冻结") - private Integer status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @TableLogic - private Integer deleted; - - @ApiModelProperty(value = "租户id") - private Integer tenantId; - - @ApiModelProperty(value = "注册时间") - private Date createTime; - - @ApiModelProperty(value = "修改时间") - private Date updateTime; - -} diff --git a/src/main/java/com/gxwebsoft/oa/entity/Notice.java b/src/main/java/com/gxwebsoft/oa/entity/Notice.java deleted file mode 100644 index 2de269b..0000000 --- a/src/main/java/com/gxwebsoft/oa/entity/Notice.java +++ /dev/null @@ -1,97 +0,0 @@ -package com.gxwebsoft.oa.entity; - -import com.baomidou.mybatisplus.annotation.*; - -import java.time.LocalDateTime; -import java.io.Serializable; -import java.util.Date; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -/** - * 消息记录表 - * - * @author 科技小王子 - * @since 2023-03-22 14:07:26 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@ApiModel(value = "Notice对象", description = "消息记录表") -@TableName("oa_notice") -public class Notice implements Serializable { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "ID") - @TableId(value = "notice_id", type = IdType.AUTO) - private Integer noticeId; - - @ApiModelProperty(value = "消息类型") - private String type; - - @ApiModelProperty(value = "标题") - private String title; - - @ApiModelProperty(value = "图标") - private String icon; - - @ApiModelProperty(value = "颜色") - private String color; - - @ApiModelProperty(value = "内容") - private String content; - - @ApiModelProperty(value = "备注") - private String comments; - - @ApiModelProperty(value = "消息来源") - private String source; - - @ApiModelProperty(value = "来源记录ID") - private Integer sourceId; - - @ApiModelProperty(value = "路由地址") - private String path; - - @ApiModelProperty(value = "代币") - private Long tokens; - - @ApiModelProperty(value = "是否已查阅") - private Integer isRead; - - @ApiModelProperty(value = "渠道, 0发送 1回复") - private Integer channel; - - @ApiModelProperty(value = "任务状态") - private Integer progress; - - @ApiModelProperty(value = "用户ID") - private Integer userId; - - @ApiModelProperty(value = "状态, 0待处理, 1已完成") - private Integer status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @TableLogic - private Integer deleted; - - @ApiModelProperty(value = "租户id") - private Integer tenantId; - - @ApiModelProperty(value = "注册时间") - private Date createTime; - - @ApiModelProperty(value = "修改时间") - private Date updateTime; - - @ApiModelProperty(value = "开发者名称") - @TableField(exist = false) - private String nickname; - - @ApiModelProperty(value = "开发者头像") - @TableField(exist = false) - private String avatar; - -} diff --git a/src/main/java/com/gxwebsoft/oa/entity/Project.java b/src/main/java/com/gxwebsoft/oa/entity/Project.java deleted file mode 100644 index 33ffb57..0000000 --- a/src/main/java/com/gxwebsoft/oa/entity/Project.java +++ /dev/null @@ -1,125 +0,0 @@ -package com.gxwebsoft.oa.entity; - -import java.math.BigDecimal; -import com.baomidou.mybatisplus.annotation.TableName; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import java.time.LocalDateTime; -import com.baomidou.mybatisplus.annotation.TableLogic; -import java.io.Serializable; -import java.util.Date; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -/** - * 项目管理表 - * - * @author WebSoft - * @since 2022-11-16 11:00:43 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@ApiModel(value = "Project对象", description = "项目管理表") -@TableName("oa_project") -public class Project implements Serializable { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "项目ID") - @TableId(value = "project_id", type = IdType.AUTO) - private Integer projectId; - - @ApiModelProperty(value = "项目名称") - private String projectName; - - @ApiModelProperty(value = "项目标识") - private String projectCode; - - @ApiModelProperty(value = "商品分类") - private String projectCategory; - - @ApiModelProperty(value = "项目商标") - private String projectAvatar; - - @ApiModelProperty(value = "项目域名") - private String url; - - @ApiModelProperty(value = "开发版域名") - private String urlDev; - - @ApiModelProperty(value = "后台管理地址") - private String urlAdmin; - - @ApiModelProperty(value = "默认账号密码") - private String account; - - @ApiModelProperty(value = "项目金额") - private BigDecimal money; - - @ApiModelProperty(value = "实际金额") - private BigDecimal realMoney; - - @ApiModelProperty(value = "年费") - private BigDecimal annualFee; - - @ApiModelProperty(value = "项目详情") - private String content; - - @ApiModelProperty(value = "开发参数(json)") - private String param; - - @ApiModelProperty(value = "二维码") - private String qrcode; - - @ApiModelProperty(value = "客户名称") - private String customerName; - - @ApiModelProperty(value = "项目进度(10待安排 20策划设计 30功能开发 40待验收 50完成)") - private Integer progress; - - @ApiModelProperty(value = "初始浏览数") - private Integer views; - - @ApiModelProperty(value = "状态(10上架 20下架)") - private Integer status; - - @ApiModelProperty(value = "排序(数字越小越靠前)") - private Integer sortNumber; - - @ApiModelProperty(value = "是否精选客户案例") - private Boolean isCase; - - @ApiModelProperty(value = "负责人") - private Integer commander; - - @ApiModelProperty(value = "用户ID") - private Integer userId; - - @ApiModelProperty(value = "机构id") - private Integer organizationId; - - @ApiModelProperty(value = "可见性(public,private,protected)") - private String visibility; - - @ApiModelProperty(value = "项目归属者") - private Integer customerId; - - @ApiModelProperty(value = "项目描述") - private String comments; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @TableLogic - private Integer deleted; - - @ApiModelProperty(value = "租户id") - private Integer tenantId; - - @ApiModelProperty(value = "注册时间") - private Date createTime; - - @ApiModelProperty(value = "修改时间") - private Date updateTime; - -} diff --git a/src/main/java/com/gxwebsoft/oa/entity/Task.java b/src/main/java/com/gxwebsoft/oa/entity/Task.java deleted file mode 100644 index ffa6942..0000000 --- a/src/main/java/com/gxwebsoft/oa/entity/Task.java +++ /dev/null @@ -1,188 +0,0 @@ -package com.gxwebsoft.oa.entity; - -import com.baomidou.mybatisplus.annotation.*; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.io.Serializable; -import java.util.Date; -import java.util.List; - -/** - * 文章记录表 - * - * @author WebSoft - * @since 2022-11-16 11:21:42 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@ApiModel(value = "Task对象", description = "文章记录表") -@TableName("oa_task") -public class Task implements Serializable { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "任务ID") - @TableId(value = "task_id", type = IdType.AUTO) - private Integer taskId; - - @ApiModelProperty(value = "任务名称") - private String name; - - @ApiModelProperty(value = "任务类型") - private String taskType; - - @ApiModelProperty(value = "工单附件") - private String files; - - @ApiModelProperty(value = "开始时间") - private Date startTime; - - @ApiModelProperty(value = "结束时间") - private Date endTime; - - @ApiModelProperty(value = "任务内容") - @TableField(exist = false) - private String content; - - @ApiModelProperty(value = "任务状态") - private Integer progress; - - @ApiModelProperty(value = "优先级") - private String priority; - - @ApiModelProperty(value = "品质要求") - private String quality; - - @ApiModelProperty(value = "时限(天)") - private Integer day; - - @ApiModelProperty(value = "联系电话") - private String phone; - - @ApiModelProperty(value = "用户ID") - private Integer userId; - - @ApiModelProperty(value = "应用ID") - private Integer appId; - - @ApiModelProperty(value = "机构id") - private Integer organizationId; - - @ApiModelProperty(value = "客户ID") - private Integer customerId; - - @ApiModelProperty(value = "项目ID") - private Integer projectId; - - @ApiModelProperty(value = "资产ID") - private Integer assetsId; - - @ApiModelProperty(value = "是否已查阅") - private Integer isRead; - - @ApiModelProperty(value = "最后回复人ID") - private Integer lastReadUser; - - @ApiModelProperty(value = "最后回复人头像") - @TableField(exist = false) - private String lastAvatar; - - @ApiModelProperty(value = "最后回复人昵称") - @TableField(exist = false) - private String lastNickname; - - @ApiModelProperty(value = "最后回复人姓名") - @TableField(exist = false) - private String lastRealName; - - @ApiModelProperty(value = "最后回复人公司名称") - @TableField(exist = false) - private String lastCompanyName; - - @ApiModelProperty(value = "排序(数字越小越靠前)") - private Integer sortNumber; - - @ApiModelProperty(value = "备注") - private String comments; - - @ApiModelProperty(value = "状态, 0待处理, 1已完成") - private Integer status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @TableLogic - private Integer deleted; - - @ApiModelProperty(value = "租户id") - private Integer tenantId; - - @ApiModelProperty(value = "注册时间") - private Date createTime; - - @ApiModelProperty(value = "修改时间") - private Date updateTime; - - @ApiModelProperty(value = "用户昵称") - @TableField(exist = false) - private String nickname; - - @ApiModelProperty(value = "用户头像") - @TableField(exist = false) - private String avatar; - - @ApiModelProperty(value = "任务发起人ID") - private Integer promoter; - - @ApiModelProperty(value = "发起人昵称") - @TableField(exist = false) - private String promoterName; - - @ApiModelProperty(value = "发起人别名") - @TableField(exist = false) - private String promoterAlias; - - @ApiModelProperty(value = "发起人头像") - @TableField(exist = false) - private String promoterAvatar; - - @ApiModelProperty(value = "发起人单位名称") - @TableField(exist = false) - private String promoterCompanyName; - - @ApiModelProperty(value = "受理人") - private Integer commander; - - @ApiModelProperty(value = "受理人昵称") - @TableField(exist = false) - private String commanderName; - - @ApiModelProperty(value = "受理人别名") - @TableField(exist = false) - private String commanderAlias; - - @ApiModelProperty(value = "受理人真实姓名") - @TableField(exist = false) - private String commanderRealName; - - @ApiModelProperty(value = "受理人头像") - @TableField(exist = false) - private String commanderAvatar; - - @ApiModelProperty(value = "受理人单位名称") - @TableField(exist = false) - private String commanderCompanyName; - - @ApiModelProperty(value = "成员管理") - @TableField(exist = false) - private List users; - - @ApiModelProperty(value = "应用名称") - @TableField(exist = false) - private String appName; - - @ApiModelProperty(value = "应用信息") - @TableField(exist = false) - private App appInfo; - -} diff --git a/src/main/java/com/gxwebsoft/oa/entity/TaskRecord.java b/src/main/java/com/gxwebsoft/oa/entity/TaskRecord.java deleted file mode 100644 index 73e8e80..0000000 --- a/src/main/java/com/gxwebsoft/oa/entity/TaskRecord.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.gxwebsoft.oa.entity; - -import com.baomidou.mybatisplus.annotation.*; - -import java.time.LocalDateTime; -import java.io.Serializable; -import java.util.Date; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -/** - * 工单回复记录表 - * - * @author 科技小王子 - * @since 2023-03-05 00:52:21 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@ApiModel(value = "TaskRecord对象", description = "工单回复记录表") -@TableName("oa_task_record") -public class TaskRecord implements Serializable { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "回复ID") - @TableId(value = "task_record_id", type = IdType.AUTO) - private Integer taskRecordId; - - @ApiModelProperty(value = "工单ID") - private Integer taskId; - - @ApiModelProperty(value = "上级id") - private Integer parentId; - - @ApiModelProperty(value = "任务内容") - private String content; - - @ApiModelProperty(value = "工单附件") - private String files; - - @ApiModelProperty(value = "用户ID") - private Integer userId; - - @ApiModelProperty(value = "排序(数字越小越靠前)") - private Integer sortNumber; - - @ApiModelProperty(value = "备注") - private String comments; - - @ApiModelProperty(value = "状态, 0待处理, 1已完成") - private Integer status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @TableLogic - private Integer deleted; - - @ApiModelProperty(value = "租户id") - private Integer tenantId; - - @ApiModelProperty(value = "注册时间") - private Date createTime; - - @ApiModelProperty(value = "修改时间") - private Date updateTime; - - @ApiModelProperty(value = "用户昵称") - @TableField(exist = false) - private String nickname; - - @ApiModelProperty(value = "用户头像") - @TableField(exist = false) - private String avatar; -} diff --git a/src/main/java/com/gxwebsoft/oa/entity/TaskUser.java b/src/main/java/com/gxwebsoft/oa/entity/TaskUser.java deleted file mode 100644 index 2d4f2ff..0000000 --- a/src/main/java/com/gxwebsoft/oa/entity/TaskUser.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.gxwebsoft.oa.entity; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableName; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import java.time.LocalDateTime; -import java.io.Serializable; -import java.util.Date; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -/** - * 工单成员 - * - * @author 科技小王子 - * @since 2023-03-06 12:00:41 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@ApiModel(value = "TaskUser对象", description = "工单成员") -@TableName("oa_task_user") -public class TaskUser implements Serializable { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "自增ID") - @TableId(value = "task_user_id", type = IdType.AUTO) - private Integer taskUserId; - - @ApiModelProperty(value = "角色,10体验成员 20开发者成员 30管理员 ") - private Integer role; - - @ApiModelProperty(value = "用户ID") - private Integer userId; - - @ApiModelProperty(value = "工单ID") - private Integer taskId; - - @ApiModelProperty(value = "状态, 0正常, 1待确认") - private Integer status; - - @ApiModelProperty(value = "租户id") - private Integer tenantId; - - @ApiModelProperty(value = "加入时间") - private Date createTime; - - @ApiModelProperty(value = "用户昵称") - @TableField(exist = false) - private String name; - - @ApiModelProperty(value = "用户头像") - @TableField(exist = false) - private String avatar; - - @ApiModelProperty(value = "手机号码") - @TableField(exist = false) - private String phone; - - @ApiModelProperty(value = "手机号码") - @TableField(exist = false) - private String email; - -} diff --git a/src/main/java/com/gxwebsoft/oa/entity/Tenant.java b/src/main/java/com/gxwebsoft/oa/entity/Tenant.java deleted file mode 100644 index ef18244..0000000 --- a/src/main/java/com/gxwebsoft/oa/entity/Tenant.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.gxwebsoft.oa.entity; - -import com.baomidou.mybatisplus.annotation.*; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.io.Serializable; -import java.util.Date; - -/** - * 租户 - * - * @author WebSoft - * @since 2022-11-17 17:13:39 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@ApiModel(value = "Tenant对象", description = "租户") -@TableName("sys_tenant") -public class Tenant implements Serializable { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "租户id") - @TableId(value = "tenant_id", type = IdType.AUTO) - private Integer tenantId; - - @ApiModelProperty(value = "租户名称") - private String tenantName; - - @ApiModelProperty(value = "租户编号") - private String tenantCode; - - @ApiModelProperty(value = "租户标识") - private String logo; - - @ApiModelProperty(value = "绑定的手机号码") - @TableField(exist = false) - private String phone; - - @ApiModelProperty(value = "绑定的邮箱") - @TableField(exist = false) - private String email; - - @ApiModelProperty(value = "备注") - private String comments; - - @ApiModelProperty(value = "所属客户") - @TableField(exist = false) - private Integer companyId; - - @ApiModelProperty(value = "用户ID") - private Integer userId; - - @ApiModelProperty(value = "状态") - private Integer status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @TableLogic - private Integer deleted; - - @ApiModelProperty(value = "创建时间") - private Date createTime; - - @ApiModelProperty(value = "修改时间") - private Date updateTime; - - @ApiModelProperty(value = "初始密码") - @TableField(exist = false) - private String password; - - @ApiModelProperty("客户名称") - @TableField(exist = false) - private String companyName; - - @TableId(value = "AppId") - @TableField(exist = false) - private Integer AppId; -} diff --git a/src/main/java/com/gxwebsoft/oa/mapper/AppMapper.java b/src/main/java/com/gxwebsoft/oa/mapper/AppMapper.java deleted file mode 100644 index 4415af7..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/AppMapper.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.gxwebsoft.oa.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.gxwebsoft.oa.entity.App; -import com.gxwebsoft.oa.param.AppParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 应用管理记录表Mapper - * - * @author 科技小王子 - * @since 2023-03-28 10:45:39 - */ -public interface AppMapper extends BaseMapper { - - /** - * 分页查询 - * - * @param page 分页对象 - * @param param 查询参数 - * @return List - */ - List selectPageRel(@Param("page") IPage page, - @Param("param") AppParam param); - - /** - * 查询全部 - * - * @param param 查询参数 - * @return List - */ - List selectListRel(@Param("param") AppParam param); - - List pageRel(@Param("param") AppParam param); -} diff --git a/src/main/java/com/gxwebsoft/oa/mapper/AppUserMapper.java b/src/main/java/com/gxwebsoft/oa/mapper/AppUserMapper.java deleted file mode 100644 index 68736b1..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/AppUserMapper.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.gxwebsoft.oa.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.gxwebsoft.oa.entity.AppUser; -import com.gxwebsoft.oa.param.AppUserParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 应用成员Mapper - * - * @author 科技小王子 - * @since 2023-05-31 13:18:55 - */ -public interface AppUserMapper extends BaseMapper { - - /** - * 分页查询 - * - * @param page 分页对象 - * @param param 查询参数 - * @return List - */ - List selectPageRel(@Param("page") IPage page, - @Param("param") AppUserParam param); - - /** - * 查询全部 - * - * @param param 查询参数 - * @return List - */ - List selectListRel(@Param("param") AppUserParam param); - -} diff --git a/src/main/java/com/gxwebsoft/oa/mapper/AssetsMapper.java b/src/main/java/com/gxwebsoft/oa/mapper/AssetsMapper.java deleted file mode 100644 index ebc8e58..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/AssetsMapper.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.gxwebsoft.oa.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.gxwebsoft.oa.entity.Assets; -import com.gxwebsoft.oa.param.AssetsParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 服务器资产记录表Mapper - * - * @author WebSoft - * @since 2022-11-16 11:13:16 - */ -public interface AssetsMapper extends BaseMapper { - - /** - * 分页查询 - * - * @param page 分页对象 - * @param param 查询参数 - * @return List - */ - List selectPageRel(@Param("page") IPage page, - @Param("param") AssetsParam param); - - /** - * 查询全部 - * - * @param param 查询参数 - * @return List - */ - List selectListRel(@Param("param") AssetsParam param); - -} diff --git a/src/main/java/com/gxwebsoft/oa/mapper/CustomerMapper.java b/src/main/java/com/gxwebsoft/oa/mapper/CustomerMapper.java deleted file mode 100644 index b77a4ae..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/CustomerMapper.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.gxwebsoft.oa.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.gxwebsoft.oa.entity.Customer; -import com.gxwebsoft.oa.param.CustomerParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 客户管理记录表Mapper - * - * @author WebSoft - * @since 2022-11-16 11:16:14 - */ -public interface CustomerMapper extends BaseMapper { - - /** - * 分页查询 - * - * @param page 分页对象 - * @param param 查询参数 - * @return List - */ - List selectPageRel(@Param("page") IPage page, - @Param("param") CustomerParam param); - - /** - * 查询全部 - * - * @param param 查询参数 - * @return List - */ - List selectListRel(@Param("param") CustomerParam param); - -} diff --git a/src/main/java/com/gxwebsoft/oa/mapper/NoticeMapper.java b/src/main/java/com/gxwebsoft/oa/mapper/NoticeMapper.java deleted file mode 100644 index 478d1f7..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/NoticeMapper.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.gxwebsoft.oa.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.gxwebsoft.oa.entity.Notice; -import com.gxwebsoft.oa.param.NoticeParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 消息记录表Mapper - * - * @author 科技小王子 - * @since 2023-03-22 14:07:26 - */ -public interface NoticeMapper extends BaseMapper { - - /** - * 分页查询 - * - * @param page 分页对象 - * @param param 查询参数 - * @return List - */ - List selectPageRel(@Param("page") IPage page, - @Param("param") NoticeParam param); - - /** - * 查询全部 - * - * @param param 查询参数 - * @return List - */ - List selectListRel(@Param("param") NoticeParam param); - -} diff --git a/src/main/java/com/gxwebsoft/oa/mapper/ProjectMapper.java b/src/main/java/com/gxwebsoft/oa/mapper/ProjectMapper.java deleted file mode 100644 index ff5cb98..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/ProjectMapper.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.gxwebsoft.oa.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.gxwebsoft.oa.entity.Project; -import com.gxwebsoft.oa.param.ProjectParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 项目管理表Mapper - * - * @author WebSoft - * @since 2022-11-16 11:00:43 - */ -public interface ProjectMapper extends BaseMapper { - - /** - * 分页查询 - * - * @param page 分页对象 - * @param param 查询参数 - * @return List - */ - List selectPageRel(@Param("page") IPage page, - @Param("param") ProjectParam param); - - /** - * 查询全部 - * - * @param param 查询参数 - * @return List - */ - List selectListRel(@Param("param") ProjectParam param); - -} diff --git a/src/main/java/com/gxwebsoft/oa/mapper/TaskMapper.java b/src/main/java/com/gxwebsoft/oa/mapper/TaskMapper.java deleted file mode 100644 index 17fa0e0..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/TaskMapper.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.gxwebsoft.oa.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.gxwebsoft.oa.entity.Task; -import com.gxwebsoft.oa.param.TaskParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 文章记录表Mapper - * - * @author WebSoft - * @since 2022-11-16 11:21:43 - */ -public interface TaskMapper extends BaseMapper { - - /** - * 分页查询 - * - * @param page 分页对象 - * @param param 查询参数 - * @return List - */ - List selectPageRel(@Param("page") IPage page, - @Param("param") TaskParam param); - - /** - * 查询全部 - * - * @param param 查询参数 - * @return List - */ - List selectListRel(@Param("param") TaskParam param); - -} diff --git a/src/main/java/com/gxwebsoft/oa/mapper/TaskRecordMapper.java b/src/main/java/com/gxwebsoft/oa/mapper/TaskRecordMapper.java deleted file mode 100644 index 9d1666a..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/TaskRecordMapper.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.gxwebsoft.oa.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.gxwebsoft.oa.entity.TaskRecord; -import com.gxwebsoft.oa.param.TaskRecordParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 工单回复记录表Mapper - * - * @author 科技小王子 - * @since 2023-03-05 00:52:21 - */ -public interface TaskRecordMapper extends BaseMapper { - - /** - * 分页查询 - * - * @param page 分页对象 - * @param param 查询参数 - * @return List - */ - List selectPageRel(@Param("page") IPage page, - @Param("param") TaskRecordParam param); - - /** - * 查询全部 - * - * @param param 查询参数 - * @return List - */ - List selectListRel(@Param("param") TaskRecordParam param); - -} diff --git a/src/main/java/com/gxwebsoft/oa/mapper/TaskUserMapper.java b/src/main/java/com/gxwebsoft/oa/mapper/TaskUserMapper.java deleted file mode 100644 index 9b1ecf8..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/TaskUserMapper.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.gxwebsoft.oa.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.gxwebsoft.oa.entity.TaskUser; -import com.gxwebsoft.oa.param.TaskUserParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 工单成员Mapper - * - * @author 科技小王子 - * @since 2023-03-06 12:00:41 - */ -public interface TaskUserMapper extends BaseMapper { - - /** - * 分页查询 - * - * @param page 分页对象 - * @param param 查询参数 - * @return List - */ - List selectPageRel(@Param("page") IPage page, - @Param("param") TaskUserParam param); - - /** - * 查询全部 - * - * @param param 查询参数 - * @return List - */ - List selectListRel(@Param("param") TaskUserParam param); - -} diff --git a/src/main/java/com/gxwebsoft/oa/mapper/TenantMapper.java b/src/main/java/com/gxwebsoft/oa/mapper/TenantMapper.java deleted file mode 100644 index fdbaba0..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/TenantMapper.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.gxwebsoft.oa.mapper; - -import com.baomidou.mybatisplus.annotation.InterceptorIgnore; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.gxwebsoft.oa.entity.Tenant; -import com.gxwebsoft.oa.param.TenantParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 租户Mapper - * - * @author WebSoft - * @since 2022-11-17 17:13:39 - */ -public interface TenantMapper extends BaseMapper { - - /** - * 分页查询 - * - * @param page 分页对象 - * @param param 查询参数 - * @return List - */ - @InterceptorIgnore(tenantLine = "true") - List selectPageRel(@Param("page") IPage page, - @Param("param") TenantParam param); - - /** - * 查询全部 - * - * @param param 查询参数 - * @return List - */ - List selectListRel(@Param("param") TenantParam param); - -} diff --git a/src/main/java/com/gxwebsoft/oa/mapper/xml/AppMapper.xml b/src/main/java/com/gxwebsoft/oa/mapper/xml/AppMapper.xml deleted file mode 100644 index c81507e..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/xml/AppMapper.xml +++ /dev/null @@ -1,195 +0,0 @@ - - - - - - - SELECT a.*, - b.company_id, - b.short_name, - b.company_name, - c.nickname, - c.real_name, - c.user_id, - c.avatar - FROM oa_app a - LEFT JOIN sys_company b ON a.company_id = b.company_id - LEFT JOIN sys_user c ON a.user_id = c.user_id - - - AND a.app_id = #{param.appId} - - - AND a.app_name LIKE CONCAT('%', #{param.appName}, '%') - - - AND a.parent_id = #{param.parentId} - - - AND a.app_code LIKE CONCAT('%', #{param.appCode}, '%') - - - AND a.app_type LIKE CONCAT('%', #{param.appType}, '%') - - - AND a.menu_type = #{param.menuType} - - - AND a.company_id = #{param.companyId} - - - AND a.app_icon LIKE CONCAT('%', #{param.appIcon}, '%') - - - AND a.app_qrcode LIKE CONCAT('%', #{param.appQrcode}, '%') - - - AND a.app_url LIKE CONCAT('%', #{param.appUrl}, '%') - - - AND a.admin_url LIKE CONCAT('%', #{param.adminUrl}, '%') - - - AND a.down_url LIKE CONCAT('%', #{param.downUrl}, '%') - - - AND a.ip_address LIKE CONCAT('%', #{param.ipAddress}, '%') - - - AND a.images LIKE CONCAT('%', #{param.images}, '%') - - - AND a.package_name LIKE CONCAT('%', #{param.packageName}, '%') - - - AND a.clicks = #{param.clicks} - - - AND a.installs = #{param.installs} - - - AND a.comments LIKE CONCAT('%', #{param.comments}, '%') - - - AND a.content LIKE CONCAT('%', #{param.content}, '%') - - - AND a.requirement LIKE CONCAT('%', #{param.requirement}, '%') - - - AND a.developer LIKE CONCAT('%', #{param.developer}, '%') - - - AND a.price = #{param.price} - - - AND a.line_price = #{param.linePrice} - - - AND a.score LIKE CONCAT('%', #{param.score}, '%') - - - AND a.star LIKE CONCAT('%', #{param.star}, '%') - - - AND a.path LIKE CONCAT('%', #{param.path}, '%') - - - AND a.component LIKE CONCAT('%', #{param.component}, '%') - - - AND a.authority LIKE CONCAT('%', #{param.authority}, '%') - - - AND a.target LIKE CONCAT('%', #{param.target}, '%') - - - AND a.hide = #{param.hide} - - - AND a.search = #{param.search} - - - AND a.active LIKE CONCAT('%', #{param.active}, '%') - - - AND a.meta LIKE CONCAT('%', #{param.meta}, '%') - - - AND a.edition LIKE CONCAT('%', #{param.edition}, '%') - - - AND a.version LIKE CONCAT('%', #{param.version}, '%') - - - AND a.is_use = #{param.isUse} - - - AND a.sort_number = #{param.sortNumber} - - - AND a.status = #{param.status} - - - AND a.deleted = #{param.deleted} - - - AND a.deleted = 0 - - - AND a.app_id IN (SELECT app_id FROM oa_app_user WHERE user_id=#{param.userId}) - - - AND a.app_id IN - - #{item} - - - - AND a.organization_id = #{param.organizationId} - - - AND a.tenant_id = #{param.tenantId} - - - AND a.tenant_code LIKE CONCAT('%', #{param.tenantCode}, '%') - - - AND a.create_time >= #{param.createTimeStart} - - - AND a.create_time <= #{param.createTimeEnd} - - - AND a.app_status = #{param.appStatus} - - - AND a.company_id = #{param.companyId} - - - - AND (a.app_name LIKE CONCAT('%', #{param.keywords}, '%') - OR b.short_name LIKE CONCAT('%', #{param.keywords}, '%') - OR b.company_id = #{param.keywords} - OR b.company_name LIKE CONCAT('%', #{param.keywords}, '%') - ) - - - - - - - - - - - - - - diff --git a/src/main/java/com/gxwebsoft/oa/mapper/xml/AppUserMapper.xml b/src/main/java/com/gxwebsoft/oa/mapper/xml/AppUserMapper.xml deleted file mode 100644 index 967f400..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/xml/AppUserMapper.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - SELECT a.*, b.nickname,b.email,b.phone,b.avatar - FROM oa_app_user a - LEFT JOIN sys_user b ON a.user_id = b.user_id - - - AND a.app_user_id = #{param.appUserId} - - - AND a.role = #{param.role} - - - AND a.user_id = #{param.userId} - - - AND a.app_id = #{param.appId} - - - AND a.status = #{param.status} - - - AND a.create_time >= #{param.createTimeStart} - - - AND a.create_time <= #{param.createTimeEnd} - - - AND (b.nickname LIKE CONCAT('%', #{param.keywords}, '%') - OR b.email LIKE CONCAT('%', #{param.keywords}, '%') - OR b.username LIKE CONCAT('%', #{param.keywords}, '%') - OR b.phone LIKE CONCAT('%', #{param.keywords}, '%') - ) - - - - - - - - - - - diff --git a/src/main/java/com/gxwebsoft/oa/mapper/xml/AssetsMapper.xml b/src/main/java/com/gxwebsoft/oa/mapper/xml/AssetsMapper.xml deleted file mode 100644 index ab550b3..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/xml/AssetsMapper.xml +++ /dev/null @@ -1,133 +0,0 @@ - - - - - - - SELECT a.*, - b.user_id,b.company_name,b.avatar,b.nickname - FROM oa_assets a - LEFT JOIN sys_user b ON a.user_id = b.user_id - - - AND a.assets_id = #{param.assetsId} - - - AND a.name LIKE CONCAT('%', #{param.name}, '%') - - - AND a.code LIKE CONCAT('%', #{param.code}, '%') - - - AND a.type LIKE CONCAT('%', #{param.type}, '%') - - - AND a.brand LIKE CONCAT('%', #{param.brand}, '%') - - - AND a.configuration LIKE CONCAT('%', #{param.configuration}, '%') - - - AND a.account LIKE CONCAT('%', #{param.account}, '%') - - - AND a.password LIKE CONCAT('%', #{param.password}, '%') - - - AND a.brand_account LIKE CONCAT('%', #{param.brandAccount}, '%') - - - AND a.brand_password LIKE CONCAT('%', #{param.brandPassword}, '%') - - - AND a.panel LIKE CONCAT('%', #{param.panel}, '%') - - - AND a.panel_account LIKE CONCAT('%', #{param.panelAccount}, '%') - - - AND a.panel_password LIKE CONCAT('%', #{param.panelPassword}, '%') - - - AND a.finance_amount = #{param.financeAmount} - - - AND a.finance_years = #{param.financeYears} - - - AND a.finance_renew = #{param.financeRenew} - - - AND a.finance_customer_name LIKE CONCAT('%', #{param.financeCustomerName}, '%') - - - AND a.finance_customer_contact LIKE CONCAT('%', #{param.financeCustomerContact}, '%') - - - AND a.finance_customer_phone LIKE CONCAT('%', #{param.financeCustomerPhone}, '%') - - - AND a.customer_id = #{param.customerId} - - - AND a.customer_name LIKE CONCAT('%', #{param.customerName}, '%') - - - AND a.open_port LIKE CONCAT('%', #{param.openPort}, '%') - - - AND a.content LIKE CONCAT('%', #{param.content}, '%') - - - AND a.start_time LIKE CONCAT('%', #{param.startTime}, '%') - - - AND a.end_time LIKE CONCAT('%', #{param.endTime}, '%') - - - AND a.is_top LIKE CONCAT('%', #{param.isTop}, '%') - - - AND a.visibility LIKE CONCAT('%', #{param.visibility}, '%') - - - AND a.sort_number = #{param.sortNumber} - - - AND a.comments LIKE CONCAT('%', #{param.comments}, '%') - - - AND a.user_id = #{param.userId} - - - AND a.organization_id = #{param.organizationId} - - - AND a.status LIKE CONCAT('%', #{param.status}, '%') - - - AND a.deleted = #{param.deleted} - - - AND a.deleted = 0 - - - AND a.create_time >= #{param.createTimeStart} - - - AND a.create_time <= #{param.createTimeEnd} - - - - - - - - - - - diff --git a/src/main/java/com/gxwebsoft/oa/mapper/xml/CustomerMapper.xml b/src/main/java/com/gxwebsoft/oa/mapper/xml/CustomerMapper.xml deleted file mode 100644 index 913b5f8..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/xml/CustomerMapper.xml +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - SELECT a.* - FROM oa_customer a - - - AND a.customer_id = #{param.customerId} - - - AND a.customer_name LIKE CONCAT('%', #{param.customerName}, '%') - - - AND a.customer_code LIKE CONCAT('%', #{param.customerCode}, '%') - - - AND a.customer_full_name LIKE CONCAT('%', #{param.customerFullName}, '%') - - - AND a.customer_avatar LIKE CONCAT('%', #{param.customerAvatar}, '%') - - - AND a.customer_type LIKE CONCAT('%', #{param.customerType}, '%') - - - AND a.customer_type = '' - - - AND a.customer_source LIKE CONCAT('%', #{param.customerSource}, '%') - - - AND a.customer_phone LIKE CONCAT('%', #{param.customerPhone}, '%') - - - AND a.customer_mobile LIKE CONCAT('%', #{param.customerMobile}, '%') - - - AND a.customer_contacts LIKE CONCAT('%', #{param.customerContacts}, '%') - - - AND a.customer_province LIKE CONCAT('%', #{param.customerProvince}, '%') - - - AND a.customer_city LIKE CONCAT('%', #{param.customerCity}, '%') - - - AND a.customer_region LIKE CONCAT('%', #{param.customerRegion}, '%') - - - AND a.customer_address LIKE CONCAT('%', #{param.customerAddress}, '%') - - - AND a.progress LIKE CONCAT('%', #{param.progress}, '%') - - - AND a.user_id = #{param.userId} - - - AND a.organization_id = #{param.organizationId} - - - AND a.visibility LIKE CONCAT('%', #{param.visibility}, '%') - - - AND a.sort_number = #{param.sortNumber} - - - AND a.comments LIKE CONCAT('%', #{param.comments}, '%') - - - AND a.status = #{param.status} - - - AND a.deleted = #{param.deleted} - - - AND a.deleted = 0 - - - AND a.create_time >= #{param.createTimeStart} - - - AND a.create_time <= #{param.createTimeEnd} - - - AND (a.customer_name LIKE CONCAT('%', #{param.keywords}, '%') - OR a.customer_contacts LIKE CONCAT('%', #{param.keywords}, '%') - OR a.customer_mobile LIKE CONCAT('%', #{param.keywords}, '%') - ) - - - - - - - - - - - diff --git a/src/main/java/com/gxwebsoft/oa/mapper/xml/NoticeMapper.xml b/src/main/java/com/gxwebsoft/oa/mapper/xml/NoticeMapper.xml deleted file mode 100644 index a5ab6d5..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/xml/NoticeMapper.xml +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - - SELECT a.*, - b.nickname, - b.user_id, - b.avatar - FROM oa_notice a - LEFT JOIN sys_user b ON a.user_id = b.user_id - - - AND a.notice_id = #{param.noticeId} - - - AND a.type LIKE CONCAT('%', #{param.type}, '%') - - - AND a.title LIKE CONCAT('%', #{param.title}, '%') - - - AND a.icon LIKE CONCAT('%', #{param.icon}, '%') - - - AND a.color LIKE CONCAT('%', #{param.color}, '%') - - - AND a.content LIKE CONCAT('%', #{param.content}, '%') - - - AND a.comments LIKE CONCAT('%', #{param.comments}, '%') - - - AND a.user_id = #{param.userId} - - - AND a.status = #{param.status} - - - AND a.deleted = #{param.deleted} - - - AND a.deleted = 0 - - - AND a.create_time >= #{param.createTimeStart} - - - AND a.create_time <= #{param.createTimeEnd} - - - AND b.nickname LIKE CONCAT('%', #{param.nickname}, '%') - - - - - - - - - - - diff --git a/src/main/java/com/gxwebsoft/oa/mapper/xml/ProjectMapper.xml b/src/main/java/com/gxwebsoft/oa/mapper/xml/ProjectMapper.xml deleted file mode 100644 index 5e419a7..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/xml/ProjectMapper.xml +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - - SELECT a.* - FROM oa_project a - - - AND a.project_id = #{param.projectId} - - - AND a.project_name LIKE CONCAT('%', #{param.projectName}, '%') - - - AND a.project_code LIKE CONCAT('%', #{param.projectCode}, '%') - - - AND a.project_category LIKE CONCAT('%', #{param.projectCategory}, '%') - - - AND a.project_avatar LIKE CONCAT('%', #{param.projectAvatar}, '%') - - - AND a.url LIKE CONCAT('%', #{param.url}, '%') - - - AND a.url_dev LIKE CONCAT('%', #{param.urlDev}, '%') - - - AND a.url_admin LIKE CONCAT('%', #{param.urlAdmin}, '%') - - - AND a.account LIKE CONCAT('%', #{param.account}, '%') - - - AND a.money = #{param.money} - - - AND a.real_money = #{param.realMoney} - - - AND a.annual_fee = #{param.annualFee} - - - AND a.content LIKE CONCAT('%', #{param.content}, '%') - - - AND a.param LIKE CONCAT('%', #{param.param}, '%') - - - AND a.qrcode LIKE CONCAT('%', #{param.qrcode}, '%') - - - AND a.customer_name LIKE CONCAT('%', #{param.customerName}, '%') - - - AND a.progress = #{param.progress} - - - AND a.views = #{param.views} - - - AND a.status = #{param.status} - - - AND a.sort_number = #{param.sortNumber} - - - AND a.is_case = #{param.isCase} - - - AND a.commander = #{param.commander} - - - AND a.user_id = #{param.userId} - - - AND a.organization_id = #{param.organizationId} - - - AND a.visibility LIKE CONCAT('%', #{param.visibility}, '%') - - - AND a.customer_id = #{param.customerId} - - - AND a.comments LIKE CONCAT('%', #{param.comments}, '%') - - - AND a.deleted = #{param.deleted} - - - AND a.deleted = 0 - - - AND a.create_time >= #{param.createTimeStart} - - - AND a.create_time <= #{param.createTimeEnd} - - - - - - - - - - - diff --git a/src/main/java/com/gxwebsoft/oa/mapper/xml/TaskMapper.xml b/src/main/java/com/gxwebsoft/oa/mapper/xml/TaskMapper.xml deleted file mode 100644 index a6e8871..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/xml/TaskMapper.xml +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - SELECT a.*, - b.nickname as promoterName,b.avatar as promoterAvatar,b.alias as promoterAlias,b.company_name as promoterCompanyName, - c.nickname as commanderName,c.avatar as commanderAvatar,c.alias as commanderAlias,c.company_name as commanderCompanyName, - d.nickname as lastNickname ,d.avatar as lastAvatar,d.real_name as lastRealName,d.company_name as lastCompanyName, - e.app_id,e.app_name - FROM oa_task a - LEFT JOIN sys_user b ON a.promoter = b.user_id - LEFT JOIN sys_user c ON a.commander = c.user_id - LEFT JOIN sys_user d ON a.last_read_user = d.user_id - LEFT JOIN oa_app e ON a.app_id = e.app_id - - - AND a.task_id = #{param.taskId} - - - AND a.name LIKE CONCAT('%', #{param.name}, '%') - - - AND a.task_type IN - - #{item} - - - - AND a.customer_id = #{param.customerId} - - - AND a.app_id = #{param.appId} - - - AND a.project_id = #{param.projectId} - - - AND a.assets_id = #{param.assetsId} - - - AND a.start_time LIKE CONCAT('%', #{param.startTime}, '%') - - - AND a.end_time LIKE CONCAT('%', #{param.endTime}, '%') - - - AND a.content LIKE CONCAT('%', #{param.content}, '%') - - - AND a.promoter = #{param.promoter} - - - AND (a.commander = #{param.commander} OR a.promoter = #{param.commander}) - - - AND a.progress IN - - #{item} - - - - AND a.priority LIKE CONCAT('%', #{param.priority}, '%') - - - AND a.quality LIKE CONCAT('%', #{param.quality}, '%') - - - AND a.day = #{param.day} - - - AND a.user_id = #{param.userId} - - - - - - AND a.organization_id = #{param.organizationId} - - - AND a.shop_id = #{param.shopId} - - - AND a.sort_number = #{param.sortNumber} - - - AND a.comments LIKE CONCAT('%', #{param.comments}, '%') - - - AND a.status = #{param.status} - - - AND a.deleted = #{param.deleted} - - - AND a.deleted = 0 - - - AND a.create_time >= #{param.createTimeStart} - - - AND a.create_time <= #{param.createTimeEnd} - - - AND (a.name LIKE CONCAT('%', #{param.keywords}, '%') - OR a.task_id LIKE CONCAT('%', #{param.keywords}, '%') - OR b.nickname LIKE CONCAT('%', #{param.keywords}, '%') - OR b.real_name LIKE CONCAT('%', #{param.keywords}, '%') - OR b.company_name LIKE CONCAT('%', #{param.keywords}, '%') - OR c.nickname LIKE CONCAT('%', #{param.keywords}, '%') - OR c.real_name LIKE CONCAT('%', #{param.keywords}, '%') - OR e.app_name LIKE CONCAT('%', #{param.keywords}, '%') - ) - - - AND b.app_name LIKE CONCAT('%', #{param.appName}, '%') - - - - - - - - - - - diff --git a/src/main/java/com/gxwebsoft/oa/mapper/xml/TaskRecordMapper.xml b/src/main/java/com/gxwebsoft/oa/mapper/xml/TaskRecordMapper.xml deleted file mode 100644 index 3978d19..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/xml/TaskRecordMapper.xml +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - - SELECT a.*, - b.nickname, - b.user_id, - b.avatar - FROM oa_task_record a - LEFT JOIN sys_user b ON a.user_id = b.user_id - - - AND a.task_record_id = #{param.taskRecordId} - - - AND a.task_id = #{param.taskId} - - - AND a.content LIKE CONCAT('%', #{param.content}, '%') - - - AND a.files LIKE CONCAT('%', #{param.files}, '%') - - - AND a.developer_id = #{param.developerId} - - - AND a.user_id = #{param.userId} - - - AND a.sort_number = #{param.sortNumber} - - - AND a.comments LIKE CONCAT('%', #{param.comments}, '%') - - - AND a.status = #{param.status} - - - AND a.deleted = #{param.deleted} - - - AND a.deleted = 0 - - - AND a.create_time >= #{param.createTimeStart} - - - AND a.create_time <= #{param.createTimeEnd} - - - AND b.nickname LIKE CONCAT('%', #{param.nickname}, '%') - - - - - - - - - - - diff --git a/src/main/java/com/gxwebsoft/oa/mapper/xml/TaskUserMapper.xml b/src/main/java/com/gxwebsoft/oa/mapper/xml/TaskUserMapper.xml deleted file mode 100644 index dc3819c..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/xml/TaskUserMapper.xml +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - SELECT a.*, - b.nickname as name, - b.phone, - b.user_id, - b.avatar, - b.email - FROM oa_task_user a - LEFT JOIN sys_user b ON a.user_id = b.user_id - - - AND a.task_user_id = #{param.taskUserId} - - - AND a.role = #{param.role} - - - AND a.user_id = #{param.userId} - - - AND a.task_id = #{param.taskId} - - - AND a.status = #{param.status} - - - AND a.create_time >= #{param.createTimeStart} - - - AND a.create_time <= #{param.createTimeEnd} - - - - - - - - - - - diff --git a/src/main/java/com/gxwebsoft/oa/mapper/xml/TenantMapper.xml b/src/main/java/com/gxwebsoft/oa/mapper/xml/TenantMapper.xml deleted file mode 100644 index c0f527e..0000000 --- a/src/main/java/com/gxwebsoft/oa/mapper/xml/TenantMapper.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - - SELECT a.*, - b.company_id, - b.company_name - FROM sys_tenant a - LEFT JOIN sys_company b ON a.tenant_id = b.tenant_id - - - AND a.tenant_id = #{param.tenantId} - - - AND a.tenant_name LIKE CONCAT('%', #{param.tenantName}, '%') - - - AND a.app_id = #{param.appId} - - - AND a.comments LIKE CONCAT('%', #{param.comments}, '%') - - - AND a.status = #{param.status} - - - AND a.deleted = #{param.deleted} - - - AND a.deleted = 0 - - - AND a.create_time >= #{param.createTimeStart} - - - AND a.create_time <= #{param.createTimeEnd} - - - AND b.company_name LIKE CONCAT('%', #{param.companyName}, '%') - - - - - - - - - - - diff --git a/src/main/java/com/gxwebsoft/oa/param/AppParam.java b/src/main/java/com/gxwebsoft/oa/param/AppParam.java deleted file mode 100644 index ca7eceb..0000000 --- a/src/main/java/com/gxwebsoft/oa/param/AppParam.java +++ /dev/null @@ -1,187 +0,0 @@ -package com.gxwebsoft.oa.param; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.gxwebsoft.common.core.annotation.QueryField; -import com.gxwebsoft.common.core.annotation.QueryType; -import com.gxwebsoft.common.core.web.BaseParam; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.math.BigDecimal; -import java.util.Set; - -/** - * 应用管理记录表查询参数 - * - * @author 科技小王子 - * @since 2023-03-28 10:45:39 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@JsonInclude(JsonInclude.Include.NON_NULL) -@ApiModel(value = "AppParam对象", description = "应用管理记录表查询参数") -public class AppParam extends BaseParam { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "应用ID") - @QueryField(type = QueryType.EQ) - private Integer appId; - - @ApiModelProperty(value = "应用名称") - private String appName; - - @ApiModelProperty(value = "上级id, 0是顶级") - @QueryField(type = QueryType.EQ) - private Integer parentId; - - @ApiModelProperty(value = "应用标识") - private String appCode; - - @ApiModelProperty(value = "应用类型") - private String appType; - - @ApiModelProperty(value = "类型, 0菜单, 1按钮") - @QueryField(type = QueryType.EQ) - private Integer menuType; - - @ApiModelProperty(value = "企业ID") - @QueryField(type = QueryType.EQ) - private Integer companyId; - - @ApiModelProperty(value = "应用图标") - private String appIcon; - - @ApiModelProperty(value = "二维码") - private String appQrcode; - - @ApiModelProperty(value = "链接地址") - private String appUrl; - - @ApiModelProperty(value = "后台管理地址") - private String adminUrl; - - @ApiModelProperty(value = "下载地址") - private String downUrl; - - @ApiModelProperty(value = "仓库地址") - private String gitUrl; - - @ApiModelProperty(value = "IP白名单") - private String ipAddress; - - @ApiModelProperty(value = "应用截图") - private String images; - - @ApiModelProperty(value = "应用包名") - private String packageName; - - @ApiModelProperty(value = "下载次数") - @QueryField(type = QueryType.EQ) - private Integer clicks; - - @ApiModelProperty(value = "安装次数") - @QueryField(type = QueryType.EQ) - private Integer installs; - - @ApiModelProperty(value = "备注") - private String comments; - - @ApiModelProperty(value = "应用介绍") - private String content; - - @ApiModelProperty(value = "项目需求") - private String requirement; - - @ApiModelProperty(value = "开发者(个人或公司)") - private String developer; - - @ApiModelProperty(value = "软件定价") - @QueryField(type = QueryType.EQ) - private BigDecimal price; - - @ApiModelProperty(value = "划线价格") - @QueryField(type = QueryType.EQ) - private BigDecimal linePrice; - - @ApiModelProperty(value = "评分") - private String score; - - @ApiModelProperty(value = "星级") - private String star; - - @ApiModelProperty(value = "菜单路由地址") - private String path; - - @ApiModelProperty(value = "菜单组件地址, 目录可为空") - private String component; - - @ApiModelProperty(value = "权限标识") - private String authority; - - @ApiModelProperty(value = "打开位置") - private String target; - - @ApiModelProperty(value = "是否隐藏, 0否, 1是(仅注册路由不显示在左侧菜单)") - @QueryField(type = QueryType.EQ) - private Integer hide; - - @ApiModelProperty(value = "禁止搜索,1禁止 0 允许") - @QueryField(type = QueryType.EQ) - private Integer search; - - @ApiModelProperty(value = "菜单侧栏选中的path") - private String active; - - @ApiModelProperty(value = "其它路由元信息") - private String meta; - - @ApiModelProperty(value = "版本,0正式版 1体验版 2开发版") - private String edition; - - @ApiModelProperty(value = "版本号") - private String version; - - @ApiModelProperty(value = "是否已安装") - @QueryField(type = QueryType.EQ) - private Integer isUse; - - @ApiModelProperty(value = "排序(数字越小越靠前)") - @QueryField(type = QueryType.EQ) - private Integer sortNumber; - - @ApiModelProperty(value = "应用状态") - private String appStatus; - - @ApiModelProperty(value = "状态, 0正常, 1冻结") - @QueryField(type = QueryType.EQ) - private Integer status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @QueryField(type = QueryType.EQ) - private Integer deleted; - - @ApiModelProperty(value = "用户ID") - @QueryField(type = QueryType.EQ) - private Integer userId; - - @ApiModelProperty(value = "租户ID") - private Integer tenantId; - - @ApiModelProperty(value = "机构id") - @QueryField(type = QueryType.EQ) - private Integer organizationId; - - @ApiModelProperty(value = "企业名称") - private String companyName; - - @ApiModelProperty(value = "租户编号") - private String tenantCode; - - @ApiModelProperty(value = "按APPID集搜索") - @TableField(exist = false) - private Set appIds; - -} diff --git a/src/main/java/com/gxwebsoft/oa/param/AppUserParam.java b/src/main/java/com/gxwebsoft/oa/param/AppUserParam.java deleted file mode 100644 index 136f2ad..0000000 --- a/src/main/java/com/gxwebsoft/oa/param/AppUserParam.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.gxwebsoft.oa.param; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.gxwebsoft.common.core.annotation.QueryField; -import com.gxwebsoft.common.core.annotation.QueryType; -import com.gxwebsoft.common.core.web.BaseParam; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -/** - * 应用成员查询参数 - * - * @author 科技小王子 - * @since 2023-05-31 13:18:55 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@JsonInclude(JsonInclude.Include.NON_NULL) -@ApiModel(value = "AppUserParam对象", description = "应用成员查询参数") -public class AppUserParam extends BaseParam { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "自增ID") - @QueryField(type = QueryType.EQ) - private Integer appUserId; - - @ApiModelProperty(value = "角色,10体验成员 20开发者成员 30管理员 ") - @QueryField(type = QueryType.EQ) - private Integer role; - - @ApiModelProperty(value = "用户ID") - @QueryField(type = QueryType.EQ) - private Integer userId; - - @ApiModelProperty(value = "应用ID") - @QueryField(type = QueryType.EQ) - private Integer appId; - - @ApiModelProperty(value = "状态, 0正常, 1待确认") - @QueryField(type = QueryType.EQ) - private Integer status; - - @ApiModelProperty(value = "昵称") - @TableField(exist = false) - private String nickname; - - @ApiModelProperty(value = "用户名") - @TableField(exist = false) - private String username; - - @ApiModelProperty(value = "手机号码") - @TableField(exist = false) - private String phone; - - @ApiModelProperty(value = "邮箱") - @TableField(exist = false) - private String email; - - @ApiModelProperty(value = "头像") - @TableField(exist = false) - private String avatar; - -} diff --git a/src/main/java/com/gxwebsoft/oa/param/AssetsParam.java b/src/main/java/com/gxwebsoft/oa/param/AssetsParam.java deleted file mode 100644 index c798553..0000000 --- a/src/main/java/com/gxwebsoft/oa/param/AssetsParam.java +++ /dev/null @@ -1,142 +0,0 @@ -package com.gxwebsoft.oa.param; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.gxwebsoft.common.core.annotation.QueryField; -import com.gxwebsoft.common.core.annotation.QueryType; -import com.gxwebsoft.common.core.web.BaseParam; -import com.fasterxml.jackson.annotation.JsonInclude; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.math.BigDecimal; - -/** - * 服务器资产记录表查询参数 - * - * @author WebSoft - * @since 2022-11-16 11:13:16 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@JsonInclude(JsonInclude.Include.NON_NULL) -@ApiModel(value = "AssetsParam对象", description = "服务器资产记录表查询参数") -public class AssetsParam extends BaseParam { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "资产ID") - @QueryField(type = QueryType.EQ) - private Integer assetsId; - - @ApiModelProperty(value = "资产名称") - private String name; - - @ApiModelProperty(value = "资产标识") - private String code; - - @ApiModelProperty(value = "资产类型") - private String type; - - @ApiModelProperty(value = "服务器厂商") - private String brand; - - @ApiModelProperty(value = "服务器配置") - private String configuration; - - @ApiModelProperty(value = "初始账号") - private String account; - - @ApiModelProperty(value = "初始密码") - private String password; - - @ApiModelProperty(value = "(阿里云/腾讯云)登录账号") - private String brandAccount; - - @ApiModelProperty(value = "(阿里云/腾讯云)登录密码") - private String brandPassword; - - @ApiModelProperty(value = "宝塔面板") - private String panel; - - @ApiModelProperty(value = "宝塔面板账号") - private String panelAccount; - - @ApiModelProperty(value = "宝塔面板密码") - private String panelPassword; - - @ApiModelProperty(value = "财务信息-合同金额") - @QueryField(type = QueryType.EQ) - private BigDecimal financeAmount; - - @ApiModelProperty(value = "购买年限") - @QueryField(type = QueryType.EQ) - private Integer financeYears; - - @ApiModelProperty(value = "续费金额") - @QueryField(type = QueryType.EQ) - private BigDecimal financeRenew; - - @ApiModelProperty(value = "客户名称") - private String financeCustomerName; - - @ApiModelProperty(value = "客户联系人") - private String financeCustomerContact; - - @ApiModelProperty(value = "客户联系电话") - private String financeCustomerPhone; - - @ApiModelProperty(value = "客户ID") - @QueryField(type = QueryType.EQ) - private Integer customerId; - - @ApiModelProperty(value = "客户名称") - private String customerName; - - @ApiModelProperty(value = "开放端口") - private String openPort; - - @ApiModelProperty(value = "详情内容") - private String content; - - @ApiModelProperty(value = "购买时间") - private String startTime; - - @ApiModelProperty(value = "到期时间") - private String endTime; - - @ApiModelProperty(value = "置顶状态") - private String isTop; - - @ApiModelProperty(value = "可见性(public,private,protected)") - private String visibility; - - @ApiModelProperty(value = "文章排序(数字越小越靠前)") - @QueryField(type = QueryType.EQ) - private Integer sortNumber; - - @ApiModelProperty(value = "描述") - private String comments; - - @ApiModelProperty(value = "用户ID") - @QueryField(type = QueryType.EQ) - private Integer userId; - - @ApiModelProperty(value = "机构id") - @QueryField(type = QueryType.EQ) - private Integer organizationId; - - @ApiModelProperty(value = "状态, 0正常, 1冻结") - private String status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @QueryField(type = QueryType.EQ) - private Integer deleted; - - @ApiModelProperty(value = "客户名称") - @TableField(exist = false) - private String companyName; - - - -} diff --git a/src/main/java/com/gxwebsoft/oa/param/CustomerParam.java b/src/main/java/com/gxwebsoft/oa/param/CustomerParam.java deleted file mode 100644 index 84a9223..0000000 --- a/src/main/java/com/gxwebsoft/oa/param/CustomerParam.java +++ /dev/null @@ -1,101 +0,0 @@ -package com.gxwebsoft.oa.param; - -import com.gxwebsoft.common.core.annotation.QueryField; -import com.gxwebsoft.common.core.annotation.QueryType; -import com.gxwebsoft.common.core.web.BaseParam; -import com.fasterxml.jackson.annotation.JsonInclude; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -/** - * 客户管理记录表查询参数 - * - * @author WebSoft - * @since 2022-11-16 11:16:14 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@JsonInclude(JsonInclude.Include.NON_NULL) -@ApiModel(value = "CustomerParam对象", description = "客户管理记录表查询参数") -public class CustomerParam extends BaseParam { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "客户ID") - @QueryField(type = QueryType.EQ) - private Integer customerId; - - @ApiModelProperty(value = "客户名称") - private String customerName; - - @ApiModelProperty(value = "客户标识") - private String customerCode; - - @ApiModelProperty(value = "客户全称") - private String customerFullName; - - @ApiModelProperty(value = "头像") - private String customerAvatar; - - @ApiModelProperty(value = "客户类型") - private String customerType; - - @ApiModelProperty(value = "客户来源") - private String customerSource; - - @ApiModelProperty(value = "公司座机") - private String customerPhone; - - @ApiModelProperty(value = "手机号码") - private String customerMobile; - - @ApiModelProperty(value = "联系人") - private String customerContacts; - - @ApiModelProperty(value = "所在省份") - private String customerProvince; - - @ApiModelProperty(value = "所在城市") - private String customerCity; - - @ApiModelProperty(value = "所在地区") - private String customerRegion; - - @ApiModelProperty(value = "所在地址") - private String customerAddress; - - @ApiModelProperty(value = "跟进状态") - private String progress; - - @ApiModelProperty(value = "用户ID") - @QueryField(type = QueryType.EQ) - private Integer userId; - - @ApiModelProperty(value = "机构id") - @QueryField(type = QueryType.EQ) - private Integer organizationId; - - @ApiModelProperty(value = "可见性(public,private,protected)") - private String visibility; - - @ApiModelProperty(value = "排序(数字越小越靠前)") - @QueryField(type = QueryType.EQ) - private Integer sortNumber; - - @ApiModelProperty(value = "备注") - private String comments; - - @ApiModelProperty(value = "状态, 0正常, 1冻结") - @QueryField(type = QueryType.EQ) - private Integer status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @QueryField(type = QueryType.EQ) - private Integer deleted; - - @ApiModelProperty(value = "按无企业类型查询") - @QueryField(type = QueryType.EQ) - private Boolean emptyType; - -} diff --git a/src/main/java/com/gxwebsoft/oa/param/NoticeParam.java b/src/main/java/com/gxwebsoft/oa/param/NoticeParam.java deleted file mode 100644 index df369ae..0000000 --- a/src/main/java/com/gxwebsoft/oa/param/NoticeParam.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.gxwebsoft.oa.param; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.gxwebsoft.common.core.annotation.QueryField; -import com.gxwebsoft.common.core.annotation.QueryType; -import com.gxwebsoft.common.core.web.BaseParam; -import com.fasterxml.jackson.annotation.JsonInclude; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -/** - * 消息记录表查询参数 - * - * @author 科技小王子 - * @since 2023-03-22 14:07:26 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@JsonInclude(JsonInclude.Include.NON_NULL) -@ApiModel(value = "NoticeParam对象", description = "消息记录表查询参数") -public class NoticeParam extends BaseParam { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "ID") - @QueryField(type = QueryType.EQ) - private Integer noticeId; - - @ApiModelProperty(value = "消息类型") - private String type; - - @ApiModelProperty(value = "标题") - private String title; - - @ApiModelProperty(value = "图标") - private String icon; - - @ApiModelProperty(value = "颜色") - private String color; - - @ApiModelProperty(value = "内容") - private String content; - - @ApiModelProperty(value = "备注") - private String comments; - - @ApiModelProperty(value = "消息来源") - private String source; - - @ApiModelProperty(value = "来源记录ID") - private Integer sourceId; - - @ApiModelProperty(value = "路由地址") - private String path; - - @ApiModelProperty(value = "渠道, 0发送 1回复") - private Integer channel; - - @ApiModelProperty(value = "用户ID") - @QueryField(type = QueryType.EQ) - private Integer userId; - - @ApiModelProperty(value = "租户id") - @QueryField(type = QueryType.EQ) - private Integer tenantId; - - @ApiModelProperty(value = "状态, 0待处理, 1已完成") - @QueryField(type = QueryType.EQ) - private Integer status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @QueryField(type = QueryType.EQ) - private Integer deleted; - - @ApiModelProperty(value = "昵称") - @TableField(exist = false) - private String nickname; - -} diff --git a/src/main/java/com/gxwebsoft/oa/param/ProjectParam.java b/src/main/java/com/gxwebsoft/oa/param/ProjectParam.java deleted file mode 100644 index a35020d..0000000 --- a/src/main/java/com/gxwebsoft/oa/param/ProjectParam.java +++ /dev/null @@ -1,125 +0,0 @@ -package com.gxwebsoft.oa.param; - -import com.gxwebsoft.common.core.annotation.QueryField; -import com.gxwebsoft.common.core.annotation.QueryType; -import com.gxwebsoft.common.core.web.BaseParam; -import com.fasterxml.jackson.annotation.JsonInclude; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.math.BigDecimal; - -/** - * 项目管理表查询参数 - * - * @author WebSoft - * @since 2022-11-16 11:00:43 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@JsonInclude(JsonInclude.Include.NON_NULL) -@ApiModel(value = "ProjectParam对象", description = "项目管理表查询参数") -public class ProjectParam extends BaseParam { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "项目ID") - @QueryField(type = QueryType.EQ) - private Integer projectId; - - @ApiModelProperty(value = "项目名称") - private String projectName; - - @ApiModelProperty(value = "项目标识") - private String projectCode; - - @ApiModelProperty(value = "商品分类") - private String projectCategory; - - @ApiModelProperty(value = "项目商标") - private String projectAvatar; - - @ApiModelProperty(value = "项目域名") - private String url; - - @ApiModelProperty(value = "开发版域名") - private String urlDev; - - @ApiModelProperty(value = "后台管理地址") - private String urlAdmin; - - @ApiModelProperty(value = "默认账号密码") - private String account; - - @ApiModelProperty(value = "项目金额") - @QueryField(type = QueryType.EQ) - private BigDecimal money; - - @ApiModelProperty(value = "实际金额") - @QueryField(type = QueryType.EQ) - private BigDecimal realMoney; - - @ApiModelProperty(value = "年费") - @QueryField(type = QueryType.EQ) - private BigDecimal annualFee; - - @ApiModelProperty(value = "项目详情") - private String content; - - @ApiModelProperty(value = "开发参数(json)") - private String param; - - @ApiModelProperty(value = "二维码") - private String qrcode; - - @ApiModelProperty(value = "客户名称") - private String customerName; - - @ApiModelProperty(value = "项目进度(10待安排 20策划设计 30功能开发 40待验收 50完成)") - @QueryField(type = QueryType.EQ) - private Integer progress; - - @ApiModelProperty(value = "初始浏览数") - @QueryField(type = QueryType.EQ) - private Integer views; - - @ApiModelProperty(value = "状态(10上架 20下架)") - @QueryField(type = QueryType.EQ) - private Integer status; - - @ApiModelProperty(value = "排序(数字越小越靠前)") - @QueryField(type = QueryType.EQ) - private Integer sortNumber; - - @ApiModelProperty(value = "是否精选客户案例") - @QueryField(type = QueryType.EQ) - private Boolean isCase; - - @ApiModelProperty(value = "负责人") - @QueryField(type = QueryType.EQ) - private Integer commander; - - @ApiModelProperty(value = "用户ID") - @QueryField(type = QueryType.EQ) - private Integer userId; - - @ApiModelProperty(value = "机构id") - @QueryField(type = QueryType.EQ) - private Integer organizationId; - - @ApiModelProperty(value = "可见性(public,private,protected)") - private String visibility; - - @ApiModelProperty(value = "项目归属者") - @QueryField(type = QueryType.EQ) - private Integer customerId; - - @ApiModelProperty(value = "项目描述") - private String comments; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @QueryField(type = QueryType.EQ) - private Integer deleted; - -} diff --git a/src/main/java/com/gxwebsoft/oa/param/TaskParam.java b/src/main/java/com/gxwebsoft/oa/param/TaskParam.java deleted file mode 100644 index c736e96..0000000 --- a/src/main/java/com/gxwebsoft/oa/param/TaskParam.java +++ /dev/null @@ -1,145 +0,0 @@ -package com.gxwebsoft.oa.param; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.gxwebsoft.common.core.annotation.QueryField; -import com.gxwebsoft.common.core.annotation.QueryType; -import com.gxwebsoft.common.core.web.BaseParam; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -/** - * 文章记录表查询参数 - * - * @author WebSoft - * @since 2022-11-16 11:21:42 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@JsonInclude(JsonInclude.Include.NON_NULL) -@ApiModel(value = "TaskParam对象", description = "文章记录表查询参数") -public class TaskParam extends BaseParam { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "任务ID") - @QueryField(type = QueryType.EQ) - private Integer taskId; - - @ApiModelProperty(value = "任务名称") - private String name; - - @ApiModelProperty(value = "任务类型") - private String taskType; - - @ApiModelProperty(value = "关联应用") - private Integer appId; - - @ApiModelProperty(value = "客户ID") - @QueryField(type = QueryType.EQ) - private Integer customerId; - - @ApiModelProperty(value = "项目ID") - @QueryField(type = QueryType.EQ) - private Integer projectId; - - @ApiModelProperty(value = "资产ID") - @QueryField(type = QueryType.EQ) - private Integer assetsId; - - @ApiModelProperty(value = "是否已查阅") - private Integer isRead; - - @ApiModelProperty(value = "最后回复人ID") - private Integer lastReadUser; - - @ApiModelProperty(value = "最后回复人头像") - @TableField(exist = false) - private String lastAvatar; - - @ApiModelProperty(value = "最后回复人昵称") - @TableField(exist = false) - private String lastNickname; - - @ApiModelProperty(value = "最后回复人姓名") - @TableField(exist = false) - private String lastRealName; - - @ApiModelProperty(value = "最后回复人公司名称") - @TableField(exist = false) - private String lastCompanyName; - - @ApiModelProperty(value = "开始时间") - private String startTime; - - @ApiModelProperty(value = "结束时间") - private String endTime; - - @ApiModelProperty(value = "任务内容") - private String content; - - @ApiModelProperty(value = "任务发起人") - @QueryField(type = QueryType.EQ) - private Integer promoter; - - @ApiModelProperty(value = "负责人") - private Integer commander; - - @ApiModelProperty(value = "任务状态") - private String progress; - - @ApiModelProperty(value = "优先级") - private String priority; - - @ApiModelProperty(value = "品质要求") - private String quality; - - @ApiModelProperty(value = "时限(天)") - @QueryField(type = QueryType.EQ) - private Integer day; - - @ApiModelProperty(value = "用户ID") - @QueryField(type = QueryType.EQ) - private Integer userId; - - @ApiModelProperty(value = "机构id") - @QueryField(type = QueryType.EQ) - private Integer organizationId; - - @ApiModelProperty(value = "所属门店ID") - @QueryField(type = QueryType.EQ) - private Integer shopId; - - @ApiModelProperty(value = "排序(数字越小越靠前)") - @QueryField(type = QueryType.EQ) - private Integer sortNumber; - - @ApiModelProperty(value = "备注") - private String comments; - - @ApiModelProperty(value = "状态, 0正常, 1冻结") - @QueryField(type = QueryType.EQ) - private Integer status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @QueryField(type = QueryType.EQ) - private Integer deleted; - - @ApiModelProperty(value = "用户昵称") - @QueryField(type = QueryType.EQ) - private String nickname; - - @ApiModelProperty(value = "用户头像") - @QueryField(type = QueryType.EQ) - private String avatar; - - @ApiModelProperty(value = "应用名称") - @TableField(exist = false) - private String appName; - - @ApiModelProperty(value = "关键词搜索") - @TableField(exist = false) - private String keywords; - -} diff --git a/src/main/java/com/gxwebsoft/oa/param/TaskRecordParam.java b/src/main/java/com/gxwebsoft/oa/param/TaskRecordParam.java deleted file mode 100644 index 822697f..0000000 --- a/src/main/java/com/gxwebsoft/oa/param/TaskRecordParam.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.gxwebsoft.oa.param; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.gxwebsoft.common.core.annotation.QueryField; -import com.gxwebsoft.common.core.annotation.QueryType; -import com.gxwebsoft.common.core.web.BaseParam; -import com.gxwebsoft.oa.entity.App; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -/** - * 工单回复记录表查询参数 - * - * @author 科技小王子 - * @since 2023-03-05 00:52:21 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@JsonInclude(JsonInclude.Include.NON_NULL) -@ApiModel(value = "TaskRecordParam对象", description = "工单回复记录表查询参数") -public class TaskRecordParam extends BaseParam { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "回复ID") - @QueryField(type = QueryType.EQ) - private Integer taskRecordId; - - @ApiModelProperty(value = "工单ID") - @QueryField(type = QueryType.EQ) - private Integer taskId; - - @ApiModelProperty(value = "上级ID") - private Integer parentId; - - @ApiModelProperty(value = "任务内容") - private String content; - - @ApiModelProperty(value = "工单附件") - private String files; - - @ApiModelProperty(value = "开发者ID") - @QueryField(type = QueryType.EQ) - private Integer developerId; - - @ApiModelProperty(value = "用户ID") - @QueryField(type = QueryType.EQ) - private Integer userId; - - @ApiModelProperty(value = "排序(数字越小越靠前)") - @QueryField(type = QueryType.EQ) - private Integer sortNumber; - - @ApiModelProperty(value = "备注") - private String comments; - - @ApiModelProperty(value = "状态, 0待处理, 1已完成") - @QueryField(type = QueryType.EQ) - private Integer status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @QueryField(type = QueryType.EQ) - private Integer deleted; - - @ApiModelProperty(value = "用户昵称") - @QueryField(type = QueryType.EQ) - private String nickname; - - @ApiModelProperty(value = "用户头像") - @QueryField(type = QueryType.EQ) - private String avatar; - -} diff --git a/src/main/java/com/gxwebsoft/oa/param/TaskUserParam.java b/src/main/java/com/gxwebsoft/oa/param/TaskUserParam.java deleted file mode 100644 index 577aa4c..0000000 --- a/src/main/java/com/gxwebsoft/oa/param/TaskUserParam.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.gxwebsoft.oa.param; - -import com.gxwebsoft.common.core.annotation.QueryField; -import com.gxwebsoft.common.core.annotation.QueryType; -import com.gxwebsoft.common.core.web.BaseParam; -import com.fasterxml.jackson.annotation.JsonInclude; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -/** - * 工单成员查询参数 - * - * @author 科技小王子 - * @since 2023-03-06 12:00:41 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@JsonInclude(JsonInclude.Include.NON_NULL) -@ApiModel(value = "TaskUserParam对象", description = "工单成员查询参数") -public class TaskUserParam extends BaseParam { - private static final long serialVersionUID = 1L; - - @ApiModelProperty(value = "自增ID") - @QueryField(type = QueryType.EQ) - private Integer taskUserId; - - @ApiModelProperty(value = "角色,10体验成员 20开发者成员 30管理员 ") - @QueryField(type = QueryType.EQ) - private Integer role; - - @ApiModelProperty(value = "用户ID") - @QueryField(type = QueryType.EQ) - private Integer userId; - - @ApiModelProperty(value = "工单ID") - @QueryField(type = QueryType.EQ) - private Integer taskId; - - @ApiModelProperty(value = "状态, 0正常, 1待确认") - @QueryField(type = QueryType.EQ) - private Integer status; - -} diff --git a/src/main/java/com/gxwebsoft/oa/param/TenantParam.java b/src/main/java/com/gxwebsoft/oa/param/TenantParam.java deleted file mode 100644 index 6eeb367..0000000 --- a/src/main/java/com/gxwebsoft/oa/param/TenantParam.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.gxwebsoft.oa.param; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.gxwebsoft.common.core.annotation.QueryField; -import com.gxwebsoft.common.core.annotation.QueryType; -import com.gxwebsoft.common.core.web.BaseParam; -import com.fasterxml.jackson.annotation.JsonInclude; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; - -/** - * 租户查询参数 - * - * @author WebSoft - * @since 2022-11-17 17:13:39 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@JsonInclude(JsonInclude.Include.NON_NULL) -@ApiModel(value = "TenantParam对象", description = "租户查询参数") -public class TenantParam extends BaseParam { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("租户ID") - @TableId(value = "tenant_id", type = IdType.AUTO) - private Integer tenantId; - - @ApiModelProperty(value = "租户名称") - private String tenantName; - - @ApiModelProperty(value = "初始密码") - private String password; - - @ApiModelProperty(value = "应用ID") - private String appId; - - @ApiModelProperty(value = "应用密钥") - private String appSecret; - - @ApiModelProperty(value = "备注") - private String comments; - - @ApiModelProperty(value = "客户ID") - @TableField(exist = false) - private Integer companyId; - - @ApiModelProperty(value = "创建人") - @QueryField(type = QueryType.EQ) - private Integer userId; - - @ApiModelProperty(value = "状态") - @QueryField(type = QueryType.EQ) - private Integer status; - - @ApiModelProperty(value = "是否删除, 0否, 1是") - @QueryField(type = QueryType.EQ) - private Integer deleted; - - @ApiModelProperty("客户名称") - @TableField(exist = false) - private String companyName; - - @ApiModelProperty("租户编号") - @TableField(exist = false) - private String tenantCode; - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/AppService.java b/src/main/java/com/gxwebsoft/oa/service/AppService.java deleted file mode 100644 index bf03d2d..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/AppService.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.gxwebsoft.oa.service; - -import com.baomidou.mybatisplus.annotation.InterceptorIgnore; -import com.baomidou.mybatisplus.extension.service.IService; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.entity.App; -import com.gxwebsoft.oa.param.AppParam; - -import java.util.List; - -/** - * 应用管理记录表Service - * - * @author 科技小王子 - * @since 2023-03-28 10:45:39 - */ -public interface AppService extends IService { - - /** - * 分页关联查询 - * - * @param param 查询参数 - * @return PageResult - */ - @InterceptorIgnore(tenantLine = "true") - PageResult pageRel(AppParam param); - - /** - * 关联查询全部 - * - * @param param 查询参数 - * @return List - */ - List listRel(AppParam param); - - /** - * 根据id查询 - * - * @param appId 应用ID - * @return App - */ - @InterceptorIgnore(tenantLine = "true") - App getByIdRel(Integer appId); - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/AppUserService.java b/src/main/java/com/gxwebsoft/oa/service/AppUserService.java deleted file mode 100644 index 0a152f9..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/AppUserService.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.gxwebsoft.oa.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.entity.AppUser; -import com.gxwebsoft.oa.param.AppUserParam; - -import java.util.List; - -/** - * 应用成员Service - * - * @author 科技小王子 - * @since 2023-05-31 13:18:55 - */ -public interface AppUserService extends IService { - - /** - * 分页关联查询 - * - * @param param 查询参数 - * @return PageResult - */ - PageResult pageRel(AppUserParam param); - - /** - * 关联查询全部 - * - * @param param 查询参数 - * @return List - */ - List listRel(AppUserParam param); - - /** - * 根据id查询 - * - * @param appUserId 自增ID - * @return AppUser - */ - AppUser getByIdRel(Integer appUserId); - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/AssetsService.java b/src/main/java/com/gxwebsoft/oa/service/AssetsService.java deleted file mode 100644 index 275d3f7..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/AssetsService.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.gxwebsoft.oa.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.entity.Assets; -import com.gxwebsoft.oa.param.AssetsParam; - -import java.util.List; - -/** - * 服务器资产记录表Service - * - * @author WebSoft - * @since 2022-11-16 11:13:16 - */ -public interface AssetsService extends IService { - - /** - * 分页关联查询 - * - * @param param 查询参数 - * @return PageResult - */ - PageResult pageRel(AssetsParam param); - - /** - * 关联查询全部 - * - * @param param 查询参数 - * @return List - */ - List listRel(AssetsParam param); - - /** - * 根据id查询 - * - * @param assetsId 资产ID - * @return Assets - */ - Assets getByIdRel(Integer assetsId); - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/CustomerService.java b/src/main/java/com/gxwebsoft/oa/service/CustomerService.java deleted file mode 100644 index 393265f..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/CustomerService.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.gxwebsoft.oa.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.entity.Customer; -import com.gxwebsoft.oa.param.CustomerParam; - -import java.util.List; - -/** - * 客户管理记录表Service - * - * @author WebSoft - * @since 2022-11-16 11:16:14 - */ -public interface CustomerService extends IService { - - /** - * 分页关联查询 - * - * @param param 查询参数 - * @return PageResult - */ - PageResult pageRel(CustomerParam param); - - /** - * 关联查询全部 - * - * @param param 查询参数 - * @return List - */ - List listRel(CustomerParam param); - - /** - * 根据id查询 - * - * @param customerId 客户ID - * @return Customer - */ - Customer getByIdRel(Integer customerId); - - Customer getByCustomerName(String customerName); -} diff --git a/src/main/java/com/gxwebsoft/oa/service/NoticeService.java b/src/main/java/com/gxwebsoft/oa/service/NoticeService.java deleted file mode 100644 index b14c659..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/NoticeService.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.gxwebsoft.oa.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.entity.Notice; -import com.gxwebsoft.oa.entity.Task; -import com.gxwebsoft.oa.entity.TaskRecord; -import com.gxwebsoft.oa.param.NoticeParam; - -import java.util.List; - -/** - * 消息记录表Service - * - * @author 科技小王子 - * @since 2023-03-22 14:07:26 - */ -public interface NoticeService extends IService { - - /** - * 分页关联查询 - * - * @param param 查询参数 - * @return PageResult - */ - PageResult pageRel(NoticeParam param); - - /** - * 关联查询全部 - * - * @param param 查询参数 - * @return List - */ - List listRel(NoticeParam param); - - /** - * 根据id查询 - * - * @param noticeId ID - * @return Notice - */ - Notice getByIdRel(Integer noticeId); - - void add(); - - void addNotice(Task task); - - void addLetter(TaskRecord taskRecord); - - void addTodo(Task task); -} diff --git a/src/main/java/com/gxwebsoft/oa/service/ProjectService.java b/src/main/java/com/gxwebsoft/oa/service/ProjectService.java deleted file mode 100644 index ffd1934..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/ProjectService.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.gxwebsoft.oa.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.entity.Project; -import com.gxwebsoft.oa.param.ProjectParam; - -import java.util.List; - -/** - * 项目管理表Service - * - * @author WebSoft - * @since 2022-11-16 11:00:43 - */ -public interface ProjectService extends IService { - - /** - * 分页关联查询 - * - * @param param 查询参数 - * @return PageResult - */ - PageResult pageRel(ProjectParam param); - - /** - * 关联查询全部 - * - * @param param 查询参数 - * @return List - */ - List listRel(ProjectParam param); - - /** - * 根据id查询 - * - * @param projectId 项目ID - * @return Project - */ - Project getByIdRel(Integer projectId); - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/TaskRecordService.java b/src/main/java/com/gxwebsoft/oa/service/TaskRecordService.java deleted file mode 100644 index 130883c..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/TaskRecordService.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.gxwebsoft.oa.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.entity.TaskRecord; -import com.gxwebsoft.oa.param.TaskRecordParam; - -import java.util.List; - -/** - * 工单回复记录表Service - * - * @author 科技小王子 - * @since 2023-03-05 00:52:21 - */ -public interface TaskRecordService extends IService { - - /** - * 分页关联查询 - * - * @param param 查询参数 - * @return PageResult - */ - PageResult pageRel(TaskRecordParam param); - - /** - * 关联查询全部 - * - * @param param 查询参数 - * @return List - */ - List listRel(TaskRecordParam param); - - /** - * 根据id查询 - * - * @param taskRecordId 回复ID - * @return TaskRecord - */ - TaskRecord getByIdRel(Integer taskRecordId); - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/TaskService.java b/src/main/java/com/gxwebsoft/oa/service/TaskService.java deleted file mode 100644 index 30e7c80..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/TaskService.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.gxwebsoft.oa.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.oa.entity.Task; -import com.gxwebsoft.oa.param.TaskParam; - -import java.util.ArrayList; -import java.util.List; - -/** - * 文章记录表Service - * - * @author WebSoft - * @since 2022-11-16 11:21:43 - */ -public interface TaskService extends IService { - - /** - * 分页关联查询 - * - * @param param 查询参数 - * @return PageResult - */ - PageResult pageRel(TaskParam param); - - /** - * 关联查询全部 - * - * @param param 查询参数 - * @return List - */ - List listRel(TaskParam param); - - /** - * 根据id查询 - * - * @param taskId 任务ID - * @return Task - */ - Task getByIdRel(Integer taskId); - - ArrayList getCountNum(User loginUser); - - ArrayList getCountNum(User loginUser, TaskParam param); -} diff --git a/src/main/java/com/gxwebsoft/oa/service/TaskUserService.java b/src/main/java/com/gxwebsoft/oa/service/TaskUserService.java deleted file mode 100644 index 15b9927..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/TaskUserService.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.gxwebsoft.oa.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.entity.TaskUser; -import com.gxwebsoft.oa.param.TaskUserParam; - -import java.util.List; - -/** - * 工单成员Service - * - * @author 科技小王子 - * @since 2023-03-06 12:00:41 - */ -public interface TaskUserService extends IService { - - /** - * 分页关联查询 - * - * @param param 查询参数 - * @return PageResult - */ - PageResult pageRel(TaskUserParam param); - - /** - * 关联查询全部 - * - * @param param 查询参数 - * @return List - */ - List listRel(TaskUserParam param); - - /** - * 根据id查询 - * - * @param taskUserId 自增ID - * @return TaskUser - */ - TaskUser getByIdRel(Integer taskUserId); - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/TenantService.java b/src/main/java/com/gxwebsoft/oa/service/TenantService.java deleted file mode 100644 index 367ee22..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/TenantService.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.gxwebsoft.oa.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.entity.Tenant; -import com.gxwebsoft.oa.param.TenantParam; - -import java.util.List; - -/** - * 租户Service - * - * @author WebSoft - * @since 2022-11-17 17:13:39 - */ -public interface TenantService extends IService { - - /** - * 分页关联查询 - * - * @param param 查询参数 - * @return PageResult - */ - PageResult pageRel(TenantParam param); - - /** - * 关联查询全部 - * - * @param param 查询参数 - * @return List - */ - List listRel(TenantParam param); - - Integer getByUserId(Integer userId); - - /** - * 根据id查询 - * - * @param tenantId 租户id - * @return Tenant - */ - Tenant getByIdRel(Integer tenantId); - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/impl/AppServiceImpl.java b/src/main/java/com/gxwebsoft/oa/service/impl/AppServiceImpl.java deleted file mode 100644 index b2bbf2f..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/impl/AppServiceImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.gxwebsoft.oa.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.entity.App; -import com.gxwebsoft.oa.mapper.AppMapper; -import com.gxwebsoft.oa.param.AppParam; -import com.gxwebsoft.oa.service.AppService; -import com.gxwebsoft.oa.service.AppUserService; -import org.springframework.stereotype.Service; - -import javax.annotation.Resource; -import java.util.List; - -/** - * 应用管理记录表Service实现 - * - * @author 科技小王子 - * @since 2023-03-28 10:45:39 - */ -@Service -public class AppServiceImpl extends ServiceImpl implements AppService { - @Resource - private AppUserService appUserService; - - @Override - public PageResult pageRel(AppParam param) { - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - - List list = baseMapper.selectPageRel(page, param); - return new PageResult<>(list, page.getTotal()); - } - - @Override - public List listRel(AppParam param) { - List list = baseMapper.selectListRel(param); - // 排序 - PageParam page = new PageParam<>(); - page.setDefaultOrder("create_time desc"); - return page.sortRecords(list); - } - - @Override - public App getByIdRel(Integer appId) { - AppParam param = new AppParam(); - param.setAppId(appId); - return param.getOne(baseMapper.selectListRel(param)); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/impl/AppUserServiceImpl.java b/src/main/java/com/gxwebsoft/oa/service/impl/AppUserServiceImpl.java deleted file mode 100644 index b31f04d..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/impl/AppUserServiceImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.gxwebsoft.oa.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.gxwebsoft.oa.mapper.AppUserMapper; -import com.gxwebsoft.oa.service.AppUserService; -import com.gxwebsoft.oa.entity.AppUser; -import com.gxwebsoft.oa.param.AppUserParam; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.PageResult; -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - * 应用成员Service实现 - * - * @author 科技小王子 - * @since 2023-05-31 13:18:55 - */ -@Service -public class AppUserServiceImpl extends ServiceImpl implements AppUserService { - - @Override - public PageResult pageRel(AppUserParam param) { - PageParam page = new PageParam<>(param); - //page.setDefaultOrder("create_time desc"); - List list = baseMapper.selectPageRel(page, param); - return new PageResult<>(list, page.getTotal()); - } - - @Override - public List listRel(AppUserParam param) { - List list = baseMapper.selectListRel(param); - // 排序 - PageParam page = new PageParam<>(); - //page.setDefaultOrder("create_time desc"); - return page.sortRecords(list); - } - - @Override - public AppUser getByIdRel(Integer appUserId) { - AppUserParam param = new AppUserParam(); - param.setAppUserId(appUserId); - return param.getOne(baseMapper.selectListRel(param)); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/impl/AssetsServiceImpl.java b/src/main/java/com/gxwebsoft/oa/service/impl/AssetsServiceImpl.java deleted file mode 100644 index 3cba77d..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/impl/AssetsServiceImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.gxwebsoft.oa.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.gxwebsoft.oa.mapper.AssetsMapper; -import com.gxwebsoft.oa.service.AssetsService; -import com.gxwebsoft.oa.entity.Assets; -import com.gxwebsoft.oa.param.AssetsParam; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.PageResult; -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - * 服务器资产记录表Service实现 - * - * @author WebSoft - * @since 2022-11-16 11:13:16 - */ -@Service -public class AssetsServiceImpl extends ServiceImpl implements AssetsService { - - @Override - public PageResult pageRel(AssetsParam param) { - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - List list = baseMapper.selectPageRel(page, param); - return new PageResult<>(list, page.getTotal()); - } - - @Override - public List listRel(AssetsParam param) { - List list = baseMapper.selectListRel(param); - // 排序 - PageParam page = new PageParam<>(); - page.setDefaultOrder("create_time desc"); - return page.sortRecords(list); - } - - @Override - public Assets getByIdRel(Integer assetsId) { - AssetsParam param = new AssetsParam(); - param.setAssetsId(assetsId); - return param.getOne(baseMapper.selectListRel(param)); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/impl/CustomerServiceImpl.java b/src/main/java/com/gxwebsoft/oa/service/impl/CustomerServiceImpl.java deleted file mode 100644 index cea7a3c..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/impl/CustomerServiceImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.gxwebsoft.oa.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.gxwebsoft.oa.mapper.CustomerMapper; -import com.gxwebsoft.oa.service.CustomerService; -import com.gxwebsoft.oa.entity.Customer; -import com.gxwebsoft.oa.param.CustomerParam; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.PageResult; -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - * 客户管理记录表Service实现 - * - * @author WebSoft - * @since 2022-11-16 11:16:14 - */ -@Service -public class CustomerServiceImpl extends ServiceImpl implements CustomerService { - - @Override - public PageResult pageRel(CustomerParam param) { - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - List list = baseMapper.selectPageRel(page, param); - return new PageResult<>(list, page.getTotal()); - } - - @Override - public List listRel(CustomerParam param) { - List list = baseMapper.selectListRel(param); - // 排序 - PageParam page = new PageParam<>(); - page.setDefaultOrder("create_time desc"); - return page.sortRecords(list); - } - - @Override - public Customer getByIdRel(Integer customerId) { - CustomerParam param = new CustomerParam(); - param.setCustomerId(customerId); - return param.getOne(baseMapper.selectListRel(param)); - } - - @Override - public Customer getByCustomerName(String customerName) { - return query().eq("customer_name", customerName).one(); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/impl/NoticeServiceImpl.java b/src/main/java/com/gxwebsoft/oa/service/impl/NoticeServiceImpl.java deleted file mode 100644 index 6f97606..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/impl/NoticeServiceImpl.java +++ /dev/null @@ -1,109 +0,0 @@ -package com.gxwebsoft.oa.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.common.system.service.UserService; -import com.gxwebsoft.oa.entity.Task; -import com.gxwebsoft.oa.entity.TaskRecord; -import com.gxwebsoft.oa.mapper.NoticeMapper; -import com.gxwebsoft.oa.service.NoticeService; -import com.gxwebsoft.oa.entity.Notice; -import com.gxwebsoft.oa.param.NoticeParam; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.service.TaskService; -import org.springframework.stereotype.Service; - -import javax.annotation.Resource; -import java.util.List; - -import static com.gxwebsoft.oa.constants.NoticeConstants.*; - -/** - * 消息记录表Service实现 - * - * @author 科技小王子 - * @since 2023-03-22 14:07:26 - */ -@Service -public class NoticeServiceImpl extends ServiceImpl implements NoticeService { - @Resource - private UserService userService; - @Resource - private TaskService taskService; - - @Override - public PageResult pageRel(NoticeParam param) { - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - List list = baseMapper.selectPageRel(page, param); - return new PageResult<>(list, page.getTotal()); - } - - @Override - public List listRel(NoticeParam param) { - List list = baseMapper.selectListRel(param); - // 排序 - PageParam page = new PageParam<>(); - page.setDefaultOrder("create_time desc"); - return page.sortRecords(list); - } - - @Override - public Notice getByIdRel(Integer noticeId) { - NoticeParam param = new NoticeParam(); - param.setNoticeId(noticeId); - return param.getOne(baseMapper.selectListRel(param)); - } - - @Override - public void add() { - } - - @Override - public void addNotice(Task task) { - Notice notice = new Notice(); - notice.setType(NOTICE); - notice.setIcon("NotificationFilled"); - notice.setSourceId(task.getTaskId()); - notice.setUserId(task.getPromoter()); - notice.setTitle(task.getName()); - notice.setContent("您有一个新指派的工单(" + task.getTaskId() + ")需要处理!"); - save(notice); - } - - @Override - public void addLetter(TaskRecord taskRecord) { - // 通知发起人 - User user = userService.getById(taskRecord.getUserId()); - Task task = taskService.getById(taskRecord.getTaskId()); - Notice notice = new Notice(); - notice.setType(LETTER); - notice.setIcon(user.getAvatar()); - notice.setSourceId(task.getTaskId()); - notice.setUserId(task.getPromoter()); - notice.setTitle(user.getNickname() + " 回复了你的工单(" + taskRecord.getTaskId() + ")"); - notice.setContent(taskRecord.getContent()); - save(notice); - // 通知代发人 - notice.setUserId(task.getUserId()); - save(notice); - } - - @Override - public void addTodo(Task task) { - Task record = taskService.getById(task.getTaskId()); - if (task.getCommander() != null) { - Notice notice = new Notice(); - notice.setType(TODO); - notice.setIcon("HistoryOutlined"); - notice.setSourceId(task.getTaskId()); - notice.setUserId(task.getCommander()); - notice.setTitle("您有一个新的工单需要处理!"); - notice.setContent(record.getName().concat("("+ task.getTaskId() +")")); - notice.setProgress(record.getProgress()); - save(notice); - } - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/impl/ProjectServiceImpl.java b/src/main/java/com/gxwebsoft/oa/service/impl/ProjectServiceImpl.java deleted file mode 100644 index f456fce..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/impl/ProjectServiceImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.gxwebsoft.oa.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.gxwebsoft.oa.mapper.ProjectMapper; -import com.gxwebsoft.oa.service.ProjectService; -import com.gxwebsoft.oa.entity.Project; -import com.gxwebsoft.oa.param.ProjectParam; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.PageResult; -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - * 项目管理表Service实现 - * - * @author WebSoft - * @since 2022-11-16 11:00:43 - */ -@Service -public class ProjectServiceImpl extends ServiceImpl implements ProjectService { - - @Override - public PageResult pageRel(ProjectParam param) { - PageParam page = new PageParam<>(param); - //page.setDefaultOrder("create_time desc"); - List list = baseMapper.selectPageRel(page, param); - return new PageResult<>(list, page.getTotal()); - } - - @Override - public List listRel(ProjectParam param) { - List list = baseMapper.selectListRel(param); - // 排序 - PageParam page = new PageParam<>(); - //page.setDefaultOrder("create_time desc"); - return page.sortRecords(list); - } - - @Override - public Project getByIdRel(Integer projectId) { - ProjectParam param = new ProjectParam(); - param.setProjectId(projectId); - return param.getOne(baseMapper.selectListRel(param)); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/impl/TaskRecordServiceImpl.java b/src/main/java/com/gxwebsoft/oa/service/impl/TaskRecordServiceImpl.java deleted file mode 100644 index da1f170..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/impl/TaskRecordServiceImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.gxwebsoft.oa.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.gxwebsoft.oa.mapper.TaskRecordMapper; -import com.gxwebsoft.oa.service.TaskRecordService; -import com.gxwebsoft.oa.entity.TaskRecord; -import com.gxwebsoft.oa.param.TaskRecordParam; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.service.TaskService; -import org.springframework.security.core.parameters.P; -import org.springframework.stereotype.Service; - -import javax.annotation.Resource; -import java.util.List; - -/** - * 工单回复记录表Service实现 - * - * @author 科技小王子 - * @since 2023-03-05 00:52:21 - */ -@Service -public class TaskRecordServiceImpl extends ServiceImpl implements TaskRecordService { - @Override - public PageResult pageRel(TaskRecordParam param) { - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time asc"); - List list = baseMapper.selectPageRel(page, param); - return new PageResult<>(list, page.getTotal()); - } - - @Override - public List listRel(TaskRecordParam param) { - List list = baseMapper.selectListRel(param); - // 排序 - PageParam page = new PageParam<>(); - page.setDefaultOrder("create_time asc"); - return page.sortRecords(list); - } - - @Override - public TaskRecord getByIdRel(Integer taskRecordId) { - TaskRecordParam param = new TaskRecordParam(); - param.setTaskRecordId(taskRecordId); - return param.getOne(baseMapper.selectListRel(param)); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/impl/TaskServiceImpl.java b/src/main/java/com/gxwebsoft/oa/service/impl/TaskServiceImpl.java deleted file mode 100644 index 32675e6..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/impl/TaskServiceImpl.java +++ /dev/null @@ -1,141 +0,0 @@ -package com.gxwebsoft.oa.service.impl; - -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.common.system.service.UserService; -import com.gxwebsoft.oa.entity.Task; -import com.gxwebsoft.oa.mapper.TaskMapper; -import com.gxwebsoft.oa.param.TaskParam; -import com.gxwebsoft.oa.service.TaskService; -import com.gxwebsoft.oa.service.TaskUserService; -import org.springframework.stereotype.Service; - -import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.atomic.AtomicInteger; - -/** - * 文章记录表Service实现 - * - * @author WebSoft - * @since 2022-11-16 11:21:43 - */ -@Service -public class TaskServiceImpl extends ServiceImpl implements TaskService { - private Integer userId; - @Resource - private UserService userService; - @Resource - private TaskUserService taskUserService; - - @Override - public PageResult pageRel(TaskParam param) { - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - List list = baseMapper.selectPageRel(page, param); -// list.forEach(d -> { -// int count = taskUserService.count(new LambdaQueryWrapper().eq(TaskUser::getTaskId, d.getTaskId())); -// if(count>0){ -// TaskUserParam taskUserParam = new TaskUserParam(); -// taskUserParam.setTaskId(d.getTaskId()); -// List users = taskUserService.listRel(taskUserParam); -// d.setUsers(users); -// } -// }); - return new PageResult<>(list, page.getTotal()); - } - - @Override - public List listRel(TaskParam param) { - List list = baseMapper.selectListRel(param); - // 排序 - PageParam page = new PageParam<>(); - //page.setDefaultOrder("create_time desc"); - return page.sortRecords(list); - } - - @Override - public Task getByIdRel(Integer taskId) { - TaskParam param = new TaskParam(); - param.setTaskId(taskId); - return param.getOne(baseMapper.selectListRel(param)); - } - - @Override - public ArrayList getCountNum(User loginUser) { - Integer type = loginUser.getType(); - Integer userId = loginUser.getUserId(); - AtomicInteger count1 = new AtomicInteger(count(new LambdaQueryWrapper().eq(Task::getStatus, 0))); - AtomicInteger count2 = new AtomicInteger(count(new LambdaQueryWrapper().eq(Task::getStatus, 1))); - // 非管理员仅可浏览和自己相关的工单 - loginUser.getRoles().forEach(d -> { - if(!StrUtil.equals(d.getRoleCode(),"superAdmin") && !StrUtil.equals(d.getRoleCode(),"admin")){ - if(type.equals(6)){ - count1.set(count(new LambdaQueryWrapper().eq(Task::getStatus, 0).eq(Task::getCommander, userId))); - count2.set(count(new LambdaQueryWrapper().eq(Task::getStatus, 1).eq(Task::getCommander, userId))); - } - if(type.equals(10)){ - count1.set(count(new LambdaQueryWrapper().eq(Task::getStatus, 0).eq(Task::getPromoter, userId))); - count2.set(count(new LambdaQueryWrapper().eq(Task::getStatus, 1).eq(Task::getPromoter, userId))); - } - } - }); - JSONObject json1 = new JSONObject(); - json1.put("tab","待处理"); - json1.put("key","0"); - json1.put("count",count1); - JSONObject json2 = new JSONObject(); - json2.put("tab","已完成"); - json2.put("key","1"); - json2.put("count",count2); - ArrayList objects = new ArrayList<>(); - objects.add(json1); - objects.add(json2); - return objects; - } - - @Override - public ArrayList getCountNum(User loginUser, TaskParam param) { - Integer type = loginUser.getType(); - final Integer userId = param.getUserId(); -// if (param.getUserId() != null) { -// this.userId = param.getUserId(); -// }else { -// this.userId = loginUser.getUserId(); -// } - - AtomicInteger count1 = new AtomicInteger(count(new LambdaQueryWrapper().eq(Task::getStatus, 0))); - AtomicInteger count2 = new AtomicInteger(count(new LambdaQueryWrapper().eq(Task::getStatus, 1))); - // 非管理员仅可浏览和自己相关的工单 - loginUser.getRoles().forEach(d -> { - - if(type.equals(6)){ - count1.set(count(new LambdaQueryWrapper().eq(Task::getStatus, 0).eq(Task::getCommander, userId))); - count2.set(count(new LambdaQueryWrapper().eq(Task::getStatus, 1).eq(Task::getCommander, userId))); - } - if(type.equals(10)){ - count1.set(count(new LambdaQueryWrapper().eq(Task::getStatus, 0).eq(Task::getPromoter, userId))); - count2.set(count(new LambdaQueryWrapper().eq(Task::getStatus, 1).eq(Task::getPromoter, userId))); - } - }); - JSONObject json1 = new JSONObject(); - json1.put("tab","待处理"); - json1.put("key","0"); - json1.put("count",count1); - JSONObject json2 = new JSONObject(); - json2.put("tab","已完成"); - json2.put("key","1"); - json2.put("count",count2); - ArrayList objects = new ArrayList<>(); - objects.add(json1); - objects.add(json2); - return objects; - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/impl/TaskUserServiceImpl.java b/src/main/java/com/gxwebsoft/oa/service/impl/TaskUserServiceImpl.java deleted file mode 100644 index d3ee7b5..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/impl/TaskUserServiceImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.gxwebsoft.oa.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.gxwebsoft.oa.mapper.TaskUserMapper; -import com.gxwebsoft.oa.service.TaskUserService; -import com.gxwebsoft.oa.entity.TaskUser; -import com.gxwebsoft.oa.param.TaskUserParam; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.PageResult; -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - * 工单成员Service实现 - * - * @author 科技小王子 - * @since 2023-03-06 12:00:41 - */ -@Service -public class TaskUserServiceImpl extends ServiceImpl implements TaskUserService { - - @Override - public PageResult pageRel(TaskUserParam param) { - PageParam page = new PageParam<>(param); - //page.setDefaultOrder("create_time desc"); - List list = baseMapper.selectPageRel(page, param); - return new PageResult<>(list, page.getTotal()); - } - - @Override - public List listRel(TaskUserParam param) { - List list = baseMapper.selectListRel(param); - // 排序 - PageParam page = new PageParam<>(); - //page.setDefaultOrder("create_time desc"); - return page.sortRecords(list); - } - - @Override - public TaskUser getByIdRel(Integer taskUserId) { - TaskUserParam param = new TaskUserParam(); - param.setTaskUserId(taskUserId); - return param.getOne(baseMapper.selectListRel(param)); - } - -} diff --git a/src/main/java/com/gxwebsoft/oa/service/impl/TenantServiceImpl.java b/src/main/java/com/gxwebsoft/oa/service/impl/TenantServiceImpl.java deleted file mode 100644 index 3a2106e..0000000 --- a/src/main/java/com/gxwebsoft/oa/service/impl/TenantServiceImpl.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.gxwebsoft.oa.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.gxwebsoft.oa.mapper.TenantMapper; -import com.gxwebsoft.oa.service.TenantService; -import com.gxwebsoft.oa.entity.Tenant; -import com.gxwebsoft.oa.param.TenantParam; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.PageResult; -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - * 租户Service实现 - * - * @author WebSoft - * @since 2022-11-17 17:13:39 - */ -@Service -public class TenantServiceImpl extends ServiceImpl implements TenantService { - - @Override - public PageResult pageRel(TenantParam param) { - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - List list = baseMapper.selectPageRel(page, param); - return new PageResult<>(list, page.getTotal()); - } - - @Override - public List listRel(TenantParam param) { - List list = baseMapper.selectListRel(param); - // 排序 - PageParam page = new PageParam<>(); - //page.setDefaultOrder("create_time desc"); - return page.sortRecords(list); - } - - @Override - public Integer getByUserId(Integer userId) { - Tenant tenant = query().eq("user_id", userId).one(); - return tenant.getTenantId(); - } - - @Override - public Tenant getByIdRel(Integer tenantId) { - TenantParam param = new TenantParam(); - param.setTenantId(tenantId); - return param.getOne(baseMapper.selectListRel(param)); - } - -} diff --git a/src/main/java/com/gxwebsoft/open/controller/OpenAppController.java b/src/main/java/com/gxwebsoft/open/controller/OpenAppController.java deleted file mode 100644 index 0f11a7c..0000000 --- a/src/main/java/com/gxwebsoft/open/controller/OpenAppController.java +++ /dev/null @@ -1,181 +0,0 @@ -package com.gxwebsoft.open.controller; - -import cn.hutool.core.util.IdUtil; -import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.utils.CacheClient; -import com.gxwebsoft.common.core.utils.CommonUtil; -import com.gxwebsoft.common.core.utils.JSONUtil; -import com.gxwebsoft.common.core.web.*; -import com.gxwebsoft.common.system.entity.Dictionary; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.common.system.param.UserParam; -import com.gxwebsoft.common.system.service.UserService; -import com.gxwebsoft.oa.controller.TenantController; -import com.gxwebsoft.oa.entity.App; -import com.gxwebsoft.oa.entity.AppUser; -import com.gxwebsoft.oa.entity.Tenant; -import com.gxwebsoft.oa.param.AppParam; -import com.gxwebsoft.oa.param.AppUserParam; -import com.gxwebsoft.oa.service.AppService; -import com.gxwebsoft.oa.service.AppUserService; -import com.gxwebsoft.oa.service.TenantService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.redis.core.StringRedisTemplate; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.transaction.annotation.Isolation; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Collectors; - -import static com.gxwebsoft.common.core.constants.RedisConstants.USER_RANKING_BY_APPS; - -/** - * 应用控制器 - * - * @author WebSoft - * @since 2022-11-18 13:55:29 - */ -@Api(tags = "应用管理") -@RestController -@RequestMapping("/api/open/app") -public class OpenAppController extends BaseController { - @Resource - private AppService appService; - @Resource - private AppUserService appUserService; - @Resource - private CacheClient cacheClient; - - @ApiOperation("分页查询应用") - @GetMapping("/page") - public ApiResult> page(AppParam param) { - // 验证签名 - isCheckSign(); - // 非管理员仅显示已加入成员管理的应用列表 - User loginUser = getLoginUser(); - if(!loginUser.getUsername().equals("admin")){ - param.setUserId(getLoginUserId()); - } - param.setTenantId(getTenantId()); - // 使用关联查询 - return success(appService.pageRel(param)); - } - - @ApiOperation("查询全部应用") - @GetMapping() - public ApiResult> list(AppParam param) { - // 验证签名 - isCheckSign(); - param.setUserId(getLoginUserId()); - param.setTenantId(getTenantId()); - // 使用关联查询 - return success(appService.listRel(param)); - } - - @ApiOperation("根据id查询应用") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { -// return success(appService.getById(id)); - // 验证签名 - isCheckSign(); - App app = appService.getByIdRel(id); - // 查询开发成员列表 - AppUserParam appUserParam = new AppUserParam(); - appUserParam.setAppId(app.getAppId()); - List appUsers = appUserService.listRel(appUserParam); -// List list = userService.list(new LambdaQueryWrapper().in(User::getUserId, appUsers.stream().map(AppUser::getUserId).collect(Collectors.toList()))); - app.setUsers(appUsers); - return success(app); - } - - @ApiOperation("创建应用") - @Transactional(rollbackFor = {Exception.class}, isolation = Isolation.SERIALIZABLE) - @PostMapping() - public ApiResult save(@RequestBody App app) { - // 验证签名 - isCheckSign(); - if (app.getAppType() == null) { - return fail("应用类型不能为空"); - } - // 创建应用 - final Integer loginUserId = getLoginUserId(); - final User loginUser = getLoginUser(); - app.setUserId(loginUserId); - app.setStatus(0); // 需要审核1 不需要审核0 - app.setAppSecret(IdUtil.fastSimpleUUID()); - app.setTenantId(loginUser.getTenantId()); - System.out.println("app = " + app); - if (appService.save(app)) { - // 添加应用成员 - AppUser appUser = new AppUser(); - appUser.setAppId(app.getAppId()); - appUser.setRole(30); - appUser.setUserId(loginUserId); - appUser.setStatus(0); - appUserService.save(appUser); - // 更新缓存 - String key = "AppSecret:".concat(app.getAppId().toString()); - cacheClient.set(key,app.getAppSecret()); - // 更新用户的插件数量到排行榜 - int count = appService.count(new LambdaQueryWrapper() - .eq(App::getUserId, loginUserId)); - cacheClient.zAdd(USER_RANKING_BY_APPS, loginUserId,(double) count); - return success("创建成功"); - } - return fail("创建失败"); - } - - @ApiOperation("修改应用") - @PutMapping() - public ApiResult update(@RequestBody App app) { - // 验证签名 - isCheckSign(); - if (appService.updateById(app)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @ApiOperation("删除应用") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - // 验证签名 - isCheckSign(); - if (appService.removeById(id)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @ApiOperation("查看秘钥") - @PostMapping("/getAppSecret") - public ApiResult getAppSecret(@RequestBody App app) { - App result = appService.getByIdRel(app.getAppId()); - String key = "AppSecret:".concat(app.getAppId().toString()); - result.setAppSecret(cacheClient.get(key)); - return success("操作成功",result); - } - - @ApiOperation("重置秘钥") - @PostMapping("/updateAppSecret") - public ApiResult updateAppSecret(@RequestBody App app) { - // 验证签名 - isCheckSign(); - if (app.getAppId() == null) { - return fail("请勿重复操作"); - } - App result = appService.getByIdRel(app.getAppId()); - String key = cacheClient.key("AppSecret", app.getAppId()); - String appSecret = IdUtil.fastSimpleUUID(); - cacheClient.set(key,appSecret); - result.setAppSecret(appSecret); - return success("重置成功",result); - } -} diff --git a/src/main/java/com/gxwebsoft/open/controller/OpenAppUserController.java b/src/main/java/com/gxwebsoft/open/controller/OpenAppUserController.java deleted file mode 100644 index 8c3b132..0000000 --- a/src/main/java/com/gxwebsoft/open/controller/OpenAppUserController.java +++ /dev/null @@ -1,155 +0,0 @@ -package com.gxwebsoft.open.controller; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.exception.BusinessException; -import com.gxwebsoft.common.core.web.*; -import com.gxwebsoft.oa.entity.AppUser; -import com.gxwebsoft.oa.param.AppUserParam; -import com.gxwebsoft.oa.service.AppUserService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; - -/** - * 应用成员控制器 - * - * @author 科技小王子 - * @since 2023-02-17 13:22:20 - */ -@Api(tags = "应用成员管理") -@RestController -@RequestMapping("/api/open/app-user") -public class OpenAppUserController extends BaseController { - @Resource - private AppUserService appUserService; - - @OperationLog - @ApiOperation("分页查询应用成员") - @GetMapping("/page") - public ApiResult> page(AppUserParam param) { - // 验证签名 - isCheckSign(); - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - return success(appUserService.page(page, page.getWrapper())); - // 使用关联查询 - //return success(appUserService.pageRel(param)); - } - - @OperationLog - @ApiOperation("查询全部应用成员") - @GetMapping() - public ApiResult> list(AppUserParam param) { - // 验证签名 - isCheckSign(); - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - return success(appUserService.list(page.getOrderWrapper())); - // 使用关联查询 - //return success(appUserService.listRel(param)); - } - - @ApiOperation("根据id查询应用成员") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - // 验证签名 - isCheckSign(); - return success(appUserService.getById(id)); - // 使用关联查询 - //return success(appUserService.getByIdRel(id)); - } - - @OperationLog - @ApiOperation("添加应用成员") - @PostMapping() - public ApiResult save(@RequestBody AppUser appUser) { - // 验证签名 - isCheckSign(); - String username = appUser.getUsername(); - Integer appId = appUser.getAppId(); - Integer userIdByUsername = getUserIdByUsername(username,getTenantId()); - // 判断重复 - if(appUserService.count(new LambdaQueryWrapper().eq(AppUser::getUserId,userIdByUsername).eq(AppUser::getAppId,appId)) > 0){ - throw new BusinessException("请勿重复添加"); - } - // 是否超出限制 - if(appUserService.count(new LambdaQueryWrapper().eq(AppUser::getAppId,appUser.getAppId())) > 50){ - throw new BusinessException("最多只能添加50个"); - } - appUser.setUserId(userIdByUsername); - appUser.setStatus(0); - if (appUserService.save(appUser)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @OperationLog - @ApiOperation("修改应用成员") - @PutMapping() - public ApiResult update(@RequestBody AppUser appUser) { - // 验证签名 - isCheckSign(); - if (appUserService.updateById(appUser)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @OperationLog - @ApiOperation("删除应用成员") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - // 验证签名 - isCheckSign(); - AppUser appUser = appUserService.getById(id); - if(appUser.getRole().equals(30)){ - return fail("管理员不能删除"); - } - if (appUserService.removeById(id)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @OperationLog - @ApiOperation("批量添加应用成员") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - // 验证签名 - isCheckSign(); - if (appUserService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @OperationLog - @ApiOperation("批量修改应用成员") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - // 验证签名 - isCheckSign(); - if (batchParam.update(appUserService, "app_user_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @OperationLog - @ApiOperation("批量删除应用成员") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - // 验证签名 - isCheckSign(); - if (appUserService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - -} diff --git a/src/main/java/com/gxwebsoft/open/controller/OpenAppstoreController.java b/src/main/java/com/gxwebsoft/open/controller/OpenAppstoreController.java deleted file mode 100644 index 420e1fa..0000000 --- a/src/main/java/com/gxwebsoft/open/controller/OpenAppstoreController.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.gxwebsoft.open.controller; - -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.core.web.PageParam; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.oa.entity.Tenant; -import com.gxwebsoft.oa.param.TenantParam; -import com.gxwebsoft.oa.service.TenantService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletRequest; -import java.util.List; - -/** - * 应用管理 - * - * @author 科技小王子 - * @since 2022-11-25 19:04:43 - */ -@Api(tags = "应用管理(已废弃)") -@RestController -@RequestMapping("/api/open/appstore") -public class OpenAppstoreController extends BaseController { - @Resource - private TenantService tenantService; - - @ApiOperation("分页查询应用") - @GetMapping("/page") - public ApiResult> page(TenantParam param) { - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - // 记录当前登录用户id、应用id - User user = getLoginUser(); - if (user != null) { - param.setUserId(user.getUserId()); - } - // 使用关联查询 - return success(tenantService.pageRel(param)); - } - - @ApiOperation("查询全部应用") - @GetMapping() - public ApiResult> list(TenantParam param) { - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - // 记录当前登录用户id、应用id - User user = getLoginUser(); - if (user != null) { - param.setUserId(user.getUserId()); - } - // 使用关联查询 - return success(tenantService.listRel(param)); - } -} diff --git a/src/main/java/com/gxwebsoft/open/controller/OpenChatGptController.java b/src/main/java/com/gxwebsoft/open/controller/OpenChatGptController.java deleted file mode 100644 index 61878ec..0000000 --- a/src/main/java/com/gxwebsoft/open/controller/OpenChatGptController.java +++ /dev/null @@ -1,112 +0,0 @@ -package com.gxwebsoft.open.controller; - -import cn.hutool.core.util.StrUtil; -import cn.hutool.http.HttpRequest; -import com.alibaba.fastjson.JSONObject; -import com.gxwebsoft.common.core.utils.JSONUtil; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.system.entity.Setting; -import com.gxwebsoft.common.system.service.SettingService; -import com.gxwebsoft.oa.entity.Notice; -import com.gxwebsoft.oa.param.NoticeParam; -import com.gxwebsoft.oa.service.NoticeService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import static com.gxwebsoft.oa.constants.NoticeConstants.CHAT_GPT; - -/** - * ChatGPT控制器 - * - * @author WebSoft - * @since 2018-12-24 16:10:24 - */ -@Api(tags = "ChatGPT") -@RestController -@RequestMapping("/api/open/chat") -public class OpenChatGptController extends BaseController { - @Resource - private NoticeService noticeService; - @Resource - private SettingService settingService; - - @ApiOperation("向chatGPT提问") - @PostMapping("/send") - public ApiResult send(@RequestBody NoticeParam param) { - // 保存问题 - final Integer loginUserId = getLoginUserId(); - Notice notice = new Notice(); - notice.setType(CHAT_GPT); - notice.setUserId(loginUserId); - notice.setChannel(0); - notice.setContent(param.getContent()); - noticeService.save(notice); - // 保存回答 - Notice answer = new Notice(); - answer.setUserId(loginUserId); - answer.setType(CHAT_GPT); - answer.setChannel(1); - answer.setContent("|"); - noticeService.save(answer); - // 查询消息并返回 - param.setUserId(loginUserId); - return success(answer.getNoticeId()); - } - - @ApiOperation("chatGPT") - @PostMapping("/chat") - public ApiResult chat(@RequestBody NoticeParam param) { - String endpoint = "https://api.openai.com/v1/chat/completions"; - final Setting setting = settingService.getData("chatGPT"); - final String content1 = setting.getContent(); - final JSONObject jsonObject1 = JSONObject.parseObject(content1); - final String chatKey = jsonObject1.getString("chatKey"); - String apiKey = "Bearer ".concat(chatKey); - System.out.println("apiKey = " + apiKey); - if(StrUtil.isEmpty(apiKey)){ - return fail("请配置有效的KEY!"); - } - Map paramMap = new HashMap<>(); - paramMap.put("model", "gpt-3.5-turbo"); - List> dataList = new ArrayList<>(); - dataList.add(new HashMap(){{ - put("role", "user"); - put("content", param.getContent()); - }}); - paramMap.put("messages", dataList); -// JSONObject message = null; - // 构建请求 - String body = HttpRequest.post(endpoint) - .header("Authorization", apiKey) - .header("Content-Type", "application/json") - .body(JSONUtil.toJSONString(paramMap)).execute().body(); - JSONObject jsonObject = JSONObject.parseObject(body); - // 内容解析(代币) - String usage = jsonObject.getString("usage"); - JSONObject jsonUsage = JSONObject.parseObject(usage); - String total_tokens = jsonUsage.getString("total_tokens"); - // 内容解析(消息内容) - JSONObject choices = jsonObject.getJSONArray("choices").getJSONObject(0); - String message = choices.getString("message"); - JSONObject jsonMessage = JSONObject.parseObject(message); - String content = jsonMessage.getString("content"); - - // 保存回答 - Notice notice = noticeService.getById(param.getNoticeId()); - notice.setTokens(new Long(total_tokens)); - notice.setContent(content); - noticeService.updateById(notice); - return success(content); - } -} diff --git a/src/main/java/com/gxwebsoft/open/controller/OpenMainController.java b/src/main/java/com/gxwebsoft/open/controller/OpenMainController.java deleted file mode 100644 index ff85536..0000000 --- a/src/main/java/com/gxwebsoft/open/controller/OpenMainController.java +++ /dev/null @@ -1,918 +0,0 @@ -package com.gxwebsoft.open.controller; - -import cn.hutool.core.util.StrUtil; -import com.aliyuncs.CommonRequest; -import com.aliyuncs.CommonResponse; -import com.aliyuncs.DefaultAcsClient; -import com.aliyuncs.IAcsClient; -import com.aliyuncs.exceptions.ClientException; -import com.aliyuncs.exceptions.ServerException; -import com.aliyuncs.http.MethodType; -import com.aliyuncs.profile.DefaultProfile; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.google.gson.Gson; -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.config.ConfigProperties; -import com.gxwebsoft.common.core.exception.BusinessException; -import com.gxwebsoft.common.core.security.JwtSubject; -import com.gxwebsoft.common.core.security.JwtUtil; -import com.gxwebsoft.common.core.utils.CacheClient; -import com.gxwebsoft.common.core.utils.CommonUtil; -import com.gxwebsoft.common.core.utils.JSONUtil; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.core.web.ExistenceParam; -import com.gxwebsoft.common.system.entity.*; -import com.gxwebsoft.common.system.mapper.UserMapper; -import com.gxwebsoft.common.system.param.LoginParam; -import com.gxwebsoft.common.system.param.SmsCaptchaParam; -import com.gxwebsoft.common.system.param.UpdatePasswordParam; -import com.gxwebsoft.common.system.result.CaptchaResult; -import com.gxwebsoft.common.system.result.LoginResult; -import com.gxwebsoft.common.system.service.*; -import com.gxwebsoft.oa.entity.App; -import com.gxwebsoft.oa.entity.Tenant; -import com.gxwebsoft.oa.mapper.TenantMapper; -import com.gxwebsoft.oa.service.AppService; -import com.gxwebsoft.oa.service.CustomerService; -import com.gxwebsoft.oa.service.TenantService; -import com.wf.captcha.SpecCaptcha; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.redis.core.StringRedisTemplate; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.transaction.annotation.Isolation; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletRequest; -import java.util.HashMap; -import java.util.List; -import java.util.Random; -import java.util.concurrent.TimeUnit; - -/** - * 登录认证控制器 - * - * @author WebSoft - * @since 2018-12-24 16:10:11 - */ -@Api(tags = "登录认证") -@RestController -@RequestMapping("/api/open") -public class OpenMainController extends BaseController { - @Resource - private ConfigProperties configProperties; - @Resource - private UserService userService; - @Resource - private RoleMenuService roleMenuService; - @Resource - private LoginRecordService loginRecordService; - @Resource - private CacheClient cacheClient; - @Resource - private RoleService roleService; - @Resource - private UserRoleService userRoleService; - @Resource - private MenuService menuService; - @Resource - private CustomerService customerService; - @Resource - private EmailRecordService emailRecordService; - @Resource - private UserMapper userMapper; - @Resource - private StringRedisTemplate stringRedisTemplate; - @Resource - private TenantMapper tenantMapper; - @Resource - private TenantService tenantService; - @Resource - private AppService appService; - @Resource - private DictService dictService; - @Resource - private DictDataService dictDataService; - - @ApiOperation("用户登录") - @PostMapping("/login") - public ApiResult login(@RequestBody LoginParam param, HttpServletRequest request) { - // 验证签名 - isCheckSign(); - String username = param.getUsername(); - Integer tenantId = param.getTenantId(); - // 手机号码登录 - User userByPhone = userService.getByPhone(param.getUsername()); - if (userByPhone != null) { - username = userByPhone.getUsername(); - } - - User user = userService.getByUsername(username, tenantId); - if (user == null) { - String message = "账号不存在"; - loginRecordService.saveAsync(username, LoginRecord.TYPE_ERROR, message, tenantId, request); - return fail(message, null); - } - if (!user.getStatus().equals(0)) { - String message = "账号被冻结"; - loginRecordService.saveAsync(username, LoginRecord.TYPE_ERROR, message, tenantId, request); - return fail(message, null); - } - if (!userService.comparePassword(user.getPassword(), param.getPassword())) { - String message = "密码错误"; - loginRecordService.saveAsync(username, LoginRecord.TYPE_ERROR, message, tenantId, request); - return fail(message, null); - } - loginRecordService.saveAsync(username, LoginRecord.TYPE_LOGIN, null, tenantId, request); - // 签发token - String access_token = JwtUtil.buildToken(new JwtSubject(username, tenantId), - configProperties.getTokenExpireTime(), configProperties.getTokenKey()); - return success("登录成功", new LoginResult(access_token, user)); - } - - @Transactional(rollbackFor = {Exception.class}, isolation = Isolation.SERIALIZABLE) - @ApiOperation("账号注册") - @PostMapping("/register") - public ApiResult register(@RequestBody User user) { - // 验证签名 - isCheckSign(); - Integer userType = user.getType(); // 用户类型 - String tenantName = user.getCompanyName(); // 客户名称 - String phone = user.getPhone(); // 手机号码 - String username = user.getUsername(); // 账号 - String password = user.getPassword(); // 密码 - String code = user.getCode(); // 短信验证码 - String email = user.getEmail(); // 邮箱 - - // 短信验证 - if (!StrUtil.equals(code,cacheClient.get(phone,String.class)) && !StrUtil.equals(code,"170083")) { - throw new BusinessException("验证码不正确"); - } - user.setUsername(username); - user.setPhone(phone); - user.setRealName(tenantName); - user.setCompanyName(tenantName); - user.setStatus(0); // 设置状态 - user.setPassword(userService.encodePassword(password)); // 密码加密 - userService.saveUser(user); - - // 用户类型:开发者 - if(userType.equals(6)) { - // 发送邮件通知 - String title = "恭喜!您的开发者账号已注册成功"; - String content = "用户ID:".concat(user.getUserId().toString()).concat(",账号:".concat(phone).concat(",密码:").concat(password)); - sendEmail(title,content,email); - return success("注册成功"); - } - - // 用户类型:企业主 - if (userType.equals(10)) { - if (tenantMapper.selectCount(new LambdaQueryWrapper() - .eq(Tenant::getTenantName, tenantName)) > 0) { - throw new BusinessException("该主体名称已存在"); - } - // 添加租户 - Tenant tenant = new Tenant(); - tenant.setUserId(user.getUserId()); - tenant.setTenantName(tenantName); - tenant.setTenantCode(CommonUtil.randomUUID16()); - tenantService.save(tenant); - - // 添加默认字典 - Dict dict = new Dict(); - dict.setDictName("性别"); - dict.setDictCode("sex"); - dict.setTenantId(tenant.getTenantId()); - dictService.save(dict); - DictData dictData = new DictData(); - dictData.setDictId(dict.getDictId()); - dictData.setDictDataName("男"); - dictData.setDictDataCode("1"); - dictData.setSortNumber(100); - dictData.setTenantId(tenant.getTenantId()); - dictDataService.save(dictData); - dictData.setDictDataName("女"); - dictData.setDictDataCode("2"); - dictData.setTenantId(tenant.getTenantId()); - dictDataService.save(dictData); - dict.setDictName("机构类型"); - dict.setDictCode("organizationType"); - dict.setTenantId(tenant.getTenantId()); - dictService.save(dict); - dictData.setDictId(dict.getDictId()); - dictData.setDictDataName("公司"); - dictData.setDictDataCode("1"); - dictData.setTenantId(tenant.getTenantId()); - dictDataService.save(dictData); - dictData.setDictId(dict.getDictId()); - dictData.setDictDataName("部门"); - dictData.setDictDataCode("2"); - dictData.setTenantId(tenant.getTenantId()); - dictDataService.save(dictData); - - // 添加超级管理员 - User admin = new User(); - admin.setUsername("admin"); - admin.setNickname("超级管理员"); - admin.setPhone(phone); - admin.setEmail(email); - admin.setRealName(tenantName); - admin.setCompanyName(tenantName); - admin.setPassword(userService.encodePassword(password)); - admin.setTenantId(tenant.getTenantId()); - boolean result = userService.save(admin); - Integer superAdminUserId = admin.getUserId(); - // 创建角色 - if (result) { - Role role = new Role(); - role.setRoleName("超级管理员"); - role.setRoleCode("superAdmin"); - role.setComments("超级管理员"); - role.setTenantId(tenant.getTenantId()); - roleService.save(role); - - // 保存超级管理员角色ID - Integer superAdminRoleId = role.getRoleId(); - role.setRoleName("注册用户"); - role.setRoleCode("user"); - role.setComments("普通注册用户"); - roleService.save(role); - role.setRoleName("游客"); - role.setRoleCode("guest"); - role.setComments("用于未登录时的浏览权限"); - roleService.save(role); - Integer guestRoleId = role.getRoleId(); - - // 添加游客账号 - User www = new User(); - www.setTenantId(tenant.getTenantId()); - www.setUsername("www"); - www.setNickname("游客"); - www.setPassword(userService.encodePassword(CommonUtil.randomUUID16())); - userService.save(www); - - // 添加超管用户角色 - UserRole userRole = new UserRole(); - userRole.setUserId(superAdminUserId); - userRole.setRoleId(superAdminRoleId); - userRole.setTenantId(tenant.getTenantId()); - userRoleService.save(userRole); - - // 添加游客用户角色 - userRole.setUserId(www.getUserId()); - userRole.setRoleId(guestRoleId); - boolean resultUserRole = userRoleService.save(userRole); - - /// 添加系统菜单 - if (resultUserRole) { - Menu menu = new Menu(); - // 10.系统管理 - menu.setTitle("系统管理"); - menu.setParentId(0); - menu.setPath("/system"); - menu.setIcon("setting-outlined"); - menu.setSortNumber(10); - menu.setTenantId(tenant.getTenantId()); - menuService.save(menu); - Integer parentId = menu.getMenuId(); - menu.setParentId(menu.getMenuId()); - menu.setTitle("用户管理"); - menu.setPath("/system/user"); - menu.setComponent("/system/user"); - menu.setIcon("team-outlined"); - menu.setSortNumber(2); - menuService.save(menu); - Integer userParentId = menu.getMenuId(); - menu.setParentId(userParentId); - menu.setMenuType(1); - menu.setTitle("查询"); - menu.setIcon(""); - menu.setAuthority("sys:user:list"); - menuService.save(menu); - menu.setParentId(userParentId); - menu.setTitle("添加"); - menu.setAuthority("sys:user:save"); - menuService.save(menu); - menu.setParentId(userParentId); - menu.setTitle("修改"); - menu.setAuthority("sys:user:update"); - menuService.save(menu); - menu.setParentId(userParentId); - menu.setTitle("删除"); - menu.setAuthority("sys:user:remove"); - menuService.save(menu); - menu.setMenuType(0); - menu.setParentId(parentId); - menu.setTitle("角色管理"); - menu.setPath("/system/role"); - menu.setComponent("/system/role"); - menu.setIcon("idcard-outlined"); - menu.setAuthority(""); - menu.setSortNumber(3); - menuService.save(menu); - Integer roleParentId = menu.getMenuId(); - menu.setParentId(roleParentId); - menu.setMenuType(1); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menu.setTitle("查询"); - menu.setAuthority("sys:role:list"); - menuService.save(menu); - menu.setParentId(roleParentId); - menu.setTitle("添加"); - menu.setAuthority("sys:role:save"); - menuService.save(menu); - menu.setParentId(roleParentId); - menu.setTitle("修改"); - menu.setAuthority("sys:role:update"); - menuService.save(menu); - menu.setParentId(roleParentId); - menu.setTitle("删除"); - menu.setAuthority("sys:role:remove"); - menuService.save(menu); - menu.setMenuType(0); - menu.setParentId(parentId); - menu.setTitle("菜单管理"); - menu.setPath("/system/menu"); - menu.setComponent("/system/menu"); - menu.setIcon("appstore-outlined"); - menu.setAuthority(""); - menu.setSortNumber(1); - menuService.save(menu); - Integer menuParentId = menu.getMenuId(); - menu.setParentId(menuParentId); - menu.setMenuType(1); - menu.setTitle("查询"); - menu.setAuthority("sys:menu:list"); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menuService.save(menu); - menu.setParentId(menuParentId); - menu.setTitle("添加"); - menu.setAuthority("sys:menu:save"); - menuService.save(menu); - menu.setParentId(menuParentId); - menu.setTitle("修改"); - menu.setAuthority("sys:menu:update"); - menuService.save(menu); - menu.setParentId(menuParentId); - menu.setTitle("删除"); - menu.setAuthority("sys:menu:remove"); - menuService.save(menu); - menu.setMenuType(0); - menu.setParentId(parentId); - menu.setTitle("机构管理"); - menu.setPath("/system/organization"); - menu.setComponent("/system/organization"); - menu.setIcon("bank-outlined"); - menu.setAuthority(""); - menu.setSortNumber(5); - menuService.save(menu); - Integer orgParentId = menu.getMenuId(); - menu.setParentId(orgParentId); - menu.setMenuType(1); - menu.setPath(""); - menu.setComponent(""); - menu.setIcon(""); - menu.setTitle("查询"); - menu.setAuthority("sys:org:list"); - menuService.save(menu); - menu.setParentId(orgParentId); - menu.setTitle("添加"); - menu.setAuthority("sys:org:save"); - menuService.save(menu); - menu.setParentId(orgParentId); - menu.setTitle("修改"); - menu.setAuthority("sys:org:update"); - menuService.save(menu); - menu.setParentId(orgParentId); - menu.setTitle("删除"); - menu.setAuthority("sys:org:remove"); - menuService.save(menu); - menu.setMenuType(0); - menu.setParentId(parentId); - menu.setTitle("字典管理"); - menu.setPath("/system/dict"); - menu.setComponent("/system/dict"); - menu.setIcon("profile-outlined"); - menu.setAuthority(""); - menu.setSortNumber(4); - menuService.save(menu); - Integer dictParentId = menu.getMenuId(); - menu.setParentId(dictParentId); - menu.setMenuType(1); - menu.setTitle("查询"); - menu.setAuthority("sys:dict:list"); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menuService.save(menu); - menu.setParentId(dictParentId); - menu.setTitle("添加"); - menu.setAuthority("sys:dict:save"); - menuService.save(menu); - menu.setParentId(dictParentId); - menu.setTitle("修改"); - menu.setAuthority("sys:dict:update"); - menuService.save(menu); - menu.setParentId(dictParentId); - menu.setTitle("删除"); - menu.setAuthority("sys:dict:remove"); - menuService.save(menu); - menu.setMenuType(0); - menu.setParentId(parentId); - menu.setTitle("登录日志"); - menu.setPath("/system/login-record"); - menu.setComponent("/system/login-record"); - menu.setIcon("calendar-outlined"); - menu.setAuthority("sys:login-record:list"); - menu.setSortNumber(7); - menuService.save(menu); - menu.setParentId(parentId); - menu.setTitle("操作日志"); - menu.setPath("/system/operation-record"); - menu.setComponent("/system/operation-record"); - menu.setIcon("file-search-outlined"); - menu.setAuthority("sys:operation-record:list"); - menu.setSortNumber(8); - menuService.save(menu); - menu.setParentId(parentId); - menu.setTitle("文件管理"); - menu.setPath("/system/file"); - menu.setComponent("/system/file"); - menu.setIcon("folder-outlined"); - menu.setAuthority(""); - menu.setSortNumber(6); - menuService.save(menu); - Integer fileParentId = menu.getMenuId(); - menu.setParentId(fileParentId); - menu.setMenuType(1); - menu.setTitle("查看记录"); - menu.setPath(""); - menu.setComponent(""); - menu.setIcon(""); - menu.setAuthority("sys:file:list"); - menuService.save(menu); - menu.setParentId(fileParentId); - menu.setTitle("上传文件"); - menu.setAuthority("sys:file:upload"); - menuService.save(menu); - menu.setParentId(fileParentId); - menu.setTitle("修改文件"); - menu.setAuthority("sys:file:update"); - menuService.save(menu); - menu.setParentId(fileParentId); - menu.setTitle("删除文件"); - menu.setAuthority("sys:org:remove"); - menuService.save(menu); - menu.setMenuType(0); - menu.setParentId(parentId); - menu.setTitle("系统设置"); - menu.setPath("/system/setting"); - menu.setComponent("/system/setting"); - menu.setIcon("setting-outlined"); - menu.setAuthority("sys:setting:save"); - menu.setSortNumber(10); - menuService.save(menu); - menu.setParentId(parentId); - menu.setTitle("用户信息"); - menu.setPath("/system/user-info"); - menu.setComponent("/system/user-info"); - menu.setIcon("team-outlined"); - menu.setAuthority(""); - menu.setHide(1); - menu.setMenuType(0); - menu.setSortNumber(9); - menuService.save(menu); - Integer userInfoParentId = menu.getMenuId(); - menu.setParentId(userInfoParentId); - menu.setMenuType(1); - menu.setTitle("修改个人密码"); - menu.setAuthority("sys:auth:password"); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menuService.save(menu); - menu.setParentId(userInfoParentId); - menu.setTitle("修改个人资料"); - menu.setAuthority("sys:auth:user"); - menuService.save(menu); - // 1.控制台 - menu.setParentId(0); - menu.setTitle("控制台"); - menu.setPath("/dashboard"); - menu.setIcon("home-outlined"); - menu.setComponent(""); - menu.setAuthority(""); - menu.setSortNumber(1); - menu.setHide(0); - menu.setMenuType(0); - menuService.save(menu); - Integer dashboardParentId = menu.getMenuId(); - menu.setTitle("工作台"); - menu.setPath("/dashboard/workplace"); - menu.setComponent("/dashboard/workplace"); - menu.setIcon("DesktopOutlined"); - menu.setParentId(dashboardParentId); - menu.setMenuType(0); - menu.setHide(0); - menu.setSortNumber(0); - menuService.save(menu); - menu.setTitle("统计分析"); - menu.setPath("/dashboard/analysis"); - menu.setComponent("/dashboard/analysis"); - menu.setIcon("BarChartOutlined"); - menu.setParentId(dashboardParentId); - menu.setMenuType(0); - menu.setHide(0); - menu.setSortNumber(1); - menuService.save(menu); - // 2.办公协同 - // 7.内容管理 - menu.setParentId(0); - menu.setTitle("内容管理"); - menu.setPath("/cms"); - menu.setComponent(""); - menu.setAuthority(""); - menu.setIcon("FileSearchOutlined"); - menu.setHide(0); - menu.setMenuType(0); - menu.setSortNumber(7); - menuService.save(menu); - Integer contentParentId = menu.getMenuId(); - menu.setTitle("文章管理"); - menu.setPath("/cms/article"); - menu.setComponent("/cms/article"); - menu.setIcon("FileSearchOutlined"); - menu.setAuthority(""); - menu.setSortNumber(1); - menu.setMenuType(0); - menu.setParentId(contentParentId); - menuService.save(menu); - Integer articleParentId = menu.getMenuId(); - menu.setParentId(articleParentId); - menu.setMenuType(1); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menu.setTitle("查询"); - menu.setSortNumber(0); - menu.setAuthority("cms:article:list"); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("cms:article:save"); - menuService.save(menu); - menu.setTitle("修改"); - menu.setAuthority("cms:article:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("cms:article:remove"); - menuService.save(menu); - menu.setTitle("文章分类"); - menu.setPath("/cms/category"); - menu.setComponent("/cms/category"); - menu.setIcon("ApartmentOutlined"); - menu.setAuthority(""); - menu.setMenuType(0); - menu.setSortNumber(2); - menu.setParentId(contentParentId); - menuService.save(menu); - Integer categoryParentId = menu.getMenuId(); - menu.setParentId(categoryParentId); - menu.setMenuType(1); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menu.setSortNumber(0); - menu.setTitle("查询"); - menu.setAuthority("cms:articleCategory:list"); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("cms:articleCategory:save"); - menuService.save(menu); - menu.setTitle("修改"); - menu.setAuthority("cms:articleCategory:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("cms:articleCategory:remove"); - menuService.save(menu); - menu.setTitle("文档管理"); - menu.setPath("/cms/docs/:id"); - menu.setComponent("/cms/docs"); - menu.setIcon("ReadOutlined"); - menu.setAuthority(""); - menu.setSortNumber(3); - menu.setMenuType(0); - menu.setParentId(contentParentId); - menuService.save(menu); - Integer docsParentId = menu.getMenuId(); - menu.setParentId(docsParentId); - menu.setMenuType(1); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menu.setSortNumber(0); - menu.setTitle("查询"); - menu.setAuthority("cms:docs:list"); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("cms:docs:save"); - menuService.save(menu); - menu.setTitle("修改"); - menu.setAuthority("cms:docs:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("cms:docs:remove"); - menuService.save(menu); - // 9.应用中心 -// menu.setParentId(0); -// menu.setTitle("应用中心"); -// menu.setPath("https://www.gxwebsoft.com/market"); -// menu.setIcon("AppstoreAddOutlined"); -// menu.setComponent(""); -// menu.setAuthority(""); -// menu.setSortNumber(11); -// menu.setMenuType(0); -// menuService.save(menu); - - // 个人中心 - menu.setParentId(0); - menu.setTitle("个人中心"); - menu.setPath("/user-center"); - menu.setIcon("UserOutlined"); - menu.setComponent(""); - menu.setAuthority(""); - menu.setMenuType(0); - menu.setHide(0); - menu.setSortNumber(99); - menuService.save(menu); - Integer userCenterParentId = menu.getMenuId(); - menu.setTitle("个人资料"); - menu.setPath("/user/profile"); - menu.setComponent("/user/profile"); - menu.setIcon("IdcardOutlined"); - menu.setParentId(userCenterParentId); - menu.setMenuType(0); - menu.setSortNumber(0); - menuService.save(menu); - Integer userProfileParentId = menu.getMenuId(); - menu.setParentId(userProfileParentId); - menu.setMenuType(1); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menu.setTitle("修改资料"); - menu.setSortNumber(0); - menu.setAuthority("sys:auth:user"); - menuService.save(menu); - menu.setTitle("修改密码"); - menu.setAuthority("sys:auth:password"); - menuService.save(menu); - - menu.setTitle("上传头像"); - menu.setAuthority("sys:file:upload"); - menuService.save(menu); - menu.setTitle("预览头像"); - menu.setAuthority("sys:file:list"); - menuService.save(menu); - menu.setTitle("保存头像"); - menu.setAuthority("sys:user:update"); - menuService.save(menu); - menu.setTitle("我的消息"); - menu.setPath("/user/notice"); - menu.setComponent("/user/notice"); - menu.setIcon("sound-outlined"); - menu.setParentId(userCenterParentId); - menu.setMenuType(0); - menuService.save(menu); - Integer userNoticeParentId = menu.getMenuId(); - menu.setParentId(userNoticeParentId); - menu.setTitle("列表"); - menu.setAuthority("oa:notice:list"); - menu.setSortNumber(0); - menu.setMenuType(1); - menu.setIcon(""); - menu.setPath(""); - menu.setComponent(""); - menuService.save(menu); - menu.setTitle("添加"); - menu.setAuthority("oa:notice:save"); - menuService.save(menu); - menu.setTitle("编辑"); - menu.setAuthority("oa:notice:update"); - menuService.save(menu); - menu.setTitle("删除"); - menu.setAuthority("oa:notice:remove"); - menuService.save(menu); - menu.setParentId(userCenterParentId); - menu.setTitle("用户注册"); - menu.setAuthority("sys:user:save"); - menuService.save(menu); - menu.setTitle("字典查询"); - menu.setAuthority("sys:dict:list"); - - boolean resultMenu = menuService.save(menu); - // 添加菜单ID到超级管理员所属角色ID - if (resultMenu) { - saveRedis(tenant); - } - } - } - // 发送邮件通知 - String title = "恭喜!您的企业账号已注册成功"; - String content = "企业名称:".concat(tenantName) + "\r\n企业ID:".concat(tenant.getTenantId().toString()).concat("\r\n管理员账号密码:").concat("admin/").concat(password); - String adminUrl = "\r\n后台管理地址:".concat("https://admin.gxwebsoft.com"); -// String developer = "\r\n开发者账号:".concat(phone).concat("\r\n密码:".concat(password)); - sendEmail(title,content.concat(adminUrl),email); - return success("创建成功"); - } - return fail("注册失败"); - } - - private void sendEmail(String title, String content, String receiver) { - // 发送邮件通知 - EmailRecord emailRecord = new EmailRecord(); - emailRecord.setTitle(title); - emailRecord.setContent(content); - emailRecord.setReceiver(receiver); - emailRecord.setCreateUserId(42); - emailRecordService.sendTextEmail(title,content,receiver.split(",")); - emailRecordService.save(emailRecord); - } - - @ApiOperation("检查用户是否存在") - @GetMapping("/existence") - public ApiResult existence(ExistenceParam param) { - if (param.isExistence(userService, User::getUserId)) { - return success("已存在", param.getValue()); - } - return fail("不存在"); - } - - @ApiOperation("获取应用信息") - @GetMapping("/appInfo") - public ApiResult appInfo() { - // 验证签名 - isCheckSign(); - App appInfo = appService.getById(getAppId()); - User user = userService.getByUsername("www", 10052); - System.out.println("user = " + user); - return success(appInfo); - } - - @ApiOperation("获取登录用户信息") - @GetMapping("/auth/user") - public ApiResult userInfo() { - // 验证签名 - isCheckSign(); - return success(userService.getByIdRel(getLoginUserId())); - } - - @ApiOperation("获取登录用户菜单") - @GetMapping("/auth/menu") - public ApiResult> userMenu() { - // 验证签名 - isCheckSign(); - List menus = roleMenuService.listMenuByUserId(getLoginUserId(), Menu.TYPE_MENU); - return success(CommonUtil.toTreeData(menus, 0, Menu::getParentId, Menu::getMenuId, Menu::setChildren)); - } - - @PreAuthorize("hasAuthority('sys:auth:user')") - @OperationLog - @ApiOperation("修改个人信息") - @PutMapping("/auth/user") - public ApiResult updateInfo(@RequestBody User user) { - // 验证签名 - isCheckSign(); - user.setUserId(getLoginUserId()); - // 不能修改的字段 - user.setUsername(null); - user.setPassword(null); - user.setEmailVerified(null); - user.setOrganizationId(null); - user.setStatus(null); - - if (userService.updateById(user)) { - return success(userService.getByIdRel(user.getUserId())); - } - return fail("保存失败", null); - } - - @PreAuthorize("hasAuthority('sys:auth:password')") - @OperationLog - @ApiOperation("修改自己密码") - @PutMapping("/auth/password") - public ApiResult updatePassword(@RequestBody UpdatePasswordParam param) { - // 验证签名 - isCheckSign(); - if (StrUtil.hasBlank(param.getOldPassword(), param.getPassword())) { - return fail("参数不能为空"); - } - Integer userId = getLoginUserId(); - if (userId == null) { - return fail("未登录"); - } - if (!userService.comparePassword(userService.getById(userId).getPassword(), param.getOldPassword())) { - return fail("原密码输入不正确"); - } - User user = new User(); - user.setUserId(userId); - user.setPassword(userService.encodePassword(param.getPassword())); - - if (userService.updateById(user)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @ApiOperation("图形验证码") - @GetMapping("/captcha") - public ApiResult captcha() { - SpecCaptcha specCaptcha = new SpecCaptcha(130, 48, 5); - // 验证签名 - isCheckSign(); - return success(new CaptchaResult(specCaptcha.toBase64(), specCaptcha.text().toLowerCase())); - } - - @ApiOperation("短信验证码") - @PostMapping("/sendSmsCaptcha") - public ApiResult sendSmsCaptcha(@RequestBody SmsCaptchaParam param) { - // 验证签名 - isCheckSign(); - DefaultProfile profile = DefaultProfile.getProfile("regionld", "LTAI5tBWM9dSmEAoQFhNqxqJ", "Dr0BqiKl7eaL1NNKoCd12qKsbgjnum"); - IAcsClient client = new DefaultAcsClient(profile); - CommonRequest request = new CommonRequest(); - request.setSysMethod(MethodType.POST); - request.setSysDomain("dysmsapi.aliyuncs.com"); - request.setSysVersion("2017-05-25"); - request.setSysAction("SendSms"); - request.putQueryParameter("RegionId", "cn-hangzhou"); - request.putQueryParameter("PhoneNumbers", param.getPhone()); - request.putQueryParameter("SignName", "南宁网宿科技"); - request.putQueryParameter("TemplateCode", "SMS_257840118"); - // 生成短信验证码 - Random randObj = new Random(); - String code = Integer.toString(100000 + randObj.nextInt(900000)); - request.putQueryParameter("TemplateParam", "{\"code\":" + code + "}"); - try { - CommonResponse response = client.getCommonResponse(request); - String json = response.getData(); - Gson g = new Gson(); - HashMap result = g.fromJson(json, HashMap.class); - if("OK".equals(result.get("Message"))) { - cacheClient.set(param.getPhone(),code,5L,TimeUnit.MINUTES); - return success("发送成功",result.get("Message")); - }else{ - return fail("发送失败"); - } - } catch (ServerException e) { - e.printStackTrace(); - } catch (ClientException e) { - e.printStackTrace(); - } - return fail("发送失败"); - } - - @OperationLog - @ApiOperation("重置密码") - @PutMapping("/password") - public ApiResult resetPassword(@RequestBody User user) { - // 验证签名 - isCheckSign(); - if (user.getPassword() == null) { - return fail("参数不正确"); - } - if (user.getCode() == null) { - return fail("验证码不能为空"); - } - // 短信验证码校验 - String code = cacheClient.get(user.getPhone(), String.class); - if (!StrUtil.equals(code,user.getCode())) { - return fail("验证码不正确"); - } - - user.setUserId(getLoginUserId()); - user.setPassword(userService.encodePassword(user.getPassword())); - if (userService.updateById(user)) { - return success("密码修改成功"); - } else { - return fail("密码修改失败"); - } - } - - // 缓存租户信息 - private void saveRedis(Tenant tenant) { - String key = "cache:tenant"; - String tenantId = tenant.getTenantId().toString(); - if (StrUtil.isEmpty(tenant.getTenantCode())) { - tenant.setTenantCode(CommonUtil.randomUUID16()); - } - String data = JSONUtil.toJSONString(tenant); - stringRedisTemplate.opsForHash().put(key,tenantId, data); - } -} diff --git a/src/main/java/com/gxwebsoft/open/controller/OpenMarketController.java b/src/main/java/com/gxwebsoft/open/controller/OpenMarketController.java deleted file mode 100644 index 39376a5..0000000 --- a/src/main/java/com/gxwebsoft/open/controller/OpenMarketController.java +++ /dev/null @@ -1,125 +0,0 @@ -package com.gxwebsoft.open.controller; - -import cn.hutool.core.util.StrUtil; -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.utils.CacheClient; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.common.system.param.UserParam; -import com.gxwebsoft.common.system.service.UserService; -import com.gxwebsoft.oa.entity.App; -import com.gxwebsoft.oa.param.AppParam; -import com.gxwebsoft.oa.service.AppService; -import com.gxwebsoft.oa.service.TenantService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.data.redis.core.StringRedisTemplate; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - -import static com.gxwebsoft.common.core.constants.RedisConstants.*; - -/** - * 应用控制器 - * - * @author WebSoft - * @since 2022-11-18 13:55:29 - */ -@Api(tags = "应用市场") -@RestController -@RequestMapping("/api/open/market") -public class OpenMarketController extends BaseController { - @Resource - private AppService appService; - @Resource - private UserService userService; - @Resource - private StringRedisTemplate stringRedisTemplate; - @Resource - private TenantService tenantService; - @Resource - private CacheClient cacheClient; - - @ApiOperation("分页查询应用") - @GetMapping("/page") - public ApiResult> page(AppParam param) { - // 验证签名 -// isCheckSign(); -// PageParam page = new PageParam<>(param); -// page.setDefaultOrder("create_time desc"); -// return success(appService.page(page, page.getWrapper())); - - // 使用关联查询 - param.setSearch(1); - return success(appService.pageRel(param)); - } - - @ApiOperation("查询全部应用") - @GetMapping() - public ApiResult> list(AppParam param) { - // 验证签名 - isCheckSign(); -// PageParam page = new PageParam<>(param); -// page.setDefaultOrder("create_time desc"); -// return success(appService.list(page.getOrderWrapper())); - - // 使用关联查询 - param.setSearch(1); - return success(appService.listRel(param)); - } - - @ApiOperation("根据id查询应用") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { -// return success(appService.getById(id)); - // 验证签名 - isCheckSign(); - return success(appService.getByIdRel(id)); - } - - @OperationLog - @ApiOperation("排行榜") - @GetMapping("/ranking") - public ApiResult ranking(UserParam param) { - // 使用关联查询 - Set reverseRange = cacheClient.reverseRange(USER_RANKING_BY_APPS, 0, 2); - List list = new ArrayList<>(reverseRange.size()); - if(reverseRange.size() == 0) { - userService.listRanking(param); - } - reverseRange.forEach(v -> { - Double score = cacheClient.score(USER_RANKING_BY_APPS, v); - User user = userService.getById(v); - user.setApps(score); - list.add(user); - }); - return success("操作成功",list); - } - - @ApiOperation("搜索历史") - @GetMapping("/search-history") - public ApiResult searchHistory(String keyword, Long number) { - // 验证签名 - isCheckSign(); - String key = cacheClient.key(SEARCH_HISTORY,getLoginUserId()); - if(StrUtil.isNotBlank(keyword)){ - cacheClient.leftPush(key,keyword); - } - // 超出100裁剪 - Long size = cacheClient.listSize(key); - if (number == null) { - number = 9L; - } - return success("操作成功",cacheClient.listRange(key,0L,number)); - } - -} diff --git a/src/main/java/com/gxwebsoft/open/controller/OpenNoticeController.java b/src/main/java/com/gxwebsoft/open/controller/OpenNoticeController.java deleted file mode 100644 index 58dcffb..0000000 --- a/src/main/java/com/gxwebsoft/open/controller/OpenNoticeController.java +++ /dev/null @@ -1,133 +0,0 @@ -package com.gxwebsoft.open.controller; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.core.web.BatchParam; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.oa.entity.Notice; -import com.gxwebsoft.oa.param.NoticeParam; -import com.gxwebsoft.oa.service.NoticeService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; - -/** - * 消息记录表控制器 - * - * @author 科技小王子 - * @since 2023-03-22 14:07:26 - */ -@Api(tags = "消息记录表管理") -@RestController -@RequestMapping("/api/open/notice") -public class OpenNoticeController extends BaseController { - @Resource - private NoticeService noticeService; - - @ApiOperation("分页查询消息记录表") - @GetMapping("/page") - public ApiResult> page(NoticeParam param) { - // 验证签名 -// isCheckSign(); - // 使用关联查询 - param.setUserId(getLoginUserId()); - return success(noticeService.pageRel(param)); - } - - @ApiOperation("查询全部消息记录表") - @GetMapping() - public ApiResult> list(NoticeParam param) { - // 验证签名 -// isCheckSign(); - // 使用关联查询 - param.setUserId(getLoginUserId()); - return success(noticeService.listRel(param)); - } - - @ApiOperation("根据id查询消息记录表") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - // 验证签名 -// isCheckSign(); - return success(noticeService.getById(id)); - // 使用关联查询 - //return success(noticeService.getByIdRel(id)); - } - - @ApiOperation("添加消息记录表") - @PostMapping() - public ApiResult save(@RequestBody Notice notice) { - // 验证签名 -// isCheckSign(); - // 记录当前登录用户id、租户id、商户编号 - User loginUser = getLoginUser(); - if (loginUser != null) { - notice.setUserId(loginUser.getUserId()); - } - if (noticeService.save(notice)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @ApiOperation("修改消息记录表") - @PutMapping() - public ApiResult update(@RequestBody Notice notice) { - // 验证签名 -// isCheckSign(); - if (noticeService.updateById(notice)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @ApiOperation("删除消息记录表") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - if (noticeService.removeById(id)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @ApiOperation("批量添加消息记录表") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - // 验证签名 -// isCheckSign(); - if (noticeService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @ApiOperation("批量修改消息记录表") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - // 验证签名 -// isCheckSign(); - if (batchParam.update(noticeService, "notice_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @ApiOperation("批量删除消息记录表") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - // 验证签名 -// isCheckSign(); - if (noticeService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - -} diff --git a/src/main/java/com/gxwebsoft/open/controller/OpenTaskController.java b/src/main/java/com/gxwebsoft/open/controller/OpenTaskController.java deleted file mode 100644 index 1a149a4..0000000 --- a/src/main/java/com/gxwebsoft/open/controller/OpenTaskController.java +++ /dev/null @@ -1,190 +0,0 @@ -package com.gxwebsoft.open.controller; - -import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.web.*; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.oa.entity.Task; -import com.gxwebsoft.oa.entity.TaskRecord; -import com.gxwebsoft.oa.entity.TaskUser; -import com.gxwebsoft.oa.param.TaskParam; -import com.gxwebsoft.oa.service.AppService; -import com.gxwebsoft.oa.service.TaskRecordService; -import com.gxwebsoft.oa.service.TaskService; -import com.gxwebsoft.oa.service.TaskUserService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Collectors; - -/** - * 工单记录表控制器 - * - * @author WebSoft - * @since 2022-11-16 11:21:43 - */ -@Api(tags = "工单记录表管理") -@RestController -@RequestMapping("/api/open/oa/task") -public class OpenTaskController extends BaseController { - @Resource - private TaskService taskService; - @Resource - private TaskRecordService taskRecordService; - @Resource - private TaskUserService taskUserService; - @Resource - private AppService appService; - - @ApiOperation("分页查询工单记录表") - @GetMapping("/page") - public ApiResult> page(TaskParam param) { - // 验证签名 - isCheckSign(); - // 使用关联查询 - final User loginUser = getLoginUser(); - final Integer type = loginUser.getType(); - // 如果是开发者账号则按受理人查询 - if (type.equals(6)) { - param.setCommander(loginUser.getUserId()); - }else{ - param.setPromoter(getLoginUserId()); - } - - return success(taskService.pageRel(param)); - } - - @ApiOperation("查询全部工单记录表") - @GetMapping() - public ApiResult> list(TaskParam param) { - // 验证签名 - isCheckSign(); - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - return success(taskService.list(page.getOrderWrapper())); - // 使用关联查询 - //return success(taskService.listRel(param)); - } - - @PreAuthorize("hasAuthority('oa:task:list')") - @OperationLog - @ApiOperation("根据id查询工单记录表") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - // 验证签名 - isCheckSign(); - // 使用关联查询 - Task task = taskService.getByIdRel(id); - task.setAppInfo(appService.getById(task.getAppId())); - return success(task); - } - - @ApiOperation("添加工单记录表") - @PostMapping() - public ApiResult save(@RequestBody Task task) { - // 验证签名 - isCheckSign(); - // 当前登录用户id - Integer loginUserId = getLoginUserId(); - task.setUserId(loginUserId); - task.setPromoter(loginUserId); - task.setComments(StrUtil.sub(task.getContent(),0,200)); - task.setLastReadUser(loginUserId); - // 创建工单 - if (taskService.save(task)) { - // 添加聊天内容明细 - TaskRecord taskRecord = new TaskRecord(); - taskRecord.setUserId(loginUserId); - taskRecord.setContent(task.getContent()); - taskRecord.setTaskId(task.getTaskId()); - taskRecord.setFiles(task.getFiles()); - taskRecordService.save(taskRecord); - // 添加工单成员 - TaskUser taskUser = new TaskUser(); - taskUser.setUserId(loginUserId); - taskUser.setTaskId(task.getTaskId()); - taskUserService.save(taskUser); - return success("创建成功"); - } - return fail("创建失败"); - } - - @ApiOperation("修改工单记录表") - @PutMapping() - public ApiResult update(@RequestBody Task task) { - // 验证签名 - isCheckSign(); - if (taskService.updateById(task)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @ApiOperation("删除工单记录表") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - // 验证签名 - isCheckSign(); - if (taskService.removeById(id)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @ApiOperation("批量添加工单记录表") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - // 验证签名 - isCheckSign(); - if (taskService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @ApiOperation("批量修改工单记录表") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - // 验证签名 - isCheckSign(); - if (batchParam.update(taskService, "task_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @ApiOperation("批量删除工单记录表") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - // 验证签名 - isCheckSign(); - if (taskService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @ApiOperation("统计信息") - @GetMapping("/count") - public ApiResult count(){ - // 验证签名 - isCheckSign(); - User loginUser = getLoginUser(); - ArrayList countNum = taskService.getCountNum(loginUser,null); - return success("操作成功",countNum); - } - - // 查询用户的工单ID - private List getTaskIds(){ - final Integer loginUserId = getLoginUserId(); - return taskUserService.list(new LambdaQueryWrapper().eq(TaskUser::getUserId, loginUserId)) - .stream().map(TaskUser::getTaskId).collect(Collectors.toList()); - } - -} diff --git a/src/main/java/com/gxwebsoft/open/controller/OpenTaskRecordController.java b/src/main/java/com/gxwebsoft/open/controller/OpenTaskRecordController.java deleted file mode 100644 index 6dff9ae..0000000 --- a/src/main/java/com/gxwebsoft/open/controller/OpenTaskRecordController.java +++ /dev/null @@ -1,148 +0,0 @@ -package com.gxwebsoft.open.controller; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.core.web.BatchParam; -import com.gxwebsoft.common.core.web.PageResult; -import com.gxwebsoft.oa.entity.Task; -import com.gxwebsoft.oa.entity.TaskRecord; -import com.gxwebsoft.oa.param.TaskRecordParam; -import com.gxwebsoft.oa.service.TaskRecordService; -import com.gxwebsoft.oa.service.TaskService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; - -import static com.gxwebsoft.oa.constants.TaskConstants.PROGRESS2; -import static com.gxwebsoft.oa.constants.TaskConstants.PROGRESS3; - -/** - * 工单回复记录表控制器 - * - * @author 科技小王子 - * @since 2023-03-05 00:52:21 - */ -@Api(tags = "工单回复记录表管理") -@RestController -@RequestMapping("/api/open/oa/task-record") -public class OpenTaskRecordController extends BaseController { - @Resource - private TaskService taskService; - @Resource - private TaskRecordService taskRecordService; - - @ApiOperation("分页查询工单回复记录表") - @GetMapping("/page") - public ApiResult> page(TaskRecordParam param) { - // 验证签名 - isCheckSign(); - // 使用关联查询 - return success(taskRecordService.pageRel(param)); - } - - @ApiOperation("查询全部工单回复记录表") - @GetMapping() - public ApiResult> list(TaskRecordParam param) { - // 验证签名 - isCheckSign(); - // 更新查阅状态 - Task task = taskService.getById(param.getTaskId()); - if(!getLoginUserId().equals(task.getLastReadUser())){ - task.setIsRead(1); - } - taskService.updateById(task); - // 使用关联查询 - return success(taskRecordService.listRel(param)); - } - - @ApiOperation("根据id查询工单回复记录表") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - // 验证签名 - isCheckSign(); - // 使用关联查询 - return success(taskRecordService.getByIdRel(id)); - } - - @ApiOperation("添加工单回复记录表") - @PostMapping() - public ApiResult save(@RequestBody TaskRecord taskRecord) { - // 验证签名 - isCheckSign(); - taskRecord.setUserId(getLoginUserId()); - int count = taskRecordService.count(new LambdaQueryWrapper().eq(TaskRecord::getTaskId,taskRecord.getTaskId())); - if(count > 100){ - return fail("回复数超过最大限制"); - } - if (taskRecordService.save(taskRecord)) { - // 变更工单状态 - Task task = taskService.getById(taskRecord.getTaskId()); - task.setProgress(PROGRESS2); - task.setIsRead(0); - task.setLastReadUser(getLoginUserId()); - taskService.updateById(task); - return success("提交成功"); - } - return fail("提交失败"); - } - - @ApiOperation("修改工单回复记录表") - @PutMapping() - public ApiResult update(@RequestBody TaskRecord taskRecord) { - // 验证签名 - isCheckSign(); - if (taskRecordService.updateById(taskRecord)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @ApiOperation("删除工单回复记录表") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - // 验证签名 - isCheckSign(); - if (taskRecordService.removeById(id)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @ApiOperation("批量添加工单回复记录表") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - // 验证签名 - isCheckSign(); - if (taskRecordService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @ApiOperation("批量修改工单回复记录表") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - // 验证签名 - isCheckSign(); - if (batchParam.update(taskRecordService, "task_record_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @ApiOperation("批量删除工单回复记录表") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - // 验证签名 - isCheckSign(); - if (taskRecordService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - -} diff --git a/src/main/java/com/gxwebsoft/open/controller/OpenTenantController.java b/src/main/java/com/gxwebsoft/open/controller/OpenTenantController.java deleted file mode 100644 index 88e2333..0000000 --- a/src/main/java/com/gxwebsoft/open/controller/OpenTenantController.java +++ /dev/null @@ -1,1269 +0,0 @@ -package com.gxwebsoft.open.controller; - -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.exception.BusinessException; -import com.gxwebsoft.common.core.utils.CacheClient; -import com.gxwebsoft.common.core.utils.CommonUtil; -import com.gxwebsoft.common.core.utils.JSONUtil; -import com.gxwebsoft.common.core.web.*; -import com.gxwebsoft.common.system.entity.*; -import com.gxwebsoft.common.system.service.*; -import com.gxwebsoft.oa.entity.Tenant; -import com.gxwebsoft.oa.param.TenantParam; -import com.gxwebsoft.oa.service.TenantService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.apache.poi.ss.formula.functions.T; -import org.springframework.data.redis.core.StringRedisTemplate; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Collectors; - -/** - * 租户控制器 - * - * @author WebSoft - * @since 2022-11-17 17:13:39 - */ -@Api(tags = "租户管理") -@RestController -@RequestMapping("/api/open/tenant") -public class OpenTenantController extends BaseController { - @Resource - private TenantService tenantService; - @Resource - private UserService userService; - @Resource - private RoleService roleService; - @Resource - private UserRoleService userRoleService; - @Resource - private MenuService menuService; - @Resource - private RoleMenuService roleMenuService; - @Resource - private StringRedisTemplate stringRedisTemplate; - @Resource - private DictService dictService; - @Resource - private DictDataService dictDataService; - - @ApiOperation("分页查询租户") - @GetMapping("/page") - public ApiResult> page(TenantParam param) { - // 特殊验证签名 - if (!param.getTenantCode().equals("ZAcxbdmDQFwUKC3e")) { - throw new BusinessException("签名失败"); - } - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); -// return success(tenantService.page(page, page.getWrapper())); - // 使用关联查询 - return success(tenantService.pageRel(param)); - } - - @PreAuthorize("hasAuthority('oa:tenant:list')") - @ApiOperation("查询全部租户") - @GetMapping() - public ApiResult> list(TenantParam param) { - // 验证签名 - isCheckSign(); - PageParam page = new PageParam<>(param); - page.setDefaultOrder("create_time desc"); - return success(tenantService.list(page.getOrderWrapper())); - // 使用关联查询 - //return success(tenantService.listRel(param)); - } - - @PreAuthorize("hasAuthority('oa:tenant:list')") - @ApiOperation("根据id查询租户") - @GetMapping("/{id}") - public ApiResult get(@PathVariable("id") Integer id) { - // 验证签名 - isCheckSign(); - return success(tenantService.getById(id)); - // 使用关联查询 -// return success(tenantService.getByIdRel(id)); - } - -// @Transactional(rollbackFor = {Exception.class}) -// @PreAuthorize("hasAuthority('oa:tenant:save')") -// @OperationLog -// @ApiOperation("添加租户(已废弃)") -// @PostMapping() -// public ApiResult save(@RequestBody Tenant tenant) { -// // 验证签名 -// isCheckSign(); -// // 记录当前登录用户id、租户id -// User loginUser = getLoginUser(); -// if (loginUser != null) { -// tenant.setUserId(loginUser.getUserId()); -// if (loginUser.getTenantId() != 5) return fail("权限不足!"); -// } -// // 添加租户 -// tenant.setTenantCode(CommonUtil.randomUUID16()); -// tenantService.save(tenant); -// -// // 添加超级管理员 -// User user = new User(); -// user.setUsername("admin"); -// user.setNickname("超级管理员"); -// user.setPassword(userService.encodePassword(tenant.getPassword())); -// user.setTenantId(tenant.getTenantId()); -// boolean result = userService.save(user); -// Integer superAdminUserId = user.getUserId(); -// -// // 创建角色 -// if (result) { -// Role role = new Role(); -// role.setRoleName("超级管理员"); -// role.setRoleCode("superAdmin"); -// role.setComments("超级管理员"); -// role.setTenantId(tenant.getTenantId()); -// roleService.save(role); -// -// // 保存超级管理员角色ID -// Integer superAdminRoleId = role.getRoleId(); -// role.setRoleName("注册用户"); -// role.setRoleCode("user"); -// role.setComments("普通注册用户"); -// roleService.save(role); -// role.setRoleName("游客"); -// role.setRoleCode("guest"); -// role.setComments("用于未登录时的浏览权限"); -// roleService.save(role); -// Integer guestRoleId = role.getRoleId(); -// -// // 添加默认字典 -// final Dict dict = new Dict(); -// dict.setDictName("性别"); -// dict.setDictCode("sex"); -// dict.setTenantId(tenant.getTenantId()); -// dictService.save(dict); -// final DictData dictData = new DictData(); -// dictData.setDictId(dict.getDictId()); -// dictData.setDictDataName("男"); -// dictData.setDictDataCode("1"); -// dictData.setTenantId(tenant.getTenantId()); -// dictDataService.save(dictData); -// dictData.setDictDataName("女"); -// dictData.setDictDataCode("2"); -// dictData.setTenantId(tenant.getTenantId()); -// dictDataService.save(dictData); -// -// // 添加游客账号 -// user.setUsername("www"); -// user.setNickname("游客"); -// user.setPassword(userService.encodePassword("123456")); -// userService.save(user); -// -// // 添加超管用户角色 -// UserRole userRole = new UserRole(); -// userRole.setUserId(superAdminUserId); -// userRole.setRoleId(superAdminRoleId); -// userRole.setTenantId(tenant.getTenantId()); -// userRoleService.save(userRole); -// -// // 添加游客用户角色 -// userRole.setUserId(user.getUserId()); -// userRole.setRoleId(guestRoleId); -// boolean resultUserRole = userRoleService.save(userRole); -// -// /// 添加系统菜单 -// if (resultUserRole) { -// Menu menu = new Menu(); -// // 10.系统管理 -// menu.setTitle("系统管理"); -// menu.setParentId(0); -// menu.setPath("/system"); -// menu.setIcon("setting-outlined"); -// menu.setSortNumber(10); -// menu.setTenantId(tenant.getTenantId()); -// menuService.save(menu); -// Integer parentId = menu.getMenuId(); -// menu.setParentId(menu.getMenuId()); -// menu.setTitle("用户管理"); -// menu.setPath("/system/user"); -// menu.setComponent("/system/user"); -// menu.setIcon("team-outlined"); -// menu.setSortNumber(2); -// menuService.save(menu); -// Integer userParentId = menu.getMenuId(); -// menu.setParentId(userParentId); -// menu.setMenuType(1); -// menu.setTitle("查询"); -// menu.setIcon(""); -// menu.setAuthority("sys:user:list"); -// menuService.save(menu); -// menu.setParentId(userParentId); -// menu.setTitle("添加"); -// menu.setAuthority("sys:user:save"); -// menuService.save(menu); -// menu.setParentId(userParentId); -// menu.setTitle("修改"); -// menu.setAuthority("sys:user:update"); -// menuService.save(menu); -// menu.setParentId(userParentId); -// menu.setTitle("删除"); -// menu.setAuthority("sys:user:remove"); -// menuService.save(menu); -// menu.setMenuType(0); -// menu.setParentId(parentId); -// menu.setTitle("角色管理"); -// menu.setPath("/system/role"); -// menu.setComponent("/system/role"); -// menu.setIcon("idcard-outlined"); -// menu.setAuthority(""); -// menu.setSortNumber(3); -// menuService.save(menu); -// Integer roleParentId = menu.getMenuId(); -// menu.setParentId(roleParentId); -// menu.setMenuType(1); -// menu.setIcon(""); -// menu.setPath(""); -// menu.setComponent(""); -// menu.setTitle("查询"); -// menu.setAuthority("sys:role:list"); -// menuService.save(menu); -// menu.setParentId(roleParentId); -// menu.setTitle("添加"); -// menu.setAuthority("sys:role:save"); -// menuService.save(menu); -// menu.setParentId(roleParentId); -// menu.setTitle("修改"); -// menu.setAuthority("sys:role:update"); -// menuService.save(menu); -// menu.setParentId(roleParentId); -// menu.setTitle("删除"); -// menu.setAuthority("sys:role:remove"); -// menuService.save(menu); -// menu.setMenuType(0); -// menu.setParentId(parentId); -// menu.setTitle("菜单管理"); -// menu.setPath("/system/menu"); -// menu.setComponent("/system/menu"); -// menu.setIcon("appstore-outlined"); -// menu.setAuthority(""); -// menu.setSortNumber(1); -// menuService.save(menu); -// Integer menuParentId = menu.getMenuId(); -// menu.setParentId(menuParentId); -// menu.setMenuType(1); -// menu.setTitle("查询"); -// menu.setAuthority("sys:menu:list"); -// menu.setIcon(""); -// menu.setPath(""); -// menu.setComponent(""); -// menuService.save(menu); -// menu.setParentId(menuParentId); -// menu.setTitle("添加"); -// menu.setAuthority("sys:menu:save"); -// menuService.save(menu); -// menu.setParentId(menuParentId); -// menu.setTitle("修改"); -// menu.setAuthority("sys:menu:update"); -// menuService.save(menu); -// menu.setParentId(menuParentId); -// menu.setTitle("删除"); -// menu.setAuthority("sys:menu:remove"); -// menuService.save(menu); -// menu.setMenuType(0); -// menu.setParentId(parentId); -// menu.setTitle("机构管理"); -// menu.setPath("/system/organization"); -// menu.setComponent("/system/organization"); -// menu.setIcon("bank-outlined"); -// menu.setAuthority(""); -// menu.setSortNumber(5); -// menuService.save(menu); -// Integer orgParentId = menu.getMenuId(); -// menu.setParentId(orgParentId); -// menu.setMenuType(1); -// menu.setPath(""); -// menu.setComponent(""); -// menu.setIcon(""); -// menu.setTitle("查询"); -// menu.setAuthority("sys:org:list"); -// menuService.save(menu); -// menu.setParentId(orgParentId); -// menu.setTitle("添加"); -// menu.setAuthority("sys:org:save"); -// menuService.save(menu); -// menu.setParentId(orgParentId); -// menu.setTitle("修改"); -// menu.setAuthority("sys:org:update"); -// menuService.save(menu); -// menu.setParentId(orgParentId); -// menu.setTitle("删除"); -// menu.setAuthority("sys:org:remove"); -// menuService.save(menu); -// menu.setMenuType(0); -// menu.setParentId(parentId); -// menu.setTitle("字典管理"); -// menu.setPath("/system/dict"); -// menu.setComponent("/system/dict"); -// menu.setIcon("profile-outlined"); -// menu.setAuthority(""); -// menu.setSortNumber(4); -// menuService.save(menu); -// Integer dictParentId = menu.getMenuId(); -// menu.setParentId(dictParentId); -// menu.setMenuType(1); -// menu.setTitle("查询"); -// menu.setAuthority("sys:dict:list"); -// menu.setIcon(""); -// menu.setPath(""); -// menu.setComponent(""); -// menuService.save(menu); -// menu.setParentId(dictParentId); -// menu.setTitle("添加"); -// menu.setAuthority("sys:dict:save"); -// menuService.save(menu); -// menu.setParentId(dictParentId); -// menu.setTitle("修改"); -// menu.setAuthority("sys:dict:update"); -// menuService.save(menu); -// menu.setParentId(dictParentId); -// menu.setTitle("删除"); -// menu.setAuthority("sys:dict:remove"); -// menuService.save(menu); -// menu.setMenuType(0); -// menu.setParentId(parentId); -// menu.setTitle("登录日志"); -// menu.setPath("/system/login-record"); -// menu.setComponent("/system/login-record"); -// menu.setIcon("calendar-outlined"); -// menu.setAuthority("sys:login-record:list"); -// menu.setSortNumber(7); -// menuService.save(menu); -// menu.setParentId(parentId); -// menu.setTitle("操作日志"); -// menu.setPath("/system/operation-record"); -// menu.setComponent("/system/operation-record"); -// menu.setIcon("file-search-outlined"); -// menu.setAuthority("sys:operation-record:list"); -// menu.setSortNumber(8); -// menuService.save(menu); -// menu.setParentId(parentId); -// menu.setTitle("文件管理"); -// menu.setPath("/system/file"); -// menu.setComponent("/system/file"); -// menu.setIcon("folder-outlined"); -// menu.setAuthority(""); -// menu.setSortNumber(6); -// menuService.save(menu); -// Integer fileParentId = menu.getMenuId(); -// menu.setParentId(fileParentId); -// menu.setMenuType(1); -// menu.setTitle("查看记录"); -// menu.setPath(""); -// menu.setComponent(""); -// menu.setIcon(""); -// menu.setAuthority("sys:file:list"); -// menuService.save(menu); -// menu.setParentId(fileParentId); -// menu.setTitle("上传文件"); -// menu.setAuthority("sys:file:upload"); -// menuService.save(menu); -// menu.setParentId(fileParentId); -// menu.setTitle("修改文件"); -// menu.setAuthority("sys:file:update"); -// menuService.save(menu); -// menu.setParentId(fileParentId); -// menu.setTitle("删除文件"); -// menu.setAuthority("sys:org:remove"); -// menuService.save(menu); -// menu.setMenuType(0); -// menu.setParentId(parentId); -// menu.setTitle("系统设置"); -// menu.setPath("/system/setting"); -// menu.setComponent("/system/setting"); -// menu.setIcon("setting-outlined"); -// menu.setAuthority("sys:setting:save"); -// menu.setSortNumber(10); -// menuService.save(menu); -// menu.setParentId(parentId); -// menu.setTitle("用户信息"); -// menu.setPath("/system/user-info"); -// menu.setComponent("/system/user-info"); -// menu.setIcon("team-outlined"); -// menu.setAuthority(""); -// menu.setHide(1); -// menu.setMenuType(0); -// menu.setSortNumber(9); -// menuService.save(menu); -// Integer userInfoParentId = menu.getMenuId(); -// menu.setParentId(userInfoParentId); -// menu.setMenuType(1); -// menu.setTitle("修改个人密码"); -// menu.setAuthority("sys:auth:password"); -// menu.setIcon(""); -// menu.setPath(""); -// menu.setComponent(""); -// menuService.save(menu); -// menu.setParentId(userInfoParentId); -// menu.setTitle("修改个人资料"); -// menu.setAuthority("sys:auth:user"); -// menuService.save(menu); -// menu.setTitle("扩展插件"); -// menu.setParentId(parentId); -// menu.setIcon("AppstoreAddOutlined"); -// menu.setPath("/system/appstore"); -// menu.setComponent("/system/appstore"); -// menu.setMenuType(0); -// menu.setAuthority("oa:app:list"); -// menu.setSortNumber(100); -// menu.setHide(0); -// menuService.save(menu); -// // 1.控制台 -// menu.setParentId(0); -// menu.setTitle("控制台"); -// menu.setPath("/dashboard"); -// menu.setIcon("home-outlined"); -// menu.setComponent(""); -// menu.setAuthority(""); -// menu.setSortNumber(1); -// menu.setMenuType(0); -// menuService.save(menu); -// Integer dashboardParentId = menu.getMenuId(); -// menu.setTitle("工作台"); -// menu.setPath("/dashboard/workplace"); -// menu.setComponent("/dashboard/workplace"); -// menu.setIcon("DesktopOutlined"); -// menu.setParentId(dashboardParentId); -// menu.setMenuType(0); -// menu.setSortNumber(0); -// menuService.save(menu); -// menu.setTitle("统计分析"); -// menu.setPath("/dashboard/analysis"); -// menu.setComponent("/dashboard/analysis"); -// menu.setIcon("BarChartOutlined"); -// menu.setParentId(dashboardParentId); -// menu.setMenuType(0); -// menu.setSortNumber(1); -// menuService.save(menu); -// // 2.办公协同 -// menu.setParentId(0); -// menu.setTitle("办公协同"); -// menu.setPath("/oa"); -// menu.setComponent(""); -// menu.setAuthority(""); -// menu.setMenuType(0); -// menu.setIcon("LaptopOutlined"); -// menu.setHide(0); -// menu.setSortNumber(2); -// menuService.save(menu); -// Integer oaParentId = menu.getMenuId(); -// menu.setParentId(oaParentId); -// menu.setTitle("服务器管理"); -// menu.setPath("/oa/assets/server"); -// menu.setComponent("/oa/assets/server"); -// menu.setIcon("AuditOutlined"); -// menu.setMenuType(0); -// menu.setSortNumber(0); -// menuService.save(menu); -// Integer serverParentId = menu.getMenuId(); -// menu.setTitle("查询"); -// menu.setParentId(serverParentId); -// menu.setMenuType(1); -// menu.setPath(""); -// menu.setIcon(""); -// menu.setComponent(""); -// menu.setAuthority("oa:assets:list"); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("oa:assets:save"); -// menuService.save(menu); -// menu.setTitle("更新"); -// menu.setAuthority("oa:assets:update"); -// menuService.save(menu); -// menu.setTitle("移除"); -// menu.setAuthority("oa:assets:remove"); -// menuService.save(menu); -// menu.setParentId(oaParentId); -// menu.setMenuType(0); -// menu.setTitle("客户管理"); -// menu.setPath("/oa/customer"); -// menu.setComponent("/oa/customer"); -// menu.setIcon("TeamOutlined"); -// menu.setSortNumber(1); -// menuService.save(menu); -// Integer customerParentId = menu.getMenuId(); -// menu.setParentId(customerParentId); -// menu.setTitle("查询"); -// menu.setMenuType(1); -// menu.setPath(""); -// menu.setIcon(""); -// menu.setComponent(""); -// menu.setSortNumber(0); -// menu.setAuthority("oa:customer:list"); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("oa:customer:save"); -// menuService.save(menu); -// menu.setTitle("更新"); -// menu.setAuthority("oa:customer:update"); -// menuService.save(menu); -// menu.setTitle("移除"); -// menu.setAuthority("oa:customer:remove"); -// menuService.save(menu); -// // 3.商户管理 -// menu.setParentId(0); -// menu.setTitle("商户管理"); -// menu.setPath("/merchant"); -// menu.setIcon("ShopOutlined"); -// menu.setComponent(""); -// menu.setAuthority(""); -// menu.setSortNumber(3); -// menu.setMenuType(0); -// menuService.save(menu); -// Integer merchantParentId = menu.getMenuId(); -// menu.setTitle("商户列表"); -// menu.setPath("/merchant/index"); -// menu.setComponent("/merchant/index"); -// menu.setIcon("ShopOutlined"); -// menu.setParentId(merchantParentId); -// menu.setMenuType(0); -// menu.setSortNumber(0); -// menuService.save(menu); -// Integer shopInfoParentId = menu.getMenuId(); -// menu.setTitle("列表"); -// menu.setParentId(shopInfoParentId); -// menu.setMenuType(1); -// menu.setPath(""); -// menu.setIcon(""); -// menu.setComponent(""); -// menu.setAuthority("shop:merchant:list"); -// menu.setSortNumber(0); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("shop:merchant:save"); -// menuService.save(menu); -// menu.setTitle("编辑"); -// menu.setAuthority("shop:merchant:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("shop:merchant:remove"); -// menuService.save(menu); -// menu.setTitle("入驻审核"); -// menu.setPath("/merchant/apply"); -// menu.setComponent("/merchant/apply"); -// menu.setIcon("HourglassOutlined"); -// menu.setParentId(merchantParentId); -// menu.setMenuType(0); -// menu.setSortNumber(1); -// menuService.save(menu); -// menu.setTitle("地址管理"); -// menu.setPath("/merchant/address"); -// menu.setComponent("/merchant/address"); -// menu.setIcon("EnvironmentOutlined"); -// menu.setParentId(merchantParentId); -// menu.setMenuType(0); -// menu.setSortNumber(2); -// menuService.save(menu); -// menu.setTitle("店铺装修"); -// menu.setPath("/merchant/decorate"); -// menu.setComponent("/merchant/decorate"); -// menu.setIcon("FormatPainterOutlined"); -// menu.setParentId(merchantParentId); -// menu.setMenuType(0); -// menu.setSortNumber(3); -// menuService.save(menu); -// menu.setTitle("主题风格"); -// menu.setPath("/merchant/theme"); -// menu.setComponent("/merchant/theme"); -// menu.setIcon("BgColorsOutlined"); -// menu.setParentId(merchantParentId); -// menu.setMenuType(0); -// menu.setSortNumber(4); -// menuService.save(menu); -// menu.setTitle("资金提现"); -// menu.setPath("/merchant/withdraw"); -// menu.setComponent("/merchant/withdraw"); -// menu.setIcon("RedEnvelopeOutlined"); -// menu.setParentId(merchantParentId); -// menu.setMenuType(0); -// menu.setSortNumber(5); -// menuService.save(menu); -// // 4.商品管理 -// menu.setParentId(0); -// menu.setTitle("商品管理"); -// menu.setPath("/goods"); -// menu.setIcon("ShoppingOutlined"); -// menu.setComponent(""); -// menu.setAuthority(""); -// menu.setSortNumber(4); -// menu.setMenuType(0); -// menuService.save(menu); -// Integer goodsParentId = menu.getMenuId(); -// menu.setTitle("商品列表"); -// menu.setPath("/goods/index"); -// menu.setComponent("/goods/index"); -// menu.setIcon("SkinOutlined"); -// menu.setParentId(goodsParentId); -// menu.setMenuType(0); -// menu.setSortNumber(0); -// menuService.save(menu); -// Integer shopIndexParentId = menu.getMenuId(); -// menu.setTitle("列表"); -// menu.setParentId(shopIndexParentId); -// menu.setMenuType(1); -// menu.setPath(""); -// menu.setIcon(""); -// menu.setComponent(""); -// menu.setAuthority("shop:goods:list"); -// menu.setSortNumber(0); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("shop:goods:save"); -// menuService.save(menu); -// menu.setTitle("编辑"); -// menu.setAuthority("shop:goods:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("shop:goods:remove"); -// menuService.save(menu); -// menu.setTitle("商品分类"); -// menu.setPath("/goods/category"); -// menu.setComponent("/goods/category"); -// menu.setIcon("ApartmentOutlined"); -// menu.setParentId(goodsParentId); -// menu.setMenuType(0); -// menu.setSortNumber(1); -// menuService.save(menu); -// Integer goodsCategoryParentId = menu.getMenuId(); -// menu.setTitle("列表"); -// menu.setParentId(goodsCategoryParentId); -// menu.setMenuType(1); -// menu.setPath(""); -// menu.setIcon(""); -// menu.setComponent(""); -// menu.setAuthority("shop:category:list"); -// menu.setSortNumber(0); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("shop:category:save"); -// menuService.save(menu); -// menu.setTitle("编辑"); -// menu.setAuthority("shop:category:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("shop:category:remove"); -// menuService.save(menu); -// menu.setTitle("商品评价"); -// menu.setPath("/goods/comment"); -// menu.setComponent("/goods/comment"); -// menu.setIcon("GiftOutlined"); -// menu.setParentId(goodsParentId); -// menu.setMenuType(0); -// menu.setSortNumber(2); -// menuService.save(menu); -// Integer goodsCommentParentId = menu.getMenuId(); -// menu.setTitle("列表"); -// menu.setParentId(goodsCommentParentId); -// menu.setMenuType(1); -// menu.setPath(""); -// menu.setIcon(""); -// menu.setComponent(""); -// menu.setAuthority("shop:comment:list"); -// menu.setSortNumber(0); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("shop:comment:save"); -// menuService.save(menu); -// menu.setTitle("编辑"); -// menu.setAuthority("shop:comment:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("shop:comment:remove"); -// menuService.save(menu); -// menu.setTitle("服务承诺"); -// menu.setPath("/goods/service"); -// menu.setComponent("/goods/service"); -// menu.setIcon("InsuranceOutlined"); -// menu.setParentId(goodsParentId); -// menu.setMenuType(0); -// menu.setSortNumber(3); -// menuService.save(menu); -// Integer goodsServiceParentId = menu.getMenuId(); -// menu.setTitle("列表"); -// menu.setParentId(goodsServiceParentId); -// menu.setMenuType(1); -// menu.setPath(""); -// menu.setIcon(""); -// menu.setComponent(""); -// menu.setAuthority("shop:goodsService:list"); -// menu.setSortNumber(0); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("shop:goodsService:save"); -// menuService.save(menu); -// menu.setTitle("编辑"); -// menu.setAuthority("shop:goodsService:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("shop:goodsService:remove"); -// menuService.save(menu); -// // 5.订单管理 -// menu.setParentId(0); -// menu.setTitle("订单管理"); -// menu.setPath("/order"); -// menu.setIcon("CalendarOutlined"); -// menu.setComponent(""); -// menu.setAuthority(""); -// menu.setSortNumber(5); -// menu.setMenuType(0); -// menuService.save(menu); -// Integer orderParentId = menu.getMenuId(); -// menu.setTitle("全部订单"); -// menu.setPath("/order/all"); -// menu.setComponent("/order/all"); -// menu.setIcon("ProfileOutlined"); -// menu.setParentId(orderParentId); -// menu.setMenuType(0); -// menu.setSortNumber(0); -// menuService.save(menu); -// Integer orderAllParentId = menu.getMenuId(); -// menu.setTitle("列表"); -// menu.setParentId(orderAllParentId); -// menu.setMenuType(1); -// menu.setPath(""); -// menu.setIcon(""); -// menu.setComponent(""); -// menu.setAuthority("shop:order:list"); -// menu.setSortNumber(0); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("shop:order:save"); -// menuService.save(menu); -// menu.setTitle("编辑"); -// menu.setAuthority("shop:order:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("shop:order:remove"); -// menuService.save(menu); -// menu.setTitle("退款单"); -// menu.setPath("/order/refund"); -// menu.setComponent("/order/refund"); -// menu.setIcon("MoneyCollectOutlined"); -// menu.setParentId(orderParentId); -// menu.setMenuType(0); -// menu.setSortNumber(1); -// menuService.save(menu); -// menu.setTitle("发货管理"); -// menu.setPath("/order/delivery"); -// menu.setComponent("/order/delivery"); -// menu.setIcon("CarOutlined"); -// menu.setParentId(orderParentId); -// menu.setMenuType(0); -// menu.setSortNumber(2); -// menuService.save(menu); -// menu.setTitle("订单导出"); -// menu.setPath("/order/export"); -// menu.setComponent("/order/export"); -// menu.setIcon("UploadOutlined"); -// menu.setParentId(orderParentId); -// menu.setMenuType(0); -// menu.setSortNumber(3); -// menuService.save(menu); -// // 6.用户管理 -// menu.setParentId(0); -// menu.setTitle("用户管理"); -// menu.setPath("/user"); -// menu.setIcon("TeamOutlined"); -// menu.setComponent(""); -// menu.setAuthority(""); -// menu.setSortNumber(6); -// menu.setMenuType(0); -// menuService.save(menu); -// Integer outUserParentId = menu.getMenuId(); -// menu.setTitle("用户列表"); -// menu.setPath("/user/index"); -// menu.setComponent("/user/index"); -// menu.setIcon("TeamOutlined"); -// menu.setParentId(outUserParentId); -// menu.setMenuType(0); -// menu.setSortNumber(0); -// menuService.save(menu); -// Integer memberListParentId = menu.getMenuId(); -// menu.setTitle("列表"); -// menu.setParentId(memberListParentId); -// menu.setMenuType(1); -// menu.setPath(""); -// menu.setIcon(""); -// menu.setComponent(""); -// menu.setAuthority("shop:member:list"); -// menu.setSortNumber(0); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("shop:member:save"); -// menuService.save(menu); -// menu.setTitle("编辑"); -// menu.setAuthority("shop:member:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("shop:member:remove"); -// menuService.save(menu); -// menu.setTitle("余额明细"); -// menu.setPath("/user/balance-log"); -// menu.setComponent("/user/balance-log"); -// menu.setIcon("WalletOutlined"); -// menu.setParentId(outUserParentId); -// menu.setMenuType(0); -// menu.setSortNumber(1); -// menuService.save(menu); -// Integer balanceLogParentId = menu.getMenuId(); -// menu.setTitle("列表"); -// menu.setParentId(balanceLogParentId); -// menu.setMenuType(1); -// menu.setPath(""); -// menu.setIcon(""); -// menu.setComponent(""); -// menu.setAuthority("shop:memberBalanceLog:list"); -// menu.setSortNumber(0); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("shop:memberBalanceLog:save"); -// menuService.save(menu); -// menu.setTitle("编辑"); -// menu.setAuthority("shop:memberBalanceLog:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("shop:memberBalanceLog:remove"); -// menuService.save(menu); -// menu.setTitle("充值记录"); -// menu.setPath("/user/recharge"); -// menu.setComponent("/user/recharge"); -// menu.setIcon("UngroupOutlined"); -// menu.setParentId(outUserParentId); -// menu.setMenuType(0); -// menu.setSortNumber(2); -// menuService.save(menu); -// Integer userRechargeParentId = menu.getMenuId(); -// menu.setTitle("列表"); -// menu.setParentId(userRechargeParentId); -// menu.setMenuType(1); -// menu.setPath(""); -// menu.setIcon(""); -// menu.setComponent(""); -// menu.setAuthority("shop:memberRecharge:list"); -// menu.setSortNumber(0); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("shop:memberRecharge:save"); -// menuService.save(menu); -// menu.setTitle("编辑"); -// menu.setAuthority("shop:memberRecharge:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("shop:memberRecharge:remove"); -// menuService.save(menu); -// menu.setTitle("消息提醒"); -// menu.setPath("/user/notice"); -// menu.setComponent("/user/notice"); -// menu.setIcon("SoundOutlined"); -// menu.setParentId(outUserParentId); -// menu.setMenuType(0); -// menu.setSortNumber(3); -// menuService.save(menu); -// Integer userNoticeParentId = menu.getMenuId(); -// menu.setTitle("列表"); -// menu.setParentId(userNoticeParentId); -// menu.setMenuType(1); -// menu.setPath(""); -// menu.setIcon(""); -// menu.setComponent(""); -// menu.setAuthority("shop:memberNotice:list"); -// menu.setSortNumber(0); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("shop:memberNotice:save"); -// menuService.save(menu); -// menu.setTitle("编辑"); -// menu.setAuthority("shop:memberNotice:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("shop:memberNotice:remove"); -// menuService.save(menu); -// // 7.内容管理 -// menu.setParentId(0); -// menu.setTitle("内容管理"); -// menu.setPath("/cms"); -// menu.setComponent(""); -// menu.setAuthority(""); -// menu.setIcon("FileSearchOutlined"); -// menu.setHide(0); -// menu.setMenuType(0); -// menu.setSortNumber(7); -// menuService.save(menu); -// Integer contentParentId = menu.getMenuId(); -// menu.setTitle("文章管理"); -// menu.setPath("/cms/article"); -// menu.setComponent("/cms/article"); -// menu.setIcon("FileSearchOutlined"); -// menu.setAuthority(""); -// menu.setSortNumber(1); -// menu.setMenuType(0); -// menu.setParentId(contentParentId); -// menuService.save(menu); -// Integer articleParentId = menu.getMenuId(); -// menu.setParentId(articleParentId); -// menu.setMenuType(1); -// menu.setIcon(""); -// menu.setPath(""); -// menu.setComponent(""); -// menu.setTitle("查询"); -// menu.setSortNumber(0); -// menu.setAuthority("cms:article:list"); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("cms:article:save"); -// menuService.save(menu); -// menu.setTitle("修改"); -// menu.setAuthority("cms:article:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("cms:article:remove"); -// menuService.save(menu); -// menu.setTitle("文章分类"); -// menu.setPath("/cms/category"); -// menu.setComponent("/cms/category"); -// menu.setIcon("ApartmentOutlined"); -// menu.setAuthority(""); -// menu.setMenuType(0); -// menu.setSortNumber(2); -// menu.setParentId(contentParentId); -// menuService.save(menu); -// Integer categoryParentId = menu.getMenuId(); -// menu.setParentId(categoryParentId); -// menu.setMenuType(1); -// menu.setIcon(""); -// menu.setPath(""); -// menu.setComponent(""); -// menu.setSortNumber(0); -// menu.setTitle("查询"); -// menu.setAuthority("cms:articleCategory:list"); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("cms:articleCategory:save"); -// menuService.save(menu); -// menu.setTitle("修改"); -// menu.setAuthority("cms:articleCategory:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("cms:articleCategory:remove"); -// menuService.save(menu); -// menu.setTitle("文档管理"); -// menu.setPath("/cms/docs/:id"); -// menu.setComponent("/cms/docs"); -// menu.setIcon("ReadOutlined"); -// menu.setAuthority(""); -// menu.setSortNumber(3); -// menu.setMenuType(0); -// menu.setParentId(contentParentId); -// menuService.save(menu); -// Integer docsParentId = menu.getMenuId(); -// menu.setParentId(docsParentId); -// menu.setMenuType(1); -// menu.setIcon(""); -// menu.setPath(""); -// menu.setComponent(""); -// menu.setSortNumber(0); -// menu.setTitle("查询"); -// menu.setAuthority("cms:docs:list"); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("cms:docs:save"); -// menuService.save(menu); -// menu.setTitle("修改"); -// menu.setAuthority("cms:docs:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("cms:docs:remove"); -// menuService.save(menu); -// menu.setTitle("视频管理"); -// menu.setPath("/cms/video"); -// menu.setComponent("/cms/video"); -// menu.setIcon("YoutubeOutlined"); -// menu.setAuthority(""); -// menu.setSortNumber(4); -// menu.setMenuType(0); -// menu.setParentId(contentParentId); -// menuService.save(menu); -// Integer cmsVideoParentId = menu.getMenuId(); -// menu.setParentId(cmsVideoParentId); -// menu.setMenuType(1); -// menu.setIcon(""); -// menu.setPath(""); -// menu.setComponent(""); -// menu.setSortNumber(0); -// menu.setTitle("列表"); -// menu.setAuthority("cms:file:list"); -// menuService.save(menu); -// menu.setTitle("上传"); -// menu.setAuthority("sys:file:upload"); -// menuService.save(menu); -// menu.setTitle("编辑"); -// menu.setAuthority("sys:file:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("sys:file:remove"); -// menuService.save(menu); -// menu.setTitle("视频播放"); -// menu.setIcon(""); -// menu.setPath("/cms/video/player"); -// menu.setComponent("/cms/video/player"); -// menu.setMenuType(0); -// menu.setHide(1); -// menu.setMeta("{\"active\": \"/cms/video\", \"tabUnique\": false}"); -// menuService.save(menu); -// menu.setTitle("文件下载"); -// menu.setPath("/cms/down"); -// menu.setComponent("/cms/down"); -// menu.setIcon("LinkOutlined"); -// menu.setAuthority(""); -// menu.setHide(0); -// menu.setSortNumber(5); -// menu.setMenuType(0); -// menu.setParentId(contentParentId); -// menuService.save(menu); -// // 8.营销管理 -// menu.setParentId(0); -// menu.setTitle("营销管理"); -// menu.setPath("/market"); -// menu.setIcon("CrownOutlined"); -// menu.setComponent(""); -// menu.setAuthority(""); -// menu.setSortNumber(8); -// menu.setMenuType(0); -// menuService.save(menu); -// Integer marketParentId = menu.getMenuId(); -// menu.setTitle("优惠券"); -// menu.setPath("/market/coupon"); -// menu.setComponent("/market/coupon"); -// menu.setIcon("TagsOutlined"); -// menu.setParentId(marketParentId); -// menu.setMenuType(0); -// menu.setSortNumber(0); -// menuService.save(menu); -// Integer marketCouponParentId = menu.getMenuId(); -// menu.setParentId(marketCouponParentId); -// menu.setMenuType(1); -// menu.setIcon(""); -// menu.setPath(""); -// menu.setComponent(""); -// menu.setTitle("查询"); -// menu.setSortNumber(0); -// menu.setAuthority("cms:coupon:list"); -// menuService.save(menu); -// menu.setTitle("添加"); -// menu.setAuthority("cms:coupon:save"); -// menuService.save(menu); -// menu.setTitle("修改"); -// menu.setAuthority("cms:coupon:update"); -// menuService.save(menu); -// menu.setTitle("删除"); -// menu.setAuthority("cms:coupon:remove"); -// menuService.save(menu); -// menu.setTitle("会员充值"); -// menu.setPath("/market/recharge"); -// menu.setComponent("/market/recharge"); -// menu.setIcon("MoneyCollectOutlined"); -// menu.setParentId(marketParentId); -// menu.setMenuType(0); -// menu.setSortNumber(1); -// menuService.save(menu); -// menu.setTitle("积分管理"); -// menu.setPath("/market/points"); -// menu.setComponent("/market/points"); -// menu.setIcon("PayCircleOutlined"); -// menu.setParentId(marketParentId); -// menu.setMenuType(0); -// menu.setSortNumber(2); -// menuService.save(menu); -// // 9.应用中心 -// menu.setParentId(0); -// menu.setTitle("应用中心"); -// menu.setPath("/apps"); -// menu.setIcon("AppstoreAddOutlined"); -// menu.setComponent(""); -// menu.setAuthority(""); -// menu.setSortNumber(9); -// menu.setMenuType(0); -// menuService.save(menu); -// -// // 个人中心 -// menu.setParentId(0); -// menu.setTitle("个人中心"); -// menu.setPath("/user-center"); -// menu.setIcon("UserOutlined"); -// menu.setComponent(""); -// menu.setAuthority(""); -// menu.setMenuType(0); -// menu.setHide(1); -// menu.setSortNumber(99); -// menuService.save(menu); -// Integer userCenterParentId = menu.getMenuId(); -// menu.setTitle("个人资料"); -// menu.setPath("/user/profile"); -// menu.setComponent("/user/profile"); -// menu.setIcon("IdcardOutlined"); -// menu.setParentId(userCenterParentId); -// menu.setMenuType(0); -// menu.setSortNumber(0); -// menuService.save(menu); -// Integer userProfileParentId = menu.getMenuId(); -// menu.setParentId(userProfileParentId); -// menu.setMenuType(1); -// menu.setIcon(""); -// menu.setPath(""); -// menu.setComponent(""); -// menu.setTitle("修改资料"); -// menu.setSortNumber(0); -// menu.setAuthority("sys:auth:user"); -// menuService.save(menu); -// menu.setTitle("修改密码"); -// menu.setAuthority("sys:auth:password"); -// menuService.save(menu); -// menu.setTitle("上传头像"); -// menu.setAuthority("sys:file:upload"); -// menu.setTitle("预览头像"); -// menu.setAuthority("sys:file:list"); -// menu.setTitle("保存头像"); -// menu.setAuthority("sys:user:update"); -// menuService.save(menu); -// menu.setParentId(userCenterParentId); -// menu.setTitle("用户注册"); -// menu.setAuthority("sys:user:save"); -// menuService.save(menu); -// menu.setTitle("字典查询"); -// menu.setAuthority("sys:dict:list"); -// -// boolean resultMenu = menuService.save(menu); -// // 添加菜单ID到超级管理员所属角色ID -// if (resultMenu) { -// saveRedis(tenant); -// return success("创建成功"); -// } -// } -// } -// throw new BusinessException("创建失败"); -// } - - @PreAuthorize("hasAuthority('oa:tenant:update')") - @OperationLog - @ApiOperation("修改租户") - @PutMapping() - public ApiResult update(@RequestBody Tenant tenant) { - // 验证签名 - isCheckSign(); - saveRedis(tenant); - if (tenantService.updateById(tenant)) { - return success("修改成功"); - } - return fail("修改失败"); - } - - // 缓存租户信息 - private void saveRedis(Tenant tenant) { - String key = "cache:tenant"; - String tenantId = tenant.getTenantId().toString(); - if (StrUtil.isEmpty(tenant.getTenantCode())) { - tenant.setTenantCode(CommonUtil.randomUUID16()); - } - String data = JSONUtil.toJSONString(tenant); - stringRedisTemplate.opsForHash().put(key,tenantId, data); - } - - @PreAuthorize("hasAuthority('oa:tenant:remove')") - @OperationLog - @ApiOperation("删除租户") - @DeleteMapping("/{id}") - public ApiResult remove(@PathVariable("id") Integer id) { - // 验证签名 - isCheckSign(); - if (tenantService.removeById(id)) { - String key = "cache:tenant"; - stringRedisTemplate.opsForHash().delete(key,id.toString()); - return success("删除成功"); - } - return fail("删除失败"); - } - - @PreAuthorize("hasAuthority('oa:tenant:save')") - @OperationLog - @ApiOperation("批量添加租户") - @PostMapping("/batch") - public ApiResult saveBatch(@RequestBody List list) { - // 验证签名 - isCheckSign(); - if (tenantService.saveBatch(list)) { - return success("添加成功"); - } - return fail("添加失败"); - } - - @PreAuthorize("hasAuthority('oa:tenant:update')") - @OperationLog - @ApiOperation("批量修改租户") - @PutMapping("/batch") - public ApiResult removeBatch(@RequestBody BatchParam batchParam) { - // 验证签名 - isCheckSign(); - if (batchParam.update(tenantService, "tenant_id")) { - return success("修改成功"); - } - return fail("修改失败"); - } - - @PreAuthorize("hasAuthority('oa:tenant:remove')") - @OperationLog - @ApiOperation("批量删除租户") - @DeleteMapping("/batch") - public ApiResult removeBatch(@RequestBody List ids) { - // 验证签名 - isCheckSign(); - if (tenantService.removeByIds(ids)) { - return success("删除成功"); - } - return fail("删除失败"); - } - - @ApiOperation("租户角色权限初始化") - @GetMapping("/role-menu/{id}") - public ApiResult> initialization(@PathVariable("id") Integer roleId) { - // 验证签名 - isCheckSign(); - List menus = menuService.list(new LambdaQueryWrapper().orderByAsc(Menu::getSortNumber)); - List roleMenus = roleMenuService.list(new LambdaQueryWrapper() - .eq(RoleMenu::getRoleId, roleId)); - for (Menu menu : menus) { - menu.setChecked(roleMenus.stream().anyMatch((d) -> d.getMenuId().equals(menu.getMenuId()))); - } - List menuIds = menus.stream().map(Menu::getMenuId).collect(Collectors.toList()); - roleMenuService.remove(new LambdaUpdateWrapper().eq(RoleMenu::getRoleId, roleId)); - if (menuIds.size() > 0) { - List roleMenuList = new ArrayList<>(); - for (Integer menuId : menuIds) { - RoleMenu roleMenu = new RoleMenu(); - roleMenu.setRoleId(roleId); - roleMenu.setMenuId(menuId); - roleMenuList.add(roleMenu); - } - if (!roleMenuService.saveBatch(roleMenuList)) { - throw new BusinessException("保存失败"); - } - } - return success(menus); - } - -} diff --git a/src/main/java/com/gxwebsoft/open/controller/OpenWxOfficialController.java b/src/main/java/com/gxwebsoft/open/controller/OpenWxOfficialController.java deleted file mode 100644 index 6e376ce..0000000 --- a/src/main/java/com/gxwebsoft/open/controller/OpenWxOfficialController.java +++ /dev/null @@ -1,166 +0,0 @@ -package com.gxwebsoft.open.controller; - -import cn.hutool.core.util.CharsetUtil; -import cn.hutool.core.util.StrUtil; -import cn.hutool.http.HttpUtil; -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.gxwebsoft.common.core.annotation.OperationLog; -import com.gxwebsoft.common.core.config.ConfigProperties; -import com.gxwebsoft.common.core.exception.BusinessException; -import com.gxwebsoft.common.core.security.JwtSubject; -import com.gxwebsoft.common.core.security.JwtUtil; -import com.gxwebsoft.common.core.utils.CacheClient; -import com.gxwebsoft.common.core.utils.CommonUtil; -import com.gxwebsoft.common.core.utils.WxOfficialUtil; -import com.gxwebsoft.common.core.web.ApiResult; -import com.gxwebsoft.common.core.web.BaseController; -import com.gxwebsoft.common.system.entity.LoginRecord; -import com.gxwebsoft.common.system.entity.User; -import com.gxwebsoft.common.system.param.UserParam; -import com.gxwebsoft.common.system.service.LoginRecordService; -import com.gxwebsoft.common.system.service.SettingService; -import com.gxwebsoft.common.system.service.UserService; -import com.gxwebsoft.oa.service.NoticeService; -import com.gxwebsoft.shop.entity.UserOauth; -import com.gxwebsoft.shop.param.UserOauthParam; -import com.gxwebsoft.shop.service.UserOauthService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import io.swagger.models.auth.In; -import org.springframework.data.redis.core.StringRedisTemplate; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.io.UnsupportedEncodingException; -import java.util.concurrent.TimeUnit; - -import static com.gxwebsoft.common.core.utils.CommonUtil.randomUsername; - -/** - * 微信公众号接口 - * - * @author WebSoft - * @since 2022-11-19 13:54:27 - */ -@Api(tags = "微信公众号授权登录") -@RestController -@RequestMapping("/api/open/wx-official") -public class OpenWxOfficialController extends BaseController { - @Resource - private ConfigProperties configProperties; - @Resource - private WxOfficialUtil wxOfficialUtil; - @Resource - private UserService userService; - @Resource - private UserOauthService userOauthService; - @Resource - private LoginRecordService loginRecordService; - @Resource - private SettingService settingService; - - public OpenWxOfficialController() { - } - - @OperationLog - @ApiOperation("第一步:用户同意授权,获取code") - @GetMapping("/code") - public ApiResult code() throws UnsupportedEncodingException { - WxOfficialUtil client = wxOfficialUtil.client(getTenantId()); - String codeUrl = client.getCodeUrl(); - return success(codeUrl); - } - - @OperationLog - @Transactional(rollbackFor = Exception.class) - @ApiOperation("第二步:通过code换取网页授权access_token") - @GetMapping("/accessToken") - public String accessToken(String code, String state, HttpServletRequest request, HttpServletResponse resp) throws IOException { - if(StrUtil.equals(state,"STATE")){ - throw new BusinessException("租户ID不正确"); - } - - // 1.实例化 - WxOfficialUtil client = wxOfficialUtil.client(Integer.valueOf(state)); - - // 2.获取access_token - final String access_token = client.getAccessToken(code); - - // 准备数据 - final String unionid = client.unionid; - final String expires_in = client.expires_in; - final JSONObject cache = settingService.getCache("cache".concat(state).concat(":setting:setting")); - final String domain = "https://" + cache.getString("domain"); - - // 3.查询第三方用户信息表 - UserOauthParam userOauthParam = new UserOauthParam(); - userOauthParam.setUnionid(unionid); - userOauthParam.setTenantId(Integer.valueOf(state)); - System.out.println("userOauthParam = " + userOauthParam); - final UserOauth oauthUser = userOauthService.getByUnionId(userOauthParam); - System.out.println("oauthUser = " + oauthUser); - - // 4.1存在签发token - if(oauthUser != null){ - UserParam userParam = new UserParam(); - userParam.setUserId(oauthUser.getUserId()); - userParam.setTenantId(Integer.valueOf(state)); - System.out.println("userParam = " + userParam); - User user = userService.getByUnionId(userParam); - // 5.签发token - System.out.println("user = 签发token " + user); - String wx_token = JwtUtil.buildToken(new JwtSubject(user.getUsername(), Integer.valueOf(state)), - configProperties.getTokenExpireTime(), configProperties.getTokenKey()); - resp.sendRedirect(domain + "/passport/wx-official-login?token=".concat(wx_token).concat("&username=").concat(user.getUsername())); - return "登录成功"; - } - // 4.2不存在则注册并登录签发token - final JSONObject userInfo = client.getUserInfo(access_token); - final String openid = userInfo.getString("openid"); - final String unionId = userInfo.getString("unionid"); - final String nickname = userInfo.getString("nickname"); - final String sex = userInfo.getString("sex"); - final String province = userInfo.getString("province"); - final String city = userInfo.getString("city"); - final String country = userInfo.getString("country"); - final String headimgurl = userInfo.getString("headimgurl"); - System.out.println("headimgurl = " + headimgurl); - System.out.println("unionId = " + unionId); - System.out.println("openid = " + openid); - System.out.println("nickname = " + nickname); - User user = new User(); - user.setNickname(nickname); - user.setType(0); - user.setUsername(randomUsername("wx_")); - user.setPassword(userService.encodePassword(CommonUtil.randomUUID16())); - user.setSex(sex); - user.setPlatform("WX-OFFICIAL"); - user.setProvince(province); - user.setCity(city); - user.setCountry(country); - user.setAvatar(headimgurl); - user.setTenantId(Integer.valueOf(state)); - userService.saveUser(user); - System.out.println("userLast = " + user); - UserOauth userOauth = new UserOauth(); - userOauth.setTenantId(Integer.valueOf(state)); - userOauth.setOauthType("WX-OFFICIAL"); - userOauth.setOauthId(openid); - userOauth.setUnionid(unionId); - userOauth.setUserId(user.getUserId()); - userOauthService.save(userOauth); - loginRecordService.saveAsync(user.getUsername(), LoginRecord.TYPE_LOGIN, null, Integer.valueOf(state), request); - // 5.签发token - String wx_token = JwtUtil.buildToken(new JwtSubject(user.getUsername(), Integer.valueOf(state)), - configProperties.getTokenExpireTime(), configProperties.getTokenKey()); - resp.sendRedirect(domain + "/passport/wx-official-login?token=".concat(wx_token).concat("&username=").concat(user.getUsername())); - return "注册成功"; - } -} diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index 95e8e85..9bf3eec 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -3,12 +3,9 @@ # 数据源配置 spring: datasource: - url: jdbc:mysql://47.119.165.234:3308/com_gxwebsoft_oa?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8 - username: com_gxwebsoft_oa - password: EZfW2R4YiWfbLHLw -# url: jdbc:mysql://47.119.165.234:3308/open_ws?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8 -# username: open_ws -# password: DzAmFiZfPJ6ZGApm + url: jdbc:mysql://47.119.165.234:3308/tower?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8 + username: tower + password: HE5wix22KJJnLWBS driver-class-name: com.mysql.cj.jdbc.Driver type: com.alibaba.druid.pool.DruidDataSource diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml index 72f4b6b..ab910c5 100644 --- a/src/main/resources/application-prod.yml +++ b/src/main/resources/application-prod.yml @@ -3,9 +3,9 @@ # 数据源配置 spring: datasource: - url: jdbc:mysql://47.119.165.234:3308/com_gxwebsoft_oa?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8 - username: com_gxwebsoft_oa - password: EZfW2R4YiWfbLHLw + url: jdbc:mysql://47.119.165.234:3308/tower?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8 + username: tower + password: HE5wix22KJJnLWBS driver-class-name: com.mysql.cj.jdbc.Driver type: com.alibaba.druid.pool.DruidDataSource