package com.szwl.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.szwl.constant.ResponseCodesEnum; import com.szwl.model.bo.R; import com.szwl.model.bo.ResponseModel; import com.szwl.model.entity.TAdmin; import com.szwl.model.entity.TEquipment; import com.szwl.model.entity.TJoinpayMch; import com.szwl.model.entity.TJoinpayMchCheck; import com.szwl.model.param.mchParam; import com.szwl.service.TAdminService; import com.szwl.service.TJoinpayMchCheckService; import com.szwl.service.TJoinpayMchService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.xml.crypto.Data; import java.util.Date; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; /** *

* 汇聚支付用户收款信息表 前端控制器 *

* * @author wuhs * @since 2022-04-29 */ @Api(value = "/tJoinpayMch", tags = {"汇聚支付"}) @RestController @RequestMapping("/tJoinpayMch") public class TJoinpayMchController { @Autowired TJoinpayMchService tJoinpayMchService; @Autowired TJoinpayMchCheckService tJoinpayMchCheckService; @Autowired TAdminService adminService; @ApiOperation(value = "查找汇聚收款账户信息") @PostMapping("/getOne") public ResponseModel getOne(String adminId) { TAdmin admin = adminService.getById(adminId); LambdaQueryWrapper query = Wrappers.lambdaQuery(); query.eq(TJoinpayMch::getAdminId,adminId); List list = tJoinpayMchService.list(query); if(list.size()>0){ //已经注册,就要查看是否有提交审核的 LambdaQueryWrapper query1 = Wrappers.lambdaQuery(); query1.eq(TJoinpayMchCheck::getAdminId,adminId); List list1 = tJoinpayMchCheckService.list(query1); if(list1.size()>0){ int i = 0; for(TJoinpayMchCheck tJoinpayMchCheck:list1){ if(tJoinpayMchCheck.getType().equals("0")||tJoinpayMchCheck.getType().equals("3")){ i++; } } if(i==0){ return R.ok(list.get(0)); }else { for(int j=list1.size()-1;j>=0;j--){ if(!list1.get(j).getType().equals("2")&!list1.get(j).getType().equals("1")){ if(list1.get(j).getType().equals("3")){ Date data = new Date(); long time = data.getTime(); long updateTime = list1.get(j).getModifyDate().getTime(); if(3*24*60*60*1000l>time-updateTime){ //拒绝的审核,超过3天后不显示 return R.ok(list.get(0)); }else { return R.ok(list.get(j)); } } return R.ok(list.get(j)); } } } }else { return R.ok(list.get(0)); } return R.ok(list.get(0)); }else { return R.fail("尚未注册!"); } } @ApiOperation(value = "保存或提交审核") @PostMapping("/save") public ResponseModel save(@RequestBody TJoinpayMch tJoinpayMch) { // TAdmin admin = adminService.getById(tJoinpayMch.getAdminId()); LambdaQueryWrapper query = Wrappers.lambdaQuery(); query.eq(TJoinpayMch::getAdminId,tJoinpayMch.getAdminId()); List list = tJoinpayMchService.list(query); tJoinpayMch.setCreateDate(new Date()); tJoinpayMch.setModifyDate(new Date()); if(list.size()>0&&StringUtils.isNotEmpty(list.get(0).getAltMchNo())){ //已有,属于第二次提交信息, TJoinpayMch mch = list.get(0); //取消审核步骤 // ResponseModel checkMch = createCheckMch(mch, tJoinpayMch); //提交并修改 if(!mch.getApproveStatus().equals("审核通过")){ if (!StringUtils.isEmpty(tJoinpayMch.getLegalPerson())) { mch.setLegalPerson(tJoinpayMch.getLegalPerson()); } if (tJoinpayMch.getIdCardNo()!=null) { mch.setIdCardNo(tJoinpayMch.getIdCardNo()); } if (!StringUtils.isEmpty(tJoinpayMch.getLicenseNo())) { mch.setLicenseNo(tJoinpayMch.getLicenseNo()); } } if (!StringUtils.isEmpty(tJoinpayMch.getBankAccountName())) { mch.setBankAccountName(tJoinpayMch.getBankAccountName()); } if (!StringUtils.isEmpty(tJoinpayMch.getBankAccountNo())) { mch.setBankAccountNo(tJoinpayMch.getBankAccountNo()); } if (!StringUtils.isEmpty(tJoinpayMch.getBankChannelNo())) { mch.setBankChannelNo(tJoinpayMch.getBankChannelNo()); } if (!StringUtils.isEmpty(tJoinpayMch.getBusiContactName())) { mch.setBusiContactName(tJoinpayMch.getBusiContactName()); } if (!StringUtils.isEmpty(tJoinpayMch.getBusiContactMobileNo())) { mch.setBusiContactMobileNo(tJoinpayMch.getBusiContactMobileNo()); } if (!StringUtils.isEmpty(tJoinpayMch.getPhoneNo())) { mch.setPhoneNo(tJoinpayMch.getPhoneNo()); } if(mch.getSettMode()!=null){ mch.setSettMode(tJoinpayMch.getSettMode()); } if(mch.getRiskDay()!=null){ mch.setRiskDay(tJoinpayMch.getRiskDay()); } if (tJoinpayMch.getSettDateType()!=null) { mch.setSettDateType(tJoinpayMch.getSettDateType()); } String s = tJoinpayMchService.updateMch(mch); if(s.equals("ok")){ tJoinpayMchService.updateById(mch); } return R.ok(s); }else { //没有,直接保存 tJoinpayMch.setStep("0"); String result = tJoinpayMchService.createMch(tJoinpayMch); if(result.equals("ok")){ return R.ok(tJoinpayMch); }else { return R.fail(ResponseCodesEnum.C0001,result); } } } @ApiOperation(value = "签约") @GetMapping("/altMchSign") public ResponseModel altMchSign(String id) { TJoinpayMch mch = tJoinpayMchService.getById(id); //签定协议 String str =tJoinpayMchService.altMchSign(mch); return R.ok(str); } @ApiOperation(value = "上传图片") @PostMapping("/sentImage") // public ResponseModel sentImage(String id,String cardPositive,String cardNegative,String tradeLicence,String openAccountLicence,String type,String status) { public ResponseModel sentImage(@RequestBody mchParam tJoinpayMch) { TJoinpayMch mch = tJoinpayMchService.getById(tJoinpayMch.getId()); if(tJoinpayMch.getType().equals("0")){ //对公 if(StringUtils.isEmpty(tJoinpayMch.getCardPositive())||StringUtils.isEmpty(tJoinpayMch.getCardNegative())||StringUtils.isEmpty(tJoinpayMch.getTradeLicence())){ return R.fail("图片不能为空"); } String str = tJoinpayMchService.sendCardBusiness(mch,tJoinpayMch.getCardPositive(),tJoinpayMch.getCardNegative(),tJoinpayMch.getTradeLicence(),tJoinpayMch.getOpenAccountLicence(),tJoinpayMch.getStatus()); return R.ok(str); } if(tJoinpayMch.getType().equals("1")){ //个人 if(StringUtils.isEmpty(tJoinpayMch.getCardPositive())||StringUtils.isEmpty(tJoinpayMch.getCardNegative())){ return R.fail("图片不能为空"); } // String cardNegative = replit(tJoinpayMch.getCardNegative()); // String cardPositive = replit(tJoinpayMch.getCardPositive()); String str = tJoinpayMchService.sendCard(mch,tJoinpayMch.getCardPositive(),tJoinpayMch.getCardNegative(),tJoinpayMch.getStatus()); return R.ok(str); } return R.ok(); } private String replit(String cardNegative) { Pattern p = Pattern.compile("\\s*|\t|\r|\n"); /*\n 回车(\u000a) \t 水平制表符(\u0009) \s 空格(\u0008) \r 换行(\u000d)*/ Matcher m = p.matcher(cardNegative); cardNegative = m.replaceAll(""); return cardNegative; } @ApiOperation(value = "获取提现信息") @GetMapping("/getMch") public ResponseModel getMch(@RequestParam String id) { TAdmin admin = adminService.getById(id); if(!admin.getIsAdmined()){ if(admin.getType()<=1){ //公司 TJoinpayMch tJoinpayMch = new TJoinpayMch(); tJoinpayMch.setType("0"); return R.ok(tJoinpayMch); }else { //商家 TAdmin parentAdmin = adminService.getById(admin.getParentId()); LambdaQueryWrapper query = Wrappers.lambdaQuery(); query.eq(TJoinpayMch::getAdminId,Long.valueOf(parentAdmin.getId())); List list = tJoinpayMchService.list(query); TJoinpayMch tJoinpayMch = list.get(0); tJoinpayMchService.refreshMch(tJoinpayMch); String s = tJoinpayMchService.refreshMyAccount(tJoinpayMch); TJoinpayMch joinpayMch = tJoinpayMchService.getById(tJoinpayMch.getId()); return R.ok(joinpayMch); } }else { LambdaQueryWrapper query = Wrappers.lambdaQuery(); query.eq(TJoinpayMch::getAdminId,Long.valueOf(id)); List list = tJoinpayMchService.list(query); TJoinpayMch tJoinpayMch = list.get(0); tJoinpayMchService.refreshMch(tJoinpayMch); String s = tJoinpayMchService.refreshMyAccount(tJoinpayMch); TJoinpayMch joinpayMch = tJoinpayMchService.getById(tJoinpayMch.getId()); return R.ok(joinpayMch); } } private ResponseModel createCheckMch(TJoinpayMch mch, TJoinpayMch tJoinpayMch) { //检查是否有更新 int a = 0; if(!mch.getBankAccountNo().equals(tJoinpayMch.getBankAccountNo())){ a++; } if(!mch.getBusiContactName().equals(tJoinpayMch.getBusiContactName())){ a++; } if(!mch.getIdCardNo().equals(tJoinpayMch.getIdCardNo())){ a++; } if(mch.getSettMode()!=null&&tJoinpayMch.getSettMode()!=null&mch.getSettMode()!=tJoinpayMch.getSettMode()){ a++; } if(mch.getAltMerchantType()!=tJoinpayMch.getAltMerchantType()){ a++; } if(a<=0){ return R.fail("重复提交!"); }else { LambdaQueryWrapper query = Wrappers.lambdaQuery(); query.eq(TJoinpayMchCheck::getType,"0"); query.eq(TJoinpayMchCheck::getAdminId,tJoinpayMch.getAdminId()); List list = tJoinpayMchCheckService.list(query); if(list.size()>0){ return R.fail("重复提交!"); } TJoinpayMchCheck joinpayMchCheck = new TJoinpayMchCheck(); joinpayMchCheck.setCreateDate(new Date()); joinpayMchCheck.setModifyDate(new Date()); joinpayMchCheck.setAdminId(tJoinpayMch.getAdminId()); joinpayMchCheck.setAltMainBalance(tJoinpayMch.getAltMainBalance()); joinpayMchCheck.setAltGuarBalance(tJoinpayMch.getAltGuarBalance()); joinpayMchCheck.setAltAvilBalance(tJoinpayMch.getAltAvilBalance()); joinpayMchCheck.setAltMchNo(tJoinpayMch.getAltMchNo()); joinpayMchCheck.setAltMchName(tJoinpayMch.getAltMchName()); joinpayMchCheck.setSignTrxNo(tJoinpayMch.getSignTrxNo()); joinpayMchCheck.setBizCode(tJoinpayMch.getBizCode()); joinpayMchCheck.setOrderStatus(tJoinpayMch.getOrderStatus()); joinpayMchCheck.setLoginName(tJoinpayMch.getLoginName()); joinpayMchCheck.setBankAccountType(mch.getBankAccountType()); joinpayMchCheck.setLegalPerson(mch.getLegalPerson()); joinpayMchCheck.setIdCardNo(mch.getIdCardNo()); joinpayMchCheck.setAltMerchantType(mch.getAltMerchantType()); joinpayMchCheck.setBankAccountName(mch.getBankAccountName()); joinpayMchCheck.setBankAccountNo(mch.getBankAccountNo()); joinpayMchCheck.setBankChannelNo(mch.getBankChannelNo()); if (!StringUtils.isEmpty(mch.getBusiContactName())) { joinpayMchCheck.setBusiContactName(mch.getBusiContactName()); } if (!StringUtils.isEmpty(mch.getBusiContactMobileNo())) { joinpayMchCheck.setBusiContactMobileNo(mch.getBusiContactMobileNo()); } if (!StringUtils.isEmpty(mch.getPhoneNo())) { joinpayMchCheck.setPhoneNo(mch.getPhoneNo()); } if (!StringUtils.isEmpty(mch.getLicenseNo())) { joinpayMchCheck.setLicenseNo(mch.getLicenseNo()); } if(mch.getSettMode()!=null){ joinpayMchCheck.setSettMode(mch.getSettMode()); } if(mch.getRiskDay()!=null){ joinpayMchCheck.setRiskDay(mch.getRiskDay()); } joinpayMchCheck.setType("0"); tJoinpayMchCheckService.save(joinpayMchCheck); return R.ok(joinpayMchCheck); } } }