From 2604ababe531bbfdb714576d171af887a7b4a67c Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 21 八月 2023 09:41:51 +0800
Subject: [PATCH] 库存余量实时统计接口
---
server/src/main/java/doumeemes/service/ext/StatisticsService.java | 1
server/src/main/java/doumeemes/dao/ext/WStockExtMapper.java | 3 +
server/src/main/java/doumeemes/service/ext/impl/StatisticsServiceImpl.java | 15 +++++++
server/src/main/java/doumeemes/api/ext/StatisticsController.java | 5 ++
server/src/main/java/doumeemes/dao/business/dto/statistics/StockDataModel.java | 33 +++++++---------
server/src/main/resources/mappers/WStockExtMapper.xml | 12 ++++++
6 files changed, 50 insertions(+), 19 deletions(-)
diff --git a/server/src/main/java/doumeemes/api/ext/StatisticsController.java b/server/src/main/java/doumeemes/api/ext/StatisticsController.java
index 4a9c7a8..b3dbd43 100644
--- a/server/src/main/java/doumeemes/api/ext/StatisticsController.java
+++ b/server/src/main/java/doumeemes/api/ext/StatisticsController.java
@@ -87,6 +87,11 @@
public ApiResponse<List<ProcedureProcessModel>> getProcedureProcessList (@PathVariable Integer companyId, @PathVariable Integer departId ) {
return ApiResponse.success(statisticsService.getProcedureProcessList(companyId,departId));
}
+ @ApiOperation("鎴愬搧璁″垝-瀹炴椂浠撳簱浣欓噺缁熻")
+ @GetMapping("/getStockList/{companyId}/{departId}")
+ public ApiResponse<List<StockDataModel>> getStockList (@PathVariable Integer companyId, @PathVariable Integer departId ) {
+ return ApiResponse.success(statisticsService.getStockList(companyId,departId));
+ }
}
diff --git a/server/src/main/java/doumeemes/dao/business/dto/statistics/StockDataModel.java b/server/src/main/java/doumeemes/dao/business/dto/statistics/StockDataModel.java
index 07480b7..13cbf72 100644
--- a/server/src/main/java/doumeemes/dao/business/dto/statistics/StockDataModel.java
+++ b/server/src/main/java/doumeemes/dao/business/dto/statistics/StockDataModel.java
@@ -9,25 +9,20 @@
@Data
@ApiModel("澶у睆鏁版嵁鐪嬫澘-搴撳瓨瀹炴椂浣欓噺缁熻杩斿洖鏁版嵁")
/**
- * 鎵ц涓鍒掓暟锛氱粺璁¤寖鍥翠负锛氭垚鍝佽鍒掞紱鐘舵�佷负銆愭墽琛屼腑銆戯紱
- * 寤舵湡璁″垝鏁帮細缁熻鑼冨洿涓猴細鎴愬搧璁″垝锛涚姸鎬佷负銆愭墽琛屼腑銆戜笖褰撳墠鏃堕棿澶т簬璁″垝缁撴潫鏃堕棿锛�
- * 浠婃棩鐢熶骇浜烘暟锛氭牴鎹粖鏃ユ姇鏂�/浜у嚭璁板綍琛ㄦ暟鎹紝缁熻浠婃棩鐨勭敓浜т汉鏁帮紙鍘婚噸锛夛紱缁熻鑼冨洿涓哄伐鍗曠姸鎬佷负銆愬凡鍒涘缓銆佸凡澶囨枡銆佺敓浜т腑銆佸凡妫�楠屻�佸凡瀹屽伐妫�銆佸凡鎶ュ伐銆戯紱
- * 浠婃棩鐢熶骇璁惧锛氭牴鎹粖鏃ユ姇鏂�/浜у嚭璁板綍琛ㄥ叧鑱旂殑宸ュ崟鏁版嵁锛岀粺璁′粖鏃ョ殑鐢熶骇璁惧鏁帮紙鍘婚噸锛夛紱缁熻鑼冨洿涓哄伐鍗曠姸鎬佷负銆愬凡鍒涘缓銆佸凡澶囨枡銆佺敓浜т腑銆佸凡妫�楠屻�佸凡瀹屽伐妫�銆佸凡鎶ュ伐銆戯紱
- * 浠婃棩涓嶈壇鍝佺巼锛氭牴鎹粖鏃ヤ骇鍑鸿褰曡〃鏁版嵁锛岀粺璁′粖鏃ヤ骇鍑轰笉鑹暟/浠婃棩浜у嚭鎬绘暟閲�*100%锛涚粺璁¤寖鍥翠负宸ュ崟鐘舵�佷负銆愬凡鎶ュ伐銆戯紱
+ * 灞曠ず浠撳簱鐨勫疄鏃朵綑閲忔儏鍐碉紙鎷夊彇鍏ㄩ儴鏁版嵁锛夛紱鎸夌収銆愮墿鏂�+浠撳簱+鎵规鍙枫�戞眹鎬绘柟寮忥紱锛堝嵆PC绔簱瀛樻煡璇㈤粯璁ゅ垪琛ㄦ暟鎹級锛�
+ * 涓嶆粴鍔紝鏀寔涓婁笅婊氬姩鏌ョ湅鍏朵粬鏁版嵁锛�
*/
public class StockDataModel {
- @ApiModelProperty(value = "鎵ц涓鍒掓暟", example = "1")
- private Integer ingNum;
- @ApiModelProperty(value = "寤舵湡璁″垝鏁�", example = "1")
- private Integer delayNum;
- @ApiModelProperty(value = "浠婃棩鐢熶骇浜烘暟", example = "1")
- private Integer prouserNum;
- @ApiModelProperty(value = "浠婃棩鐢熶骇璁惧鏁�", example = "1")
- private Integer deviceNum;
- @ApiModelProperty(value = "浠婃棩涓嶈壇鍝佺巼", example = "1")
- private BigDecimal unqualifiedRate;
- @ApiModelProperty(value = "浠婃棩涓嶈壇鍝佹暟", example = "1",hidden = true)
- private BigDecimal unqualifiedNum;
- @ApiModelProperty(value = "浠婃棩鎶ュ伐鏁�", example = "1",hidden = true)
- private BigDecimal doneNUm;
+ @ApiModelProperty(value = "鐗╂枡鍚嶇О", example = "1")
+ private String materialName;
+ @ApiModelProperty(value = "宸ュ簭鍚嶇О", example = "1")
+ private String procedureName;
+ @ApiModelProperty(value = "浠撳簱鍚嶇О", example = "1")
+ private String warehouseName;
+ @ApiModelProperty(value = "璐ф灦鍚嶇О", example = "1")
+ private String location;
+ @ApiModelProperty(value = "鏁伴噺", example = "1")
+ private BigDecimal num;
+ @ApiModelProperty(value = "鍗曚綅")
+ private String unitName;
}
diff --git a/server/src/main/java/doumeemes/dao/ext/WStockExtMapper.java b/server/src/main/java/doumeemes/dao/ext/WStockExtMapper.java
index 9b4ea5c..d552db7 100644
--- a/server/src/main/java/doumeemes/dao/ext/WStockExtMapper.java
+++ b/server/src/main/java/doumeemes/dao/ext/WStockExtMapper.java
@@ -1,5 +1,6 @@
package doumeemes.dao.ext;
+import doumeemes.dao.business.dto.statistics.StockDataModel;
import doumeemes.dao.business.model.WStock;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import doumeemes.dao.ext.beanDto.QueryWStockDto;
@@ -32,4 +33,6 @@
List<WStockExtListVO> selectAdminListForH5(QueryWStockDto dto);
List<WStockExtListVO> choiceStockPageByTransfer(QueryWStockHeadNewDTO dto);
+
+ List<StockDataModel> getStatisticsStockList(QueryWStockExtDTO param);
}
diff --git a/server/src/main/java/doumeemes/service/ext/StatisticsService.java b/server/src/main/java/doumeemes/service/ext/StatisticsService.java
index 5df3ad2..3fb633c 100644
--- a/server/src/main/java/doumeemes/service/ext/StatisticsService.java
+++ b/server/src/main/java/doumeemes/service/ext/StatisticsService.java
@@ -37,4 +37,5 @@
List<WorkPlansPageModel> getWorkPlansList(Integer companyId, Integer departId);
List<ProcedureProcessModel> getProcedureProcessList(Integer companyId, Integer departId);
+ List<StockDataModel> getStockList(Integer companyId, Integer departId)
}
diff --git a/server/src/main/java/doumeemes/service/ext/impl/StatisticsServiceImpl.java b/server/src/main/java/doumeemes/service/ext/impl/StatisticsServiceImpl.java
index 451eac9..c67ff46 100644
--- a/server/src/main/java/doumeemes/service/ext/impl/StatisticsServiceImpl.java
+++ b/server/src/main/java/doumeemes/service/ext/impl/StatisticsServiceImpl.java
@@ -49,6 +49,8 @@
@Autowired
private PlansExtMapper plansExtMapper;
@Autowired
+ private WStockExtMapper stockExtMapper;
+ @Autowired
private WorkorderRecordExtMapper workorderRecordExtMapper;
@Autowired
private DepartmentExtService departmentExtService;
@@ -135,6 +137,19 @@
return result;
}
@Override
+ public List<StockDataModel> getStockList(Integer companyId, Integer departId){
+ DepartmentExtListVO department = departmentExtService.getModelById(companyId,departId);
+ if(department == null || Constants.equalsInteger(department.getDeleted(), Constants.ONE)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝浼佷笟鎴栬�呴儴闂ㄤ俊鎭笉鍚堟硶锛屽鏈夌枒闂紝璇疯仈绯荤郴缁熺鐞嗗憳");
+ }
+ QueryWStockExtDTO param = new QueryWStockExtDTO();
+ param.setRootDepartId(department.getRootId());
+ param.setWmodelDepartId(departId);
+ //鏌ヨ缁熻缁撴灉
+ List<StockDataModel> result = stockExtMapper.getStatisticsStockList(param);
+ return result;
+ }
+ @Override
public List<Unqualified7DayModel> getUnqualified7DayData(Integer companyId, Integer departId, Integer procedureId) {
DepartmentExtListVO department = departmentExtService.getModelById(companyId,departId);
if(department == null || Constants.equalsInteger(department.getDeleted(), Constants.ONE)){
diff --git a/server/src/main/resources/mappers/WStockExtMapper.xml b/server/src/main/resources/mappers/WStockExtMapper.xml
index 8001bb1..0f32d14 100644
--- a/server/src/main/resources/mappers/WStockExtMapper.xml
+++ b/server/src/main/resources/mappers/WStockExtMapper.xml
@@ -77,6 +77,18 @@
<result column="WMODEL_ADDR" jdbcType="VARCHAR" property="addr"/>
</association>
</resultMap>
+ <select id="getStatisticsStockList" parameterType="doumeemes.dao.ext.dto.QueryWStockExtDTO" resultType="doumeemes.dao.business.dto.statistics.StockDataModel">
+ select sum(a.NUM) as num,c.`NAME` as materialName,d.name as warehouseName,f.UNION_NAME as location,u.name as unitName
+ from w_stock a
+ left join material_distribute b on a.MATERIAL_ID=b.ID
+ left join material c on b.MATERIAL_ID=c.ID
+ left join warehouse d on a.WAREHOUSE_ID=d.ID
+ left join warehouse_location f on a.LOCATION_ID=f.ID
+ left join unit u on a.UNIT_ID=u.id
+ where a.DELETED = 0 AND a.ROOT_DEPART_ID = #{rootDepartId} AND d.DEPART_ID=#{wmodelDepartId}
+ GROUP BY a.MATERIAL_ID,a.WAREHOUSE_ID,a.BATCH
+ ORDER BY num DESC
+ </select>
<select id="selectAllList" parameterType="doumeemes.dao.ext.dto.QueryWStockExtDTO" resultMap="WStockExtListVO">
SELECT a.*
FROM w_stock a
--
Gitblit v1.9.3