Search in sources :

Example 31 with TaxRegisterCert

use of com.itrus.portal.db.TaxRegisterCert in project portal by ixinportal.

the class TaxCertServiceImpl method saveTaxCertExtraBill.

/**
 * 增值订单保存税务登记证
 * @param enterpriseId
 * @param enterpriseSn
 * @param billId
 * @param userInfoId
 * @param taxRegisterCert
 * @param itemStatus
 * @param old
 * @return
 * @throws Exception
 */
public TaxRegisterCert saveTaxCertExtraBill(Long enterpriseId, String enterpriseSn, Long billId, Long userInfoId, TaxRegisterCert taxRegisterCert, Integer itemStatus, TaxRegisterCert old) throws Exception {
    File imgDir = filePathUtils.getEnterpriseFile(enterpriseSn);
    // 判断税务登记证图片是否重新上传了,没有重新上传,则会提交税务登记证的id,重新上传,还是按照下面的方法处理
    if (null != taxRegisterCert.getId()) {
        TaxRegisterCert newTax = new TaxRegisterCert();
        TaxRegisterCert oldTax = sqlSession.selectOne("com.itrus.portal.db.TaxRegisterCertMapper.selectByPrimaryKey", taxRegisterCert.getId());
        newTax.setEnterpriseName(taxRegisterCert.getEnterpriseName());
        newTax.setCertNo(taxRegisterCert.getCertNo());
        newTax.setCreateTime(new Date());
        newTax.setLastModify(new Date());
        newTax.setEnterprise(enterpriseId);
        newTax.setExtraBill(billId);
        newTax.setUserInfo(userInfoId);
        // 审核状态:1未审核,2已审核,3已拒绝
        newTax.setItemStatus(oldTax.getItemStatus());
        if (StringUtils.isNotBlank(taxRegisterCert.getImgFile())) {
            File liceImg = filePathUtils.saveImg(imgDir, null, taxRegisterCert.getImgFile(), IMG_DEFAULT_TYPE, IMG_NAME_TAX);
            if (liceImg != null && liceImg.isFile()) {
                newTax.setImgFile(liceImg.getName());
                newTax.setImgFileHash(HMACSHA1.genSha1HashOfFile(liceImg));
            }
        } else {
            newTax.setImgFile(oldTax.getImgFile());
            newTax.setImgFileHash(oldTax.getImgFileHash());
        }
        sqlSession.insert("com.itrus.portal.db.TaxRegisterCertMapper.insert", newTax);
        sqlSession.flushStatements();
        return newTax;
    }
    if (null == taxRegisterCert || StringUtils.isBlank(taxRegisterCert.getEnterpriseName()) || StringUtils.isBlank(taxRegisterCert.getCertNo())) {
        throw new UserInfoServiceException("请提交完整的税务登记证信息");
    }
    taxRegisterCert.setCreateTime(new Date());
    taxRegisterCert.setLastModify(new Date());
    taxRegisterCert.setEnterprise(enterpriseId);
    taxRegisterCert.setExtraBill(billId);
    taxRegisterCert.setUserInfo(userInfoId);
    // 审核状态:1未审核,2已审核,3已拒绝
    taxRegisterCert.setItemStatus(itemStatus);
    if (StringUtils.isNotBlank(taxRegisterCert.getImgFile()) && !ComNames.USE_OLD_IMG.equals(taxRegisterCert.getImgFile())) {
        File liceImg = filePathUtils.saveImg(imgDir, null, taxRegisterCert.getImgFile(), IMG_DEFAULT_TYPE, IMG_NAME_TAX);
        if (liceImg != null && liceImg.isFile()) {
            taxRegisterCert.setImgFile(liceImg.getName());
            taxRegisterCert.setImgFileHash(HMACSHA1.genSha1HashOfFile(liceImg));
        }
    }
    if (old == null) {
        sqlSession.insert("com.itrus.portal.db.TaxRegisterCertMapper.insert", taxRegisterCert);
    } else {
        taxRegisterCert.setId(old.getId());
        sqlSession.update("com.itrus.portal.db.TaxRegisterCertMapper.updateByPrimaryKeySelective", taxRegisterCert);
    }
    sqlSession.flushStatements();
    return taxRegisterCert;
}
Also used : File(java.io.File) TaxRegisterCert(com.itrus.portal.db.TaxRegisterCert) Date(java.util.Date) UserInfoServiceException(com.itrus.portal.exception.UserInfoServiceException)

Example 32 with TaxRegisterCert

use of com.itrus.portal.db.TaxRegisterCert in project portal by ixinportal.

the class TaxCertServiceImpl method getTaxRegisterCertsNews.

/**
 * 根据企业名称查找税务登记信息,按生成时间降序排序
 *
 * @param enterpriseId
 * @return
 */
public List<TaxRegisterCert> getTaxRegisterCertsNews(Long enterpriseId) {
    List<TaxRegisterCert> taxRegisterCerts = new ArrayList<TaxRegisterCert>();
    TaxRegisterCertExample example = new TaxRegisterCertExample();
    example.setOrderByClause("create_time DESC");
    TaxRegisterCertExample.Criteria criteria = example.or();
    criteria.andEnterpriseEqualTo(enterpriseId);
    taxRegisterCerts = sqlSession.selectList("com.itrus.portal.db.TaxRegisterCertMapper.selectByExample", example);
    return taxRegisterCerts;
}
Also used : ArrayList(java.util.ArrayList) TaxRegisterCertExample(com.itrus.portal.db.TaxRegisterCertExample) TaxRegisterCert(com.itrus.portal.db.TaxRegisterCert)

Example 33 with TaxRegisterCert

use of com.itrus.portal.db.TaxRegisterCert in project portal by ixinportal.

the class TaxCertServiceImpl method updateTaxCert.

/**
 * 修改登记证照片
 *
 * @param t_Id
 * @param enterpriseSn
 * @param taxRegisterCert
 * @return
 * @throws Exception
 */
public TaxRegisterCert updateTaxCert(Long t_Id, String enterpriseSn, TaxRegisterCert taxRegisterCert) throws Exception {
    if (null == taxRegisterCert) {
        return null;
    }
    taxRegisterCert.setId(t_Id);
    TaxRegisterCert taxRegisterCert1 = sqlSession.selectOne("com.itrus.portal.db.TaxRegisterCertMapper.selectByPrimaryKey", t_Id);
    File imgDir = filePathUtils.getEnterpriseFile(enterpriseSn);
    if (StringUtils.isNotBlank(taxRegisterCert.getImgFile())) {
        FileUtils.deleteQuietly(new File(imgDir, taxRegisterCert1.getImgFile()));
        File liceImg = filePathUtils.saveImg(imgDir, null, taxRegisterCert.getImgFile(), IMG_DEFAULT_TYPE, IMG_NAME_TAX);
        if (liceImg != null && liceImg.isFile()) {
            taxRegisterCert.setImgFile(liceImg.getName());
            taxRegisterCert.setImgFileHash(HMACSHA1.genSha1HashOfFile(liceImg));
        }
    } else {
        taxRegisterCert.setImgFile(taxRegisterCert1.getImgFile());
    }
    sqlSession.update("com.itrus.portal.db.TaxRegisterCertMapper.updateByPrimaryKeySelective", taxRegisterCert);
    sqlSession.flushStatements();
    return taxRegisterCert;
}
Also used : File(java.io.File) TaxRegisterCert(com.itrus.portal.db.TaxRegisterCert)

Example 34 with TaxRegisterCert

use of com.itrus.portal.db.TaxRegisterCert in project portal by ixinportal.

the class TaxCertServiceImpl method portUpdateTaxCert.

/**
 * 税务登记证图片上传(接口)
 * @param billId
 * @param enterpriseSn
 * @param image
 * @return
 * @throws Exception
 */
public TaxRegisterCert portUpdateTaxCert(Long billId, String enterpriseSn, String image) throws Exception {
    TaxRegisterCert taxRegisterCert = this.getTaxRegisterCertByBillId(billId, null);
    if (null == taxRegisterCert) {
        return null;
    }
    File imgDir = filePathUtils.getEnterpriseFile(enterpriseSn);
    if (taxRegisterCert.getImgFile() != null) {
        FileUtils.deleteQuietly(new File(imgDir, taxRegisterCert.getImgFile()));
    }
    File liceImg = filePathUtils.saveImg(imgDir, null, image, IMG_DEFAULT_TYPE, IMG_NAME_TAX);
    if (liceImg != null && liceImg.isFile()) {
        taxRegisterCert.setImgFile(liceImg.getName());
        taxRegisterCert.setImgFileHash(HMACSHA1.genSha1HashOfFile(liceImg));
    }
    sqlSession.update("com.itrus.portal.db.TaxRegisterCertMapper.updateByPrimaryKeySelective", taxRegisterCert);
    sqlSession.flushStatements();
    return taxRegisterCert;
}
Also used : File(java.io.File) TaxRegisterCert(com.itrus.portal.db.TaxRegisterCert)

Example 35 with TaxRegisterCert

use of com.itrus.portal.db.TaxRegisterCert in project portal by ixinportal.

the class ReviewServiceImpl method agreeBillReview.

/**
 * pfx证书,当不要审核的时候,自动生成审核记录
 * @param bill
 */
public void agreeBillReview(Bill bill) {
    if (null == bill) {
        return;
    }
    // 填充营业执照运营时间
    Enterprise enterpriseInBill = enterpriseService.getEnterpriseByBillId(bill.getId());
    String soperationStart = null;
    String soperationEnd = null;
    List<BusinessLicense> oldBusinessLicenses = businessService.getBusinessLicensesNews(bill.getEnterprise());
    if (null != oldBusinessLicenses && !oldBusinessLicenses.isEmpty()) {
        for (BusinessLicense businessLicense1 : oldBusinessLicenses) {
            if (null != businessLicense1.getOperationStart() || null != businessLicense1.getOperationEnd()) {
                SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
                if (null != businessLicense1.getOperationStart()) {
                    soperationStart = format.format(businessLicense1.getOperationStart());
                }
                if (null != businessLicense1.getOperationEnd()) {
                    soperationEnd = format.format(businessLicense1.getOperationEnd());
                }
                break;
            }
        }
    }
    Product product = sqlSession.selectOne("com.itrus.portal.db.ProductMapper.selectByPrimaryKey", bill.getProduct());
    DigitalCert cert = sqlSession.selectOne("com.itrus.portal.db.DigitalCertMapper.selectByPrimaryKey", product.getCert());
    Certification certification = sqlSession.selectOne("com.itrus.portal.db.CertificationMapper.selectByPrimaryKey", product.getAuthentication());
    Project project = billService.getProjectByBillId(bill.getId());
    BusinessLicense businessLicense = businessService.getBusinessByBillId(bill.getId(), null);
    OrgCode orgCode = orgCodeService.getOrgCodeByBillId(bill.getId(), null);
    TaxRegisterCert taxregisterCert = taxCertService.getTaxRegisterCertByBillId(bill.getId(), null);
    IdentityCard identityCard = identityCardService.getIdentityCardByBillId(bill.getId(), null);
    Agent agent = agentService.getAgentByBillId(bill.getId(), null);
    Proxy proxy = proxyService.getProxyByBillId(bill.getId());
    // 更新管理员提交的认证项资料信息
    DefaultTransactionDefinition def = new DefaultTransactionDefinition();
    def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED);
    TransactionStatus status = transactionManager.getTransaction(def);
    try {
        Long businessId = null;
        Long orgCodeId = null;
        Long taxregisterId = null;
        Long identityCardId = null;
        Long agentId = null;
        Long proxyId = null;
        // 更新营业执照信息
        if (null != businessLicense && null != businessLicense.getId()) {
            businessLicense = businessService.updateBusinessLicense(soperationStart, soperationEnd, businessLicense, ComNames.ITEM_STATUS_2, bill.getEnterprise(), bill.getId(), bill.getUniqueId(), null);
            businessId = businessLicense.getId();
        }
        // 更新组织机构代码
        if (null != orgCode && null != orgCode.getId()) {
            orgCode = orgCodeService.updateOrgCode(orgCode, ComNames.ITEM_STATUS_2, bill.getEnterprise(), bill.getId(), bill.getUniqueId(), null);
            orgCodeId = orgCode.getId();
        }
        // 更新税务登记
        if (null != taxregisterCert && null != taxregisterCert.getId()) {
            taxregisterCert = taxCertService.updateTaxRegisterCert(taxregisterCert, ComNames.ITEM_STATUS_2, bill.getEnterprise(), bill.getId(), bill.getUniqueId(), null);
            taxregisterId = taxregisterCert.getId();
        }
        // 更新法定代表人
        if (null != identityCard && null != identityCard.getId()) {
            identityCard = identityCardService.updateIdentityCard(identityCard, ComNames.ITEM_STATUS_2, bill.getEnterprise(), bill.getId(), bill.getUniqueId(), null);
            identityCardId = identityCard.getId();
        }
        // 更新代理人
        if (null != agent && null != agent.getId()) {
            agent = agentService.updateAgent(agent, ComNames.ITEM_STATUS_2, bill.getEnterprise(), bill.getId(), bill.getUniqueId(), null);
            agentId = agent.getId();
        }
        // 更新授权书
        if (null != proxy && null != proxy.getId()) {
            proxy = proxyService.updateProxy(proxy, ComNames.ITEM_STATUS_2, bill.getEnterprise(), bill.getId(), bill.getUniqueId(), null, project);
            proxyId = proxy.getId();
        }
        // 设置第一个admin账号
        AdminExample adminExample = new AdminExample();
        adminExample.setOrderByClause("create_time ASC");
        List<Admin> admins = sqlSession.selectList("com.itrus.portal.db.AdminMapper.selectByExample", adminExample);
        // 更新企业信息
        Enterprise enterprise = enterpriseService.updateEnterprise(bill.getEnterprise(), certification.getId(), businessId, orgCodeId, taxregisterId, identityCardId, agentId);
        // 生成认证记录
        reviewLogService.saveReviewLog(2, admins.get(0).getId(), 1, null, bill.getEnterprise(), bill.getId(), bill.getUniqueId(), businessId, orgCodeId, taxregisterId, identityCardId, agentId, proxyId);
        bill.setCheckTime(new Date());
        sqlSession.update("com.itrus.portal.db.BillMapper.updateByPrimaryKey", bill);
        transactionManager.commit(status);
    } catch (Exception e) {
        e.printStackTrace();
    } finally {
        if (!status.isCompleted())
            transactionManager.rollback(status);
    }
}
Also used : Agent(com.itrus.portal.db.Agent) DefaultTransactionDefinition(org.springframework.transaction.support.DefaultTransactionDefinition) Product(com.itrus.portal.db.Product) TransactionStatus(org.springframework.transaction.TransactionStatus) Admin(com.itrus.portal.db.Admin) Certification(com.itrus.portal.db.Certification) Date(java.util.Date) ParseException(java.text.ParseException) UserInfoServiceException(com.itrus.portal.exception.UserInfoServiceException) DigitalCert(com.itrus.portal.db.DigitalCert) Project(com.itrus.portal.db.Project) OrgCode(com.itrus.portal.db.OrgCode) BusinessLicense(com.itrus.portal.db.BusinessLicense) Proxy(com.itrus.portal.db.Proxy) Enterprise(com.itrus.portal.db.Enterprise) SimpleDateFormat(java.text.SimpleDateFormat) AdminExample(com.itrus.portal.db.AdminExample) TaxRegisterCert(com.itrus.portal.db.TaxRegisterCert) IdentityCard(com.itrus.portal.db.IdentityCard)

Aggregations

TaxRegisterCert (com.itrus.portal.db.TaxRegisterCert)37 BusinessLicense (com.itrus.portal.db.BusinessLicense)30 Enterprise (com.itrus.portal.db.Enterprise)25 IdentityCard (com.itrus.portal.db.IdentityCard)24 OrgCode (com.itrus.portal.db.OrgCode)24 UserInfo (com.itrus.portal.db.UserInfo)20 Agent (com.itrus.portal.db.Agent)19 UserInfoServiceException (com.itrus.portal.exception.UserInfoServiceException)15 OpenBankInfo (com.itrus.portal.db.OpenBankInfo)13 HashMap (java.util.HashMap)13 ExtraProduct (com.itrus.portal.db.ExtraProduct)12 RequestMapping (org.springframework.web.bind.annotation.RequestMapping)12 Proxy (com.itrus.portal.db.Proxy)11 ExtraBill (com.itrus.portal.db.ExtraBill)10 File (java.io.File)10 Date (java.util.Date)9 TransactionStatus (org.springframework.transaction.TransactionStatus)9 DefaultTransactionDefinition (org.springframework.transaction.support.DefaultTransactionDefinition)9 Product (com.itrus.portal.db.Product)8 Project (com.itrus.portal.db.Project)8