|
|
@@ -28,15 +28,13 @@ import io.swagger.annotations.ApiOperation;
|
|
|
import io.swagger.annotations.ApiParam;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.springblade.client.corps.excel.CorpDWTExcel;
|
|
|
import org.springblade.client.corps.service.ICorpsAttnService;
|
|
|
import org.springblade.client.corps.service.ICorpsDescService;
|
|
|
import org.springblade.client.entity.*;
|
|
|
import org.springblade.client.feign.IRedisClient;
|
|
|
import org.springblade.client.goods.enums.GoodsTypeEnum;
|
|
|
-import org.springblade.client.goods.excel.GoodsExcel;
|
|
|
-import org.springblade.client.goods.excel.GoodsExcels;
|
|
|
-import org.springblade.client.goods.excel.GoodsInfoExcel;
|
|
|
-import org.springblade.client.goods.excel.GoodsOutExcel;
|
|
|
+import org.springblade.client.goods.excel.*;
|
|
|
import org.springblade.client.goods.mapper.GoodsFilesMapper;
|
|
|
import org.springblade.client.goods.service.*;
|
|
|
import org.springblade.client.vo.GoodsDescVO;
|
|
|
@@ -47,6 +45,7 @@ import org.springblade.core.mp.support.Query;
|
|
|
import org.springblade.core.secure.utils.AuthUtil;
|
|
|
import org.springblade.core.secure.utils.SecureUtil;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
+import org.springblade.core.tool.utils.BeanUtil;
|
|
|
import org.springblade.core.tool.utils.Func;
|
|
|
import org.springblade.core.tool.utils.StringUtil;
|
|
|
import org.springblade.mocha.entity.PriceBank;
|
|
|
@@ -242,6 +241,71 @@ public class GoodsDescController extends BladeController {
|
|
|
return R.data(iPage);
|
|
|
}
|
|
|
|
|
|
+ @GetMapping("/export")
|
|
|
+ @ApiOperationSupport(order = 2)
|
|
|
+ @ApiOperation(value = "分页", notes = "传入goodsDesc")
|
|
|
+ public void export(
|
|
|
+ @RequestParam(name = "cname", required = false) String cname,
|
|
|
+ @RequestParam(name = "cnameInt", required = false) String cnameInt,
|
|
|
+ @RequestParam(name = "ename", required = false) String ename,
|
|
|
+ @RequestParam(name = "code", required = false) String code,
|
|
|
+ @RequestParam(name = "goodsTypeId", required = false) String goodsTypeId,
|
|
|
+ @RequestParam(name = "belongToCorpId", required = false) String belongToCorpId,
|
|
|
+ @RequestParam(name = "status", required = false) String status,
|
|
|
+ @RequestParam(name = "unit", required = false) String unit,
|
|
|
+ @RequestParam(name = "remarks", required = false) String remarks,
|
|
|
+ @RequestParam(name = "upperFrame", required = false) String upperFrame,
|
|
|
+ @RequestParam(name = "label", required = false) String label,
|
|
|
+ @RequestParam(name = "artsVision", required = false) String artsVision,
|
|
|
+ HttpServletResponse response) {
|
|
|
+ LambdaQueryWrapper<GoodsDesc> goodsDescLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+
|
|
|
+ //指定分类为一级分类,查询此分类所有二级分类的商品
|
|
|
+ if (StringUtils.isNotBlank(goodsTypeId)) {
|
|
|
+ Long goodsId = Long.parseLong(goodsTypeId);
|
|
|
+ List<Long> goodsIdList = new ArrayList<>();
|
|
|
+ selectChildById(goodsId, goodsIdList);
|
|
|
+ goodsIdList.add(goodsId);
|
|
|
+
|
|
|
+ goodsDescLambdaQueryWrapper.in(GoodsDesc::getGoodsTypeId, goodsIdList);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (StringUtils.isNotBlank(belongToCorpId)) {
|
|
|
+ LambdaQueryWrapper<CorpsDesc> gysIdListQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ gysIdListQueryWrapper.select(CorpsDesc::getId)
|
|
|
+ .eq(CorpsDesc::getBelongtocompany, belongToCorpId)
|
|
|
+ .eq(CorpsDesc::getCorpType, "GYS")
|
|
|
+ .eq(CorpsDesc::getIsDeleted, 0)
|
|
|
+ .eq(CorpsDesc::getTenantId, AuthUtil.getTenantId());
|
|
|
+
|
|
|
+ List<Long> gysIdList = corpsDescService.list(gysIdListQueryWrapper).stream().map(CorpsDesc::getId).collect(Collectors.toList());
|
|
|
+ if (CollectionUtils.isNotEmpty(gysIdList)) {
|
|
|
+ goodsDescLambdaQueryWrapper.in(GoodsDesc::getCorpId, gysIdList);
|
|
|
+ } else {
|
|
|
+ goodsDescLambdaQueryWrapper.in(GoodsDesc::getCorpId, "''");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ goodsDescLambdaQueryWrapper.like(!StringUtils.isBlank(cname), GoodsDesc::getCname, cname);
|
|
|
+ goodsDescLambdaQueryWrapper.like(!StringUtils.isBlank(cnameInt), GoodsDesc::getCnameInt, cnameInt);
|
|
|
+ goodsDescLambdaQueryWrapper.like(!StringUtils.isBlank(ename), GoodsDesc::getEname, ename);
|
|
|
+ goodsDescLambdaQueryWrapper.like(!StringUtils.isBlank(code), GoodsDesc::getCode, code);
|
|
|
+ goodsDescLambdaQueryWrapper.like(!StringUtils.isBlank(label), GoodsDesc::getCode, label);
|
|
|
+ goodsDescLambdaQueryWrapper.like(!StringUtils.isBlank(remarks), GoodsDesc::getCode, remarks);
|
|
|
+ goodsDescLambdaQueryWrapper.eq(GoodsDesc::getTenantId, AuthUtil.getTenantId());
|
|
|
+ goodsDescLambdaQueryWrapper.eq(GoodsDesc::getType, 0);
|
|
|
+ goodsDescLambdaQueryWrapper.eq(ObjectUtils.isNotNull(status), GoodsDesc::getStatus, status);
|
|
|
+ goodsDescLambdaQueryWrapper.eq(ObjectUtils.isNotNull(unit), GoodsDesc::getUnit, unit);
|
|
|
+ goodsDescLambdaQueryWrapper.eq(ObjectUtils.isNotNull(upperFrame), GoodsDesc::getUpperFrame, upperFrame);
|
|
|
+ if (StringUtils.isNotEmpty(artsVision)) {
|
|
|
+ goodsDescLambdaQueryWrapper.and(i -> i.like(GoodsDesc::getArtsVision, artsVision).or().isNull(GoodsDesc::getArtsVision));
|
|
|
+ }
|
|
|
+ goodsDescLambdaQueryWrapper.orderByDesc(GoodsDesc::getCreateTime);
|
|
|
+ List<GoodsDesc> list = goodsDescService.list(goodsDescLambdaQueryWrapper);
|
|
|
+ ExcelUtil.export(response, "产品信息", "产品信息", BeanUtil.copy(list, GoodsOutDWTExcel.class), GoodsOutDWTExcel.class);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
@GetMapping("/product")
|
|
|
public R<?> product(GoodsDesc goodsDesc) {
|
|
|
redisClient.basicData("goods");
|