Browse Source

福达:基础资料-商品管理-商品信息:添加导出按钮

wangzhuo 2 years ago
parent
commit
a972db4484

+ 39 - 4
blade-service/blade-client/src/main/java/org/springblade/client/goods/controller/GoodsDescController.java

@@ -33,10 +33,7 @@ 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.GoodsExcels;
-import org.springblade.client.goods.excel.GoodsInfoExcel;
-import org.springblade.client.goods.excel.GoodsOutDWTExcel;
-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;
@@ -675,6 +672,44 @@ public class GoodsDescController extends BladeController {
 	}
 
 	/**
+	 * 导出数据
+	 */
+	@GetMapping("/exportData")
+	@ApiOperationSupport(order = 9)
+	@ApiOperation(value = "导出数据")
+	public void exportData(HttpServletResponse response,
+						   @RequestParam(name = "code", required = false) String code,
+						   @RequestParam(name = "cname", required = false) String cname,
+						   @RequestParam(name = "ename", required = false) String ename
+						   ) {
+
+
+		LambdaQueryWrapper<GoodsDesc> goodsDescLambdaQueryWrapper = new LambdaQueryWrapper<>();
+
+		goodsDescLambdaQueryWrapper.like(!StringUtils.isBlank(cname), GoodsDesc::getCname, cname);
+		goodsDescLambdaQueryWrapper.like(!StringUtils.isBlank(ename), GoodsDesc::getEname, ename);
+		goodsDescLambdaQueryWrapper.like(!StringUtils.isBlank(code), GoodsDesc::getCode, code);
+		goodsDescLambdaQueryWrapper.eq(GoodsDesc::getTenantId, AuthUtil.getTenantId());
+		goodsDescLambdaQueryWrapper.eq(GoodsDesc::getType, 0);
+		goodsDescLambdaQueryWrapper.orderByDesc(GoodsDesc::getCreateTime);
+
+		if (!"admin".equals(AuthUtil.getUserName())) {
+			goodsDescLambdaQueryWrapper.and(qw -> qw.like(GoodsDesc::getSupervisorUserIdGroup, AuthUtil.getUserId())
+				.or().isNull(GoodsDesc::getSupervisorUserIdGroup)
+				.or().eq(GoodsDesc::getSupervisorUserIdGroup, ""));
+		}
+		List<GoodsDesc> list = goodsDescService.list(goodsDescLambdaQueryWrapper);
+
+		List<GoodesExportExcel> exportList = list.stream().map(data -> {
+			GoodesExportExcel gee = new GoodesExportExcel();
+			BeanUtils.copyProperties(data, gee);
+			return gee;
+		}).collect(Collectors.toList());
+
+		ExcelUtil.export(response, "导入模板-产品信息", "导出数据表", exportList, GoodesExportExcel.class);
+	}
+
+	/**
 	 * 导入产品信息
 	 */
 	@PostMapping("/import-desc-info")

+ 32 - 0
blade-service/blade-client/src/main/java/org/springblade/client/goods/excel/GoodesExportExcel.java

@@ -0,0 +1,32 @@
+package org.springblade.client.goods.excel;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class GoodesExportExcel {
+	//	编码、名称、英文名称、供应商、计价单位、包装单位、应为描述、分管员
+	@ExcelProperty("商品编码")
+	private String code;
+	@ExcelProperty("商品名称")
+	private String cname;
+	@ExcelProperty("英文名称")
+	private String ename;
+	@ExcelProperty("供应商")
+	private String corpName;
+	@ExcelProperty("计价单位")
+	private String unit;
+	@ExcelProperty("包装单位")
+	private String packgeunit;
+	@ExcelProperty("英文描述")
+	private String cnameDescription;
+	@ExcelProperty("分管员")
+	private String supervisorUserNameGroup;
+}