From 8ebca068bb00e530ce44e10e7d009bcaa46c6579 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期五, 26 一月 2024 16:17:27 +0800 Subject: [PATCH] 开发业务接口 --- server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java | 103 +++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 87 insertions(+), 16 deletions(-) diff --git a/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java index 254ceb2..3d842ad 100644 --- a/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java +++ b/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java @@ -25,6 +25,7 @@ import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -43,6 +44,8 @@ @Service public class CompanyServiceImpl implements CompanyService { + @Value("${debug_model}") + private boolean debugModel; @Autowired private CompanyMapper companyMapper; @Autowired @@ -69,9 +72,10 @@ if(companyMapper.selectCount(new QueryWrapper<Company>().lambda() .eq(Company::getCode,company.getCode()) .or().eq(Company::getPhone,company.getPhone()) + .or().eq(Company::getEmail,company.getEmail()) .or().eq(Company::getUsername,company.getUsername()) .or().eq(Company::getName,company.getName()))>0){ - throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇ヤ紒涓氥�愬悕绉般�戙�愮粺涓�淇$敤浠g爜鎴栬�呫�愭墜鏈哄彿銆戝凡瀛樺湪锛岃纭鍚庨噸鏂版彁浜わ紒"); + throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇ヤ紒涓氥�愬悕绉般�戙�愮粺涓�淇$敤浠g爜銆戙�愰偖绠便�戞垨鑰呫�愭墜鏈哄彿銆戝凡瀛樺湪锛岃纭鍚庨噸鏂版彁浜わ紒"); } LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); company.setCreator(user.getId()); @@ -221,8 +225,11 @@ ||StringUtils.isBlank(company.getEmail())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } - //鎵嬫満楠岃瘉鐮佹牎楠� - SmsEmailServiceImpl.isCaptcheValide(smsEmailMapper,company.getPhone(),company.getCaptche()); + + if(!debugModel){ + //鎵嬫満楠岃瘉鐮佹牎楠� + SmsEmailServiceImpl.isCaptcheValide(smsEmailMapper,company.getPhone(),company.getCaptche()); + } } @@ -252,19 +259,25 @@ List<Multifile> multifileList = new ArrayList<>(); List<Integer> objList = new ArrayList<>(); - if(company.getBusinessImg()!=null && StringUtils.isNotBlank(company.getBusinessImg().getFileurl())){ + if(company.getBusinessImg()!=null && company.getBusinessImg().getId() ==null && StringUtils.isNotBlank(company.getBusinessImg().getFileurl())){ multifileList.add(initMultiFileByCompay(company,company.getBusinessImg(),Constants.MultiFile.COM_BUSINESS_LICENSE.getKey())); objList.add(Constants.MultiFile.COM_BUSINESS_LICENSE.getKey()); - }else { - throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"璇蜂笂浼犺惀涓氭墽鐓э紒"); } - if(company.getSignImg()!=null && StringUtils.isNotBlank(company.getSignImg().getFileurl())){ + if(company.getSignImg()!=null&& company.getSignImg().getId() ==null && StringUtils.isNotBlank(company.getSignImg().getFileurl())){ multifileList.add(initMultiFileByCompay(company,company.getSignImg(),Constants.MultiFile.COM_SING_IMG.getKey())); objList.add(Constants.MultiFile.COM_SING_IMG.getKey()); company.setSignIdStatus(Constants.ZERO);//鏍囪鐢靛瓙绛剧珷鏈笂浼� + if(StringUtils.isNotBlank(company.getSignId())){ + //鍒犻櫎鐜版湁鐨勭绔� + signService.deleteEntSign(company.getSignId()); + } + company.setSignId(""); } if(company.getIdcardImgList()!=null && company.getIdcardImgList()!=null){ for(Multifile f : company.getIdcardImgList()){ + if(f.getId() !=null){ + continue; + } multifileList.add(initMultiFileByCompay(company,f,Constants.MultiFile.COM_IDCARD_IMG.getKey())); } objList.add(Constants.MultiFile.COM_IDCARD_IMG.getKey()); @@ -329,7 +342,9 @@ || StringUtils.isBlank(company.getCaptche())){ throw new BusinessException(ResponseStatus.BAD_REQUEST ); } - SmsEmailServiceImpl.isCaptcheValide(smsEmailMapper,company.getPhone(),company.getCaptche()); + if(!debugModel){ + SmsEmailServiceImpl.isCaptcheValide(smsEmailMapper,company.getPhone(),company.getCaptche()); + } Company model = companyMapper.selectById(company.getId()); if(model == null || StringUtils.equals(model.getPhone(),company.getPhone()) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鎵嬫満鍙锋湭鍙戠敓鏀瑰彉~" ); @@ -393,13 +408,16 @@ if(companyMapper.selectCount(new QueryWrapper<Company>().lambda() .ne(Company::getId,company.getId()) .and(w->w.eq(Company::getCode,company.getCode()) + .or().eq(Company::getEmail,company.getEmail()) .or().eq(Company::getUsername,company.getUsername()) .or().eq(Company::getName,company.getName())) )>0){ - throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇ヤ紒涓氥�愬悕绉般�戙�愮粺涓�淇$敤浠g爜鎴栬�呫�愪紒涓氳处鍙枫�戝凡瀛樺湪锛岃纭鍚庨噸鏂版彁浜わ紒"); + throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇ヤ紒涓氥�愬悕绉般�戙�愮粺涓�淇$敤浠g爜銆戙�愰偖绠便�戞垨鑰呫�愪紒涓氳处鍙枫�戝凡瀛樺湪锛岃纭鍚庨噸鏂版彁浜わ紒"); } LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); - + if(Constants.equalsInteger(model.getSignIdStatus(),Constants.ONE)){ + company.setSignId(model.getSignId()); + } dealFileDataForUpdate(company); Company update = new Company(); @@ -417,7 +435,10 @@ update.setInvoiceAddr(company.getInvoiceAddr()); update.setSignIdStatus(company.getSignIdStatus()); update.setInvoiceEmail(company.getInvoiceEmail()); - if(StringUtils.isNotBlank(company.getEmail())){ + if(StringUtils.isNotBlank(company.getEmail()) + ||!StringUtils.equals(company.getName(),model.getName()) + ||!StringUtils.equals(company.getLegalName(),model.getLegalName()) + ||!StringUtils.equals(company.getCode(),model.getCode()) ){ //濡傛灉閭鍙戠敓鏀瑰彉 update.setSignStatus(Constants.ZERO); } @@ -444,7 +465,7 @@ @Override public Company findById(Integer id) { - Company model = findById(id); + Company model = companyMapper.selectById(id); if(model == null ||Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } @@ -518,6 +539,33 @@ //鏇存柊璁よ瘉鐘舵�� companyMapper.updateById(update); } + @Override + public void startSignAuthAuto( ){ + List<Company> companyList = companyMapper.selectList(new QueryWrapper<Company>().lambda() + .eq(Company::getIsdeleted,Constants.ZERO) + .eq(Company::getSignStatus,Constants.ZERO)); + if(companyList!=null && companyList.size()>0) { + for (Company company : companyList) { + Multifile f = multifileMapper.selectOne(new QueryWrapper<Multifile>().lambda() + .eq(Multifile::getIsdeleted,Constants.ZERO) + .eq(Multifile::getObjType,Constants.MultiFile.COM_BUSINESS_LICENSE.getKey()) + .eq(Multifile::getObjId,company.getId()) + .last("limit 1")); + if(f == null){ + return; + } + String path = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode()+systemDictDataBiz.queryByCode(Constants.OSS,Constants.COMPANY_FILE).getCode(); + boolean status = signService.organizationCreate(company.getName(),company.getCode(),company.getLegalName(),company.getEmail(), path + f.getFileurl(),null); + Company update = new Company(); + update.setId(company.getId()); + update.setSignStatus(status?Constants.ONE:Constants.TWO); + update.setSignDate(new Date()); + //鏇存柊璁よ瘉鐘舵�� + companyMapper.updateById(update); + } + } + + } /** * 鐢靛瓙绛捐璇� * public boolean organizationCreate (String fullname,String creditCode,String legalName,String email,File businessimg,String notifyUrl){ @@ -547,7 +595,6 @@ //鏇存柊璁よ瘉鐘舵�� companyMapper.updateById(update); } - } } @@ -561,7 +608,7 @@ public void dealSignIdStatus(){ List<Company> companyList = companyMapper.selectList(new QueryWrapper<Company>().lambda() .eq(Company::getIsdeleted,Constants.ZERO) - .eq(Company::getSignStatus,Constants.ONE) + .eq(Company::getSignStatus,Constants.THREE) .eq(Company::getSignIdStatus,Constants.ZERO)); if(companyList!=null && companyList.size()>0){ for(Company company :companyList){ @@ -594,12 +641,31 @@ } +// @Override +// public List<Company> findList(Company company) { +// QueryWrapper<Company> wrapper = new QueryWrapper<>(company); +// return companyMapper.selectList(wrapper); +// } +// @Override public List<Company> findList(Company company) { QueryWrapper<Company> wrapper = new QueryWrapper<>(company); + company.setIsdeleted(Constants.ZERO); + LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); + if(company.getQueryFlag() == 0){ + //鍙兘鐪嬫潈闄愯寖鍥村唴 + if(user.getCompanyIdList() == null || user.getCompanyIdList().size() == 0){ + wrapper.lambda().eq(Company::getId,-1);//璁剧疆鏃犳晥璁块棶 + }else { + wrapper.lambda().in(Company::getId, user.getCompanyIdList()); + } + } else if (company.getQueryFlag() == 1 && company.getUserId()!=null) { + //鏌ヨ鏄惁鏈夋煡鐪嬫瑠闄� + wrapper.select("*,(select count(1) from company_permission b where b.user_id="+company.getUserId()+" and b.isdeleted=0 and b.company_id=company.id) as hasPerimission"); + } return companyMapper.selectList(wrapper); } - + @Override public PageData<Company> findPage(PageWrap<Company> pageWrap) { IPage<Company> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); @@ -609,7 +675,12 @@ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(pageWrap.getModel().getQueryFlag() == 0){ //鍙兘鐪嬫潈闄愯寖鍥村唴 - queryWrapper.exists("select b.id from company_permission b where b.user_id="+user.getId()+" and b.isdeleted=0 and b.company_id=company.id"); + if(user.getCompanyIdList() == null || user.getCompanyIdList().size() == 0){ + queryWrapper.lambda().eq(Company::getId,-1);//璁剧疆鏃犳晥璁块棶 + }else { + queryWrapper.lambda().in(Company::getId, user.getCompanyIdList()); + } +// queryWrapper.exists("select b.id from company_permission b where b.user_id="+user.getId()+" and b.isdeleted=0 and b.company_id=company.id"); } else if (pageWrap.getModel().getQueryFlag() == 1) { //鏌ヨ鏄惁鏈夋煡鐪嬫瑠闄� queryWrapper.select("*,(select count(1) from company_permission b where b.user_id="+user.getId()+" and b.isdeleted=0 and b.company_id=company.id) as hasPerimission"); -- Gitblit v1.9.3