|
@@ -23,12 +23,17 @@ import com.tianhu.system.api.domain.SysUser;
|
|
|
import com.tianhu.system.api.model.LoginUser;
|
|
|
import com.tianhu.system.companyAuth.service.IOwnAuthService;
|
|
|
import com.tianhu.system.domain.*;
|
|
|
+import com.tianhu.system.mapper.SysProductMenuMapper;
|
|
|
import com.tianhu.system.mapper.SysRoleMapper;
|
|
|
+import com.tianhu.system.mapper.SysRoleMenuMapper;
|
|
|
import com.tianhu.system.service.*;
|
|
|
+import com.tianhu.system.service.impl.SysUserServiceImpl;
|
|
|
import com.tianhu.system.utils.FlowableService;
|
|
|
import com.tianhu.system.utils.RegularUtil;
|
|
|
import com.tianhu.system.utils.SysConstant;
|
|
|
import org.json.JSONObject;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
import org.springframework.web.bind.annotation.PostMapping;
|
|
@@ -38,6 +43,7 @@ import org.springframework.web.bind.annotation.RestController;
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
+import java.io.IOException;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.*;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
@@ -51,6 +57,7 @@ import java.util.concurrent.TimeUnit;
|
|
|
@RestController
|
|
|
@RequestMapping("companyAuth")
|
|
|
public class OwnAuthController extends BaseController {
|
|
|
+ private static final Logger log = LoggerFactory.getLogger(SysCompany.class);
|
|
|
|
|
|
@Autowired
|
|
|
private TokenService tokenService;
|
|
@@ -77,8 +84,14 @@ public class OwnAuthController extends BaseController {
|
|
|
@Autowired
|
|
|
private ISysUserService userService;
|
|
|
@Autowired
|
|
|
+ private ISysUserRoleService sysUserRoleService;
|
|
|
+ @Autowired
|
|
|
private ISysConfigService configService;
|
|
|
@Autowired
|
|
|
+ private SysRoleMenuMapper roleMenuMapper;
|
|
|
+ @Autowired
|
|
|
+ private SysProductMenuMapper productMenuMapper;
|
|
|
+ @Autowired
|
|
|
private RemoteFileService remoteFileService;
|
|
|
@Autowired
|
|
|
private SysRoleMapper roleMapper;
|
|
@@ -115,6 +128,10 @@ public class OwnAuthController extends BaseController {
|
|
|
*/
|
|
|
private String dataScope = "1";
|
|
|
/**
|
|
|
+ * 数据权限2自定义
|
|
|
+ */
|
|
|
+ private String scope = "2";
|
|
|
+ /**
|
|
|
* 是否关联显示
|
|
|
*/
|
|
|
private boolean isCheck = true;
|
|
@@ -139,22 +156,6 @@ public class OwnAuthController extends BaseController {
|
|
|
*/
|
|
|
private String TYPECODE = "0";
|
|
|
/**
|
|
|
- * CFCA安心签jks路径
|
|
|
- */
|
|
|
- private String JSK = "0";
|
|
|
- /**
|
|
|
- * CFCA安心签jsk密码
|
|
|
- */
|
|
|
- private String TSKPOSSWORD = "0";
|
|
|
- /**
|
|
|
- * CFCA安心签渠道(默认Test,生产环境:Prod)
|
|
|
- */
|
|
|
- private String CHANNEL = "Test";
|
|
|
- /**
|
|
|
- * CFCA安心签(账号注册成功时生成的)
|
|
|
- */
|
|
|
- private String PLATID = "CA4572A39DCB55ABE05311016B0A04B3";
|
|
|
- /**
|
|
|
* 企查查标识 招采云链默认使用
|
|
|
*/
|
|
|
private String KEY = "2eb3e260ce1c4439aa0aa039fb494036";
|
|
@@ -162,8 +163,14 @@ public class OwnAuthController extends BaseController {
|
|
|
* 企查查标识 招采云链默认使用
|
|
|
*/
|
|
|
private String SECRETKEY = "03FFC1B421136621126B2AAD945E99CF";
|
|
|
- //金额 正数 正整数
|
|
|
- private static final String MONEY = "([1-9]\\d*(.\\d{1,2})?)$|^(0.\\d?[1-9])$|^(0.[1-9]\\d?)";
|
|
|
+ /**
|
|
|
+ * 核心企业普通用户
|
|
|
+ */
|
|
|
+ private String COREORDINARY = "system.company.coreOrdinary";
|
|
|
+ /**
|
|
|
+ * 融资企业普通用户
|
|
|
+ */
|
|
|
+ private String SUPPLIERORDINARY = "system.company.supplierOrdinary";
|
|
|
@Autowired
|
|
|
private FlowableService flowableService;
|
|
|
/**
|
|
@@ -403,7 +410,10 @@ public class OwnAuthController extends BaseController {
|
|
|
} else {
|
|
|
sysCompanyService.updateSysCompany(SysCompany);
|
|
|
}
|
|
|
-
|
|
|
+ SysCompany companyServices = sysCompanyService.getById(scyId);
|
|
|
+ if("01".equals(companyServices.getScyType())&&(CommonUtil.isEmpty(operator)||CommonUtil.isEmpty(number))){
|
|
|
+ throw new Exception("核心企业请填写其他管理员!");
|
|
|
+ }
|
|
|
//部门id
|
|
|
SysDept dept = new SysDept();
|
|
|
dept.setCompanyId(scyId);
|
|
@@ -440,7 +450,6 @@ public class OwnAuthController extends BaseController {
|
|
|
sysRole.setMenuCheckStrictly(isCheck);
|
|
|
sysRole.setDeptCheckStrictly(isCheck);
|
|
|
sysRole.setStatus(status);
|
|
|
- sysRole.setStatus("0");
|
|
|
sysRole.setCreateBy(use.getUserId() + "");
|
|
|
sysRole.setIsAuto("1");
|
|
|
companyService.insertRole(sysRole);
|
|
@@ -792,12 +801,13 @@ public class OwnAuthController extends BaseController {
|
|
|
if(1.00<Double.valueOf(amount)){
|
|
|
throw new Exception("校验金额不能大于一元!");
|
|
|
}
|
|
|
- String strs = amount.substring(2, 4);
|
|
|
+ String[] strs = amount.split("\\.");
|
|
|
+ System.out.println("strs"+strs);
|
|
|
|
|
|
//备注
|
|
|
String zbiRemark = CommonUtil.objToString(map.get("zbiRemark"));
|
|
|
//打款验证
|
|
|
- JSONObject operatorAuth = CfcaUtil.paymentAuth(ISPRO, INSTITUTIONID, bankAcc.get(0).getPbaiCfcaNo(), strs, zbiRemark);
|
|
|
+ JSONObject operatorAuth = CfcaUtil.paymentAuth(ISPRO, INSTITUTIONID, bankAcc.get(0).getPbaiCfcaNo(), strs[1], zbiRemark);
|
|
|
/*JSONObject operatorAuth = new JSONObject();
|
|
|
operatorAuth.put("Message", "SUCCESS");
|
|
|
operatorAuth.put("Verification", "20");*/
|
|
@@ -857,10 +867,12 @@ public class OwnAuthController extends BaseController {
|
|
|
* @return
|
|
|
*/
|
|
|
@PostMapping("/verification")
|
|
|
+ @Transactional(rollbackFor=Exception.class)
|
|
|
@Log(title = "企业认证修改", businessType = BusinessType.UPDATE)
|
|
|
public R verification(@RequestBody Map<String,Object> map, HttpServletRequest request) throws Exception {
|
|
|
//获取登录用户
|
|
|
LoginUser loginUser = tokenService.getLoginUser();
|
|
|
+ SysUser user = loginUser.getSysUser();
|
|
|
//电话
|
|
|
String phone = CommonUtil.objToString(map.get("phone"));
|
|
|
//企业id
|
|
@@ -901,19 +913,35 @@ public class OwnAuthController extends BaseController {
|
|
|
//正常状态
|
|
|
sysCompany.setScyStatus("00");
|
|
|
JSONObject companyAccount =null;
|
|
|
+ //jks路径
|
|
|
+ String jksPath = configService.selectConfigByKey("jks_path");
|
|
|
+ //密码
|
|
|
+ String keyStorePassword = configService.selectConfigByKey("cfca_key_store_password");
|
|
|
+ //渠道
|
|
|
+ String channel = configService.selectConfigByKey("cfca_channel");
|
|
|
+ //platId
|
|
|
+ String platId = configService.selectConfigByKey("cfca_platId");
|
|
|
if(CommonUtil.isNotEmpty(handler)) {
|
|
|
- companyAccount = AxqCommonUtil.companyAccount(scyName, IDENTTYPECODE, scySocialCode, phoneNumber, scyPhone, AUTHENTICATIONMODE, handler, TYPECODE, handlerCard,new HttpConnector(JSK,TSKPOSSWORD,CHANNEL,PLATID));
|
|
|
+ try {
|
|
|
+ companyAccount = AxqCommonUtil.companyAccount(scyName, IDENTTYPECODE, scySocialCode, phoneNumber, scyPhone, AUTHENTICATIONMODE, handler, TYPECODE, handlerCard,new HttpConnector(jksPath,keyStorePassword,channel,platId));
|
|
|
+ }catch (Exception e) {
|
|
|
+ throw new Exception("开户失败!");
|
|
|
+ }
|
|
|
}else{
|
|
|
- companyAccount = AxqCommonUtil.companyAccount(scyName, IDENTTYPECODE, scySocialCode, phoneNumber, scyPhone, AUTHENTICATIONMODE, scyLegal, TYPECODE, scyLegalId,new HttpConnector(JSK,TSKPOSSWORD,CHANNEL,PLATID));
|
|
|
- }
|
|
|
+ try {
|
|
|
+ companyAccount = AxqCommonUtil.companyAccount(scyName, IDENTTYPECODE, scySocialCode, phoneNumber, scyPhone, AUTHENTICATIONMODE, scyLegal, TYPECODE, scyLegalId,new HttpConnector(jksPath,keyStorePassword,channel,platId));
|
|
|
+ }catch (Exception e) {
|
|
|
+ throw new Exception("开户失败!");
|
|
|
+ }
|
|
|
+ }
|
|
|
System.out.print("开户结果==========>" + companyAccount);
|
|
|
//返回cfca用户id
|
|
|
String userId = companyAccount.getJSONObject("enterprise").getString("userId");
|
|
|
sysCompany.setScyCfcaUserId(userId);
|
|
|
sysCompanyService.updateSysCompany(sysCompany);
|
|
|
- //查询账户
|
|
|
+ //查询企业
|
|
|
LambdaQueryWrapper<SysCompany> company = new LambdaQueryWrapper<>();
|
|
|
- //所属银行
|
|
|
+ //企业id
|
|
|
company.eq(SysCompany::getScyId,scyId);
|
|
|
List<SysCompany> pany = sysCompanyService.findSysCompanys(company);
|
|
|
// 融资企业权限配置
|
|
@@ -934,7 +962,63 @@ public class OwnAuthController extends BaseController {
|
|
|
sysCompanyProduct.setScpState("00");
|
|
|
sysCompanyProductService.insertSysCompanyProduct(sysCompanyProduct);
|
|
|
|
|
|
- // 角色集合
|
|
|
+ // 查询普通用户菜单
|
|
|
+ String key =null;
|
|
|
+ if("01".equals(pany.get(0).getScyType())){
|
|
|
+ //核心企业
|
|
|
+ key = configService.selectConfigByKey(COREORDINARY);
|
|
|
+ }else{
|
|
|
+ //融资企业
|
|
|
+ key = configService.selectConfigByKey(SUPPLIERORDINARY);
|
|
|
+ }
|
|
|
+ SysProductMenu sysProductMenu =new SysProductMenu();
|
|
|
+ sysProductMenu.setSpmProductId(key);
|
|
|
+ List<SysProductMenu> product = productMenuMapper.selectSysProductMenuList(sysProductMenu);
|
|
|
+
|
|
|
+ Long[] menuIds = new Long[product.size()];
|
|
|
+ for(int j = 0;j < product.size();j++){
|
|
|
+ menuIds[j] = product.get(j).getSpmMenuId();
|
|
|
+ }
|
|
|
+
|
|
|
+ //创建角色
|
|
|
+ SysRole sysRole = new SysRole();
|
|
|
+ sysRole.setCompanyId(scyId);
|
|
|
+ sysRole.setRoleName(scyName+"普通角色");
|
|
|
+ sysRole.setRoleSort(defaultOrder);
|
|
|
+ sysRole.setRoleKey(scyName+"普通角色");
|
|
|
+ sysRole.setDataScope(scope);
|
|
|
+ sysRole.setMenuCheckStrictly(isCheck);
|
|
|
+ sysRole.setDeptCheckStrictly(isCheck);
|
|
|
+ sysRole.setStatus(status);
|
|
|
+ sysRole.setCreateBy(user.getUserId() + "");
|
|
|
+ sysRole.setCreateTime(new Date());
|
|
|
+ sysRole.setIsAuto("0");
|
|
|
+ sysRole.setMenuIds(menuIds);
|
|
|
+ roleService.insertRole(sysRole);
|
|
|
+
|
|
|
+ //查询企业下非经办人的用户
|
|
|
+ LambdaQueryWrapper<SysUserCompanyRel> companyRel = new LambdaQueryWrapper<>();
|
|
|
+ companyRel.eq(SysUserCompanyRel::getSucrCompanyId,scyId);
|
|
|
+ companyRel.eq(SysUserCompanyRel::getSucrHandler,"0");
|
|
|
+ List<SysUserCompanyRel> userCompanyRel = sysUserCompanyRelService.findSysUserCompanyRels(companyRel);
|
|
|
+ if(userCompanyRel.size()>0){
|
|
|
+ for(int i = 0;i<userCompanyRel.size();i++){
|
|
|
+ SysUserRole sysUserRole =new SysUserRole();
|
|
|
+ sysUserRole.setUserId(userCompanyRel.get(i).getSucrUserId());
|
|
|
+ List<SysUserRole> sysUserRoles = sysUserRoleService.selectSysUserRoleList(sysUserRole);
|
|
|
+ if(sysUserRoles.size()>0){
|
|
|
+ sysUserRole.setUserId(userCompanyRel.get(i).getSucrUserId());
|
|
|
+ sysUserRole.setRoleId(sysRole.getRoleId());
|
|
|
+ sysUserRoleService.updateSysUserRole(sysUserRole);
|
|
|
+ }else{
|
|
|
+ sysUserRole.setUserId(userCompanyRel.get(i).getSucrUserId());
|
|
|
+ sysUserRole.setRoleId(sysRole.getRoleId());
|
|
|
+ sysUserRoleService.insertSysUserRole(sysUserRole);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //TODO 加消息通知
|
|
|
+ // 刷新登录用户菜单和权限
|
|
|
SysUser sysUser = loginUser.getSysUser();
|
|
|
sysUser.setCompanyId(scyId);
|
|
|
sysUser.setCompanyStatus(sysCompany.getScyStatus());
|