|  |  |  | 
|---|
|  |  |  | private SystemDictDataBiz systemDictDataBiz; | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public Integer create(Brand brand) { | 
|---|
|  |  |  | if(StringUtils.isBlank(brand.getName())){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.BAD_REQUEST); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); | 
|---|
|  |  |  | if(brandMapper.selectCount(new QueryWrapper<Brand>() | 
|---|
|  |  |  | .eq("ISDELETED",Constants.ZERO) | 
|---|
|  |  |  | .eq(user.getType().equals(Constants.UserType.SYSTEM.getKey()),"name",brand.getName()) | 
|---|
|  |  |  | .and(user.getType().equals(Constants.UserType.SYSTEM.getKey()), wapper->wapper.lambda().eq(Brand::getType,Constants.ONE).eq(Brand::getName,brand.getName())) | 
|---|
|  |  |  | //               .eq(user.getType().equals(Constants.UserType.SYSTEM.getKey()),"name",brand.getName()) | 
|---|
|  |  |  | .and(user.getType().equals(Constants.UserType.COMPANY.getKey()), | 
|---|
|  |  |  | i->i.apply(" name = '"+brand.getName()+"' and type = 1 ") | 
|---|
|  |  |  | .or().apply( "  name = '"+brand.getName()+"' and COMPANY_ID = '"+user.getCompanyId()+"' and type = 0 ") | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | )>0){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"【"+brand.getName()+"】已存在"); | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(Constants.equalsInteger(user.getType(), Constants.UserType.SYSTEM.getKey())){ | 
|---|
|  |  |  | //平台品牌 | 
|---|
|  |  |  | brand.setType(Constants.ONE); | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | brand.setType(Constants.ZERO); | 
|---|
|  |  |  | brand.setCompanyId(user.getCompanyId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | brand.setStatus(Constants.ZERO); | 
|---|
|  |  |  | brand.setCreateDate(new Date()); | 
|---|
|  |  |  | brand.setCreator(user.getId()); | 
|---|
|  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public void updateById(Brand brand) { | 
|---|
|  |  |  | LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); | 
|---|
|  |  |  | if(brandMapper.selectCount(new QueryWrapper<Brand>() | 
|---|
|  |  |  | .eq("ISDELETED",Constants.ZERO) | 
|---|
|  |  |  | .eq(user.getType().equals(Constants.UserType.SYSTEM.getKey()),"name",brand.getName()) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | Brand brand1 = brandMapper.selectOne(new QueryWrapper<Brand>() | 
|---|
|  |  |  | .eq("ISDELETED", Constants.ZERO) | 
|---|
|  |  |  | .and(user.getType().equals(Constants.UserType.SYSTEM.getKey()), wapper->wapper.lambda().eq(Brand::getType,Constants.ONE).eq(Brand::getName,brand.getName())) | 
|---|
|  |  |  | //              .eq(user.getType().equals(Constants.UserType.SYSTEM.getKey()), "name", brand.getName()) | 
|---|
|  |  |  | .and(user.getType().equals(Constants.UserType.COMPANY.getKey()), | 
|---|
|  |  |  | i->i.apply(" name = '"+brand.getName()+"' and type = 1 ") | 
|---|
|  |  |  | .or().apply( "  name = '"+brand.getName()+"' and COMPANY_ID = '"+user.getCompanyId()+"' and type = 0 ") | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | )>0){ | 
|---|
|  |  |  | i -> i.apply(" name = '" + brand.getName() + "' and type = 1 ") | 
|---|
|  |  |  | .or().apply("  name = '" + brand.getName() + "' and COMPANY_ID = '" + user.getCompanyId() + "' and type = 0 ") | 
|---|
|  |  |  | ).last("limit 1") | 
|---|
|  |  |  | ); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if(Objects.nonNull(brand1) && (!brand.getId().equals(brand.getId()))){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"【"+brand.getName()+"】已存在"); | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | brand.setType(null); | 
|---|
|  |  |  | brand.setCompanyId(null); | 
|---|
|  |  |  | brand.setStatus(Constants.ZERO); | 
|---|
|  |  |  | brand.setEditDate(new Date()); | 
|---|
|  |  |  | brand.setEditor(user.getId()); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public Brand findById(Integer id) { | 
|---|
|  |  |  | String prefixUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.FILE_DIR).getCode() | 
|---|
|  |  |  | + systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.PROJECTS).getCode(); | 
|---|
|  |  |  | Brand brand = brandMapper.selectById(id); | 
|---|
|  |  |  | brand.setImgfullurl(prefixUrl+brand.getImgurl()); | 
|---|
|  |  |  | if(StringUtils.isNotBlank(brand.getImgurl())){ | 
|---|
|  |  |  | String prefixUrl = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode() | 
|---|
|  |  |  | + systemDictDataBiz.queryByCode(Constants.OSS, Constants.BRAND_IMG).getCode(); | 
|---|
|  |  |  | brand.setImgfullurl(prefixUrl+brand.getImgurl()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return brand; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); | 
|---|
|  |  |  | QueryWrapper<Brand> wrapper = new QueryWrapper<>(brand); | 
|---|
|  |  |  | wrapper.lambda().eq(Brand::getIsdeleted,Constants.ZERO); | 
|---|
|  |  |  | wrapper.lambda().eq(Brand::getStatus,Constants.ZERO); | 
|---|
|  |  |  | //        wrapper.lambda().eq(Brand::getStatus,Constants.ZERO); | 
|---|
|  |  |  | wrapper.lambda().orderByAsc(Brand::getType); | 
|---|
|  |  |  | wrapper.lambda().orderByAsc(Brand::getSortnum); | 
|---|
|  |  |  | // 类型 0企业 1平台 | 
|---|
|  |  |  | if (Objects.isNull(user.getCompanyId())) { | 
|---|
|  |  |  | if (Constants.equalsInteger(user.getType(), Constants.UserType.SYSTEM.getKey())) { | 
|---|
|  |  |  | wrapper.lambda().eq(Brand::getType,Constants.ONE); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | wrapper.lambda().eq(Brand::getType,brand.getCompanyId()) | 
|---|
|  |  |  | .or().eq(Brand::getType,Constants.ZERO); | 
|---|
|  |  |  | wrapper.lambda().exists(!Objects.isNull(brand.getCategoryId())," select 1 from goods g where g.brand_id = brand.id and g.category_id = "+brand.getCategoryId()+" and  g.COMPANY_ID = "+user.getCompanyId()+" " + | 
|---|
|  |  |  | " and g.STATUS = 0 and g.ISDELETED = 0  "); | 
|---|
|  |  |  | wrapper.lambda().and(i->i.eq(Brand::getCompanyId,user.getCompanyId()) | 
|---|
|  |  |  | .or().eq(Brand::getType,Constants.ONE) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | List<Brand> list = brandMapper.selectList(wrapper); | 
|---|
|  |  |  | String prefixUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.FILE_DIR).getCode() | 
|---|
|  |  |  | + systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.PROJECTS).getCode(); | 
|---|
|  |  |  | String prefixUrl = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode() | 
|---|
|  |  |  | + systemDictDataBiz.queryByCode(Constants.OSS, Constants.BRAND_IMG).getCode(); | 
|---|
|  |  |  | for (Brand b:list) { | 
|---|
|  |  |  | b.setImgfullurl(prefixUrl+b.getImgurl()); | 
|---|
|  |  |  | if(StringUtils.isNotBlank(b.getImgurl())){ | 
|---|
|  |  |  | b.setImgfullurl(prefixUrl+b.getImgurl()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return list; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | if (pageWrap.getModel().getStatus() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(Brand::getStatus, pageWrap.getModel().getStatus()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getType() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(Brand::getType, pageWrap.getModel().getType()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // 类型 0企业 1平台 | 
|---|
|  |  |  | if (Objects.isNull(user.getCompanyId())) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(Brand::getType,Constants.ONE); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | queryWrapper.lambda().eq(Brand::getType,pageWrap.getModel().getCompanyId()) | 
|---|
|  |  |  | .or().eq(Brand::getType,Constants.ZERO); | 
|---|
|  |  |  | queryWrapper.lambda().and(i->i.eq(Brand::getCompanyId,user.getCompanyId()) | 
|---|
|  |  |  | .or().eq(Brand::getType,Constants.ONE) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | queryWrapper.lambda().orderByAsc(Brand::getType); | 
|---|
|  |  |  | queryWrapper.lambda().orderByAsc(Brand::getSortnum); | 
|---|
|  |  |  | IPage<Brand> brandIPage = brandMapper.selectPage(page, queryWrapper); | 
|---|
|  |  |  | String prefixUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.FILE_DIR).getCode() | 
|---|
|  |  |  | + systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.PROJECTS).getCode(); | 
|---|
|  |  |  | String prefixUrl = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode() | 
|---|
|  |  |  | + systemDictDataBiz.queryByCode(Constants.OSS, Constants.BRAND_IMG).getCode(); | 
|---|
|  |  |  | brandIPage.getRecords().forEach(i->{ | 
|---|
|  |  |  | i.setImgfullurl(prefixUrl+i.getImgurl()); | 
|---|
|  |  |  | if(StringUtils.isNotBlank(i.getImgurl())){ | 
|---|
|  |  |  | i.setImgfullurl(prefixUrl+i.getImgurl()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | return PageData.from(brandIPage); | 
|---|
|  |  |  | } | 
|---|