| | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.common.utils.StringUtils; |
| | | import com.ruoyi.system.dto.EditCompanyDto; |
| | | import com.ruoyi.system.dto.PushCompanyDto; |
| | | import com.ruoyi.system.mapper.TbCompanyMapper; |
| | | import com.ruoyi.system.mapper.TbOpeningBankMapper; |
| | | import com.ruoyi.system.model.TbCompany; |
| | | import com.ruoyi.system.model.TbIndustry; |
| | | import com.ruoyi.system.model.TbOpeningBank; |
| | | import com.ruoyi.system.model.TbPermit; |
| | | import com.ruoyi.system.model.*; |
| | | import com.ruoyi.system.query.CompanyListQuery; |
| | | import com.ruoyi.system.query.MyPushCompanyListQuery; |
| | | import com.ruoyi.system.service.TbCompanyService; |
| | | import com.ruoyi.system.service.TbIndustryService; |
| | | import com.ruoyi.system.service.TbOpeningBankService; |
| | | import com.ruoyi.system.service.TbPermitService; |
| | | import com.ruoyi.system.service.*; |
| | | import com.ruoyi.system.vo.CompanyDetailVo; |
| | | import com.ruoyi.system.vo.CustomerInfoVo; |
| | | import com.ruoyi.system.vo.IndexCompanyListVo; |
| | | import com.ruoyi.system.vo.MyPushCompanyListVo; |
| | | import org.apache.poi.ss.formula.functions.T; |
| | | import org.checkerframework.checker.units.qual.A; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | |
| | | @Autowired |
| | | private TbOpeningBankService openingBankService; |
| | | |
| | | @Autowired |
| | | private TbOrderService orderService; |
| | | |
| | | @Autowired |
| | | private TbScheduleService scheduleService; |
| | | |
| | | @Autowired |
| | | private TbBuyerCompanyInfoService buyerCompanyInfoService; |
| | | |
| | | @Autowired |
| | | private TbUserService userService; |
| | | |
| | | @Override |
| | | public Page<IndexCompanyListVo> getCompanyList(CompanyListQuery query, Long userId) { |
| | |
| | | Page<MyPushCompanyListVo> page = new Page<>(query.getPageNum(), query.getPageSize()); |
| | | return this.baseMapper.getMyPushCompanyList(page,query,userId); |
| | | } |
| | | |
| | | @Override |
| | | public CompanyDetailVo companyDetail(String companyId, Long userId) { |
| | | CompanyDetailVo companyDetailVo = new CompanyDetailVo(); |
| | | TbCompany tbCompany = this.baseMapper.selectById(companyId); |
| | | BeanUtils.copyProperties(tbCompany, companyDetailVo); |
| | | |
| | | TbIndustry industry = industryService.getById(tbCompany.getCompanyIndustryId()); |
| | | companyDetailVo.setCompanyIndustryName(industry.getName()); |
| | | |
| | | List<TbPermit> list = permitService.list(new LambdaQueryWrapper<TbPermit>().eq(TbPermit::getCompanyId, companyId)); |
| | | companyDetailVo.setPermits(list); |
| | | |
| | | List<TbOpeningBank> list1 = openingBankService.list(new LambdaQueryWrapper<TbOpeningBank>().eq(TbOpeningBank::getCompanyId, companyId)); |
| | | companyDetailVo.setOpeningBanks(list1); |
| | | |
| | | // 当前未产生订单 |
| | | if (tbCompany.getStatus() == 1) { |
| | | return companyDetailVo; |
| | | } |
| | | |
| | | TbOrder order = orderService.getOne(new LambdaQueryWrapper<TbOrder>().eq(TbOrder::getCompanyId, companyId).gt(TbOrder::getStatus, 0).orderByDesc(TbOrder::getCreateTime).last("limit 1")); |
| | | companyDetailVo.setStatus(order.getStatus()); |
| | | |
| | | List<TbSchedule> list2 = scheduleService.list(new LambdaQueryWrapper<TbSchedule>().eq(TbSchedule::getOrderId, order.getId()).orderByDesc(TbSchedule::getCreateTime)); |
| | | List<TbSchedule> collect = list2.stream().filter(e -> StringUtils.isEmpty(e.getParentId())).collect(Collectors.toList()); |
| | | for (TbSchedule tbSchedule : collect) { |
| | | List<TbSchedule> collect1 = list2.stream().filter(e -> StringUtils.isNotEmpty(e.getParentId()) && e.getParentId().equals(tbSchedule.getId())).collect(Collectors.toList()); |
| | | tbSchedule.setSchedules(collect1); |
| | | } |
| | | companyDetailVo.setSchedules(collect); |
| | | companyDetailVo.setPayTime(order.getPayTime()); |
| | | companyDetailVo.setConfirmTime(order.getConfirmTime()); |
| | | |
| | | TbBuyerCompanyInfo one = buyerCompanyInfoService.getOne(new LambdaQueryWrapper<TbBuyerCompanyInfo>().eq(TbBuyerCompanyInfo::getOrderId, order.getId())); |
| | | CustomerInfoVo customerInfoVo = new CustomerInfoVo(); |
| | | BeanUtils.copyProperties(one, customerInfoVo); |
| | | companyDetailVo.setCustomerInfoVo(customerInfoVo); |
| | | companyDetailVo.setEstimatedRevenue(order.getPrice().subtract(order.getCommissionPrice()).subtract(order.getCommissionPlatform())); |
| | | |
| | | TbUser user = userService.getById(order.getUserId()); |
| | | companyDetailVo.setCustomerName(user.getUserName()); |
| | | |
| | | return companyDetailVo; |
| | | } |
| | | } |