| | |
| | | package com.doumee.service.business.impl; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.io.File; |
| | | import java.io.IOException; |
| | | import java.lang.reflect.Array; |
| | | import java.net.URI; |
| | | import java.net.URLEncoder; |
| | | import java.util.*; |
| | | |
| | | /** |
| | |
| | | companySolutionJoinMapper.delete(new UpdateWrapper<CompanySolution>().lambda().eq(CompanySolution::getCompanyId,company.getId())); |
| | | //处理关联方案 |
| | | dealSolutionsData(company); |
| | | } |
| | | @Transactional |
| | | public void exportFiles(Integer id, HttpServletResponse response){ |
| | | try { |
| | | Company model = companyMapper.selectById(id); |
| | | if(model == null){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY); |
| | | } |
| | | List<File> fileList = new ArrayList<>(); |
| | | List<Multifile> multifileList = multifileMapper.selectList(new QueryWrapper<Multifile>().lambda() |
| | | .eq(Multifile::getObjId,id) |
| | | .isNotNull(Multifile::getFileurl) |
| | | .in(Multifile::getObjType, Arrays.asList(new Integer[]{ |
| | | Constants.MultiFile.COM_BUSINESS_LICENSE.getKey(), |
| | | Constants.MultiFile.COM_IDCARD_IMG.getKey(), |
| | | })) |
| | | ); |
| | | if(multifileList== null || multifileList.size() == 0){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY); |
| | | } |
| | | String path = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode()+systemDictDataBiz.queryByCode(Constants.OSS,Constants.COMPANY_FILE).getCode(); |
| | | for(Multifile l : multifileList){ |
| | | File f = Constants.getFileByNetFile(path + l.getFileurl(),StringUtils.defaultString(l.getName(),"未命名")); |
| | | if(f !=null && f.isFile()){ |
| | | fileList.add(f); |
| | | } |
| | | } |
| | | if(fileList == null || fileList.size() == 0){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY); |
| | | } |
| | | String fileName = model.getName() +"_企业证件_"+System.currentTimeMillis()+".zip" ; |
| | | String encodeFileName = URLEncoder.encode(fileName); |
| | | response.setHeader("Content-Disposition","attachment;filename=" + encodeFileName); |
| | | response.setContentType("application/octet-stream"); |
| | | response.setHeader("eva-opera-type", "download"); |
| | | response.setHeader("eva-download-filename", encodeFileName); |
| | | Constants. packFilesToZip(fileList,response.getOutputStream()); |
| | | } catch (IOException e) { |
| | | throw new BusinessException(ResponseStatus.EXPORT_EXCEL_ERROR, e); |
| | | } |
| | | } |
| | | |
| | | private void dealSystemUserData(Company company) { |
| | |
| | | company.setSignId(""); |
| | | } |
| | | if(company.getIdcardImgList()!=null && company.getIdcardImgList()!=null){ |
| | | boolean isNew = false; |
| | | for(Multifile f : company.getIdcardImgList()){ |
| | | if(f.getId() !=null){ |
| | | continue; |
| | | } |
| | | isNew = true; |
| | | multifileList.add(initMultiFileByCompay(company,f,Constants.MultiFile.COM_IDCARD_IMG.getKey())); |
| | | } |
| | | objList.add(Constants.MultiFile.COM_IDCARD_IMG.getKey()); |
| | | if(isNew) |
| | | objList.add(Constants.MultiFile.COM_IDCARD_IMG.getKey()); |
| | | } |
| | | if(objList.size()>0){ |
| | | multifileMapper.update(null,new UpdateWrapper<Multifile>().lambda() |
| | |
| | | } |
| | | private void isValidUpdateParam(Company company) { |
| | | if( StringUtils.isBlank(company.getName()) |
| | | ||StringUtils.isBlank(company.getUsername()) |
| | | // ||StringUtils.isBlank(company.getUsername()) |
| | | ||StringUtils.isBlank(company.getCode()) |
| | | ||StringUtils.isBlank(company.getCaptche()) |
| | | ||StringUtils.isBlank(company.getLegalName()) |
| | | ||StringUtils.isBlank(company.getEmail()) ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | |
| | | dealFileDataForUpdate(company); |
| | | |
| | | Company update = new Company(); |
| | | update.setIsdeleted(company.getId()); |
| | | update.setName(company.getName()); |
| | | update.setCode(company.getCode()); |
| | | update.setEditDate(new Date()); |
| | |
| | | update.setTaxCode(company.getTaxCode()); |
| | | update.setTaxBank(company.getTaxBank()); |
| | | update.setEmail(company.getEmail()); |
| | | update.setId(model.getId()); |
| | | update.setLegalName(company.getLegalName()); |
| | | update.setInvoiceAddr(company.getInvoiceAddr()); |
| | | update.setSignIdStatus(company.getSignIdStatus()); |
| | | update.setInvoiceEmail(company.getInvoiceEmail()); |
| | |
| | | //如果邮箱发生改变 |
| | | update.setSignStatus(Constants.ZERO); |
| | | } |
| | | companyMapper.updateById(company); |
| | | companyMapper.updateById(update); |
| | | company.setCreator(update.getEditor()); |
| | | company.setCreateDate(update.getEditDate()); |
| | | if(StringUtils.isNotBlank(company.getUsername())){ |
| | |
| | | * public boolean organizationCreate (String fullname,String creditCode,String legalName,String email,File businessimg,String notifyUrl){ |
| | | */ |
| | | @Override |
| | | @Async |
| | | public void startSignAuth(Integer id){ |
| | | Company company = companyMapper.selectById(id); |
| | | Multifile f = multifileMapper.selectOne(new QueryWrapper<Multifile>().lambda() |