From 75b2904fbaf4fab6a9fb3baf065d2c927cc7a7a2 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期三, 27 九月 2023 18:16:34 +0800
Subject: [PATCH] 基础数据-物料清单维护-导出
---
inventory-server/src/main/java/com/yuanchu/mom/controller/SaleController.java | 71 +++++++++++++++++++++++++++--------
1 files changed, 55 insertions(+), 16 deletions(-)
diff --git a/inventory-server/src/main/java/com/yuanchu/mom/controller/SaleController.java b/inventory-server/src/main/java/com/yuanchu/mom/controller/SaleController.java
index c593771..d2bc5b0 100644
--- a/inventory-server/src/main/java/com/yuanchu/mom/controller/SaleController.java
+++ b/inventory-server/src/main/java/com/yuanchu/mom/controller/SaleController.java
@@ -3,11 +3,12 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.yuanchu.mom.pojo.vo.SaleVo;
-import com.yuanchu.mom.service.RepertoryService;
-import com.yuanchu.mom.utils.JackSonUtil;
+import com.yuanchu.mom.pojo.dto.ExportSaleDto;
import com.yuanchu.mom.pojo.dto.SaleDto;
+import com.yuanchu.mom.pojo.dto.SaleMaterialDto;
+import com.yuanchu.mom.pojo.vo.SaleVo;
import com.yuanchu.mom.service.SaleService;
+import com.yuanchu.mom.utils.JackSonUtil;
import com.yuanchu.mom.utils.Jwt;
import com.yuanchu.mom.vo.Result;
import io.swagger.annotations.Api;
@@ -16,8 +17,10 @@
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
+import springfox.documentation.spring.web.json.Json;
import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
import java.util.*;
/**
@@ -39,8 +42,6 @@
@Resource
Jwt jwt;
- @Resource
- RepertoryService repertoryService;
@ApiOperation(value = "鏌ヨ閿�鍞崟鍒楄〃")
@ApiImplicitParams(value = {
@@ -62,9 +63,21 @@
@ApiOperation(value = "鏂板閿�鍞崟")
@PostMapping("/addSale")
- public Result addSale(@RequestHeader("token") String token,@Validated @RequestBody SaleDto saleDto) throws Exception {
- Map<String, String> data = JackSonUtil.unmarshal(jwt.readJWT(token).get("data"), Map.class);
- saleService.addSale(data.get("name").replaceAll("\"", ""), saleDto);
+ public Result addSale(@RequestHeader("token") String token, @Validated @RequestBody SaleDto saleDto) throws Exception {
+ //鏍¢獙,鍚屼竴涓骇鍝佺殑瑙勬牸鍨嬪彿涓嶈兘鐩稿悓
+ List<SaleMaterialDto> saleMaterialList = saleDto.getSaleMaterialList();
+ // 浣跨敤鍝堝笇闆嗗悎鏉ュ垽鏂槸鍚﹀瓨鍦ㄧ浉鍚屽瓧娈靛�肩粍鍚�
+ Set<String> seen = new HashSet<>();
+ for (SaleMaterialDto saleMaterial: saleMaterialList) {
+ String key = saleMaterial.getName() + "," + saleMaterial.getSpecifications();
+ if (seen.contains(key)) {
+ return Result.fail("鍚屼竴涓骇鍝佺殑瑙勬牸鍨嬪彿涓嶈兘鐩稿悓");
+ } else {
+ seen.add(key);
+ }
+ }
+ Map<String, String> data = JackSonUtil.unmarshal(jwt.readJWT(token).get("data"), Map.class);
+ saleService.addSale(data.get("name").replaceAll("\"", ""), saleDto);
return Result.success("鏂板鎴愬姛!");
}
@@ -79,14 +92,14 @@
@ApiOperation(value = "鏍规嵁閿�鍞崟id淇敼璇︽儏淇℃伅")
@ApiImplicitParams(value = {
- @ApiImplicitParam(name = "id", value = "閿�鍞崟id", dataTypeClass = Integer.class, required = true)
+ @ApiImplicitParam(name = "id", value = "閿�鍞崟id", dataTypeClass = Integer.class, required = true),
+ @ApiImplicitParam(name = "id", value = "json鏍煎紡鐨勯攢鍞崟鍐呭", dataTypeClass = Json.class, required = true)
})
@PostMapping("/updateSaleById")
- public Result updateSaleById(@RequestHeader("token") String token,Integer id, String str) throws Exception {
+ public Result updateSaleById(@RequestHeader("token") String token, Integer id, String str) throws Exception {
SaleVo saleVo = JackSonUtil.unmarshal(str, SaleVo.class);
Map<String, String> data = JackSonUtil.unmarshal(jwt.readJWT(token).get("data"), Map.class);
- saleService.updateSaleById(data.get("name").replaceAll("\"", ""),id, saleVo);
- return Result.success("淇敼鎴愬姛!");
+ return Result.success(saleService.updateSaleById(data.get("name").replaceAll("\"", ""), id, saleVo));
}
@ApiOperation(value = "鏍规嵁閿�鍞崟id鍒犻櫎")
@@ -101,10 +114,10 @@
@ApiOperation(value = "鎵归噺鍒犻櫎")
@ApiImplicitParams(value = {
- @ApiImplicitParam(name = "ids", value = "ids", dataTypeClass = Integer.class, dataType = "List",required = true)
+ @ApiImplicitParam(name = "ids", value = "ids", dataTypeClass = String.class,required = true)
})
@PostMapping("/delAllSale")
- public Result delAllSale( @RequestParam("ids") List<Integer> ids) {
+ public Result delAllSale(String ids) {
saleService.delAllSale(ids);
return Result.success();
}
@@ -115,11 +128,37 @@
@ApiImplicitParam(name = "type", value = "鐘舵��", dataTypeClass = Integer.class, required = true)
})
@PostMapping("/check")
- public Result check(@RequestHeader("token") String token,Integer id,Integer type) throws Exception {
+ public Result check(@RequestHeader("token") String token, Integer id, Integer type) throws Exception {
Map<String, String> data = JackSonUtil.unmarshal(jwt.readJWT(token).get("data"), Map.class);
- saleService.check(data.get("name").replaceAll("\"", ""),id,type);
+ saleService.check(data.get("name").replaceAll("\"", ""), id, type);
return Result.success("瀹℃牳鎴愬姛");
}
+ @ApiOperation(value = "鍚屾")
+ @PostMapping("/synchronization")
+ public Result synchronization(){
+ return Result.success(saleService.synchronization());
+ }
+
+ @ApiOperation(value = "涓嬭浇闄勪欢")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "id", value = "閿�鍞崟id", dataTypeClass = Integer.class, required = true)
+ })
+ @PostMapping("/download")
+ public Result download(Integer id){
+ return Result.success(saleService.download(id));
+ }
+
+ @ApiOperation(value = "閿�鍞鍗曞鍑�")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "orderNumber", value = "璁㈠崟缂栧彿", dataTypeClass = String.class),
+ @ApiImplicitParam(name = "name", value = "浜у搧鍚嶇О", dataTypeClass = String.class),
+ @ApiImplicitParam(name = "type", value = "鐘舵��(涓虹┖=鍏ㄩ儴)", dataTypeClass = Integer.class),
+ @ApiImplicitParam(name = "delTime", value = "浜よ揣鏃ユ湡", dataTypeClass = String.class)
+ })
+ @PostMapping("/exportSale")
+ public void exportSale(@RequestBody ExportSaleDto dto, HttpServletResponse response){
+ saleService.exportSale(dto,response);
+ }
}
--
Gitblit v1.9.3