新增工单页面批量选择工单物料进行出库
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
package org.nl.wms.pdm.controller;
|
||||
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.common.base.TableDataInfo;
|
||||
import org.nl.common.domain.query.PageQuery;
|
||||
import org.nl.common.logging.annotation.Log;
|
||||
import org.nl.wms.pdm.service.IPdmBdWorkorderService;
|
||||
import org.nl.wms.pdm.service.dao.PdmBdWorkorder;
|
||||
import org.nl.wms.pdm.service.dto.PdmBdWorkorderQuery;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Set;
|
||||
/**
|
||||
* @author lyd
|
||||
* @date 2023-05-05
|
||||
**/
|
||||
@Slf4j
|
||||
@RestController
|
||||
@Api(tags = "工单管理管理")
|
||||
@RequestMapping("/api/pdmBdWorkorder")
|
||||
public class PdmBdWorkorderController {
|
||||
|
||||
@Autowired
|
||||
private IPdmBdWorkorderService pdmBdWorkorderService;
|
||||
|
||||
@GetMapping
|
||||
@Log("查询工单管理")
|
||||
@ApiOperation("查询工单管理")
|
||||
//@SaCheckPermission("@el.check('pdmBdWorkorder:list')")
|
||||
public ResponseEntity<Object> query(PdmBdWorkorderQuery query, PageQuery page){
|
||||
return new ResponseEntity<>(TableDataInfo.build(pdmBdWorkorderService.queryAll(query,page)),HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping
|
||||
@Log("新增工单管理")
|
||||
@ApiOperation("新增工单管理")
|
||||
//@SaCheckPermission("@el.check('pdmBdWorkorder:add')")
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody PdmBdWorkorder entity){
|
||||
pdmBdWorkorderService.create(entity);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
@Log("修改工单管理")
|
||||
@ApiOperation("修改工单管理")
|
||||
//@SaCheckPermission("@el.check('pdmBdWorkorder:edit')")
|
||||
public ResponseEntity<Object> update(@Validated @RequestBody PdmBdWorkorder entity){
|
||||
pdmBdWorkorderService.update(entity);
|
||||
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
|
||||
}
|
||||
|
||||
@Log("删除工单管理")
|
||||
@ApiOperation("删除工单管理")
|
||||
//@SaCheckPermission("@el.check('pdmBdWorkorder:del')")
|
||||
@DeleteMapping
|
||||
public ResponseEntity<Object> delete(@RequestBody Set<String> ids) {
|
||||
pdmBdWorkorderService.deleteAll(ids);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package org.nl.wms.pdm.controller;
|
||||
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.common.base.TableDataInfo;
|
||||
import org.nl.common.domain.query.PageQuery;
|
||||
import org.nl.common.logging.annotation.Log;
|
||||
import org.nl.wms.pdm.service.IPdmBdWorkorderService;
|
||||
import org.nl.wms.pdm.service.dao.PdmBdWorkorder;
|
||||
import org.nl.wms.pdm.service.dao.PdmBdWorkorderDetail;
|
||||
import org.nl.wms.pdm.service.dto.PdmBdWorkorderQuery;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@Api(tags = "工单详情管理")
|
||||
@RequestMapping("/api/pdmBdWorkorderDetail")
|
||||
public class PdmBdWorkorderDetailController {
|
||||
|
||||
@Autowired
|
||||
private IPdmBdWorkorderService pdmBdWorkorderService;
|
||||
|
||||
@GetMapping
|
||||
@Log("查询工单详情管理")
|
||||
@ApiOperation("查询工单详情管理")
|
||||
//@SaCheckPermission("@el.check('pdmBdWorkorder:list')")
|
||||
public ResponseEntity<Object> query(PdmBdWorkorderQuery query, PageQuery page){
|
||||
return new ResponseEntity<>(TableDataInfo.build(pdmBdWorkorderService.queryAllDetail(query,page)),HttpStatus.OK);
|
||||
}
|
||||
|
||||
@GetMapping
|
||||
@Log("根据物料查询点位库存")
|
||||
@ApiOperation("根据物料查询点位库存")
|
||||
//@SaCheckPermission("@el.check('pdmBdWorkorder:list')")
|
||||
public ResponseEntity<Object> queryPointDetail(String PalletSN, PageQuery page){
|
||||
return new ResponseEntity<>(TableDataInfo.build(pdmBdWorkorderService.queryPointDetail(PalletSN,page)),HttpStatus.OK);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
package org.nl.wms.pdm.service.dto;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName("sch_base_material")
|
||||
public class PdmBdWorkorderDetail implements Serializable {
|
||||
|
||||
/** 工单编号 */
|
||||
private String workorder_code;
|
||||
/** 实际数量 */
|
||||
private BigDecimal real_qty;
|
||||
/** 订单行项目编号 **/
|
||||
private String POSNR;
|
||||
/** 预留行项目编号 **/
|
||||
private String RSPOS;
|
||||
/** 移动类型 **/
|
||||
private String BWART;
|
||||
/** 物料编码 **/
|
||||
private String MATNR;
|
||||
/** 物料名称 **/
|
||||
private String MAKTX;
|
||||
/** 产品类别 **/
|
||||
private String MTYPE;
|
||||
/** 产品类别描述 **/
|
||||
private String MTYTXT;
|
||||
/** 数量 **/
|
||||
private String BDMNG;
|
||||
/** 计量单位 **/
|
||||
private String MEINS;
|
||||
/** 物料供应标识 **/
|
||||
private String BEIKZ;
|
||||
/** 预留字段11 **/
|
||||
private String ZRSV11;
|
||||
/** 预留字段12 **/
|
||||
private String ZRSV12;
|
||||
/** 预留字段13 **/
|
||||
private String ZRSV13;
|
||||
/** 预留字段14 **/
|
||||
private String ZRSV14;
|
||||
/** 预留字段15 **/
|
||||
private String ZRSV15;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
package org.nl.wms.pdm.service.dao;public class PointDetail {
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package org.nl.wms.pdm.service.dao;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class PointDetail {
|
||||
private String point_code;
|
||||
private String productName;
|
||||
private String PalletSN;
|
||||
private String qty;
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package org.nl.wms.pdm.service.dao.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import org.nl.wms.pdm.service.dao.PdmBdWorkorder;
|
||||
import org.nl.wms.pdm.service.dao.PdmBdWorkorderDetail;
|
||||
import org.nl.wms.pdm.service.dao.PointDetail;
|
||||
import org.nl.wms.pdm.service.dto.PdmBdWorkorderQuery;
|
||||
|
||||
public interface PdmBdWorkorderDetailMapper extends BaseMapper<PdmBdWorkorderDetail> {
|
||||
|
||||
IPage<PointDetail> selectPointDetail(IPage<PointDetail> pages, String productname);
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.nl.wms.pdm.service.dao.mapper.PdmBdWorkorderDetailMapper">
|
||||
<select id="selectPointDetail" resultType="org.nl.wms.pdm.service.dao.PointDetail">
|
||||
select p.point_code,productName,PalletSN,qty from sch_base_point p left join
|
||||
(select productName,PalletSN,sum(qty) as qty from sch_base_material GROUP BY productName,PalletSN ) m
|
||||
on p.vehicle_code2=m.PalletSN
|
||||
where p.region_code='YL' and p.ing_task_code is not null and m.productname=#{productname}
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -3,7 +3,9 @@ package org.nl.wms.pdm.service.impl;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -13,6 +15,9 @@ import org.nl.common.utils.CodeUtil;
|
||||
import org.nl.common.utils.SecurityUtils;
|
||||
import org.nl.wms.pdm.service.IPdmBdWorkorderService;
|
||||
import org.nl.wms.pdm.service.dao.PdmBdWorkorder;
|
||||
import org.nl.wms.pdm.service.dao.PdmBdWorkorderDetail;
|
||||
import org.nl.wms.pdm.service.dao.PointDetail;
|
||||
import org.nl.wms.pdm.service.dao.mapper.PdmBdWorkorderDetailMapper;
|
||||
import org.nl.wms.pdm.service.dao.mapper.PdmBdWorkorderMapper;
|
||||
import org.nl.wms.pdm.service.dto.PdmBdWorkorderQuery;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -32,6 +37,8 @@ public class PdmBdWorkorderServiceImpl extends ServiceImpl<PdmBdWorkorderMapper,
|
||||
|
||||
@Autowired
|
||||
private PdmBdWorkorderMapper pdmBdWorkorderMapper;
|
||||
@Autowired
|
||||
private PdmBdWorkorderDetailMapper pdmBdWorkorderDetailMapper;
|
||||
|
||||
@Override
|
||||
public IPage<PdmBdWorkorder> queryAll(PdmBdWorkorderQuery query, PageQuery page){
|
||||
@@ -82,4 +89,23 @@ public class PdmBdWorkorderServiceImpl extends ServiceImpl<PdmBdWorkorderMapper,
|
||||
pdmBdWorkorderMapper.deleteBatchIds(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void createDetail(PdmBdWorkorderDetail entity) {
|
||||
pdmBdWorkorderDetailMapper.insert(entity);
|
||||
}
|
||||
@Override
|
||||
public IPage<PdmBdWorkorderDetail> queryAllDetail(PdmBdWorkorderQuery query, PageQuery page){
|
||||
IPage<PdmBdWorkorderDetail> pages = new Page<>(page.getPage() + 1, page.getSize());
|
||||
LambdaQueryWrapper<PdmBdWorkorderDetail> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(PdmBdWorkorderDetail::getWorkorder_code,query.getWorkorder_code());
|
||||
pages = pdmBdWorkorderDetailMapper.selectPage(pages,wrapper);
|
||||
return pages;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IPage<PointDetail> queryPointDetail(String productname, PageQuery page){
|
||||
IPage<PointDetail> pages = new Page<>(page.getPage() + 1, page.getSize());
|
||||
pages = pdmBdWorkorderDetailMapper.selectPointDetail(pages, productname);
|
||||
return pages;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -198,7 +198,7 @@ public class KJRKTask extends AbstractTask {
|
||||
vehiclematerialgroupService.save(groupEntity);
|
||||
// 任务完成
|
||||
taskObj.setTask_status(TaskStatus.FINISHED.getCode());
|
||||
taskObj.setGroup_id(groupEntity.getGroup_id());
|
||||
taskObj.setGroup_id(ObjectUtil.isNotEmpty(groupEntity)?groupEntity.getGroup_id():null);
|
||||
taskObj.setRemark("任务完成");
|
||||
try {
|
||||
//todo 入库成功后上报mes
|
||||
|
||||
@@ -189,7 +189,7 @@ public class POINTTask extends AbstractTask {
|
||||
pointService.updateById(startPointObj);
|
||||
// 任务完成
|
||||
taskObj.setTask_status(TaskStatus.FINISHED.getCode());
|
||||
taskObj.setGroup_id(one.getGroup_id());
|
||||
taskObj.setGroup_id(ObjectUtil.isNotEmpty(one)?one.getGroup_id():null);
|
||||
taskObj.setRemark("任务完成");
|
||||
}
|
||||
if (status.equals(TaskStatus.CANCELED)) { // 取消
|
||||
|
||||
@@ -197,7 +197,7 @@ public class SSXBKJTask extends AbstractTask {
|
||||
vehiclematerialgroupService.save(groupEntity);
|
||||
// 任务完成
|
||||
taskObj.setTask_status(TaskStatus.FINISHED.getCode());
|
||||
taskObj.setGroup_id(groupEntity.getGroup_id());
|
||||
taskObj.setGroup_id(ObjectUtil.isNotEmpty(groupEntity)?groupEntity.getGroup_id():null);
|
||||
taskObj.setRemark("任务完成");
|
||||
try {
|
||||
//todo 入库成功后上报mes
|
||||
|
||||
@@ -114,10 +114,10 @@ public class YCLCKTask extends AbstractTask {
|
||||
taskService.update(task);
|
||||
|
||||
//发起任务时先把点位占用,防止发起重复任务
|
||||
// point.setIng_task_code(task.getTask_code());
|
||||
point.setIng_task_code(task.getTask_code());
|
||||
// point.setVehicle_qty(point.getVehicle_qty() - 1);
|
||||
// point.setVehicle_type(materialType);
|
||||
// pointService.update(point);
|
||||
pointService.update(point);
|
||||
|
||||
//下发
|
||||
this.renotifyAcs(task);
|
||||
@@ -224,7 +224,7 @@ public class YCLCKTask extends AbstractTask {
|
||||
pointService.updateById(startPointObj);
|
||||
// 任务完成
|
||||
taskObj.setTask_status(TaskStatus.FINISHED.getCode());
|
||||
taskObj.setGroup_id(one.getGroup_id());
|
||||
taskObj.setGroup_id(ObjectUtil.isNotEmpty(one)?one.getGroup_id():null);
|
||||
taskObj.setRemark("任务完成");
|
||||
try {
|
||||
//todo 待确认具体传值
|
||||
|
||||
@@ -201,7 +201,7 @@ public class YCLRKTask extends AbstractTask {
|
||||
vehiclematerialgroupService.save(groupEntity);
|
||||
// 任务完成
|
||||
taskObj.setTask_status(TaskStatus.FINISHED.getCode());
|
||||
taskObj.setGroup_id(groupEntity.getGroup_id());
|
||||
taskObj.setGroup_id(ObjectUtil.isNotEmpty(groupEntity)?groupEntity.getGroup_id():null);
|
||||
taskObj.setRemark("任务完成");
|
||||
try {
|
||||
//todo 待确认具体传值
|
||||
|
||||
Reference in New Issue
Block a user