Browse Source

fix: @Inner support init params

master
wangxiang 1 year ago
parent
commit
51c32a2ab1
  1. 6
      kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/feign/RemotePushConcernFanService.java
  2. 25
      kicc-platform/kicc-platform-api/kicc-system-api/src/main/java/com/cloud/kicc/system/api/feign/RemoteConfigService.java
  3. 22
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/PushConcernFanController.java
  4. 7
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/ConfigController.java
  5. 4
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/UserController.java
  6. 48
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/AppServiceImpl.java
  7. 7
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/UserServiceImpl.java

6
kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/feign/RemotePushConcernFanService.java

@ -2,6 +2,7 @@ package com.cloud.kicc.commonbiz.api.feign; @@ -2,6 +2,7 @@ package com.cloud.kicc.commonbiz.api.feign;
import com.cloud.kicc.common.core.api.R;
import com.cloud.kicc.common.core.constant.AppConstants;
import com.cloud.kicc.common.core.constant.SecurityConstants;
import com.cloud.kicc.common.core.constant.ServiceNameConstants;
import com.cloud.kicc.system.api.entity.User;
import org.springframework.cloud.openfeign.FeignClient;
@ -11,6 +12,7 @@ import org.springframework.web.bind.annotation.RequestBody; @@ -11,6 +12,7 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
@ -30,7 +32,7 @@ public interface RemotePushConcernFanService { @@ -30,7 +32,7 @@ public interface RemotePushConcernFanService {
@DeleteMapping(value = AppConstants.APP_COMMON + "/pushConcernFan/removeUserPushData")
R removeUserPushData(@RequestParam("userIds") Set<String> userIds);
@PostMapping(value = AppConstants.APP_COMMON + "/pushConcernFan/bindConcernEnterpriseUser")
R bindConcernEnterpriseUser(@RequestParam("userId") String userId, @RequestBody List<User> enterpriseUserList);
@PostMapping(value = AppConstants.APP_COMMON + "/pushConcernFan/bindConcernEnterpriseUser", headers = SecurityConstants.HEADER_FROM_IN)
R bindConcernEnterpriseUser(@RequestParam("params") Map params, @RequestBody List<User> enterpriseUserList);
}

25
kicc-platform/kicc-platform-api/kicc-system-api/src/main/java/com/cloud/kicc/system/api/feign/RemoteConfigService.java

@ -0,0 +1,25 @@ @@ -0,0 +1,25 @@
package com.cloud.kicc.system.api.feign;
import com.cloud.kicc.common.core.api.R;
import com.cloud.kicc.common.core.constant.AppConstants;
import com.cloud.kicc.common.core.constant.SecurityConstants;
import com.cloud.kicc.common.core.constant.ServiceNameConstants;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
/**
*<p>
* 远程参数api
*</p>
*
* @Author: wangxiang4
* @Since: 2023/12/28
*/
@FeignClient(contextId = "remoteConfigService", value = ServiceNameConstants.SYSTEM_SERVICE)
public interface RemoteConfigService {
@GetMapping(value = AppConstants.APP_SYSTEM + "/config/getValueByKey/{key}", headers = SecurityConstants.HEADER_FROM_IN)
R<String> getValueByKey(@PathVariable("key") String key);
}

22
kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/PushConcernFanController.java

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.cloud.kicc.common.core.api.R;
import com.cloud.kicc.common.core.constant.AppConstants;
import com.cloud.kicc.common.security.annotation.Inner;
import com.cloud.kicc.commonbiz.api.entity.*;
import com.cloud.kicc.commonbiz.api.enums.PushAuditStatusEnum;
import com.cloud.kicc.commonbiz.api.enums.PushConcernTypeEnum;
@ -111,9 +112,14 @@ public class PushConcernFanController { @@ -111,9 +112,14 @@ public class PushConcernFanController {
return R.ok();
}
@Inner
@ApiOperation("创建内部新用户强制关联内部企业")
@PostMapping("/bindConcernEnterpriseUser")
public R bindConcernEnterpriseUser(String userId, @Valid @RequestBody List<User> enterpriseUserList) {
public R bindConcernEnterpriseUser(@Valid @RequestBody List<User> enterpriseUserList, @RequestParam Map params) {
String userId = params.get("userId").toString();
String execAdminUserId = params.get("execUserId").toString();
String execAdminUserName = params.get("execUserName").toString();
String tenantId = params.get("tenantId").toString();
// 创建新用户时需要跟企业内部用户进行绑定
enterpriseUserList.forEach(item -> {
// 添加系统内部用户为粉丝
@ -122,10 +128,14 @@ public class PushConcernFanController { @@ -122,10 +128,14 @@ public class PushConcernFanController {
pushConcernFan.setConcernUserId(item.getId());
pushConcernFan.setType(PushConcernTypeEnum.INTERNAL_COMPANY.getValue());
pushConcernFan.setStatus(PushAuditStatusEnum.APPROVED.getValue());
pushConcernFan.setCreateById(execAdminUserId);
pushConcernFan.setCreateByName(execAdminUserName);
pushConcernFan.setTenantId(tenantId);
iPushConcernFanService.save(pushConcernFan);
// 同步推送类型
List<PushType> pushTypes = iPushTypeService.list(Wrappers.<PushType>lambdaQuery().eq(PushType::getCreateById, item.getId()));
List<PushConcernFanType> pushConcernFanTypes = pushTypes.stream().map(subItem -> new PushConcernFanType()
List<PushConcernFanType> pushConcernFanTypes = pushTypes.stream().map(subItem -> {
PushConcernFanType pushConcernFanType = new PushConcernFanType()
.setName(subItem.getName())
.setConcernFanId(pushConcernFan.getId())
.setConcernUserId(pushConcernFan.getConcernUserId())
@ -137,8 +147,12 @@ public class PushConcernFanController { @@ -137,8 +147,12 @@ public class PushConcernFanController {
.setPlayLights(subItem.getPlayLights())
.setPlayToText(subItem.getPlayToText())
.setOnlineRingtone(subItem.getOnlineRingtone())
.setOfflineRingtone(subItem.getOfflineRingtone())
).collect(Collectors.toList());
.setOfflineRingtone(subItem.getOfflineRingtone());
pushConcernFanType.setCreateById(execAdminUserId);
pushConcernFanType.setCreateByName(execAdminUserName);
pushConcernFanType.setTenantId(tenantId);
return pushConcernFanType;
}).collect(Collectors.toList());
iPushConcernFanTypeService.saveBatch(pushConcernFanTypes);
});
return R.ok();

7
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/ConfigController.java

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.cloud.kicc.common.security.annotation.Inner;
import com.cloud.kicc.system.api.entity.Config;
import com.cloud.kicc.system.api.entity.User;
import com.cloud.kicc.system.service.ConfigService;
@ -64,6 +65,12 @@ public class ConfigController { @@ -64,6 +65,12 @@ public class ConfigController {
return R.ok(config != null ? config.getValue() : null);
}
@Inner
@GetMapping("/getValueByKey/{key:\\w+}")
public R getValueByKey(@PathVariable String key) {
return R.ok(configService.getValueByKey(key));
}
@SysLog("参数新增")
@PostMapping("/save")
@PreAuthorize("@pms.hasPermission('config_add')")

4
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/UserController.java

@ -130,8 +130,8 @@ public class UserController { @@ -130,8 +130,8 @@ public class UserController {
user.setDeptName(dept.getName());
user.setUserType(initUserType);
user.setTenantId(initTenantId);
user.setCreateById(kiccUser.getUsername());
user.setCreateByName(kiccUser.getId());
user.setCreateById(kiccUser.getId());
user.setCreateByName(kiccUser.getUsername());
userService.save(user);
// 处理角色授权

48
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/AppServiceImpl.java

@ -1,6 +1,7 @@ @@ -1,6 +1,7 @@
package com.cloud.kicc.system.service.impl;
import cn.hutool.core.lang.Validator;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.text.CharSequenceUtil;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.ObjectUtil;
@ -76,7 +77,7 @@ public class AppServiceImpl implements AppService { @@ -76,7 +77,7 @@ public class AppServiceImpl implements AppService {
@DSTransactional
public SsoUser phoneRegister(String phone, String captcha, String identityProvider) {
// 设置不区分大小写,全部以小写验证
Validator.validateMobile(phone, "手机号码不合法");
/*Validator.validateMobile(phone, "手机号码不合法");
String code = captcha.toLowerCase();
if (CharSequenceUtil.isBlank(code)) {
throw new ValidateCodeException("验证码不能为空");
@ -107,47 +108,64 @@ public class AppServiceImpl implements AppService { @@ -107,47 +108,64 @@ public class AppServiceImpl implements AppService {
.eq(SsoUser::getIdentityProvider, identityProvider));
if (!findSsoUser.isEmpty()) {
return findSsoUser.get(0);
}
}*/
// 修改扩展用户信息
SsoUser ssoUser = new SsoUser();
/*SsoUser ssoUser = new SsoUser();
ssoUser.setUserName(phone);
ssoUser.setNickName(phone);
ssoUser.setPassword(new BCryptPasswordEncoder().encode(initPassword));
ssoUser.setPhone(phone);
ssoUser.setIdentityProvider(identityProvider);
ssoUser.setTenantId(initTenantId);
ssoUser.setCreateById(kiccUser.getUsername());
ssoUser.setCreateByName(kiccUser.getId());
iSsoUserService.save(ssoUser);
ssoUser.setCreateById(kiccUser.getId());
ssoUser.setCreateByName(kiccUser.getUsername());
iSsoUserService.save(ssoUser);*/
User user = new User();
/*User user = new User();
user.setCasUserId(ssoUser.getId());
user.setDeptId(dept.getDeptId());
user.setDeptName(dept.getName());
user.setUserType(initUserType);
user.setTenantId(initTenantId);
user.setCreateById(kiccUser.getUsername());
user.setCreateByName(kiccUser.getId());
userService.save(user);
user.setCreateById(kiccUser.getId());
user.setCreateByName(kiccUser.getUsername());
userService.save(user);*/
// 处理角色授权
String[] roles = initRoleIds.split(",");
/*String[] roles = initRoleIds.split(",");
userRoleService.saveBatch(Arrays.stream(roles).map(roleId -> {
UserRole ur = new UserRole();
ur.setUserId(user.getId());
ur.setRoleId(roleId);
ur.setTenantId(initTenantId);
return ur;
}).collect(Collectors.toList()));
}).collect(Collectors.toList()));*/
String initDeptId = configService.getValueByKey("app.init.deptId");
Dept dept = deptService.getById(initDeptId);
Optional.ofNullable(dept).orElseThrow(() -> new CheckedException("当前部门无效请重新在参数管理中配置!"));
String execAdminUserId = configService.getValueByKey("app.exec.admin.userId");
KiccUser kiccUser = userService.getUserById(execAdminUserId);
Optional.ofNullable(kiccUser).orElseThrow(() -> new CheckedException("当前系统管理执行用户无效请重新在参数管理中配置!"));
String initUserType = configService.getValueByKey("app.init.normal.userType");
String initTenantId = configService.getValueByKey("app.init.tenantId");
String initRoleIds = configService.getValueByKey("app.init.roleIds");
String initPassword = configService.getValueByKey("appid.password");
// 创建系统中的用户强制关联内部企业
List<User> enterpriseUserList = userService.list(Wrappers.<User>lambdaQuery().in(User::getUserType, UserTypeEnum.INTERNAL_USER.getValue()));
remotePushConcernFanService.bindConcernEnterpriseUser(user.getId(), enterpriseUserList);
remotePushConcernFanService.bindConcernEnterpriseUser(MapUtil.<String, Object>builder()
.put("userId", "1739937413576310785")
.put("execUserId", kiccUser.getId())
.put("execUserName", kiccUser.getUsername())
.put("tenantId", initTenantId)
.build(), enterpriseUserList);
// 处理原密码给到APP自动一键登陆
ssoUser.setPassword(initPassword);
return ssoUser;
//ssoUser.setPassword(initPassword);
return new SsoUser();
}

7
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/UserServiceImpl.java

@ -249,7 +249,12 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us @@ -249,7 +249,12 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
// 创建系统中的用户强制关联内部企业
if (!ArrayUtil.contains(new String[]{ UserTypeEnum.ENTERPRISE_USER.getValue(), UserTypeEnum.INTERNAL_USER.getValue() }, SecurityUtils.<KiccUser>getUser().getUserType())) {
List<User> enterpriseUserList = super.list(Wrappers.<User>lambdaQuery().in(User::getUserType, UserTypeEnum.INTERNAL_USER.getValue()));
remotePushConcernFanService.bindConcernEnterpriseUser(user.getId(), enterpriseUserList);
remotePushConcernFanService.bindConcernEnterpriseUser(MapUtil.<String, Object>builder()
.put("userId", user.getId())
.put("execUserId", SecurityUtils.getUser().getId())
.put("execUserName", SecurityUtils.getUser().getUsername())
.put("tenantId", SecurityUtils.getUser().getTenantId())
.build(), enterpriseUserList);
}
}

Loading…
Cancel
Save