银行卡绑定通过判断是否要更新师傅状态

This commit is contained in:
kuang.yifei@iwhalecloud.com 2022-07-10 18:03:30 +08:00
parent 9314266499
commit db91f57baf
1 changed files with 22 additions and 7 deletions

View File

@ -9,9 +9,13 @@ import com.ghy.common.core.controller.BaseController;
import com.ghy.common.core.domain.AjaxResult;
import com.ghy.common.utils.AdapayUtils;
import com.ghy.common.utils.ExceptionUtil;
import com.ghy.worker.domain.Worker;
import com.ghy.worker.domain.WorkerBank;
import com.ghy.worker.domain.WorkerCertification;
import com.ghy.worker.request.WorkerBindBankCardRequest;
import com.ghy.worker.service.IWorkerCertificationService;
import com.ghy.worker.service.WorkerBankService;
import com.ghy.worker.service.WorkerService;
import com.huifu.adapay.core.exception.BaseAdaPayException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
@ -28,7 +32,6 @@ import java.util.Set;
* @author clunt
* 师傅银行卡绑定
*/
@Slf4j
@Controller
@RequestMapping("/worker/bank")
public class WorkerBankController extends BaseController {
@ -37,7 +40,10 @@ public class WorkerBankController extends BaseController {
private WorkerBankService workerBankService;
@Resource
private AdapayService adapayService;
@Resource
private IWorkerCertificationService workerCertificationService;
@Resource
private WorkerService workerService;
/**
* 个人账户绑定银行卡接口
@ -52,13 +58,13 @@ public class WorkerBankController extends BaseController {
// 需要先检查一次memberId是否已存在如果已存在则只需要绑卡即可
Map<String, Object> member = adapayService.queryMember(merchant.getDeptId(), memberId);
if (AdapayStatusEnum.succeeded.code.equals(member.get("status")) && memberId.equals(member.get("member_id"))) {
log.info("用户[memberId={}]已存在 跳过实名直接绑卡", memberId);
logger.info("用户[memberId={}]已存在 跳过实名直接绑卡", memberId);
} else {
// 先在Adapay创建实名用户
Map<String, Object> result1 = adapayService.createMember(merchant.getDeptId(), memberId, request.getPhone(),
request.getName(), request.getCertId());
if (!AdapayStatusEnum.succeeded.code.equals(result1.get("status"))) {
log.error("实名认证失败[{}]", JSON.toJSONString(result1));
logger.error("实名认证失败[{}]", JSON.toJSONString(result1));
return AjaxResult.error("个人信息不正确");
}
}
@ -68,9 +74,9 @@ public class WorkerBankController extends BaseController {
"2", request.getCertId(), request.getPhone(), null, null, null);
if (!AdapayStatusEnum.succeeded.code.equals(result2.get("status"))) {
if ("account_exists".equals(result2.get("error_code"))) {
log.info("用户[memberId={}]结算账户已存在 跳过", memberId);
logger.info("用户[memberId={}]结算账户已存在 跳过", memberId);
} else {
log.error("创建结算账户失败[{}]", JSON.toJSONString(result2));
logger.error("创建结算账户失败[{}]", JSON.toJSONString(result2));
return AjaxResult.error("个人信息与银行卡不匹配");
}
}
@ -87,7 +93,16 @@ public class WorkerBankController extends BaseController {
workerBankService.insertWorkerBank(workerBank);
}
return AjaxResult.success();
// 判断师傅是否已经审核过审核过就更新师傅状态为可用
WorkerCertification workerCertification = workerCertificationService.selectByWorkerId(request.getWorkerId());
if (workerCertification != null &&workerCertification.getStatus() == 1){
// 更新师傅为可用
Worker worker = new Worker();
worker.setWorkerId(request.getWorkerId());
worker.setStatus(0);
workerService.updateWorker(worker);
}
return AjaxResult.success("绑定银行卡成功");
}
@PostMapping("/getByWorkerId")