package com.stylefeng.guns.modular.system.controller.general; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.stylefeng.guns.core.base.controller.BaseController; import com.stylefeng.guns.core.log.LogObjectHolder; import com.stylefeng.guns.core.shiro.ShiroKit; import com.stylefeng.guns.core.util.ToolUtil; import com.stylefeng.guns.modular.system.controller.util.Base64Util; import com.stylefeng.guns.modular.system.model.TBank; import com.stylefeng.guns.modular.system.model.TBankNext; import com.stylefeng.guns.modular.system.model.TEnterpriseWithdrawal; import com.stylefeng.guns.modular.system.model.TImgMid; import com.stylefeng.guns.modular.system.service.ITBankNextService; import com.stylefeng.guns.modular.system.service.ITBankService; import com.stylefeng.guns.modular.system.service.ITEnterpriseWithdrawalService; import com.stylefeng.guns.modular.system.service.ITImgMidService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import javax.annotation.Resource; import java.text.SimpleDateFormat; import java.util.List; /** * 控制器 * * @author fengshuonan * @Date 2023-03-17 15:33:03 */ @Controller @RequestMapping("/tEnterpriseWithdrawal") public class TEnterpriseWithdrawalController extends BaseController { private String PREFIX = "/system/tEnterpriseWithdrawal/"; @Autowired private ITEnterpriseWithdrawalService tEnterpriseWithdrawalService; @Autowired private ITBankService bankService; @Autowired private ITBankNextService bankNextService; /** * 跳转到首页 */ @RequestMapping("") public String index(Model model) { TEnterpriseWithdrawal companyId = tEnterpriseWithdrawalService.selectOne(new EntityWrapper().eq("companyId", ShiroKit.getUser().getObjectId())); if (companyId != null) { SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); model.addAttribute("item", companyId); model.addAttribute("time1", companyId.getBusinessExpireTime().split(",")[0]); model.addAttribute("time11", companyId.getBusinessExpireTime().split(",")[1]); model.addAttribute("time2", companyId.getUnifiedSocialCreditCodeExpireTime().split(",")[0]); model.addAttribute("time22", companyId.getUnifiedSocialCreditCodeExpireTime().split(",")[1]); model.addAttribute("time3", companyId.getCertificateExpireTime().split(",")[0]); model.addAttribute("time33", companyId.getCertificateExpireTime().split(",")[1]); String depositBank = companyId.getDepositBank(); TBankNext tBankNext = bankNextService.selectById(depositBank); TBank bankCode = bankService.selectOne(new EntityWrapper().eq("bankCode", tBankNext.getDrecCode())); model.addAttribute("bank", bankCode.getBankName()); model.addAttribute("bankNext", tBankNext.getBankName()); model.addAttribute("bankCode", bankCode.getBankCode()); model.addAttribute("bankNextCode", tBankNext.getId()); if ("auditing".equals(companyId.getApplicationStatus()) || "".equals(companyId.getApplicationStatus())) { return PREFIX + "tEnterpriseWithdrawal_detail.html"; } else if ("account_need_verify".equals(companyId.getApplicationStatus())) { model.addAttribute("bank", bankService.selectList(null)); model.addAttribute("bankOne", bankNextService.selectList(null)); return PREFIX + "tEnterpriseWithdrawal_edit.html"; } else if ("succeeded".equals(companyId.getApplicationStatus())) { model.addAttribute("bank", bankService.selectList(null)); model.addAttribute("bankOne", bankNextService.selectList(null)); model.addAttribute("type", 3); return PREFIX + "tEnterpriseWithdrawal_edit.html"; } else { model.addAttribute("bankOne", bankNextService.selectList(null)); model.addAttribute("bank", bankService.selectList(null)); return PREFIX + "tEnterpriseWithdrawal_fail.html"; } } else { model.addAttribute("item", new TEnterpriseWithdrawal()); model.addAttribute("bank", bankService.selectList(null)); return PREFIX + "tEnterpriseWithdrawal_add.html"; } } /** * 跳转到添加 */ @RequestMapping("/tEnterpriseWithdrawal_add") public String tEnterpriseWithdrawalAdd() { return PREFIX + "tEnterpriseWithdrawal_add.html"; } /** * 跳转到修改 */ @RequestMapping("/tEnterpriseWithdrawal_update/{tEnterpriseWithdrawalId}") public String tEnterpriseWithdrawalUpdate(@PathVariable Integer tEnterpriseWithdrawalId, Model model) { TEnterpriseWithdrawal tEnterpriseWithdrawal = tEnterpriseWithdrawalService.selectById(tEnterpriseWithdrawalId); model.addAttribute("item", tEnterpriseWithdrawal); LogObjectHolder.me().set(tEnterpriseWithdrawal); return PREFIX + "tEnterpriseWithdrawal_edit.html"; } /** * 获取列表 */ @RequestMapping(value = "/list") @ResponseBody public Object list(String condition) { return tEnterpriseWithdrawalService.selectList(null); } @RequestMapping(value = "/cityList") @ResponseBody public Object cityList(String code, String name) { return bankNextService.selectList(new EntityWrapper().eq("drecCode", code).like("bankName", name)); } @Resource private ITImgMidService itImgMidService; /** * 新增 */ @RequestMapping(value = "/add") @ResponseBody @Transactional(readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Exception.class) public Object add(TEnterpriseWithdrawal tEnterpriseWithdrawal, Integer accountType, String code, String businessExpireTimeOne, String unifiedSocialCreditCodeExpireTimeOne, String certificateExpireTimeOne) { tEnterpriseWithdrawal.setCode(code); List companyId = tEnterpriseWithdrawalService.selectList(new EntityWrapper().eq("companyId", ShiroKit.getUser().getObjectId())); if (companyId.size() > 0) { return "5001"; } if (ToolUtil.isNotEmpty(businessExpireTimeOne)) { tEnterpriseWithdrawal.setBusinessExpireTime(tEnterpriseWithdrawal.getBusinessExpireTime() + "," + businessExpireTimeOne); } else { tEnterpriseWithdrawal.setBusinessExpireTime(tEnterpriseWithdrawal.getBusinessExpireTime() + ",长期"); } if (ToolUtil.isNotEmpty(unifiedSocialCreditCodeExpireTimeOne)) { tEnterpriseWithdrawal.setUnifiedSocialCreditCodeExpireTime(tEnterpriseWithdrawal.getUnifiedSocialCreditCodeExpireTime() + "," + unifiedSocialCreditCodeExpireTimeOne); } else { tEnterpriseWithdrawal.setUnifiedSocialCreditCodeExpireTime(tEnterpriseWithdrawal.getUnifiedSocialCreditCodeExpireTime() + ",长期"); } if (ToolUtil.isNotEmpty(certificateExpireTimeOne)) { tEnterpriseWithdrawal.setCertificateExpireTime(tEnterpriseWithdrawal.getCertificateExpireTime() + "," + certificateExpireTimeOne); } else { tEnterpriseWithdrawal.setCertificateExpireTime(tEnterpriseWithdrawal.getCertificateExpireTime() + ",长期"); } tEnterpriseWithdrawal.setIsAudit(1); tEnterpriseWithdrawal.setCompanyId(ShiroKit.getUser().getObjectId()); tEnterpriseWithdrawal.setAccountType(accountType); String randomString = ToolUtil.getRandomString(32); tEnterpriseWithdrawal.setOutRequestNo(randomString); if (tEnterpriseWithdrawal.getEnterpriseType() == 1) { tEnterpriseWithdrawal.setAccountType(2); } try { String depositBank = tEnterpriseWithdrawal.getDepositBank(); TBankNext tBankNext = bankNextService.selectById(depositBank); tEnterpriseWithdrawal.setBankCode(tBankNext.getDrecCode()); tEnterpriseWithdrawal.setBankBranchCode(tBankNext.getBankCode()); tEnterpriseWithdrawal.setCopy1(itImgMidService.selectOne(new EntityWrapper().eq("url", tEnterpriseWithdrawal.getBusinessLicense())).getMid()); tEnterpriseWithdrawal.setCopy2(itImgMidService.selectOne(new EntityWrapper().eq("url", tEnterpriseWithdrawal.getCorporateIdCardFrontPicture())).getMid()); tEnterpriseWithdrawal.setCopy3(itImgMidService.selectOne(new EntityWrapper().eq("url", tEnterpriseWithdrawal.getCorporateIdCardReversePicture())).getMid()); System.out.println("----------" + "进件gogogo" + "----------"); tEnterpriseWithdrawal.setTransactionAuthorizationCode(Base64Util.encode(tEnterpriseWithdrawal.getTransactionAuthorizationCode())); tEnterpriseWithdrawal.setBusinessLicense(tEnterpriseWithdrawal.getBusinessLicense()); tEnterpriseWithdrawal.setCorporateIdCardFrontPicture(tEnterpriseWithdrawal.getCorporateIdCardFrontPicture()); tEnterpriseWithdrawal.setCorporateIdCardReversePicture(tEnterpriseWithdrawal.getCorporateIdCardReversePicture()); tEnterpriseWithdrawal.setApplicationStatus("auditing"); tEnterpriseWithdrawalService.insert(tEnterpriseWithdrawal); return SUCCESS_TIP; } catch (Exception e) { e.printStackTrace(); return ERROR; } } /** * 删除 */ @RequestMapping(value = "/delete") @ResponseBody public Object delete(@RequestParam Integer tEnterpriseWithdrawalId) { tEnterpriseWithdrawalService.deleteById(tEnterpriseWithdrawalId); return SUCCESS_TIP; } /** * 修改 */ @RequestMapping(value = "/update") @ResponseBody public Object update(TEnterpriseWithdrawal tEnterpriseWithdrawal, Integer accountType, String businessExpireTimeOne, String unifiedSocialCreditCodeExpireTimeOne, String certificateExpireTimeOne) { tEnterpriseWithdrawal.setIsAudit(1); tEnterpriseWithdrawal.setAccountType(accountType); if (tEnterpriseWithdrawal.getEnterpriseType() == 1) { tEnterpriseWithdrawal.setAccountType(2); } if (ToolUtil.isNotEmpty(businessExpireTimeOne)) { tEnterpriseWithdrawal.setBusinessExpireTime(tEnterpriseWithdrawal.getBusinessExpireTime() + "," + businessExpireTimeOne); } else { tEnterpriseWithdrawal.setBusinessExpireTime(tEnterpriseWithdrawal.getBusinessExpireTime() + ",长期"); } if (ToolUtil.isNotEmpty(unifiedSocialCreditCodeExpireTimeOne)) { tEnterpriseWithdrawal.setUnifiedSocialCreditCodeExpireTime(tEnterpriseWithdrawal.getUnifiedSocialCreditCodeExpireTime() + "," + unifiedSocialCreditCodeExpireTimeOne); } else { tEnterpriseWithdrawal.setUnifiedSocialCreditCodeExpireTime(tEnterpriseWithdrawal.getUnifiedSocialCreditCodeExpireTime() + ",长期"); } if (ToolUtil.isNotEmpty(certificateExpireTimeOne)) { tEnterpriseWithdrawal.setCertificateExpireTime(tEnterpriseWithdrawal.getCertificateExpireTime() + "," + certificateExpireTimeOne); } else { tEnterpriseWithdrawal.setCertificateExpireTime(tEnterpriseWithdrawal.getCertificateExpireTime() + ",长期"); } try { TEnterpriseWithdrawal enterpriseWithdrawal = tEnterpriseWithdrawalService.selectById(tEnterpriseWithdrawal.getId()); if (enterpriseWithdrawal.getMchId() != null) { tEnterpriseWithdrawal.setMchId(enterpriseWithdrawal.getMchId()); } tEnterpriseWithdrawal.setOutRequestNo(ToolUtil.getRandomString(32)); String copy1 = tEnterpriseWithdrawalService.getmid(tEnterpriseWithdrawal.getCorporateIdCardFrontPicture()); String copy2 = tEnterpriseWithdrawalService.getmid(tEnterpriseWithdrawal.getCorporateIdCardReversePicture()); String copy3 = tEnterpriseWithdrawalService.getmid(tEnterpriseWithdrawal.getBusinessLicense()); tEnterpriseWithdrawal.setCopy1(copy3); tEnterpriseWithdrawal.setCopy2(copy1); tEnterpriseWithdrawal.setCopy3(copy2); tEnterpriseWithdrawal.setBankBranchCode(tEnterpriseWithdrawal.getBankBranchCode()); String depositBank = tEnterpriseWithdrawal.getDepositBank(); TBankNext tBankNext = bankNextService.selectById(depositBank); tEnterpriseWithdrawal.setBankCode(tBankNext.getDrecCode()); tEnterpriseWithdrawal.setBankBranchCode(tBankNext.getBankCode()); tEnterpriseWithdrawalService.updateById(tEnterpriseWithdrawal); return SUCCESS_TIP; } catch (Exception e) { e.printStackTrace(); return ERROR; } } /** * 详情 */ @RequestMapping(value = "/detail/{tEnterpriseWithdrawalId}") @ResponseBody public Object detail(@PathVariable("tEnterpriseWithdrawalId") Integer tEnterpriseWithdrawalId) { return tEnterpriseWithdrawalService.selectById(tEnterpriseWithdrawalId); } }