|
|
@@ -3,30 +3,30 @@ package com.tianhu.system.companyAuth.controller;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.tianhu.common.core.cfca.CfcaUtil;
|
|
|
import com.tianhu.common.core.domain.R;
|
|
|
-import com.tianhu.common.core.utils.CommonUtil;
|
|
|
-import com.tianhu.common.core.utils.IdUtils;
|
|
|
-import com.tianhu.common.core.utils.SecurityUtils;
|
|
|
-import com.tianhu.common.core.utils.ServletUtils;
|
|
|
+import com.tianhu.common.core.exception.BaseException;
|
|
|
+import com.tianhu.common.core.utils.*;
|
|
|
import com.tianhu.common.core.web.controller.BaseController;
|
|
|
import com.tianhu.common.security.service.TokenService;
|
|
|
import com.tianhu.system.api.RemoteFileService;
|
|
|
import com.tianhu.system.api.domain.PubFileInf;
|
|
|
+import com.tianhu.system.api.domain.SysDept;
|
|
|
+import com.tianhu.system.api.domain.SysRole;
|
|
|
+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.PayBankAccInf;
|
|
|
import com.tianhu.system.domain.SysCompany;
|
|
|
+import com.tianhu.system.domain.SysUserCompanyRel;
|
|
|
import com.tianhu.system.domain.ZcCfcaBankInf;
|
|
|
-import com.tianhu.system.service.IPayBankAccInfService;
|
|
|
-import com.tianhu.system.service.ISysCompanyService;
|
|
|
-import com.tianhu.system.service.IZcCfcaBankInfService;
|
|
|
+import com.tianhu.system.service.*;
|
|
|
import org.json.JSONObject;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
import java.text.SimpleDateFormat;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
+import java.util.*;
|
|
|
|
|
|
/**
|
|
|
* 企业认证管理
|
|
|
@@ -40,18 +40,26 @@ public class OwnAuthController extends BaseController {
|
|
|
|
|
|
@Autowired
|
|
|
private TokenService tokenService;
|
|
|
-
|
|
|
@Autowired
|
|
|
private IOwnAuthService ownAuthService;
|
|
|
-
|
|
|
@Autowired
|
|
|
private ISysCompanyService sysCompanyService;
|
|
|
-
|
|
|
+ @Autowired
|
|
|
+ private ISysUserCompanyRelService sysUserCompanyRelService;
|
|
|
@Autowired
|
|
|
private IPayBankAccInfService payBankAccInfService;
|
|
|
@Autowired
|
|
|
private IZcCfcaBankInfService zcCfcaBankInfService;
|
|
|
-
|
|
|
+ @Autowired
|
|
|
+ private IOwnCompanyService companyService;
|
|
|
+ @Autowired
|
|
|
+ private ISysDeptService deptService;
|
|
|
+ @Autowired
|
|
|
+ private ISysRoleService roleService;
|
|
|
+ @Autowired
|
|
|
+ private ISysUserService userService;
|
|
|
+ @Autowired
|
|
|
+ private ISysConfigService configService;
|
|
|
@Autowired
|
|
|
private RemoteFileService remoteFileService;
|
|
|
/**
|
|
|
@@ -66,7 +74,34 @@ public class OwnAuthController extends BaseController {
|
|
|
* 证件类型 (暂只支持 0=身份证 2=护照 3=军官证 4=士兵证 5=港澳居民来往内地通行 证 6=台湾同胞来往内地通行 证 8=外国人居留证 9=警官证 Z=港澳台居民身份证 R=居住证 L=居留证)
|
|
|
*/
|
|
|
private static String IDENTIFICATIONTYPE = "0";
|
|
|
-
|
|
|
+ /**
|
|
|
+ * 默认父级id
|
|
|
+ */
|
|
|
+ private Long defaultId = 0L;
|
|
|
+ /**
|
|
|
+ * 默认祖级列表
|
|
|
+ */
|
|
|
+ private String defaultAn = "0";
|
|
|
+ /**
|
|
|
+ * 默认排序
|
|
|
+ */
|
|
|
+ private String defaultOrder = "1";
|
|
|
+ /**
|
|
|
+ * 数据权限1全部
|
|
|
+ */
|
|
|
+ private String dataScope = "1";
|
|
|
+ /**
|
|
|
+ * 是否关联显示
|
|
|
+ */
|
|
|
+ private boolean isCheck = true;
|
|
|
+ /**
|
|
|
+ * 默认状态0正常
|
|
|
+ */
|
|
|
+ private String status = "0";
|
|
|
+ /**
|
|
|
+ * 自动创建
|
|
|
+ */
|
|
|
+ private String isAuto = "1";
|
|
|
/**
|
|
|
* 新增企业认证
|
|
|
*
|
|
|
@@ -74,21 +109,34 @@ public class OwnAuthController extends BaseController {
|
|
|
* @return
|
|
|
*/
|
|
|
@PostMapping("/add")
|
|
|
+ @Transactional(rollbackFor=Exception.class)
|
|
|
public R add(@RequestBody Map<String,Object> map) throws Exception {
|
|
|
- //获取登录用户
|
|
|
- LoginUser user = tokenService.getLoginUser();
|
|
|
+ LoginUser userInfo = tokenService.getLoginUser();
|
|
|
+ SysUser use = userInfo.getSysUser();
|
|
|
+
|
|
|
//企业名称
|
|
|
String scyName = CommonUtil.objToString(map.get("scyName"));
|
|
|
//社会信用代码
|
|
|
String scySocialCode = CommonUtil.objToString(map.get("scySocialCode"));
|
|
|
+ //获取企业信息
|
|
|
+ LambdaQueryWrapper<SysCompany> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ //企业名称
|
|
|
+ queryWrapper.eq(SysCompany::getScyName,scyName);
|
|
|
+ //统一社会信用代码
|
|
|
+ queryWrapper.eq(SysCompany::getScySocialCode,scySocialCode);
|
|
|
+ queryWrapper.ne(SysCompany::getScyStatus,"02");
|
|
|
+ List<SysCompany> list = sysCompanyService.findSysCompanys(queryWrapper);
|
|
|
+ if (list.size()>0){
|
|
|
+ return R.fail("当前公司已存在,请重新选择公司");
|
|
|
+ }
|
|
|
//注册资本
|
|
|
String scyRegisteredCapital = CommonUtil.objToString(map.get("scyRegisteredCapital"));
|
|
|
//时间格式化
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
//注册时间
|
|
|
- String scyStartTime = sdf.format(CommonUtil.objToString(map.get("scyStartTime")));
|
|
|
+ String scyStartTime = CommonUtil.objToString(map.get("scyStartTime"));
|
|
|
//到期时间
|
|
|
- String scyEndTime = sdf.format(CommonUtil.objToString(map.get("scyEndTime")));
|
|
|
+ String scyEndTime = CommonUtil.objToString(map.get("scyEndTime"));
|
|
|
//企业地址
|
|
|
String scyAddress = CommonUtil.objToString(map.get("scyAddress"));
|
|
|
//企业电话
|
|
|
@@ -97,28 +145,193 @@ public class OwnAuthController extends BaseController {
|
|
|
String scyLegal = CommonUtil.objToString(map.get("scyLegal"));
|
|
|
//法人证件号码
|
|
|
String scyLegalId = CommonUtil.objToString(map.get("scyLegalId"));
|
|
|
- //营业执照
|
|
|
- String scyLicenseFile = CommonUtil.objToString(map.get("scyLicenseFile"));
|
|
|
//经办人姓名
|
|
|
- String name = CommonUtil.objToString(map.get("name"));
|
|
|
+ String handler = CommonUtil.objToString(map.get("handler"));
|
|
|
//经办人身份证号
|
|
|
- String nameCard = CommonUtil.objToString(map.get("nameCard"));
|
|
|
+ String handlerCard =CommonUtil.objToString(map.get("handlerCard"));
|
|
|
//经办人手机号
|
|
|
- String phoneNumber = CommonUtil.objToString(map.get("phoneNumber"));
|
|
|
+ String phoneNumber =CommonUtil.objToString(map.get("phone"));
|
|
|
+ //其他操作员
|
|
|
+ String operator =CommonUtil.objToString(map.get("operator"));
|
|
|
+ //其他操作员手机号
|
|
|
+ String number =CommonUtil.objToString(map.get("number"));
|
|
|
//备注
|
|
|
String zbiRemark = CommonUtil.objToString(map.get("zbiRemark"));
|
|
|
+ //营业执照
|
|
|
+ String scyLicenseFile =CommonUtil.objToString(map.get("scyLicenseFile"));
|
|
|
+ //法人身份证正面
|
|
|
+ String fsfzzList =CommonUtil.objToString(map.get("fsfzzList"));
|
|
|
+ //法人身份证反面
|
|
|
+ List<Map<String,String>> fsfzfList = (List<Map<String, String>>) map.get("fsfzfList");
|
|
|
+ //经办人身份证正面
|
|
|
+ String jsfzzList =CommonUtil.objToString(map.get("jsfzzList"));
|
|
|
+ //经办人身份证反面
|
|
|
+ List<Map<String,String>> jsfzfList = (List<Map<String, String>>) map.get("jsfzfList");
|
|
|
+ //法人授权书
|
|
|
+ List<Map<String,String>> frsqsList = (List<Map<String, String>>) map.get("frsqsList");
|
|
|
+ //数字证书授权
|
|
|
+ List<Map<String,String>> szzssqList = (List<Map<String, String>>) map.get("szzssqList");
|
|
|
+ //其他附件
|
|
|
+ List<Map<String,String>> qtfjList = (List<Map<String, String>>) map.get("qtfjList");
|
|
|
SysCompany SysCompany = new SysCompany();
|
|
|
String scyId = IdUtils.fastSimpleUUID();
|
|
|
SysCompany.setScyId(scyId);
|
|
|
- sysCompanyService.createSysCompany(SysCompany);
|
|
|
+ SysCompany.setScyName(scyName);
|
|
|
+ SysCompany.setScySocialCode(scySocialCode);
|
|
|
+ SysCompany.setScyRegisteredCapital(scyRegisteredCapital);
|
|
|
+ SysCompany.setScyStartTime(scyStartTime);
|
|
|
+ SysCompany.setScyEndTime(scyEndTime);
|
|
|
+ SysCompany.setScyAddress(scyAddress);
|
|
|
+ SysCompany.setScyPhone(scyPhone);
|
|
|
+ SysCompany.setScyLegal(scyLegal);
|
|
|
+ SysCompany.setScyLegalId(scyLegalId);
|
|
|
+ SysCompany.setScyLicenseFile(scyLicenseFile);
|
|
|
+ SysCompany.setScyLegalFile(fsfzzList);
|
|
|
+ if(fsfzfList.size()>0){
|
|
|
+ SysCompany.setScyLegalBackFile(fsfzfList.get(0).get("uid"));
|
|
|
+ }
|
|
|
+ if(frsqsList.size()>0){
|
|
|
+ SysCompany.setScyAuthorizationFile(frsqsList.get(0).get("uid"));
|
|
|
+ }
|
|
|
+ if(szzssqList.size()>0){
|
|
|
+ SysCompany.setScyCommitmentFile(szzssqList.get(0).get("uid"));
|
|
|
+ }
|
|
|
+ if(qtfjList.size()>0){
|
|
|
+ SysCompany.setScyAppendixFile(qtfjList.get(0).get("uid"));
|
|
|
+ }
|
|
|
//运营商三要素
|
|
|
- JSONObject operatorAuth = CfcaUtil.operatorAuth(ISPRO, INSTITUTIONID, name, IDENTIFICATIONTYPE, nameCard, phoneNumber, zbiRemark);
|
|
|
+ JSONObject operatorAuth = CfcaUtil.operatorAuth(ISPRO, INSTITUTIONID, handler, IDENTIFICATIONTYPE, handlerCard, phoneNumber, zbiRemark);
|
|
|
System.out.print("运营商三要素结果==========>" + operatorAuth);
|
|
|
- /* operatorAuth.getJSONObject(WORDS_RESULT);*/
|
|
|
+ if("SUCCESS".equals(operatorAuth.getString("Message"))){
|
|
|
+ if(!"20".equals(operatorAuth.getString("Verification"))){
|
|
|
+ return R.fail("运营商审核失败请确认经办人信息是否正确");
|
|
|
+ };
|
|
|
+ }else{
|
|
|
+ return R.fail("运营商审核失败请确认经办人信息是否正确");
|
|
|
+ }
|
|
|
//工商四要素
|
|
|
JSONObject companyAuth = CfcaUtil.companyAuth(ISPRO, INSTITUTIONID, scyName, scySocialCode, scyLegal, IDENTIFICATIONTYPE, scyLegalId, zbiRemark);
|
|
|
System.out.print("工商四要素结果==========>" + companyAuth);
|
|
|
- return R.ok();
|
|
|
+ //状态(00:正常, 01:停用, 02:待四要素认证(认证中), 03:待对公户认证(认证中), 04:待实名审核(认证中), 99:删除)
|
|
|
+ SysCompany.setScyStatus("03");
|
|
|
+ //四要素认证状态(00:未认证, 01:认证通过, 02:认证未通过, 03:人工审批通过, 04:人工审批不通过)
|
|
|
+ if("SUCCESS".equals(operatorAuth.getString("Message"))){
|
|
|
+ if(!"20".equals(operatorAuth.getString("Verification"))){
|
|
|
+ SysCompany.setScyAuthStatus("02");
|
|
|
+ }else{
|
|
|
+ SysCompany.setScyAuthStatus("01");
|
|
|
+ };
|
|
|
+ }else{
|
|
|
+ SysCompany.setScyAuthStatus("02");
|
|
|
+ }
|
|
|
+ //获取创建人
|
|
|
+ SysCompany.setCreateBy(use.getUserId()+"");
|
|
|
+ //获取当前时间
|
|
|
+ Date currentTime = DateUtils.getNowDate();
|
|
|
+ SysCompany.setCreateTime(currentTime);
|
|
|
+ sysCompanyService.createSysCompany(SysCompany);
|
|
|
+ //创建部门
|
|
|
+ SysDept dept = new SysDept();
|
|
|
+ dept.setCompanyId(scyId);
|
|
|
+ dept.setDeptName(scyName);
|
|
|
+ dept.setParentId(defaultId);
|
|
|
+ dept.setAncestors(defaultAn);
|
|
|
+ dept.setOrderNum(defaultOrder);
|
|
|
+ dept.setCreateBy(use.getUserId()+"");
|
|
|
+ deptService.insertDept(dept);
|
|
|
+ List<SysDept> deptList= deptService.selectDeptList(dept);
|
|
|
+ //部门id
|
|
|
+ Long deptId = deptList.get(0).getDeptId();
|
|
|
+ //创建角色
|
|
|
+ SysRole sysRole = new SysRole();
|
|
|
+ sysRole.setCompanyId(scyId);
|
|
|
+ sysRole.setRoleName(scyName);
|
|
|
+ sysRole.setRoleSort(defaultOrder);
|
|
|
+ sysRole.setRoleKey(scyName);
|
|
|
+ sysRole.setDataScope(dataScope);
|
|
|
+ sysRole.setMenuCheckStrictly(isCheck);
|
|
|
+ sysRole.setDeptCheckStrictly(isCheck);
|
|
|
+ sysRole.setStatus(status);
|
|
|
+ sysRole.setStatus("0");
|
|
|
+ sysRole.setCreateBy(use.getUserId()+"");
|
|
|
+ sysRole.setIsAuto("1");
|
|
|
+ companyService.insertRole(sysRole);
|
|
|
+ List<SysRole> roleList= roleService.selectRoleList(sysRole);
|
|
|
+ //TODO
|
|
|
+ //角色权限未控制
|
|
|
+ //角色id
|
|
|
+ Long roleId = roleList.get(0).getRoleId();
|
|
|
+ Long[] roleIds = new Long[1];
|
|
|
+ roleIds[0] = roleId;
|
|
|
+ //用户新增或修改
|
|
|
+ SysUser sysUser = new SysUser();
|
|
|
+ SysUser listUser = userService.selectUserByUserName(phoneNumber);
|
|
|
+ if(listUser == null){
|
|
|
+ sysUser.setUserName(phoneNumber);
|
|
|
+ sysUser.setNickName(handler);
|
|
|
+ String password = configService.selectConfigByKey("sys.user.initPassword");
|
|
|
+ sysUser.setPassword(SecurityUtils.encryptPassword(password));
|
|
|
+ sysUser.setCreateBy(use.getUserId()+"");
|
|
|
+ sysUser.setRoleIds(roleIds);
|
|
|
+ userService.insertUser(sysUser);
|
|
|
+ } else {
|
|
|
+ listUser.setRoleIds(roleIds);
|
|
|
+ userService.insertUserRole(listUser);
|
|
|
+ }
|
|
|
+ SysUser listUserTwo = userService.selectUserByUserName(phoneNumber);
|
|
|
+ //创建其他和管理员
|
|
|
+ if(CommonUtil.isNotEmpty(operator)&&CommonUtil.isNotEmpty(number)){
|
|
|
+ SysUser listUsers = userService.selectUserByUserName(number);
|
|
|
+ if(listUsers == null) {
|
|
|
+ SysUser user = new SysUser();
|
|
|
+ user.setUserName(number);
|
|
|
+ user.setNickName(operator);
|
|
|
+ String password = configService.selectConfigByKey("sys.user.initPassword");
|
|
|
+ user.setPassword(SecurityUtils.encryptPassword(password));
|
|
|
+ user.setCreateBy(use.getUserId() + "");
|
|
|
+ user.setRoleIds(roleIds);
|
|
|
+ userService.insertUser(user);
|
|
|
+ }else{
|
|
|
+ listUser.setRoleIds(roleIds);
|
|
|
+ userService.insertUserRole(listUsers);
|
|
|
+ }
|
|
|
+ SysUser listUserf = userService.selectUserByUserName(number);
|
|
|
+ SysUserCompanyRel sysUserCompanyRel =new SysUserCompanyRel();
|
|
|
+ sysUserCompanyRel.setSucrCompanyId(scyId);
|
|
|
+ sysUserCompanyRel.setSucrUserId(listUserf.getUserId());
|
|
|
+ sysUserCompanyRel.setSucrDeptId(deptId);
|
|
|
+ sysUserCompanyRel.setSucrHandler("0");
|
|
|
+ sysUserCompanyRelService.createSysUserCompanyRel(sysUserCompanyRel);
|
|
|
+ }
|
|
|
+ //创建用户与企业关系
|
|
|
+ SysUserCompanyRel sysUserCompanyRel =new SysUserCompanyRel();
|
|
|
+ sysUserCompanyRel.setSucrCompanyId(scyId);
|
|
|
+ sysUserCompanyRel.setSucrUserId(listUserTwo.getUserId());
|
|
|
+ sysUserCompanyRel.setSucrDeptId(deptId);
|
|
|
+ sysUserCompanyRel.setSucrHandler("1");
|
|
|
+ sysUserCompanyRel.setSucrCard(handlerCard);
|
|
|
+ sysUserCompanyRel.setSucrCardFile(fsfzzList);
|
|
|
+ if(jsfzfList.size()>0){
|
|
|
+ sysUserCompanyRel.setSucrCardBackFile(jsfzfList.get(0).get("uid"));
|
|
|
+ }
|
|
|
+ LambdaQueryWrapper<SysUserCompanyRel> userCompanyRel = new LambdaQueryWrapper<>();
|
|
|
+ //企业名称
|
|
|
+ userCompanyRel.eq(SysUserCompanyRel::getSucrUserId,use.getUserId());
|
|
|
+ //统一社会信用代码
|
|
|
+ userCompanyRel.eq(SysUserCompanyRel::getSucrCompanyId,scyId);
|
|
|
+ List<SysUserCompanyRel> companyRel = sysUserCompanyRelService.findSysUserCompanyRels(userCompanyRel);
|
|
|
+ if(companyRel.size()==0){
|
|
|
+ SysUserCompanyRel userCompany =new SysUserCompanyRel();
|
|
|
+ userCompany.setSucrCompanyId(scyId);
|
|
|
+ userCompany.setSucrUserId(use.getUserId());
|
|
|
+ userCompany.setSucrDeptId(deptId);
|
|
|
+ userCompany.setSucrHandler("0");
|
|
|
+ sysUserCompanyRelService.createSysUserCompanyRel(userCompany);
|
|
|
+ }
|
|
|
+ //修改当前用户企业
|
|
|
+ sysUserCompanyRelService.createSysUserCompanyRel(sysUserCompanyRel);
|
|
|
+ SysCompany company = sysCompanyService.getById(scyId);
|
|
|
+ return R.ok(company);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -128,31 +341,24 @@ public class OwnAuthController extends BaseController {
|
|
|
* @return
|
|
|
*/
|
|
|
@PostMapping("/getlicense")
|
|
|
- public SysCompany getlicense(@RequestParam("file") MultipartFile file) {
|
|
|
- //获取登录用户
|
|
|
- LoginUser user = tokenService.getLoginUser();
|
|
|
- String companyId = user.getSysUser().getCompanyId();
|
|
|
+ public R getlicense(MultipartFile file) {
|
|
|
//获取企业信息
|
|
|
SysCompany sysCompany = ownAuthService.businessLicense(file);
|
|
|
- LambdaQueryWrapper<SysCompany> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
- //企业名称
|
|
|
- queryWrapper.eq(SysCompany::getScyName,sysCompany.getScyName());
|
|
|
- //统一社会信用代码
|
|
|
- queryWrapper.eq(SysCompany::getScyRemarks,sysCompany.getScySocialCode());
|
|
|
- List<SysCompany> list = sysCompanyService.findSysCompanys(queryWrapper);
|
|
|
+// LambdaQueryWrapper<SysCompany> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+// //企业名称
|
|
|
+// queryWrapper.eq(SysCompany::getScyName,sysCompany.getScyName());
|
|
|
+// //统一社会信用代码
|
|
|
+// queryWrapper.eq(SysCompany::getScySocialCode,sysCompany.getScySocialCode());
|
|
|
+// List<SysCompany> list = sysCompanyService.findSysCompanys(queryWrapper);
|
|
|
//不重复则储存营业执照并上传
|
|
|
- if(list.size() == 0){
|
|
|
- sysCompanyService.createSysCompany(sysCompany);
|
|
|
//获取上传文件token
|
|
|
String token = SecurityUtils.getToken(ServletUtils.getRequest());
|
|
|
//文件传输
|
|
|
- R<PubFileInf> fileResult = remoteFileService.uploadFile(file,"01","04","00", companyId, token);
|
|
|
+ R<PubFileInf> fileResult = remoteFileService.uploadFile(file,"01","04","00", "", token);
|
|
|
sysCompany.setScyLicenseFile(fileResult.getData().getPfiFileId());
|
|
|
- }else{
|
|
|
-// zcInvoiceInf.setZiiId(list.get(0).getZiiId());
|
|
|
- }
|
|
|
- //返回发票信息
|
|
|
- return sysCompany;
|
|
|
+ //返回营业执照信息
|
|
|
+ System.out.print("ocr识别==========>" + sysCompany);
|
|
|
+ return R.ok(sysCompany);
|
|
|
}
|
|
|
/**
|
|
|
* 法人身份证正面识别
|
|
|
@@ -161,31 +367,20 @@ public class OwnAuthController extends BaseController {
|
|
|
* @return
|
|
|
*/
|
|
|
@PostMapping("/getCardPositive")
|
|
|
- public R getCardPositive(MultipartFile file) {
|
|
|
- //获取登录用户
|
|
|
- LoginUser user = tokenService.getLoginUser();
|
|
|
- String companyId = user.getSysUser().getCompanyId();
|
|
|
+ public R getCardPositive(MultipartFile file,String fileType) {
|
|
|
//获取企业信息
|
|
|
- SysCompany sysCompany = ownAuthService.getCardPositive(file);
|
|
|
- LambdaQueryWrapper<SysCompany> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
- //企业名称
|
|
|
- queryWrapper.eq(SysCompany::getScyName,sysCompany.getScyName());
|
|
|
- //统一社会信用代码
|
|
|
- queryWrapper.eq(SysCompany::getScyRemarks,sysCompany.getScySocialCode());
|
|
|
- List<SysCompany> list = sysCompanyService.findSysCompanys(queryWrapper);
|
|
|
- //不重复则储存营业执照并上传
|
|
|
- if(list.size() == 0){
|
|
|
- sysCompanyService.createSysCompany(sysCompany);
|
|
|
+ Map map = ownAuthService.getCardPositive(file,fileType);
|
|
|
//获取上传文件token
|
|
|
String token = SecurityUtils.getToken(ServletUtils.getRequest());
|
|
|
//文件传输
|
|
|
- R<PubFileInf> fileResult = remoteFileService.uploadFile(file,"01","04","00", companyId, token);
|
|
|
- sysCompany.setScyLicenseFile(fileResult.getData().getPfiFileId());
|
|
|
- }else{
|
|
|
-// zcInvoiceInf.setZiiId(list.get(0).getZiiId());
|
|
|
- }
|
|
|
+ R<PubFileInf> fileResult = remoteFileService.uploadFile(file,"01","04","00", "", token);
|
|
|
+ if("00".equals(fileType)){
|
|
|
+ map.put("fsfzzList",fileResult.getData().getPfiFileId());
|
|
|
+ }else{
|
|
|
+ map.put("jsfzzList",fileResult.getData().getPfiFileId());
|
|
|
+ }
|
|
|
//返回发票信息
|
|
|
- return R.ok(sysCompany);
|
|
|
+ return R.ok(map);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -201,21 +396,13 @@ public class OwnAuthController extends BaseController {
|
|
|
//企业id
|
|
|
String scyId = CommonUtil.objToString(map.get("scyId"));
|
|
|
//开户名
|
|
|
- String pbaiAccountName = CommonUtil.objToString(map.get("pbaiAccountName"));
|
|
|
+ String pbaiAccountName = CommonUtil.objToString(map.get("scyName"));
|
|
|
//银行卡号
|
|
|
String pbaiBankaccountId = CommonUtil.objToString(map.get("pbaiBankaccountId"));
|
|
|
//所属银行
|
|
|
String pbaiBankName = CommonUtil.objToString(map.get("pbaiBankName"));
|
|
|
//备注
|
|
|
String zbiRemark = CommonUtil.objToString(map.get("zbiRemark"));
|
|
|
- PayBankAccInf payBankAccInf = new PayBankAccInf();
|
|
|
- String pbiId = IdUtils.fastSimpleUUID();
|
|
|
- payBankAccInf.setPbaiId(pbiId);
|
|
|
- payBankAccInf.setPbaiCstno(scyId);
|
|
|
- payBankAccInf.setPbaiAccountName(pbaiAccountName);
|
|
|
- payBankAccInf.setPbaiBankaccountId(pbaiBankaccountId);
|
|
|
- payBankAccInf.setPbaiBankName(pbaiBankName);
|
|
|
- payBankAccInfService.createPayBankAccInf(payBankAccInf);
|
|
|
//查询银行行号
|
|
|
LambdaQueryWrapper<ZcCfcaBankInf> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
//所属银行
|
|
|
@@ -224,10 +411,59 @@ public class OwnAuthController extends BaseController {
|
|
|
if(list.size()==0){
|
|
|
return R.fail("银行名称错误,请输入正确的银行名");
|
|
|
}
|
|
|
+ //查询账户
|
|
|
+ LambdaQueryWrapper<PayBankAccInf> bank = new LambdaQueryWrapper<>();
|
|
|
+ //所属银行
|
|
|
+ bank.eq(PayBankAccInf::getPbaiAccountName,pbaiAccountName);
|
|
|
+ bank.eq(PayBankAccInf::getPbaiBankaccountId,pbaiBankaccountId);
|
|
|
+ List<PayBankAccInf> bankAcc = payBankAccInfService.findPayBankAccInfs(bank);
|
|
|
+ if(bankAcc.size()>0){
|
|
|
+ //取得指定时间间隔后的系统时间
|
|
|
+ GregorianCalendar calendar = (GregorianCalendar) Calendar.getInstance();
|
|
|
+ calendar.add( Calendar.HOUR_OF_DAY, -3);
|
|
|
+ SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmss");
|
|
|
+ System.out.println("比较时间"+formatter.format(calendar.getTime()));
|
|
|
+ System.out.println("最后时间"+formatter.format(bankAcc.get(0).getPbaiCfcaDate()));
|
|
|
+ if(formatter.format(calendar.getTime()).compareTo(formatter.format(bankAcc.get(0).getPbaiCfcaDate()))<0){
|
|
|
+ throw new BaseException("当前账户已存在!");
|
|
|
+ }
|
|
|
+ //企业打款申请
|
|
|
+ JSONObject operatorAuth = CfcaUtil.paymentApply(ISPRO, INSTITUTIONID, pbaiAccountName, pbaiBankaccountId,list.get(0).getZcbiBankNo(),zbiRemark);
|
|
|
+ System.out.print("绑定对公户返回结果==========>" + operatorAuth);
|
|
|
+ String TxSN = operatorAuth.getString("TxSN");
|
|
|
+ if("SUCCESS".equals(operatorAuth.getString("Message"))){
|
|
|
+ if(!"20".equals(operatorAuth.getString("Verification"))){
|
|
|
+ return R.fail("绑定账户失败");
|
|
|
+ };
|
|
|
+ }else{
|
|
|
+ return R.fail("绑定账户失败");
|
|
|
+ }
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+ PayBankAccInf payBankAccInf = new PayBankAccInf();
|
|
|
+ String pbiId = IdUtils.fastSimpleUUID();
|
|
|
+ payBankAccInf.setPbaiId(pbiId);
|
|
|
+ payBankAccInf.setPbaiCstno(scyId);
|
|
|
+ payBankAccInf.setPbaiAccountName(pbaiAccountName);
|
|
|
+ payBankAccInf.setPbaiBankaccountId(pbaiBankaccountId);
|
|
|
+ payBankAccInf.setPbaiBankName(pbaiBankName);
|
|
|
+ payBankAccInf.setPbaiStatus("1");
|
|
|
//企业打款申请
|
|
|
JSONObject operatorAuth = CfcaUtil.paymentApply(ISPRO, INSTITUTIONID, pbaiAccountName, pbaiBankaccountId,list.get(0).getZcbiBankNo(),zbiRemark);
|
|
|
System.out.print("绑定对公户返回结果==========>" + operatorAuth);
|
|
|
- /* operatorAuth.getJSONObject(WORDS_RESULT);*/
|
|
|
+ String TxSN = operatorAuth.getString("TxSN");
|
|
|
+ if("SUCCESS".equals(operatorAuth.getString("Message"))){
|
|
|
+ if(!"20".equals(operatorAuth.getString("Status"))){
|
|
|
+ return R.fail("绑定账户失败");
|
|
|
+ };
|
|
|
+ }else{
|
|
|
+ return R.fail("绑定账户失败");
|
|
|
+ }
|
|
|
+ payBankAccInf.setPbaiCfcaNo(TxSN);
|
|
|
+ //获取当前时间
|
|
|
+ Date currentTime = DateUtils.getNowDate();
|
|
|
+ payBankAccInf.setPbaiCfcaDate(currentTime);
|
|
|
+ payBankAccInfService.createPayBankAccInf(payBankAccInf);
|
|
|
return R.ok();
|
|
|
}
|
|
|
|
|
|
@@ -240,50 +476,128 @@ public class OwnAuthController extends BaseController {
|
|
|
@PostMapping("/payment")
|
|
|
public R payment(@RequestBody Map<String,Object> map) throws Exception {
|
|
|
//获取登录用户
|
|
|
- LoginUser user = tokenService.getLoginUser();
|
|
|
- //交易流水号
|
|
|
- String originalTxSN = CommonUtil.objToString(map.get("originalTxSN"));
|
|
|
+ LoginUser userInfo = tokenService.getLoginUser();
|
|
|
+ SysUser users = userInfo.getSysUser();
|
|
|
+ LambdaQueryWrapper<SysUserCompanyRel> userCompanyRel = new LambdaQueryWrapper<>();
|
|
|
+ //用户名
|
|
|
+ userCompanyRel.eq(SysUserCompanyRel::getSucrUserId,users.getUserId());
|
|
|
+ List<SysUserCompanyRel> companyRel = sysUserCompanyRelService.findSysUserCompanyRels(userCompanyRel);
|
|
|
+ if(companyRel.size()==0){
|
|
|
+ return R.fail("企业未认证请联系管理员");
|
|
|
+ }else if(CommonUtil.isEmpty(companyRel.get(0).getSucrCompanyId())){
|
|
|
+ return R.fail("企业认证失败请联系管理员");
|
|
|
+ }
|
|
|
+ //查询账户
|
|
|
+ LambdaQueryWrapper<PayBankAccInf> bank = new LambdaQueryWrapper<>();
|
|
|
+ //所属银行
|
|
|
+ bank.eq(PayBankAccInf::getPbaiCstno,companyRel.get(0).getSucrCompanyId());
|
|
|
+ bank.orderByDesc(PayBankAccInf::getPbaiCfcaDate);
|
|
|
+ List<PayBankAccInf> bankAcc = payBankAccInfService.findPayBankAccInfs(bank);
|
|
|
+ if(bankAcc.size()==0){
|
|
|
+ return R.fail("所属账号不存在");
|
|
|
+ }
|
|
|
//金额(分)
|
|
|
String amount = CommonUtil.objToString(map.get("amount"));
|
|
|
//备注
|
|
|
String zbiRemark = CommonUtil.objToString(map.get("zbiRemark"));
|
|
|
- //企业打款申请
|
|
|
- JSONObject operatorAuth = CfcaUtil.paymentAuth(ISPRO, INSTITUTIONID, originalTxSN, amount, zbiRemark);
|
|
|
+ //打款验证
|
|
|
+ JSONObject operatorAuth = CfcaUtil.paymentAuth(ISPRO, INSTITUTIONID, bankAcc.get(0).getPbaiCfcaNo(), amount, zbiRemark);
|
|
|
System.out.print("打款认证结果==========>" + operatorAuth);
|
|
|
- /* operatorAuth.getJSONObject(WORDS_RESULT);*/
|
|
|
+ if("SUCCESS".equals(operatorAuth.getString("Message"))){
|
|
|
+ if(!"20".equals(operatorAuth.getString("Verification"))){
|
|
|
+ return R.fail("账户验证失败");
|
|
|
+ };
|
|
|
+ }else{
|
|
|
+ return R.fail("账户验证失败");
|
|
|
+ }
|
|
|
+ PayBankAccInf payBankAccInf =new PayBankAccInf();
|
|
|
+ payBankAccInf.setPbaiId(bankAcc.get(0).getPbaiId());
|
|
|
+ payBankAccInf.setPbaiStatus("0");
|
|
|
+ payBankAccInfService.updatePayBankAccInf(payBankAccInf);
|
|
|
return R.ok();
|
|
|
}
|
|
|
/**
|
|
|
* 发送短信验证码
|
|
|
*
|
|
|
- * @param phone 手机号
|
|
|
* @return
|
|
|
*/
|
|
|
@PostMapping("/send")
|
|
|
- public R send(String phone) throws Exception {
|
|
|
+ public R send(@RequestBody Map<String,Object> map) throws Exception {
|
|
|
//获取登录用户
|
|
|
LoginUser user = tokenService.getLoginUser();
|
|
|
- //企业打款申请
|
|
|
+ //电话
|
|
|
+ String phone = CommonUtil.objToString(map.get("phone"));
|
|
|
+ //发送短信验证码
|
|
|
JSONObject operatorAuth = CfcaUtil.sendSmsCode(ISPRO, INSTITUTIONID,null,phone,null);
|
|
|
System.out.print("发送短信验证码结果==========>" + operatorAuth);
|
|
|
- /* operatorAuth.getJSONObject(WORDS_RESULT);*/
|
|
|
+ if("SUCCESS".equals(operatorAuth.getString("Message"))){
|
|
|
+ if(!"20".equals(operatorAuth.getString("Status"))){
|
|
|
+ return R.fail("短信发送失败");
|
|
|
+ };
|
|
|
+ }else{
|
|
|
+ return R.fail("短信发送失败");
|
|
|
+ }
|
|
|
return R.ok();
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 短信验证
|
|
|
*
|
|
|
- * @param phone 手机号
|
|
|
* @return
|
|
|
*/
|
|
|
@PostMapping("/verification")
|
|
|
- public R verification(String phone,String code) throws Exception {
|
|
|
+ public R verification(@RequestBody Map<String,Object> map) throws Exception {
|
|
|
//获取登录用户
|
|
|
LoginUser user = tokenService.getLoginUser();
|
|
|
+ //电话
|
|
|
+ String phone = CommonUtil.objToString(map.get("phone"));
|
|
|
+ //企业id
|
|
|
+ String scyId = CommonUtil.objToString(map.get("scyId"));
|
|
|
+ //验证码
|
|
|
+ String code = CommonUtil.objToString(map.get("code"));
|
|
|
//企业打款申请
|
|
|
- JSONObject operatorAuth = CfcaUtil.checkSmsCode(ISPRO, INSTITUTIONID,code,phone,null);
|
|
|
+ JSONObject operatorAuth = CfcaUtil.checkSmsCode(ISPRO, INSTITUTIONID,phone,code,null);
|
|
|
System.out.print("短信验证码验证结果==========>" + operatorAuth);
|
|
|
- /* operatorAuth.getJSONObject(WORDS_RESULT);*/
|
|
|
+ if("SUCCESS".equals(operatorAuth.getString("Message"))){
|
|
|
+ if(!"20".equals(operatorAuth.getString("Verification"))){
|
|
|
+ return R.fail("短信验证失败");
|
|
|
+ };
|
|
|
+ }else{
|
|
|
+ return R.fail("短信验证失败");
|
|
|
+ }
|
|
|
+ SysCompany sysCompany =new SysCompany();
|
|
|
+ sysCompany.setScyId(scyId);
|
|
|
+ //正常状态
|
|
|
+ sysCompany.setScyStatus("00");
|
|
|
+ sysCompanyService.updateSysCompany(sysCompany);
|
|
|
return R.ok();
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 数据返现
|
|
|
+ *
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @PostMapping("/cashBack")
|
|
|
+ public R cashBack() throws Exception {
|
|
|
+ //获取登录用户
|
|
|
+ LoginUser user = tokenService.getLoginUser();
|
|
|
+ String companyId = user.getSysUser().getCompanyId();
|
|
|
+ SysCompany list =null;
|
|
|
+ Map map =new HashMap();
|
|
|
+ if(CommonUtil.isNotEmpty(companyId)){
|
|
|
+ list = sysCompanyService.getById(companyId);
|
|
|
+ map.put("list",list);
|
|
|
+ if(list!=null){
|
|
|
+ //查询账户
|
|
|
+ LambdaQueryWrapper<PayBankAccInf> bank = new LambdaQueryWrapper<>();
|
|
|
+ //所属银行
|
|
|
+ bank.eq(PayBankAccInf::getPbaiCstno,list.getScyId());
|
|
|
+ bank.orderByDesc(PayBankAccInf::getPbaiCfcaDate);
|
|
|
+ List<PayBankAccInf> bankAcc = payBankAccInfService.findPayBankAccInfs(bank);
|
|
|
+ map.put("data",bankAcc);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return R.ok(map);
|
|
|
+ }
|
|
|
+
|
|
|
}
|