拆分think模块包
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
package com.gxwebsoft.oa.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.gxwebsoft.oa.mapper.AppFieldMapper;
|
||||
import com.gxwebsoft.oa.service.AppFieldService;
|
||||
import com.gxwebsoft.oa.entity.AppField;
|
||||
import com.gxwebsoft.oa.param.AppFieldParam;
|
||||
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 2024-01-14 11:42:53
|
||||
*/
|
||||
@Service
|
||||
public class AppFieldServiceImpl extends ServiceImpl<AppFieldMapper, AppField> implements AppFieldService {
|
||||
|
||||
@Override
|
||||
public PageResult<AppField> pageRel(AppFieldParam param) {
|
||||
PageParam<AppField, AppFieldParam> page = new PageParam<>(param);
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
List<AppField> list = baseMapper.selectPageRel(page, param);
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<AppField> listRel(AppFieldParam param) {
|
||||
List<AppField> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<AppField, AppFieldParam> page = new PageParam<>();
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
return page.sortRecords(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AppField getByIdRel(Integer id) {
|
||||
AppFieldParam param = new AppFieldParam();
|
||||
param.setId(id);
|
||||
return param.getOne(baseMapper.selectListRel(param));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
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.AppRenew;
|
||||
import com.gxwebsoft.oa.mapper.AppRenewMapper;
|
||||
import com.gxwebsoft.oa.param.AppRenewParam;
|
||||
import com.gxwebsoft.oa.service.AppRenewService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 续费管理Service实现
|
||||
*
|
||||
* @author 科技小王子
|
||||
* @since 2023-11-14 14:27:57
|
||||
*/
|
||||
@Service
|
||||
public class AppRenewServiceImpl extends ServiceImpl<AppRenewMapper, AppRenew> implements AppRenewService {
|
||||
|
||||
@Override
|
||||
public PageResult<AppRenew> pageRel(AppRenewParam param) {
|
||||
PageParam<AppRenew, AppRenewParam> page = new PageParam<>(param);
|
||||
page.setDefaultOrder("create_time desc");
|
||||
List<AppRenew> list = baseMapper.selectPageRel(page, param);
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<AppRenew> listRel(AppRenewParam param) {
|
||||
List<AppRenew> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<AppRenew, AppRenewParam> page = new PageParam<>();
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
return page.sortRecords(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AppRenew getByIdRel(Integer appRenewId) {
|
||||
AppRenewParam param = new AppRenewParam();
|
||||
param.setAppRenewId(appRenewId);
|
||||
return param.getOne(baseMapper.selectListRel(param));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.gxwebsoft.oa.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.gxwebsoft.oa.mapper.AppMapper;
|
||||
import com.gxwebsoft.oa.service.AppService;
|
||||
import com.gxwebsoft.oa.entity.App;
|
||||
import com.gxwebsoft.oa.param.AppParam;
|
||||
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-10-26 22:06:23
|
||||
*/
|
||||
@Service
|
||||
public class AppServiceImpl extends ServiceImpl<AppMapper, App> implements AppService {
|
||||
|
||||
@Override
|
||||
public PageResult<App> pageRel(AppParam param) {
|
||||
PageParam<App, AppParam> page = new PageParam<>(param);
|
||||
page.setDefaultOrder("sort_number asc, create_time desc");
|
||||
List<App> list = baseMapper.selectPageRel(page, param);
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<App> listRel(AppParam param) {
|
||||
List<App> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<App, AppParam> page = new PageParam<>();
|
||||
page.setDefaultOrder("sort_number asc, 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));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.gxwebsoft.oa.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.gxwebsoft.oa.mapper.AppUrlMapper;
|
||||
import com.gxwebsoft.oa.service.AppUrlService;
|
||||
import com.gxwebsoft.oa.entity.AppUrl;
|
||||
import com.gxwebsoft.oa.param.AppUrlParam;
|
||||
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 2024-04-15 13:01:34
|
||||
*/
|
||||
@Service
|
||||
public class AppUrlServiceImpl extends ServiceImpl<AppUrlMapper, AppUrl> implements AppUrlService {
|
||||
|
||||
@Override
|
||||
public PageResult<AppUrl> pageRel(AppUrlParam param) {
|
||||
PageParam<AppUrl, AppUrlParam> page = new PageParam<>(param);
|
||||
page.setDefaultOrder("sort_number asc, create_time desc");
|
||||
List<AppUrl> list = baseMapper.selectPageRel(page, param);
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<AppUrl> listRel(AppUrlParam param) {
|
||||
List<AppUrl> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<AppUrl, AppUrlParam> page = new PageParam<>();
|
||||
page.setDefaultOrder("sort_number asc, create_time desc");
|
||||
return page.sortRecords(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AppUrl getByIdRel(Integer appUrlId) {
|
||||
AppUrlParam param = new AppUrlParam();
|
||||
param.setAppUrlId(appUrlId);
|
||||
return param.getOne(baseMapper.selectListRel(param));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
package com.gxwebsoft.oa.service.impl;
|
||||
|
||||
import cn.hutool.core.net.url.UrlBuilder;
|
||||
import cn.hutool.core.net.url.UrlQuery;
|
||||
import cn.hutool.http.HttpRequest;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.alibaba.fastjson.TypeReference;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.gxwebsoft.common.core.web.ApiResult;
|
||||
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.AppUser;
|
||||
import com.gxwebsoft.oa.mapper.AppUserMapper;
|
||||
import com.gxwebsoft.oa.param.AppUserParam;
|
||||
import com.gxwebsoft.oa.service.AppUserService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 应用成员Service实现
|
||||
*
|
||||
* @author 科技小王子
|
||||
* @since 2023-10-26 22:06:23
|
||||
*/
|
||||
@Service
|
||||
public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, AppUser> implements AppUserService {
|
||||
|
||||
@Override
|
||||
public PageResult<AppUser> pageRel(AppUserParam param) {
|
||||
PageParam<AppUser, AppUserParam> page = new PageParam<>(param);
|
||||
// page.setDefaultOrder("create_time desc");
|
||||
List<AppUser> list = baseMapper.selectPageRel(page, param);
|
||||
PageResult<AppUser> result = new PageResult<>(list, page.getTotal());
|
||||
final List<AppUser> appUserList = result.getList();
|
||||
final Set<Integer> userIds = appUserList.stream().map(AppUser::getUserId).collect(Collectors.toSet());
|
||||
// 请求主服务器获取用户信息
|
||||
HashMap<String, Object> map = new HashMap<>();
|
||||
map.put("userIds", userIds);
|
||||
// 链式构建GET请求
|
||||
final String build = UrlBuilder.of("https://server.gxwebsoft.com/api/system/user/page").setQuery(new UrlQuery(map)).build();
|
||||
String response = HttpRequest.get(build)
|
||||
.header("Authorization", param.getToken())
|
||||
.header("Tenantid", param.getTenantId().toString())
|
||||
.body(JSONObject.toJSONString(map))//表单内容
|
||||
.timeout(20000)//超时,毫秒
|
||||
.execute().body();
|
||||
|
||||
final ApiResult<PageResult<User>> userResult = JSONObject.parseObject(response, new TypeReference<ApiResult<PageResult<User>>>() {
|
||||
});
|
||||
final PageResult<User> data = userResult.getData();
|
||||
System.out.println("data = " + data);
|
||||
final List<User> userList = data.getList();
|
||||
if (!CollectionUtils.isEmpty(userList)) {
|
||||
final Map<Integer, List<User>> collect = userList.stream().collect(Collectors.groupingBy(User::getUserId));
|
||||
appUserList.forEach(item -> {
|
||||
final List<User> users = collect.get(item.getUserId());
|
||||
if (!CollectionUtils.isEmpty(users)) {
|
||||
final User user = users.get(0);
|
||||
item.setNickname(user.getNickname());
|
||||
item.setAvatar(user.getAvatar());
|
||||
item.setPhone(user.getPhone());
|
||||
item.setEmail(user.getEmail());
|
||||
}
|
||||
});
|
||||
result.setList(appUserList);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<AppUser> listRel(AppUserParam param) {
|
||||
List<AppUser> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<AppUser, AppUserParam> 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));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
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 科技小王子
|
||||
* @since 2023-10-26 21:08:27
|
||||
*/
|
||||
@Service
|
||||
public class AssetsServiceImpl extends ServiceImpl<AssetsMapper, Assets> implements AssetsService {
|
||||
|
||||
@Override
|
||||
public PageResult<Assets> pageRel(AssetsParam param) {
|
||||
PageParam<Assets, AssetsParam> page = new PageParam<>(param);
|
||||
page.setDefaultOrder("create_time desc");
|
||||
List<Assets> list = baseMapper.selectPageRel(page, param);
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Assets> listRel(AssetsParam param) {
|
||||
List<Assets> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<Assets, AssetsParam> 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));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.gxwebsoft.oa.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.gxwebsoft.oa.mapper.AssetsUserMapper;
|
||||
import com.gxwebsoft.oa.service.AssetsUserService;
|
||||
import com.gxwebsoft.oa.entity.AssetsUser;
|
||||
import com.gxwebsoft.oa.param.AssetsUserParam;
|
||||
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-10-26 21:08:27
|
||||
*/
|
||||
@Service
|
||||
public class AssetsUserServiceImpl extends ServiceImpl<AssetsUserMapper, AssetsUser> implements AssetsUserService {
|
||||
|
||||
@Override
|
||||
public PageResult<AssetsUser> pageRel(AssetsUserParam param) {
|
||||
PageParam<AssetsUser, AssetsUserParam> page = new PageParam<>(param);
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
List<AssetsUser> list = baseMapper.selectPageRel(page, param);
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<AssetsUser> listRel(AssetsUserParam param) {
|
||||
List<AssetsUser> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<AssetsUser, AssetsUserParam> page = new PageParam<>();
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
return page.sortRecords(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AssetsUser getByIdRel(Integer id) {
|
||||
AssetsUserParam param = new AssetsUserParam();
|
||||
param.setId(id);
|
||||
return param.getOne(baseMapper.selectListRel(param));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.gxwebsoft.oa.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.gxwebsoft.oa.mapper.CompanyFieldMapper;
|
||||
import com.gxwebsoft.oa.service.CompanyFieldService;
|
||||
import com.gxwebsoft.oa.entity.CompanyField;
|
||||
import com.gxwebsoft.oa.param.CompanyFieldParam;
|
||||
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 2024-02-04 14:44:42
|
||||
*/
|
||||
@Service
|
||||
public class CompanyFieldServiceImpl extends ServiceImpl<CompanyFieldMapper, CompanyField> implements CompanyFieldService {
|
||||
|
||||
@Override
|
||||
public PageResult<CompanyField> pageRel(CompanyFieldParam param) {
|
||||
PageParam<CompanyField, CompanyFieldParam> page = new PageParam<>(param);
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
List<CompanyField> list = baseMapper.selectPageRel(page, param);
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CompanyField> listRel(CompanyFieldParam param) {
|
||||
List<CompanyField> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<CompanyField, CompanyFieldParam> page = new PageParam<>();
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
return page.sortRecords(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public CompanyField getByIdRel(Integer id) {
|
||||
CompanyFieldParam param = new CompanyFieldParam();
|
||||
param.setId(id);
|
||||
return param.getOne(baseMapper.selectListRel(param));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.gxwebsoft.oa.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.gxwebsoft.oa.mapper.CompanyMapper;
|
||||
import com.gxwebsoft.oa.service.CompanyService;
|
||||
import com.gxwebsoft.oa.entity.Company;
|
||||
import com.gxwebsoft.oa.param.CompanyParam;
|
||||
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-10-23 19:18:58
|
||||
*/
|
||||
@Service
|
||||
public class CompanyServiceImpl extends ServiceImpl<CompanyMapper, Company> implements CompanyService {
|
||||
|
||||
@Override
|
||||
public PageResult<Company> pageRel(CompanyParam param) {
|
||||
PageParam<Company, CompanyParam> page = new PageParam<>(param);
|
||||
page.setDefaultOrder("sort_number asc, create_time desc");
|
||||
List<Company> list = baseMapper.selectPageRel(page, param);
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Company> listRel(CompanyParam param) {
|
||||
List<Company> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<Company, CompanyParam> page = new PageParam<>();
|
||||
page.setDefaultOrder("sort_number asc, create_time desc");
|
||||
return page.sortRecords(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Company getByIdRel(Integer companyId) {
|
||||
CompanyParam param = new CompanyParam();
|
||||
param.setCompanyId(companyId);
|
||||
return param.getOne(baseMapper.selectListRel(param));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
package com.gxwebsoft.oa.service.impl;
|
||||
|
||||
import cn.hutool.core.net.url.UrlBuilder;
|
||||
import cn.hutool.core.net.url.UrlQuery;
|
||||
import cn.hutool.http.HttpRequest;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.alibaba.fastjson.TypeReference;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.gxwebsoft.common.core.web.ApiResult;
|
||||
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.CompanyUser;
|
||||
import com.gxwebsoft.oa.mapper.CompanyUserMapper;
|
||||
import com.gxwebsoft.oa.param.CompanyUserParam;
|
||||
import com.gxwebsoft.oa.service.CompanyUserService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 成员管理Service实现
|
||||
*
|
||||
* @author 科技小王子
|
||||
* @since 2024-02-04 14:44:42
|
||||
*/
|
||||
@Service
|
||||
public class CompanyUserServiceImpl extends ServiceImpl<CompanyUserMapper, CompanyUser> implements CompanyUserService {
|
||||
|
||||
@Override
|
||||
public PageResult<CompanyUser> pageRel(CompanyUserParam param) {
|
||||
PageParam<CompanyUser, CompanyUserParam> page = new PageParam<>(param);
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
List<CompanyUser> list = baseMapper.selectPageRel(page, param);
|
||||
PageResult<CompanyUser> result = new PageResult<>(list, page.getTotal());
|
||||
final List<CompanyUser> companyUserList = result.getList();
|
||||
final Set<Integer> userIds = companyUserList.stream().map(CompanyUser::getUserId).collect(Collectors.toSet());
|
||||
// 请求主服务器获取用户信息
|
||||
HashMap<String, Object> map = new HashMap<>();
|
||||
map.put("userIds", userIds);
|
||||
System.out.println("map = " + map);
|
||||
// 链式构建GET请求
|
||||
final String build = UrlBuilder.of("https://server.gxwebsoft.com/api/system/user/page").setQuery(new UrlQuery(map)).build();
|
||||
String response = HttpRequest.get(build)
|
||||
.header("Authorization", param.getToken())
|
||||
.header("Tenantid", param.getTenantId().toString())
|
||||
.body(JSONObject.toJSONString(map))//表单内容
|
||||
.timeout(20000)//超时,毫秒
|
||||
.execute().body();
|
||||
|
||||
System.out.println("response = " + response);
|
||||
|
||||
final ApiResult<PageResult<User>> userResult = JSONObject.parseObject(response, new TypeReference<ApiResult<PageResult<User>>>() {
|
||||
});
|
||||
final PageResult<User> data = userResult.getData();
|
||||
final List<User> userList = data.getList();
|
||||
if (!CollectionUtils.isEmpty(userList)) {
|
||||
final Map<Integer, List<User>> collect = userList.stream().collect(Collectors.groupingBy(User::getUserId));
|
||||
companyUserList.forEach(item -> {
|
||||
final List<User> users = collect.get(item.getUserId());
|
||||
if (!CollectionUtils.isEmpty(users)) {
|
||||
final User user = users.get(0);
|
||||
item.setNickname(user.getNickname());
|
||||
item.setAvatar(user.getAvatar());
|
||||
item.setPhone(user.getPhone());
|
||||
item.setEmail(user.getEmail());
|
||||
}
|
||||
});
|
||||
result.setList(companyUserList);
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CompanyUser> listRel(CompanyUserParam param) {
|
||||
List<CompanyUser> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<CompanyUser, CompanyUserParam> page = new PageParam<>();
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
return page.sortRecords(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public CompanyUser getByIdRel(Integer companyUserId) {
|
||||
CompanyUserParam param = new CompanyUserParam();
|
||||
param.setCompanyUserId(companyUserId);
|
||||
return param.getOne(baseMapper.selectListRel(param));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.gxwebsoft.oa.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.gxwebsoft.oa.mapper.LinkMapper;
|
||||
import com.gxwebsoft.oa.service.LinkService;
|
||||
import com.gxwebsoft.oa.entity.Link;
|
||||
import com.gxwebsoft.oa.param.LinkParam;
|
||||
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 2024-01-14 11:50:39
|
||||
*/
|
||||
@Service
|
||||
public class LinkServiceImpl extends ServiceImpl<LinkMapper, Link> implements LinkService {
|
||||
|
||||
@Override
|
||||
public PageResult<Link> pageRel(LinkParam param) {
|
||||
PageParam<Link, LinkParam> page = new PageParam<>(param);
|
||||
page.setDefaultOrder("sort_number asc,create_time desc");
|
||||
List<Link> list = baseMapper.selectPageRel(page, param);
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Link> listRel(LinkParam param) {
|
||||
List<Link> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<Link, LinkParam> page = new PageParam<>();
|
||||
page.setDefaultOrder("sort_number asc,create_time desc");
|
||||
return page.sortRecords(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Link getByIdRel(Integer id) {
|
||||
LinkParam param = new LinkParam();
|
||||
param.setId(id);
|
||||
return param.getOne(baseMapper.selectListRel(param));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
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.Product;
|
||||
import com.gxwebsoft.oa.mapper.ProductMapper;
|
||||
import com.gxwebsoft.oa.param.ProductParam;
|
||||
import com.gxwebsoft.oa.service.CompanyService;
|
||||
import com.gxwebsoft.oa.service.ProductService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 产品记录表Service实现
|
||||
*
|
||||
* @author 科技小王子
|
||||
* @since 2023-12-14 14:18:01
|
||||
*/
|
||||
@Service
|
||||
public class ProductServiceImpl extends ServiceImpl<ProductMapper, Product> implements ProductService {
|
||||
@Resource
|
||||
private CompanyService companyService;
|
||||
|
||||
@Override
|
||||
public PageResult<Product> pageRel(ProductParam param) {
|
||||
PageParam<Product, ProductParam> page = new PageParam<>(param);
|
||||
page.setDefaultOrder("sort_number asc, create_time desc");
|
||||
List<Product> list = baseMapper.selectPageRel(page, param);
|
||||
list.forEach(d -> {
|
||||
d.setCompany(companyService.getById(d.getCompanyId()));
|
||||
});
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Product> listRel(ProductParam param) {
|
||||
List<Product> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<Product, ProductParam> page = new PageParam<>();
|
||||
page.setDefaultOrder("sort_number asc, create_time desc");
|
||||
return page.sortRecords(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Product getByIdRel(Integer productId) {
|
||||
ProductParam param = new ProductParam();
|
||||
param.setProductId(productId);
|
||||
Product product = param.getOne(baseMapper.selectListRel(param));
|
||||
if(product != null){
|
||||
product.setCompany(companyService.getById(product.getCompanyId()));
|
||||
}
|
||||
return product;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.gxwebsoft.oa.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.gxwebsoft.oa.mapper.ProductTabsMapper;
|
||||
import com.gxwebsoft.oa.service.ProductTabsService;
|
||||
import com.gxwebsoft.oa.entity.ProductTabs;
|
||||
import com.gxwebsoft.oa.param.ProductTabsParam;
|
||||
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-12-14 15:55:52
|
||||
*/
|
||||
@Service
|
||||
public class ProductTabsServiceImpl extends ServiceImpl<ProductTabsMapper, ProductTabs> implements ProductTabsService {
|
||||
|
||||
@Override
|
||||
public PageResult<ProductTabs> pageRel(ProductTabsParam param) {
|
||||
PageParam<ProductTabs, ProductTabsParam> page = new PageParam<>(param);
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
List<ProductTabs> list = baseMapper.selectPageRel(page, param);
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ProductTabs> listRel(ProductTabsParam param) {
|
||||
List<ProductTabs> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<ProductTabs, ProductTabsParam> page = new PageParam<>();
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
return page.sortRecords(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductTabs getByIdRel(Integer tabId) {
|
||||
ProductTabsParam param = new ProductTabsParam();
|
||||
param.setTabId(tabId);
|
||||
return param.getOne(baseMapper.selectListRel(param));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,145 @@
|
||||
package com.gxwebsoft.oa.service.impl;
|
||||
|
||||
import cn.hutool.core.net.url.UrlBuilder;
|
||||
import cn.hutool.core.net.url.UrlQuery;
|
||||
import cn.hutool.http.HttpRequest;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.alibaba.fastjson.TypeReference;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.gxwebsoft.common.core.web.ApiResult;
|
||||
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.UserRoleService;
|
||||
import com.gxwebsoft.oa.entity.TaskCount;
|
||||
import com.gxwebsoft.oa.mapper.TaskCountMapper;
|
||||
import com.gxwebsoft.oa.param.TaskCountParam;
|
||||
import com.gxwebsoft.oa.service.TaskCountService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 数据统计Service实现
|
||||
*
|
||||
* @author 科技小王子
|
||||
* @since 2023-10-30 14:25:30
|
||||
*/
|
||||
@Service
|
||||
public class TaskCountServiceImpl extends ServiceImpl<TaskCountMapper, TaskCount> implements TaskCountService {
|
||||
@Resource
|
||||
private UserRoleService userRoleService;
|
||||
|
||||
@Override
|
||||
public PageResult<TaskCount> pageRel(TaskCountParam param) {
|
||||
|
||||
PageParam<TaskCount, TaskCountParam> page = new PageParam<>(param);
|
||||
page.setDefaultOrder("month desc");
|
||||
List<TaskCount> list = baseMapper.selectPageRel(page, param);
|
||||
final PageResult<TaskCount> result = new PageResult<>(list, page.getTotal());
|
||||
// 请求主服务器获取用户信息
|
||||
final List<TaskCount> taskCountList = result.getList();
|
||||
System.out.println("taskCountList = " + taskCountList);
|
||||
final Set<Integer> userIds = taskCountList.stream().map(TaskCount::getUserId).collect(Collectors.toSet());
|
||||
HashMap<String, Object> map = new HashMap<>();
|
||||
// map.put("roleCode","commander");
|
||||
map.put("userIds", userIds);
|
||||
if (!userIds.isEmpty()) {
|
||||
// 链式构建GET请求
|
||||
final String build = UrlBuilder.of("https://server.gxwebsoft.com/api/system/user/page").setQuery(new UrlQuery(map)).build();
|
||||
String response = HttpRequest.get(build)
|
||||
.header("Authorization", param.getToken())
|
||||
.header("Tenantid", param.getTenantId().toString())
|
||||
.body(JSONObject.toJSONString(map))//表单内容
|
||||
.timeout(20000)//超时,毫秒
|
||||
.execute().body();
|
||||
|
||||
final ApiResult<PageResult<User>> userResult = JSONObject.parseObject(response, new TypeReference<ApiResult<PageResult<User>>>() {
|
||||
});
|
||||
final Map<Integer, List<User>> collect = userResult.getData().getList().stream().collect(Collectors.groupingBy(User::getUserId));
|
||||
|
||||
if (!CollectionUtils.isEmpty(collect)) {
|
||||
taskCountList.forEach(item -> {
|
||||
final List<User> users = collect.get(item.getUserId());
|
||||
if(!CollectionUtils.isEmpty(users)) {
|
||||
final User user = users.get(0);
|
||||
item.setNickname(user.getNickname());
|
||||
item.setAvatar(user.getAvatar());
|
||||
item.setPhone(user.getPhone());
|
||||
}
|
||||
});
|
||||
}
|
||||
result.setList(taskCountList);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
// 远程同步用户数据
|
||||
private void updateServerUser(TaskCountParam param){
|
||||
// 请求主服务器获取用户信息
|
||||
HashMap<String, Object> map = new HashMap<>();
|
||||
map.put("isStaff", "1");
|
||||
System.out.println("map = " + map);
|
||||
// 链式构建GET请求
|
||||
final String build = UrlBuilder.of("https://server.gxwebsoft.com/api/system/user/page").setQuery(new UrlQuery(map)).build();
|
||||
String response = HttpRequest.get(build)
|
||||
.header("Authorization", param.getToken())
|
||||
.header("Tenantid", param.getTenantId().toString())
|
||||
.body(JSONObject.toJSONString(map))//表单内容
|
||||
.timeout(20000)//超时,毫秒
|
||||
.execute().body();
|
||||
|
||||
final ApiResult<PageResult<User>> userResult = JSONObject.parseObject(response, new TypeReference<ApiResult<PageResult<User>>>() {
|
||||
});
|
||||
final Map<Integer, List<User>> collect = userResult.getData().getList().stream().collect(Collectors.groupingBy(User::getUserId));
|
||||
|
||||
final List<User> userList = userResult.getData().getList();
|
||||
TaskCount taskCount = new TaskCount();
|
||||
userList.forEach(user -> {
|
||||
if (count(new LambdaQueryWrapper<TaskCount>().eq(TaskCount::getUserId, user.getUserId())) == 0) {
|
||||
taskCount.setUserId(user.getUserId());
|
||||
taskCount.setOrganizationId(user.getOrganizationId());
|
||||
taskCount.setTenantId(user.getTenantId());
|
||||
user.getRoles().forEach(role -> {
|
||||
if(role.getRoleCode().equals("staff") || role.getRoleCode().equals("commander")){
|
||||
taskCount.setRoleCode("commander");
|
||||
taskCount.setRoleId(role.getRoleId());
|
||||
}
|
||||
if(role.getRoleCode().equals("admin")){
|
||||
taskCount.setRoleId(role.getRoleId());
|
||||
taskCount.setRoleCode(role.getRoleCode());
|
||||
}
|
||||
});
|
||||
save(taskCount);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<TaskCount> listRel(TaskCountParam param) {
|
||||
List<TaskCount> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<TaskCount, TaskCountParam> page = new PageParam<>();
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
return page.sortRecords(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TaskCount getByIdRel(Integer taskCountId) {
|
||||
TaskCountParam param = new TaskCountParam();
|
||||
param.setTaskCountId(taskCountId);
|
||||
return param.getOne(baseMapper.selectListRel(param));
|
||||
}
|
||||
|
||||
@Override
|
||||
public TaskCount getByUserId(Integer userId) {
|
||||
TaskCountParam param = new TaskCountParam();
|
||||
param.setUserId(userId);
|
||||
return param.getOne(baseMapper.selectListRel(param));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,90 @@
|
||||
package com.gxwebsoft.oa.service.impl;
|
||||
|
||||
import cn.hutool.core.net.url.UrlBuilder;
|
||||
import cn.hutool.core.net.url.UrlQuery;
|
||||
import cn.hutool.http.HttpRequest;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.alibaba.fastjson.TypeReference;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.gxwebsoft.common.core.web.ApiResult;
|
||||
import com.gxwebsoft.common.system.entity.User;
|
||||
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 org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 工单回复记录表Service实现
|
||||
*
|
||||
* @author 科技小王子
|
||||
* @since 2023-10-23 18:53:01
|
||||
*/
|
||||
@Service
|
||||
public class TaskRecordServiceImpl extends ServiceImpl<TaskRecordMapper, TaskRecord> implements TaskRecordService {
|
||||
|
||||
@Override
|
||||
public PageResult<TaskRecord> pageRel(TaskRecordParam param) {
|
||||
PageParam<TaskRecord, TaskRecordParam> page = new PageParam<>(param);
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
List<TaskRecord> list = baseMapper.selectPageRel(page, param);
|
||||
final PageResult<TaskRecord> result = new PageResult<>(list, page.getTotal());
|
||||
|
||||
// 请求主服务器获取用户信息
|
||||
final List<TaskRecord> taskRecordList = result.getList();
|
||||
final Set<Integer> userIds = taskRecordList.stream().map(TaskRecord::getUserId).collect(Collectors.toSet());
|
||||
HashMap<String, Object> map = new HashMap<>();
|
||||
map.put("userIds", userIds);
|
||||
|
||||
// 链式构建GET请求
|
||||
final String build = UrlBuilder.of("https://server.gxwebsoft.com/api/system/user/page").setQuery(new UrlQuery(map)).build();
|
||||
String response = HttpRequest.get(build)
|
||||
.header("Authorization", param.getToken())
|
||||
.header("Tenantid", param.getTenantId().toString())
|
||||
.body(JSONObject.toJSONString(map))//表单内容
|
||||
.timeout(20000)//超时,毫秒
|
||||
.execute().body();
|
||||
|
||||
final ApiResult<PageResult<User>> userResult = JSONObject.parseObject(response, new TypeReference<ApiResult<PageResult<User>>>() {
|
||||
});
|
||||
final Map<Integer, List<User>> collect = userResult.getData().getList().stream().collect(Collectors.groupingBy(User::getUserId));
|
||||
taskRecordList.forEach(item -> {
|
||||
final List<User> users = collect.get(item.getUserId());
|
||||
if(!CollectionUtils.isEmpty(users)) {
|
||||
final User user = users.get(0);
|
||||
item.setNickname(user.getNickname());
|
||||
item.setAvatar(user.getAvatar());
|
||||
item.setCity(user.getCity());
|
||||
item.setUser(user);
|
||||
}
|
||||
});
|
||||
result.setList(taskRecordList);
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<TaskRecord> listRel(TaskRecordParam param) {
|
||||
List<TaskRecord> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<TaskRecord, TaskRecordParam> page = new PageParam<>();
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
return page.sortRecords(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TaskRecord getByIdRel(Integer taskRecordId) {
|
||||
TaskRecordParam param = new TaskRecordParam();
|
||||
param.setTaskRecordId(taskRecordId);
|
||||
return param.getOne(baseMapper.selectListRel(param));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,252 @@
|
||||
package com.gxwebsoft.oa.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.date.DateField;
|
||||
import cn.hutool.core.date.DateRange;
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
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.oa.entity.Task;
|
||||
import com.gxwebsoft.oa.entity.TaskCount;
|
||||
import com.gxwebsoft.oa.entity.TaskRecord;
|
||||
import com.gxwebsoft.oa.mapper.TaskMapper;
|
||||
import com.gxwebsoft.oa.param.TaskParam;
|
||||
import com.gxwebsoft.oa.service.TaskCountService;
|
||||
import com.gxwebsoft.oa.service.TaskRecordService;
|
||||
import com.gxwebsoft.oa.service.TaskService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
|
||||
import static com.gxwebsoft.common.core.constants.TaskConstants.*;
|
||||
|
||||
/**
|
||||
* 任务记录表Service实现
|
||||
*
|
||||
* @author 科技小王子
|
||||
* @since 2023-10-23 18:53:01
|
||||
*/
|
||||
@Service
|
||||
public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements TaskService {
|
||||
@Resource
|
||||
private TaskRecordService taskRecordService;
|
||||
@Resource
|
||||
private TaskCountService taskCountService;
|
||||
|
||||
@Override
|
||||
public PageResult<Task> pageRel(TaskParam param) {
|
||||
PageParam<Task, TaskParam> page = new PageParam<>(param);
|
||||
page.setDefaultOrder("create_time desc");
|
||||
List<Task> list = baseMapper.selectPageRel(page, param);
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Task> listRel(TaskParam param) {
|
||||
List<Task> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<Task, TaskParam> 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<Object> 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<Task>().eq(Task::getStatus, 0)));
|
||||
AtomicInteger count2 = new AtomicInteger(count(new LambdaQueryWrapper<Task>().eq(Task::getStatus, 1)));
|
||||
// 非管理员仅可浏览和自己相关的工单
|
||||
loginUser.getRoles().forEach(d -> {
|
||||
|
||||
if (type.equals(6)) {
|
||||
count1.set(count(new LambdaQueryWrapper<Task>().eq(Task::getStatus, 0).eq(Task::getCommander, userId)));
|
||||
count2.set(count(new LambdaQueryWrapper<Task>().eq(Task::getStatus, 1).eq(Task::getCommander, userId)));
|
||||
}
|
||||
if (type.equals(10)) {
|
||||
count1.set(count(new LambdaQueryWrapper<Task>().eq(Task::getStatus, 0).eq(Task::getPromoter, userId)));
|
||||
count2.set(count(new LambdaQueryWrapper<Task>().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<Object> objects = new ArrayList<>();
|
||||
objects.add(json1);
|
||||
objects.add(json2);
|
||||
return objects;
|
||||
}
|
||||
|
||||
/**
|
||||
* 提交工单记录
|
||||
*/
|
||||
@Override
|
||||
public boolean saveByRel(Task task) {
|
||||
// 保存工单
|
||||
save(task);
|
||||
// 添加第一条记录
|
||||
TaskRecord taskRecord = BeanUtil.copyProperties(task, TaskRecord.class);
|
||||
taskRecord.setCreateTime(new Date());
|
||||
taskRecord.setUpdateTime(new Date());
|
||||
taskRecordService.save(taskRecord);
|
||||
// 添加统计记录表
|
||||
if (taskCountService.count(new LambdaQueryWrapper<TaskCount>().eq(TaskCount::getUserId, task.getUserId())) == 0) {
|
||||
final TaskCount taskCount = new TaskCount();
|
||||
taskCount.setUserId(task.getUserId());
|
||||
taskCount.setRoleId(task.getRoleId());
|
||||
taskCount.setRoleCode(task.getRoleCode());
|
||||
taskCount.setOrganizationId(task.getOrganizationId());
|
||||
taskCountService.save(taskCount);
|
||||
}
|
||||
// 更新统计表
|
||||
TaskCount taskCount = taskCountService.getByUserId(task.getUserId());
|
||||
taskCount.setPending(taskCount.getPending() + 1);
|
||||
taskCountService.updateById(taskCount);
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateCount(Task param) {
|
||||
final Task task = getById(param.getTaskId());
|
||||
// 当前时间 2023-11-04 21:47:16
|
||||
final String now = DateUtil.now();
|
||||
// 今天日期 2023-11-04
|
||||
final String today = DateUtil.today();
|
||||
// 今天开始的时间 2023-11-04 00:00:00
|
||||
final DateTime dayStart = DateUtil.beginOfDay(DateUtil.date());
|
||||
// 今天结束的时间 2023-11-04 00:00:00
|
||||
final DateTime dayEnd = DateUtil.offsetDay(dayStart, 1);
|
||||
// 当前月份的开始时间 2023-11-01 00:00:00
|
||||
final DateTime monthStart = DateUtil.beginOfMonth(DateUtil.date());
|
||||
// 当期月份的结束时间 2023-12-01 00:00:00
|
||||
final DateTime monthEnd = DateUtil.offsetMonth(monthStart, 1);
|
||||
// 今年的开始时间
|
||||
final DateTime yearStart = DateUtil.beginOfYear(DateUtil.date());
|
||||
// 获取年的值
|
||||
final int year = DateUtil.year(yearStart);
|
||||
// 是否闰年
|
||||
final boolean leapYear = DateUtil.isLeapYear(year);
|
||||
// 获取今年的总天数
|
||||
int daysByYear = leapYear ? 366 : 365;
|
||||
// 今年的结束时间
|
||||
final DateTime yearEnd = DateUtil.offsetDay(yearStart, daysByYear);
|
||||
// 创建日期范围生成器
|
||||
DateRange range = DateUtil.range(monthStart, monthEnd, DateField.MONTH);
|
||||
|
||||
// 查询待处理的工单总数量
|
||||
final int pendingTasks = count(new LambdaQueryWrapper<Task>().eq(Task::getStatus, TASK_STATUS_0));
|
||||
// 查询今日已处理的工单数量
|
||||
final int todayTasks = count(new LambdaQueryWrapper<Task>().between(Task::getUpdateTime, dayStart, dayEnd).eq(Task::getProgress,COMPLETED).eq(Task::getStatus,TASK_STATUS_1));
|
||||
// 查询本月已处理的工单数量
|
||||
final int monthTasks = count(new LambdaQueryWrapper<Task>().between(Task::getUpdateTime, monthStart, monthEnd).eq(Task::getProgress,COMPLETED).eq(Task::getStatus,TASK_STATUS_1));
|
||||
// 查询本年已处理的工单总数量
|
||||
final int yearTasks = count(new LambdaQueryWrapper<Task>().between(Task::getCreateTime, yearStart, yearEnd).eq(Task::getProgress,COMPLETED).eq(Task::getStatus, TASK_STATUS_1));
|
||||
// 查询公司总处理工单数量
|
||||
final int totalTasks = count(new LambdaQueryWrapper<Task>().eq(Task::getProgress,COMPLETED).eq(Task::getStatus, TASK_STATUS_1));
|
||||
|
||||
// 查询当前登录用户待处理的工单数量
|
||||
final int userPendingTasks = count(new LambdaQueryWrapper<Task>().eq(Task::getProgress,COMPLETED).eq(Task::getStatus, TASK_STATUS_1).eq(Task::getUserId,task.getUserId()));
|
||||
// 查询当前登录用户今日已处理的工单数量
|
||||
final int userTodayTasks = count(new LambdaQueryWrapper<Task>().between(Task::getUpdateTime,dayStart,dayEnd).eq(Task::getProgress,COMPLETED).eq(Task::getStatus, TASK_STATUS_1).eq(Task::getUserId,task.getUserId()));
|
||||
// 查询当前登录用户本月已处理的工单数量
|
||||
final int userMonthTasks = count(new LambdaQueryWrapper<Task>().between(Task::getUpdateTime,monthStart,monthEnd).eq(Task::getProgress,COMPLETED).eq(Task::getStatus, TASK_STATUS_1).eq(Task::getUserId,task.getUserId()));
|
||||
// 查询当前登录用户本年已处理的工单数量
|
||||
final int userYearTasks = count(new LambdaQueryWrapper<Task>().between(Task::getCreateTime,yearStart,yearEnd).eq(Task::getProgress,COMPLETED).eq(Task::getStatus, TASK_STATUS_1).eq(Task::getUserId,task.getUserId()));
|
||||
// 查询当前登录用户已处理的总工单数量
|
||||
final int userTotalTasks = count(new LambdaQueryWrapper<Task>().eq(Task::getProgress,COMPLETED).eq(Task::getStatus, TASK_STATUS_1).eq(Task::getUserId,task.getUserId()));
|
||||
|
||||
// 查询受理人待处理的工单数量
|
||||
final int commanderPendingTasks = count(new LambdaQueryWrapper<Task>().eq(Task::getStatus, TASK_STATUS_0).eq(Task::getCommander,task.getCommander()));
|
||||
// 查询受理人今日已处理的工单数量
|
||||
final int commanderTodayTasks = count(new LambdaQueryWrapper<Task>().between(Task::getUpdateTime,dayStart,dayEnd).eq(Task::getProgress,COMPLETED).eq(Task::getStatus, TASK_STATUS_1).eq(Task::getCommander,task.getCommander()));
|
||||
// 查询受理人本月已处理的工单数量
|
||||
final int commanderMonthTasks = count(new LambdaQueryWrapper<Task>().between(Task::getUpdateTime,monthStart,monthEnd).eq(Task::getProgress,COMPLETED).eq(Task::getStatus, TASK_STATUS_1).eq(Task::getCommander,task.getCommander()));
|
||||
// 查询受理人本年已处理的工单数量
|
||||
final int commanderYearTasks = count(new LambdaQueryWrapper<Task>().between(Task::getCreateTime,yearStart,yearEnd).eq(Task::getProgress,COMPLETED).eq(Task::getStatus, TASK_STATUS_1).eq(Task::getCommander,task.getCommander()));
|
||||
// 查询受理人已处理的总工单数量
|
||||
final int commanderTotalTasks = count(new LambdaQueryWrapper<Task>().eq(Task::getProgress,COMPLETED).eq(Task::getStatus, TASK_STATUS_1).eq(Task::getCommander,task.getCommander()));
|
||||
|
||||
// 统计工单发起人
|
||||
if (taskCountService.count(new LambdaQueryWrapper<TaskCount>().eq(TaskCount::getUserId,task.getUserId())) == 0) {
|
||||
final TaskCount taskCount = new TaskCount();
|
||||
taskCount.setUserId(task.getUserId());
|
||||
taskCountService.save(taskCount);
|
||||
}
|
||||
TaskCount user = taskCountService.getByUserId(task.getUserId());
|
||||
System.out.println("user = " + user);
|
||||
user.setPending(userPendingTasks);
|
||||
user.setToday(userTodayTasks);
|
||||
user.setMonth(userMonthTasks);
|
||||
user.setYear(userYearTasks);
|
||||
user.setTotal(userTotalTasks);
|
||||
taskCountService.updateById(user);
|
||||
if(!user.getUserId().equals(task.getCommander())){
|
||||
// 统计工单受理人
|
||||
TaskCount commander = taskCountService.getByUserId(task.getCommander());
|
||||
if(commander != null){
|
||||
commander.setPending(commanderPendingTasks);
|
||||
commander.setToday(commanderTodayTasks);
|
||||
commander.setMonth(commanderMonthTasks);
|
||||
commander.setYear(commanderYearTasks);
|
||||
commander.setTotal(commanderTotalTasks);
|
||||
taskCountService.updateById(commander);
|
||||
}
|
||||
}
|
||||
// 统计公司数据
|
||||
if (taskCountService.count(new LambdaQueryWrapper<TaskCount>().eq(TaskCount::getUserId,0).eq(TaskCount::getRoleCode, "superAdmin")) == 0) {
|
||||
final TaskCount taskCount = new TaskCount();
|
||||
taskCount.setRoleCode("superAdmin");
|
||||
taskCountService.save(taskCount);
|
||||
}
|
||||
final TaskCount superAdmin = taskCountService.getByUserId(param.getLoginUserId());
|
||||
if (superAdmin.getRoleCode().equals("superAdmin") || superAdmin.getRoleCode().equals("admin")) {
|
||||
superAdmin.setPending(pendingTasks);
|
||||
superAdmin.setToday(todayTasks);
|
||||
superAdmin.setMonth(monthTasks);
|
||||
superAdmin.setYear(yearTasks);
|
||||
superAdmin.setTotal(totalTasks);
|
||||
taskCountService.updateById(superAdmin);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<Task> pageRelAll(TaskParam param) {
|
||||
PageParam<Task, TaskParam> page = new PageParam<>(param);
|
||||
page.setDefaultOrder("create_time desc");
|
||||
List<Task> list = baseMapper.selectPageRelAll(page, param);
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateByIdAll(Task task) {
|
||||
baseMapper.updateByTaskId(task);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
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-10-23 18:53:01
|
||||
*/
|
||||
@Service
|
||||
public class TaskUserServiceImpl extends ServiceImpl<TaskUserMapper, TaskUser> implements TaskUserService {
|
||||
|
||||
@Override
|
||||
public PageResult<TaskUser> pageRel(TaskUserParam param) {
|
||||
PageParam<TaskUser, TaskUserParam> page = new PageParam<>(param);
|
||||
//page.setDefaultOrder("create_time desc");
|
||||
List<TaskUser> list = baseMapper.selectPageRel(page, param);
|
||||
return new PageResult<>(list, page.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<TaskUser> listRel(TaskUserParam param) {
|
||||
List<TaskUser> list = baseMapper.selectListRel(param);
|
||||
// 排序
|
||||
PageParam<TaskUser, TaskUserParam> 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));
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user