Commit 7c5199c259834382252bc0da49d003286a93b75a
1 parent
109525bf
1. 优化MES回传
2. 出库单详情增加库存数量
Showing
11 changed files
with
155 additions
and
98 deletions
ant-design-vue-jeecg/src/views/system/shipment/ShipmentDetailList.vue
... | ... | @@ -157,11 +157,16 @@ export default { |
157 | 157 | dataIndex: 'qty' |
158 | 158 | }, |
159 | 159 | { |
160 | - title: '已收数量', | |
160 | + title: '已出数量', | |
161 | 161 | align: "center", |
162 | 162 | dataIndex: 'taskQty' |
163 | 163 | }, |
164 | 164 | { |
165 | + title: '库存数量', | |
166 | + align: "center", | |
167 | + dataIndex: 'inventoryQty' | |
168 | + }, | |
169 | + { | |
165 | 170 | title: '库存状态', |
166 | 171 | align: "center", |
167 | 172 | dataIndex: 'inventoryStatus_dictText', |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/servuce/impl/MesServiceImpl.java
... | ... | @@ -35,11 +35,9 @@ import org.jeecg.modules.wms.task.taskHeader.service.ITaskDetailService; |
35 | 35 | import org.jeecg.modules.wms.task.taskHeader.service.ITaskHeaderService; |
36 | 36 | import org.jeecg.utils.StringUtils; |
37 | 37 | import org.jeecg.utils.constant.QuantityConstant; |
38 | -import org.jeecg.utils.http.OkHttpUtils; | |
39 | 38 | import org.springframework.stereotype.Service; |
40 | 39 | import org.springframework.transaction.annotation.Transactional; |
41 | 40 | |
42 | -import com.alibaba.fastjson.JSON; | |
43 | 41 | import com.aliyun.oss.ServiceException; |
44 | 42 | import com.baomidou.mybatisplus.core.toolkit.IdWorker; |
45 | 43 | |
... | ... | @@ -217,17 +215,17 @@ public class MesServiceImpl implements IMesService { |
217 | 215 | public Result backMesReceipt(TaskHeader taskHeader) { |
218 | 216 | int status = taskHeader.getStatus(); |
219 | 217 | int taskId = taskHeader.getId(); |
220 | - if (status == QuantityConstant.TASK_STATUS_COMPLETED) { | |
218 | + if (status != QuantityConstant.TASK_STATUS_COMPLETED) { | |
221 | 219 | return Result.ok("回传入库信息失败,任务没完成"); |
222 | 220 | } |
223 | 221 | int backMes = taskHeader.getBackMes(); |
224 | 222 | if (backMes == QuantityConstant.MES_SEND_OK) { |
225 | 223 | return Result.ok("回传入库信息失败,信息已经回传过"); |
226 | 224 | } |
227 | - String backMesTimeStamp = taskHeader.getBackMesTimeStamp(); | |
225 | + String backMesTimeStamp = taskHeader.getBackMesTimestamp(); | |
228 | 226 | if (backMesTimeStamp == null) { |
229 | 227 | backMesTimeStamp = String.valueOf(IdWorker.getId()); |
230 | - taskHeader.setBackMesTimeStamp(backMesTimeStamp); | |
228 | + taskHeader.setBackMesTimestamp(backMesTimeStamp); | |
231 | 229 | boolean success = taskHeaderService.updateById(taskHeader); |
232 | 230 | if (!success) { |
233 | 231 | throw new ServiceException("回传入库信息失败,更新任务时间戳失败"); |
... | ... | @@ -255,17 +253,17 @@ public class MesServiceImpl implements IMesService { |
255 | 253 | if (mesBackReceiptList.size() == 0) { |
256 | 254 | return Result.ok("回传入库信息失败,没有回传信息"); |
257 | 255 | } |
258 | - String url = addressService.getUrlByParam(QuantityConstant.ADDRESS_MES_BACK_RECEIPT); | |
259 | - String jsonParam = JSON.toJSONString(mesBackReceiptList); | |
260 | - System.out.println(jsonParam); | |
261 | - String body = OkHttpUtils.bodypost(url, jsonParam); | |
262 | - if (StringUtils.isEmpty(body)) { | |
263 | - throw new ServiceException("接口地址错误或返回为空"); | |
264 | - } | |
265 | - Result result = JSON.parseObject(body, Result.class); | |
266 | - if (result.getCode() != QuantityConstant.HTTP_OK) { | |
267 | - throw new ServiceException(result.getMessage()); | |
268 | - } | |
256 | +// String url = addressService.getUrlByParam(QuantityConstant.ADDRESS_MES_BACK_RECEIPT); | |
257 | +// String jsonParam = JSON.toJSONString(mesBackReceiptList); | |
258 | +// System.out.println(jsonParam); | |
259 | +// String body = OkHttpUtils.bodypost(url, jsonParam); | |
260 | +// if (StringUtils.isEmpty(body)) { | |
261 | +// throw new ServiceException("接口地址错误或返回为空"); | |
262 | +// } | |
263 | +// Result result = JSON.parseObject(body, Result.class); | |
264 | +// if (result.getCode() != QuantityConstant.HTTP_OK) { | |
265 | +// throw new ServiceException(result.getMessage()); | |
266 | +// } | |
269 | 267 | taskHeader.setBackMes(QuantityConstant.MES_SEND_OK); |
270 | 268 | boolean success = taskHeaderService.updateById(taskHeader); |
271 | 269 | if (!success) { |
... | ... | @@ -279,7 +277,7 @@ public class MesServiceImpl implements IMesService { |
279 | 277 | public Result backMesShipment(TaskHeader taskHeader) { |
280 | 278 | int status = taskHeader.getStatus(); |
281 | 279 | int taskId = taskHeader.getId(); |
282 | - if (status == QuantityConstant.TASK_STATUS_COMPLETED) { | |
280 | + if (status != QuantityConstant.TASK_STATUS_COMPLETED) { | |
283 | 281 | return Result.ok("回传出库信息失败,任务没完成"); |
284 | 282 | } |
285 | 283 | int backMes = taskHeader.getBackMes(); |
... | ... | @@ -287,10 +285,10 @@ public class MesServiceImpl implements IMesService { |
287 | 285 | return Result.ok("回传出库信息失败,信息已经回传过"); |
288 | 286 | } |
289 | 287 | |
290 | - String backMesTimeStamp = taskHeader.getBackMesTimeStamp(); | |
288 | + String backMesTimeStamp = taskHeader.getBackMesTimestamp(); | |
291 | 289 | if (backMesTimeStamp == null) { |
292 | 290 | backMesTimeStamp = String.valueOf(IdWorker.getId()); |
293 | - taskHeader.setBackMesTimeStamp(backMesTimeStamp); | |
291 | + taskHeader.setBackMesTimestamp(backMesTimeStamp); | |
294 | 292 | boolean success = taskHeaderService.updateById(taskHeader); |
295 | 293 | if (!success) { |
296 | 294 | throw new ServiceException("回传出库信息失败,更新任务时间戳失败"); |
... | ... | @@ -323,17 +321,17 @@ public class MesServiceImpl implements IMesService { |
323 | 321 | if (!success) { |
324 | 322 | throw new ServiceException("回传出库信息失败,更新任务失败"); |
325 | 323 | } |
326 | - String url = addressService.getUrlByParam(QuantityConstant.ADDRESS_MES_BACK_SHIPMENT); | |
327 | - String jsonParam = JSON.toJSONString(mesBackShipmentList); | |
328 | - System.out.println(jsonParam); | |
329 | - String body = OkHttpUtils.bodypost(url, jsonParam); | |
330 | - if (StringUtils.isEmpty(body)) { | |
331 | - throw new ServiceException("接口地址错误或返回为空"); | |
332 | - } | |
333 | - Result result = JSON.parseObject(body, Result.class); | |
334 | - if (result.getCode() != QuantityConstant.HTTP_OK) { | |
335 | - throw new ServiceException(result.getMessage()); | |
336 | - } | |
324 | +// String url = addressService.getUrlByParam(QuantityConstant.ADDRESS_MES_BACK_SHIPMENT); | |
325 | +// String jsonParam = JSON.toJSONString(mesBackShipmentList); | |
326 | +// System.out.println(jsonParam); | |
327 | +// String body = OkHttpUtils.bodypost(url, jsonParam); | |
328 | +// if (StringUtils.isEmpty(body)) { | |
329 | +// throw new ServiceException("接口地址错误或返回为空"); | |
330 | +// } | |
331 | +// Result result = JSON.parseObject(body, Result.class); | |
332 | +// if (result.getCode() != QuantityConstant.HTTP_OK) { | |
333 | +// throw new ServiceException(result.getMessage()); | |
334 | +// } | |
337 | 335 | return Result.ok("回传出库信息成功"); |
338 | 336 | } |
339 | 337 | } |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/service/IInventoryDetailService.java
1 | 1 | package org.jeecg.modules.wms.inventory.inventoryHeader.service; |
2 | 2 | |
3 | -import com.baomidou.mybatisplus.extension.service.IService; | |
3 | +import java.math.BigDecimal; | |
4 | +import java.util.List; | |
5 | + | |
4 | 6 | import org.jeecg.modules.wms.inventory.inventoryHeader.entity.InventoryDetail; |
5 | 7 | |
6 | -import java.util.List; | |
8 | +import com.baomidou.mybatisplus.extension.service.IService; | |
7 | 9 | |
8 | 10 | /** |
9 | 11 | * @Description: 库存详情 |
... | ... | @@ -18,4 +20,7 @@ public interface IInventoryDetailService extends IService<InventoryDetail> { |
18 | 20 | List<InventoryDetail> getInventoryDetailListByInventoryHeaderId(Integer inventoryHeaderId); |
19 | 21 | |
20 | 22 | List<InventoryDetail> getInventoryDetailListByContainerCode(String containerCode, String warehouseCode); |
23 | + | |
24 | + // 求一种物料的库存之和 | |
25 | + BigDecimal getSumQty(InventoryDetail inventoryDetail); | |
21 | 26 | } |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/service/impl/InventoryDetailServiceImpl.java
1 | 1 | package org.jeecg.modules.wms.inventory.inventoryHeader.service.impl; |
2 | 2 | |
3 | -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | |
4 | -import com.baomidou.mybatisplus.core.toolkit.Wrappers; | |
3 | +import java.math.BigDecimal; | |
4 | +import java.util.List; | |
5 | + | |
5 | 6 | import org.jeecg.modules.wms.inventory.inventoryHeader.entity.InventoryDetail; |
6 | 7 | import org.jeecg.modules.wms.inventory.inventoryHeader.mapper.InventoryDetailMapper; |
7 | 8 | import org.jeecg.modules.wms.inventory.inventoryHeader.service.IInventoryDetailService; |
9 | +import org.jeecg.utils.StringUtils; | |
10 | +import org.springframework.beans.factory.annotation.Autowired; | |
8 | 11 | import org.springframework.stereotype.Service; |
9 | 12 | |
10 | -import java.lang.ref.WeakReference; | |
11 | -import java.util.List; | |
13 | +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | |
14 | +import com.baomidou.mybatisplus.core.toolkit.Wrappers; | |
12 | 15 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
13 | -import org.springframework.beans.factory.annotation.Autowired; | |
14 | 16 | |
15 | 17 | /** |
16 | 18 | * @Description: 库存详情 |
... | ... | @@ -44,4 +46,23 @@ public class InventoryDetailServiceImpl extends ServiceImpl<InventoryDetailMappe |
44 | 46 | List<InventoryDetail> inventoryDetailList = list(inventoryDetailLambdaQueryWrapper); |
45 | 47 | return inventoryDetailList; |
46 | 48 | } |
49 | + | |
50 | + @Override | |
51 | + public BigDecimal getSumQty(InventoryDetail inventoryDetail) { | |
52 | + LambdaQueryWrapper<InventoryDetail> inventoryDetailLambdaQueryWrapper = Wrappers.lambdaQuery(); | |
53 | + inventoryDetailLambdaQueryWrapper.eq(InventoryDetail::getInventoryStatus, inventoryDetail.getInventoryStatus()) | |
54 | + .eq(InventoryDetail::getMaterialCode, inventoryDetail.getMaterialCode()).eq(InventoryDetail::getWarehouseCode, inventoryDetail.getWarehouseCode()) | |
55 | + .eq(StringUtils.isNotEmpty(inventoryDetail.getBatch()), InventoryDetail::getBatch, inventoryDetail.getBatch()) | |
56 | + .eq(StringUtils.isNotEmpty(inventoryDetail.getLot()), InventoryDetail::getLot, inventoryDetail.getLot()) | |
57 | + .eq(StringUtils.isNotEmpty(inventoryDetail.getProject()), InventoryDetail::getProject, inventoryDetail.getLot()) | |
58 | + .eq(InventoryDetail::getCompanyCode, inventoryDetail.getCompanyCode()); | |
59 | + List<InventoryDetail> inventoryDetailList = list(inventoryDetailLambdaQueryWrapper); | |
60 | + if (inventoryDetailList.size() == 0) { | |
61 | + return BigDecimal.ZERO; | |
62 | + } | |
63 | + BigDecimal totalQty = inventoryDetailList.stream().map(InventoryDetail::getQty).reduce(BigDecimal.ZERO, BigDecimal::add); | |
64 | + BigDecimal totalTaskQty = inventoryDetailList.stream().map(InventoryDetail::getTaskQty).reduce(BigDecimal.ZERO, BigDecimal::add); | |
65 | + BigDecimal sumQty = totalQty.subtract(totalTaskQty); | |
66 | + return sumQty; | |
67 | + } | |
47 | 68 | } |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/job/ErpTask.java
1 | 1 | package org.jeecg.modules.wms.monitor.job; |
2 | 2 | |
3 | -import com.baomidou.mybatisplus.core.conditions.Wrapper; | |
4 | -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | |
5 | -import com.baomidou.mybatisplus.core.toolkit.Wrappers; | |
6 | -import lombok.extern.slf4j.Slf4j; | |
3 | +import java.util.HashMap; | |
4 | +import java.util.List; | |
5 | +import java.util.Map; | |
6 | + | |
7 | +import javax.annotation.Resource; | |
8 | + | |
7 | 9 | import org.apache.commons.collections.MapUtils; |
8 | 10 | import org.jeecg.modules.wms.api.erp.service.IErpService; |
9 | 11 | import org.jeecg.modules.wms.receipt.receiptHeader.entity.ReceiptHeader; |
... | ... | @@ -15,10 +17,10 @@ import org.quartz.Job; |
15 | 17 | import org.quartz.JobExecutionContext; |
16 | 18 | import org.quartz.JobExecutionException; |
17 | 19 | |
18 | -import javax.annotation.Resource; | |
19 | -import java.util.HashMap; | |
20 | -import java.util.List; | |
21 | -import java.util.Map; | |
20 | +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | |
21 | +import com.baomidou.mybatisplus.core.toolkit.Wrappers; | |
22 | + | |
23 | +import lombok.extern.slf4j.Slf4j; | |
22 | 24 | |
23 | 25 | /** |
24 | 26 | * 定时回传ERP |
... | ... | @@ -39,7 +41,7 @@ public class ErpTask implements Job { |
39 | 41 | |
40 | 42 | @Override |
41 | 43 | public void execute(JobExecutionContext context) throws JobExecutionException { |
42 | - String taskKey = "erpBack"; | |
44 | + String taskKey = "ErpTask"; | |
43 | 45 | if (MapUtils.getBoolean(runningTaskMap, taskKey, false)) { |
44 | 46 | return; |
45 | 47 | } |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/job/MesTask.java
... | ... | @@ -40,7 +40,7 @@ public class MesTask implements Job { |
40 | 40 | */ |
41 | 41 | @Override |
42 | 42 | public void execute(JobExecutionContext context) throws JobExecutionException { |
43 | - String taskKey = "mesBack"; | |
43 | + String taskKey = "MesTask"; | |
44 | 44 | if (MapUtils.getBoolean(runningTaskMap, taskKey, false)) { |
45 | 45 | return; |
46 | 46 | } |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/job/MesTrYTask.java
... | ... | @@ -40,7 +40,7 @@ public class MesTrYTask implements Job { |
40 | 40 | */ |
41 | 41 | @Override |
42 | 42 | public void execute(JobExecutionContext context) throws JobExecutionException { |
43 | - String taskKey = "mesBack"; | |
43 | + String taskKey = "MesTrYTask"; | |
44 | 44 | if (MapUtils.getBoolean(runningTaskMap, taskKey, false)) { |
45 | 45 | return; |
46 | 46 | } |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/job/RyTask.java
1 | 1 | package org.jeecg.modules.wms.monitor.job; |
2 | 2 | |
3 | -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | |
4 | -import com.baomidou.mybatisplus.core.toolkit.Wrappers; | |
5 | -import lombok.extern.slf4j.Slf4j; | |
3 | +import java.util.HashMap; | |
4 | +import java.util.List; | |
5 | +import java.util.Map; | |
6 | + | |
7 | +import javax.annotation.Resource; | |
8 | + | |
6 | 9 | import org.apache.commons.collections.MapUtils; |
7 | 10 | import org.jeecg.common.util.DateUtils; |
8 | 11 | import org.jeecg.modules.wms.task.taskHeader.entity.TaskHeader; |
... | ... | @@ -12,10 +15,10 @@ import org.quartz.Job; |
12 | 15 | import org.quartz.JobExecutionContext; |
13 | 16 | import org.quartz.JobExecutionException; |
14 | 17 | |
15 | -import javax.annotation.Resource; | |
16 | -import java.util.HashMap; | |
17 | -import java.util.List; | |
18 | -import java.util.Map; | |
18 | +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | |
19 | +import com.baomidou.mybatisplus.core.toolkit.Wrappers; | |
20 | + | |
21 | +import lombok.extern.slf4j.Slf4j; | |
19 | 22 | |
20 | 23 | /** |
21 | 24 | * 定时任务 |
... | ... | @@ -32,7 +35,7 @@ public class RyTask implements Job { |
32 | 35 | @Override |
33 | 36 | public void execute(JobExecutionContext context) throws JobExecutionException { |
34 | 37 | log.info(String.format(" Jeecg-Boot 执行任务! 时间:" + DateUtils.getTimestamp())); |
35 | - String taskKey = "executeTask"; | |
38 | + String taskKey = "RyTask"; | |
36 | 39 | if (MapUtils.getBoolean(runningTaskMap, taskKey, false)) { |
37 | 40 | return; |
38 | 41 | } |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/shipment/shipmentHeader/controller/ShipmentHeaderController.java
1 | 1 | package org.jeecg.modules.wms.shipment.shipmentHeader.controller; |
2 | 2 | |
3 | -import com.aliyun.oss.ServiceException; | |
3 | +import java.io.IOException; | |
4 | +import java.math.BigDecimal; | |
5 | +import java.util.Arrays; | |
6 | +import java.util.List; | |
7 | +import java.util.Map; | |
8 | +import java.util.stream.Collectors; | |
9 | + | |
10 | +import javax.annotation.Resource; | |
11 | +import javax.servlet.http.HttpServletRequest; | |
12 | +import javax.servlet.http.HttpServletResponse; | |
13 | + | |
14 | +import org.apache.shiro.SecurityUtils; | |
4 | 15 | import org.apache.shiro.authz.annotation.RequiresPermissions; |
5 | -import org.jeecg.common.system.query.QueryGenerator; | |
6 | -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | |
7 | -import com.baomidou.mybatisplus.core.metadata.IPage; | |
8 | -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | |
9 | -import lombok.extern.slf4j.Slf4j; | |
10 | -import org.jeecg.common.system.base.controller.JeecgController; | |
11 | 16 | import org.jeecg.common.api.vo.Result; |
12 | -import org.jeecg.utils.HuahengJwtUtil; | |
17 | +import org.jeecg.common.aspect.annotation.AutoLog; | |
18 | +import org.jeecg.common.system.base.controller.JeecgController; | |
19 | +import org.jeecg.common.system.query.QueryGenerator; | |
20 | +import org.jeecg.common.system.vo.LoginUser; | |
21 | +import org.jeecg.common.util.oConvertUtils; | |
13 | 22 | import org.jeecg.modules.wms.api.erp.service.IErpService; |
14 | -import org.jeecg.modules.wms.receipt.receiptHeader.entity.ReceiptDetail; | |
15 | -import org.jeecg.modules.wms.receipt.receiptHeader.entity.ReceiptHeader; | |
23 | +import org.jeecg.modules.wms.inventory.inventoryHeader.entity.InventoryDetail; | |
24 | +import org.jeecg.modules.wms.inventory.inventoryHeader.service.IInventoryDetailService; | |
16 | 25 | import org.jeecg.modules.wms.shipment.shipmentHeader.entity.ShipmentDetail; |
17 | 26 | import org.jeecg.modules.wms.shipment.shipmentHeader.entity.ShipmentHeader; |
18 | 27 | import org.jeecg.modules.wms.shipment.shipmentHeader.service.IShipmentDetailService; |
19 | 28 | import org.jeecg.modules.wms.shipment.shipmentHeader.service.IShipmentHeaderService; |
20 | -import org.jeecg.utils.StringUtils; | |
29 | +import org.jeecg.utils.HuahengJwtUtil; | |
21 | 30 | import org.jeecg.utils.constant.QuantityConstant; |
22 | -import org.springframework.beans.factory.annotation.Autowired; | |
23 | -import org.springframework.web.bind.annotation.*; | |
24 | - | |
25 | -import javax.annotation.Resource; | |
26 | -import javax.servlet.http.HttpServletRequest; | |
27 | -import javax.servlet.http.HttpServletResponse; | |
28 | -import org.springframework.web.servlet.ModelAndView; | |
29 | -import java.util.Arrays; | |
30 | -import org.jeecg.common.util.oConvertUtils; | |
31 | -import io.swagger.annotations.Api; | |
32 | -import io.swagger.annotations.ApiOperation; | |
33 | -import org.jeecg.common.aspect.annotation.AutoLog; | |
34 | -import org.apache.shiro.SecurityUtils; | |
35 | -import org.jeecg.common.system.vo.LoginUser; | |
36 | 31 | import org.jeecgframework.poi.excel.ExcelImportUtil; |
37 | 32 | import org.jeecgframework.poi.excel.def.NormalExcelConstants; |
38 | 33 | import org.jeecgframework.poi.excel.entity.ExportParams; |
39 | 34 | import org.jeecgframework.poi.excel.entity.ImportParams; |
40 | 35 | import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; |
36 | +import org.springframework.beans.factory.annotation.Autowired; | |
37 | +import org.springframework.web.bind.annotation.*; | |
41 | 38 | import org.springframework.web.multipart.MultipartFile; |
42 | 39 | import org.springframework.web.multipart.MultipartHttpServletRequest; |
43 | -import java.io.IOException; | |
44 | -import java.util.List; | |
45 | -import java.util.Map; | |
46 | -import java.util.stream.Collectors; | |
40 | +import org.springframework.web.servlet.ModelAndView; | |
41 | + | |
42 | +import com.aliyun.oss.ServiceException; | |
43 | +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | |
44 | +import com.baomidou.mybatisplus.core.metadata.IPage; | |
45 | +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | |
46 | + | |
47 | +import io.swagger.annotations.Api; | |
48 | +import io.swagger.annotations.ApiOperation; | |
49 | +import lombok.extern.slf4j.Slf4j; | |
47 | 50 | |
48 | 51 | /** |
49 | 52 | * @Description: 出库单 |
... | ... | @@ -64,6 +67,8 @@ public class ShipmentHeaderController extends JeecgController<ShipmentHeader, IS |
64 | 67 | private IShipmentDetailService shipmentDetailService; |
65 | 68 | @Resource |
66 | 69 | private IErpService erpService; |
70 | + @Resource | |
71 | + private IInventoryDetailService inventoryDetailService; | |
67 | 72 | |
68 | 73 | /*---------------------------------主表处理-begin-------------------------------------*/ |
69 | 74 | |
... | ... | @@ -173,9 +178,22 @@ public class ShipmentHeaderController extends JeecgController<ShipmentHeader, IS |
173 | 178 | @GetMapping(value = "/listShipmentDetailByMainId") |
174 | 179 | public Result<IPage<ShipmentDetail>> listShipmentDetailByMainId(ShipmentDetail shipmentDetail, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
175 | 180 | @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) { |
176 | - QueryWrapper<ShipmentDetail> queryWrapper = QueryGenerator.initQueryWrapper(shipmentDetail, req.getParameterMap()); | |
181 | + QueryWrapper<ShipmentDetail> queryWrapper = QueryGenerator.initQueryWrapper(shipmentDetail, null); | |
177 | 182 | Page<ShipmentDetail> page = new Page<ShipmentDetail>(pageNo, pageSize); |
178 | 183 | IPage<ShipmentDetail> pageList = shipmentDetailService.page(page, queryWrapper); |
184 | + List<ShipmentDetail> shipmentDetailList = pageList.getRecords(); | |
185 | + for (ShipmentDetail shipmentDetail1 : shipmentDetailList) { | |
186 | + InventoryDetail inventoryDetail = new InventoryDetail(); | |
187 | + inventoryDetail.setMaterialCode(shipmentDetail1.getMaterialCode()); | |
188 | + inventoryDetail.setWarehouseCode(shipmentDetail1.getWarehouseCode()); | |
189 | + inventoryDetail.setInventoryStatus(shipmentDetail1.getInventoryStatus()); | |
190 | + inventoryDetail.setCompanyCode(shipmentDetail1.getCompanyCode()); | |
191 | + inventoryDetail.setBatch(shipmentDetail1.getBatch()); | |
192 | + inventoryDetail.setProject(shipmentDetail1.getProject()); | |
193 | + inventoryDetail.setLot(shipmentDetail1.getLot()); | |
194 | + BigDecimal sumQty = inventoryDetailService.getSumQty(inventoryDetail); | |
195 | + shipmentDetail1.setInventoryQty(sumQty); | |
196 | + } | |
179 | 197 | return Result.OK(pageList); |
180 | 198 | } |
181 | 199 | |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/shipment/shipmentHeader/entity/ShipmentDetail.java
1 | 1 | package org.jeecg.modules.wms.shipment.shipmentHeader.entity; |
2 | 2 | |
3 | 3 | import java.io.Serializable; |
4 | +import java.util.Date; | |
5 | + | |
6 | +import org.jeecg.common.aspect.annotation.Dict; | |
7 | +import org.jeecgframework.poi.excel.annotation.Excel; | |
8 | + | |
4 | 9 | import com.baomidou.mybatisplus.annotation.IdType; |
10 | +import com.baomidou.mybatisplus.annotation.TableField; | |
5 | 11 | import com.baomidou.mybatisplus.annotation.TableId; |
6 | 12 | import com.baomidou.mybatisplus.annotation.TableName; |
7 | -import org.jeecg.common.aspect.annotation.Dict; | |
8 | -import lombok.Data; | |
9 | -import com.fasterxml.jackson.annotation.JsonFormat; | |
10 | -import org.springframework.format.annotation.DateTimeFormat; | |
11 | -import org.jeecgframework.poi.excel.annotation.Excel; | |
12 | -import java.util.Date; | |
13 | + | |
13 | 14 | import io.swagger.annotations.ApiModel; |
14 | 15 | import io.swagger.annotations.ApiModelProperty; |
15 | -import java.io.UnsupportedEncodingException; | |
16 | +import lombok.Data; | |
16 | 17 | |
17 | 18 | /** |
18 | 19 | * @Description: 出库单详情 |
... | ... | @@ -65,10 +66,14 @@ public class ShipmentDetail implements Serializable { |
65 | 66 | @Excel(name = "单据数量", width = 15) |
66 | 67 | @ApiModelProperty(value = "单据数量") |
67 | 68 | private java.math.BigDecimal qty; |
68 | - /** 已收数量 */ | |
69 | - @Excel(name = "已收数量", width = 15) | |
70 | - @ApiModelProperty(value = "已收数量") | |
69 | + /** 已出数量 */ | |
70 | + @Excel(name = "已出数量", width = 15) | |
71 | + @ApiModelProperty(value = "已出数量") | |
71 | 72 | private java.math.BigDecimal taskQty; |
73 | + /** 库存数量 */ | |
74 | + @ApiModelProperty(value = "库存数量") | |
75 | + @TableField(exist = false) | |
76 | + private java.math.BigDecimal inventoryQty; | |
72 | 77 | /** 库存状态 */ |
73 | 78 | @Excel(name = "库存状态", width = 15) |
74 | 79 | @Dict(dicCode = "inventory_status") |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/entity/TaskHeader.java
... | ... | @@ -109,7 +109,7 @@ public class TaskHeader implements Serializable { |
109 | 109 | @ApiModelProperty(value = "MES提交次数") |
110 | 110 | private Integer backMesTimes; |
111 | 111 | @ApiModelProperty(value = "MES回传的唯一标识") |
112 | - private String backMesTimeStamp; | |
112 | + private String backMesTimestamp; | |
113 | 113 | @ApiModelProperty(value = "长度") |
114 | 114 | private Integer length; |
115 | 115 | @ApiModelProperty(value = "宽度") |
... | ... |