diff --git a/zsw-bxg/src/main/java/co/yixiang/modules/product/domain/YxStoreProduct.java b/zsw-bxg/src/main/java/co/yixiang/modules/product/domain/YxStoreProduct.java index 55e17047..7c7d278c 100644 --- a/zsw-bxg/src/main/java/co/yixiang/modules/product/domain/YxStoreProduct.java +++ b/zsw-bxg/src/main/java/co/yixiang/modules/product/domain/YxStoreProduct.java @@ -12,6 +12,7 @@ import co.yixiang.modules.category.domain.YxStoreCategory; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Builder; @@ -88,6 +89,9 @@ public class YxStoreProduct extends BaseDomain { @ApiModelProperty(value = "分类id") private String cateId; + /** 品牌id (默认无品牌)*/ + @JsonProperty("brand_id") + private String brandId; /** 商品价格 */ @ApiModelProperty(value = "商品价格") diff --git a/zsw-bxg/src/main/java/co/yixiang/modules/product/service/dto/StoreProductDto.java b/zsw-bxg/src/main/java/co/yixiang/modules/product/service/dto/StoreProductDto.java index 06e22bf5..c3e267dc 100644 --- a/zsw-bxg/src/main/java/co/yixiang/modules/product/service/dto/StoreProductDto.java +++ b/zsw-bxg/src/main/java/co/yixiang/modules/product/service/dto/StoreProductDto.java @@ -8,7 +8,6 @@ import lombok.ToString; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.util.List; -import java.util.Map; /** @@ -28,11 +27,11 @@ public class StoreProductDto /** 商品图片 */ - @NotBlank(message = "商品图片必传") +// @NotBlank(message = "商品图片必传") private String image; /** 轮播图 */ - @NotNull(message = "轮播图不为空") +// @NotNull(message = "轮播图不为空") @JsonProperty("slider_image") private List sliderImage; @@ -58,6 +57,10 @@ public class StoreProductDto @JsonProperty("cate_id") private String cateId; + /** 品牌id (默认无品牌)*/ + @JsonProperty("brand_id") + private String brandId; + /** 商品价格 */ private Double price; diff --git a/zsw-bxg/src/main/java/co/yixiang/modules/product/service/dto/YxStoreProductDto.java b/zsw-bxg/src/main/java/co/yixiang/modules/product/service/dto/YxStoreProductDto.java index c0d2645b..4475652f 100644 --- a/zsw-bxg/src/main/java/co/yixiang/modules/product/service/dto/YxStoreProductDto.java +++ b/zsw-bxg/src/main/java/co/yixiang/modules/product/service/dto/YxStoreProductDto.java @@ -46,6 +46,9 @@ public class YxStoreProductDto implements Serializable { /** 分类id */ private String cateId; + /** 品牌id */ + private String brandId; + /** 商品价格 */ private BigDecimal price; diff --git a/zsw-bxg/src/main/java/co/yixiang/modules/product/service/impl/YxStoreProductServiceImpl.java b/zsw-bxg/src/main/java/co/yixiang/modules/product/service/impl/YxStoreProductServiceImpl.java index 259d5b70..05d51c8c 100644 --- a/zsw-bxg/src/main/java/co/yixiang/modules/product/service/impl/YxStoreProductServiceImpl.java +++ b/zsw-bxg/src/main/java/co/yixiang/modules/product/service/impl/YxStoreProductServiceImpl.java @@ -539,7 +539,9 @@ public class YxStoreProductServiceImpl extends BaseServiceImpl> getYxStoreBrands(YxStoreBrandQueryCriteria criteria, Pageable pageable){ + return new ResponseEntity<>(yxStoreBrandService.queryAll(criteria,pageable),HttpStatus.OK); + } + + @PostMapping + @Log("新增brand") + @ApiOperation("新增brand") + @PreAuthorize("@ss.hasAnyPermissions('admin','yxStoreBrand:add')") + public ResponseEntity create(@Validated @RequestBody YxStoreBrand resources){ + return new ResponseEntity<>(yxStoreBrandService.save(resources),HttpStatus.CREATED); + } + + @PutMapping + @Log("修改brand") + @ApiOperation("修改brand") + @PreAuthorize("@ss.hasAnyPermissions('admin','yxStoreBrand:edit')") + public ResponseEntity update(@Validated @RequestBody YxStoreBrand resources){ + yxStoreBrandService.updateById(resources); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除brand") + @ApiOperation("删除brand") + @PreAuthorize("@ss.hasAnyPermissions('admin','yxStoreBrand:del')") + @DeleteMapping + public ResponseEntity deleteAll(@RequestBody Integer[] ids) { + Arrays.asList(ids).forEach(id->{ + yxStoreBrandService.removeById(id); + }); + return new ResponseEntity<>(HttpStatus.OK); + } +} diff --git a/zsw-bxg/src/main/java/co/yixiang/modules/store/service/YxStoreBrandService.java b/zsw-bxg/src/main/java/co/yixiang/modules/store/service/YxStoreBrandService.java new file mode 100644 index 00000000..635e7bbb --- /dev/null +++ b/zsw-bxg/src/main/java/co/yixiang/modules/store/service/YxStoreBrandService.java @@ -0,0 +1,48 @@ +/** +* Copyright (C) 2018-2020 +* All rights reserved, Designed By www.yixiang.co +* 注意: +* 本软件为www.yixiang.co开发研制,未经购买不得使用 +* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) +* 一经发现盗用、分享等行为,将追究法律责任,后果自负 +*/ +package co.yixiang.modules.store.service; +import co.yixiang.common.service.BaseService; +import co.yixiang.domain.PageResult; +import co.yixiang.modules.store.domain.YxStoreBrand; +import co.yixiang.modules.store.service.dto.YxStoreBrandDto; +import co.yixiang.modules.store.service.dto.YxStoreBrandQueryCriteria; +import org.springframework.data.domain.Pageable; +import java.util.Map; +import java.util.List; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +/** +* @author ssj +* @date 2022-09-15 +*/ +public interface YxStoreBrandService extends BaseService { + + /** + * 查询数据分页 + * @param criteria 条件 + * @param pageable 分页参数 + * @return Map + */ + PageResult queryAll(YxStoreBrandQueryCriteria criteria, Pageable pageable); + + /** + * 查询所有数据不分页 + * @param criteria 条件参数 + * @return List + */ + List queryAll(YxStoreBrandQueryCriteria criteria); + + /** + * 导出数据 + * @param all 待导出的数据 + * @param response / + * @throws IOException / + */ + void download(List all, HttpServletResponse response) throws IOException; +} diff --git a/zsw-bxg/src/main/java/co/yixiang/modules/store/service/dto/YxStoreBrandDto.java b/zsw-bxg/src/main/java/co/yixiang/modules/store/service/dto/YxStoreBrandDto.java new file mode 100644 index 00000000..733f6b53 --- /dev/null +++ b/zsw-bxg/src/main/java/co/yixiang/modules/store/service/dto/YxStoreBrandDto.java @@ -0,0 +1,46 @@ +/** +* Copyright (C) 2018-2020 +* All rights reserved, Designed By www.yixiang.co +* 注意: +* 本软件为www.yixiang.co开发研制,未经购买不得使用 +* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) +* 一经发现盗用、分享等行为,将追究法律责任,后果自负 +*/ +package co.yixiang.modules.store.service.dto; + +import lombok.Data; +import java.sql.Timestamp; +import java.io.Serializable; + +/** +* @author ssj +* @date 2022-09-15 +*/ +@Data +public class YxStoreBrandDto implements Serializable { + + /** 商品品牌表ID */ + private Integer id; + + /** 品牌名称 */ + private String brandName; + + /** 排序 */ + private Integer sort; + + /** 图标 */ + private String pic; + + /** 是否推荐 */ + private Integer isShow; + + /** 添加时间 */ + private Timestamp createTime; + + private Timestamp updateTime; + + /** 删除状态 */ + private Integer isDel; + + private Long tenantId; +} diff --git a/zsw-bxg/src/main/java/co/yixiang/modules/store/service/dto/YxStoreBrandQueryCriteria.java b/zsw-bxg/src/main/java/co/yixiang/modules/store/service/dto/YxStoreBrandQueryCriteria.java new file mode 100644 index 00000000..99315240 --- /dev/null +++ b/zsw-bxg/src/main/java/co/yixiang/modules/store/service/dto/YxStoreBrandQueryCriteria.java @@ -0,0 +1,19 @@ +/** +* Copyright (C) 2018-2020 +* All rights reserved, Designed By www.yixiang.co +* 注意: +* 本软件为www.yixiang.co开发研制,未经购买不得使用 +* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) +* 一经发现盗用、分享等行为,将追究法律责任,后果自负 +*/ +package co.yixiang.modules.store.service.dto; + +import lombok.Data; + +/** +* @author ssj +* @date 2022-09-15 +*/ +@Data +public class YxStoreBrandQueryCriteria{ +} diff --git a/zsw-bxg/src/main/java/co/yixiang/modules/store/service/impl/YxStoreBrandServiceImpl.java b/zsw-bxg/src/main/java/co/yixiang/modules/store/service/impl/YxStoreBrandServiceImpl.java new file mode 100644 index 00000000..7d001bc0 --- /dev/null +++ b/zsw-bxg/src/main/java/co/yixiang/modules/store/service/impl/YxStoreBrandServiceImpl.java @@ -0,0 +1,84 @@ +/** +* Copyright (C) 2018-2020 +* All rights reserved, Designed By www.yixiang.co +* 注意: +* 本软件为www.yixiang.co开发研制,未经购买不得使用 +* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) +* 一经发现盗用、分享等行为,将追究法律责任,后果自负 +*/ +package co.yixiang.modules.store.service.impl; + +import co.yixiang.common.service.impl.BaseServiceImpl; +import co.yixiang.common.utils.QueryHelpPlus; +import co.yixiang.domain.PageResult; +import co.yixiang.dozer.service.IGenerator; +import co.yixiang.modules.store.domain.YxStoreBrand; +import co.yixiang.modules.store.service.vo.YxStoreBrandVO; +import co.yixiang.utils.FileUtil; +import lombok.AllArgsConstructor; +import com.github.pagehelper.PageInfo; +import co.yixiang.modules.store.service.YxStoreBrandService; +import co.yixiang.modules.store.service.dto.YxStoreBrandDto; +import co.yixiang.modules.store.service.dto.YxStoreBrandQueryCriteria; +import co.yixiang.modules.store.service.mapper.YxStoreBrandMapper; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; +// 默认不使用缓存 +//import org.springframework.cache.annotation.CacheConfig; +//import org.springframework.cache.annotation.CacheEvict; +//import org.springframework.cache.annotation.Cacheable; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import java.util.List; +import java.util.Map; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.LinkedHashMap; +/** +* @author ssj +* @date 2022-09-15 +*/ +@Service +@AllArgsConstructor +//@CacheConfig(cacheNames = "yxStoreBrand") +@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class) +public class YxStoreBrandServiceImpl extends BaseServiceImpl implements YxStoreBrandService { + + private final IGenerator generator; + + @Override + //@Cacheable + public PageResult queryAll(YxStoreBrandQueryCriteria criteria, Pageable pageable) { + getPage(pageable); + PageInfo page = new PageInfo<>(queryAll(criteria)); + return generator.convertPageInfo(page, YxStoreBrandDto.class); + } + + + @Override + //@Cacheable + public List queryAll(YxStoreBrandQueryCriteria criteria){ + return baseMapper.selectList(QueryHelpPlus.getPredicate(YxStoreBrand.class, criteria)); + } + + + @Override + public void download(List all, HttpServletResponse response) throws IOException { + List> list = new ArrayList<>(); + for (YxStoreBrandDto yxStoreBrand : all) { + Map map = new LinkedHashMap<>(); + map.put("品牌名称", yxStoreBrand.getBrandName()); + map.put("排序", yxStoreBrand.getSort()); + map.put("图标", yxStoreBrand.getPic()); + map.put("是否推荐", yxStoreBrand.getIsShow()); + map.put("添加时间", yxStoreBrand.getCreateTime()); + map.put(" updateTime", yxStoreBrand.getUpdateTime()); + map.put("删除状态", yxStoreBrand.getIsDel()); + map.put(" tenantId", yxStoreBrand.getTenantId()); + list.add(map); + } + FileUtil.downloadExcel(list, response); + } +} diff --git a/zsw-bxg/src/main/java/co/yixiang/modules/store/service/mapper/YxStoreBrandMapper.java b/zsw-bxg/src/main/java/co/yixiang/modules/store/service/mapper/YxStoreBrandMapper.java new file mode 100644 index 00000000..df707b70 --- /dev/null +++ b/zsw-bxg/src/main/java/co/yixiang/modules/store/service/mapper/YxStoreBrandMapper.java @@ -0,0 +1,22 @@ +/** +* Copyright (C) 2018-2020 +* All rights reserved, Designed By www.yixiang.co +* 注意: +* 本软件为www.yixiang.co开发研制,未经购买不得使用 +* 购买后可获得全部源代码(禁止转卖、分享、上传到码云、github等开源平台) +* 一经发现盗用、分享等行为,将追究法律责任,后果自负 +*/ +package co.yixiang.modules.store.service.mapper; + +import co.yixiang.common.mapper.CoreMapper; +import co.yixiang.modules.store.domain.YxStoreBrand; +import org.springframework.stereotype.Repository; + +/** +* @author ssj +* @date 2022-09-15 +*/ +@Repository +public interface YxStoreBrandMapper extends CoreMapper { + +} diff --git a/zsw-bxg/src/main/java/co/yixiang/modules/store/service/vo/YxStoreBrandVO.java b/zsw-bxg/src/main/java/co/yixiang/modules/store/service/vo/YxStoreBrandVO.java new file mode 100644 index 00000000..4fc67cb8 --- /dev/null +++ b/zsw-bxg/src/main/java/co/yixiang/modules/store/service/vo/YxStoreBrandVO.java @@ -0,0 +1,8 @@ +package co.yixiang.modules.store.service.vo; + +import co.yixiang.modules.store.domain.YxStoreBrand; +import lombok.Data; + +@Data +public class YxStoreBrandVO extends YxStoreBrand { +} diff --git a/zsw-bxg/src/main/java/co/yixiang/tools/service/impl/QiNiuServiceImpl.java b/zsw-bxg/src/main/java/co/yixiang/tools/service/impl/QiNiuServiceImpl.java index 7075bae1..e1d49218 100644 --- a/zsw-bxg/src/main/java/co/yixiang/tools/service/impl/QiNiuServiceImpl.java +++ b/zsw-bxg/src/main/java/co/yixiang/tools/service/impl/QiNiuServiceImpl.java @@ -94,7 +94,6 @@ public class QiNiuServiceImpl implements QiNiuService { // @CacheEvict(allEntries = true) @Transactional(rollbackFor = Exception.class) public QiniuContent upload(MultipartFile file, QiniuConfig qiniuConfig) { - System.out.println("走到了这里"); if(qiniuConfig.getId() == null){ throw new BadRequestException("请先添加相应配置,再操作"); }