@@ -46,7 +46,7 @@ public class CurrTaskController extends BaseController { | |||
@PostMapping(value = "currentTaskNow") | |||
@ApiOperation(value = "获取当前执行的任务") | |||
@ApiOperation(value = "获取当前执行的任务 (车辆名称传id)") | |||
public R<PageVo<CurrTaskQueryVo>> currentTask(@Validated @RequestBody CurrTaskQueryParam param) { | |||
return currTaskService.currentTaskPage(param); | |||
} | |||
@@ -40,11 +40,16 @@ public class OrderInfoController extends BaseController { | |||
return orderInfoService.page(orderBaseParam); | |||
} | |||
/** | |||
* 应该没有人工创建信息这个接口 | |||
*/ | |||
@PostMapping(value = "personCreateOrder") | |||
@ApiOperation(value = "人工创建订单信息") | |||
private R personCreateOrder(@Validated({Default.class}) @RequestBody OrderInfoPersonCreateParam orderInfoPersonCreateParam) { | |||
@Deprecated | |||
private R<String> personCreateOrder(@Validated({Default.class}) @RequestBody OrderInfoPersonCreateParam orderInfoPersonCreateParam) { | |||
return orderInfoService.personCreateOrder(orderInfoPersonCreateParam); | |||
} | |||
@PostMapping(value = "get") | |||
@ApiOperation(value = "当前订单查看详情") | |||
private R<OrderInfoVo> get(@Validated @RequestBody IdParam idParam) { | |||
@@ -66,13 +71,15 @@ public class OrderInfoController extends BaseController { | |||
@PostMapping(value = "completeOrder") | |||
@ApiOperation(value = "完成订单") | |||
private R completeOrder(@Validated @RequestBody IdParam idParam) { | |||
@Deprecated | |||
private R<String> completeOrder(@Validated @RequestBody IdParam idParam) { | |||
return orderInfoService.completeOrder(idParam); | |||
} | |||
@PostMapping(value = "voidOrder") | |||
@ApiOperation(value = "作废订单") | |||
private R voidOrder(@Validated @RequestBody IdParam idParam) { | |||
@Deprecated | |||
private R<String> voidOrder(@Validated @RequestBody IdParam idParam) { | |||
return orderInfoService.voidOrder(idParam); | |||
} | |||
} |
@@ -28,7 +28,7 @@ public class TaskCreateParam extends BaseParam { | |||
private String startPosition; | |||
@ApiModelProperty(value = "终点位置", required = true) | |||
private String targetPosition; | |||
@ApiModelProperty(value = "加工任务类型", required = true) | |||
@ApiModelProperty(value = "加工类型:0 初始加工,1 复加工 ,2 追加加工", required = true) | |||
private Integer processType; | |||
@ApiModelProperty(value = "窑炉Id", required = true) | |||
private Long kilnId; | |||
@@ -10,6 +10,7 @@ import com.mt.wms.empty.params.TaskCreateDetParam; | |||
import com.mt.wms.empty.vo.CurrTaskDetVo; | |||
import com.mt.wms.empty.vo.OrderInfoTaskDetVo; | |||
import java.util.HashMap; | |||
import java.util.List; | |||
/** | |||
@@ -66,4 +67,12 @@ public interface CurrTaskDetService { | |||
* @return 结果 | |||
*/ | |||
R<String> deleteByCurrTaskId(Long currTaskId); | |||
/** | |||
* 通过标识卡号查询订单统计数 | |||
* | |||
* @param idCard 任务详情历史 | |||
* @return 结果 | |||
*/ | |||
HashMap<String, Double> getSumByIdCard(String idCard); | |||
} |
@@ -43,7 +43,7 @@ public interface CurrTaskService { | |||
R<PageVo<CurrTaskQueryVo>> currentTaskPage(CurrTaskQueryParam param); | |||
/** | |||
* 完成执行任务 | |||
* 完成执行任务 不会物理删除,会将删除值置为0,同时在历史表复制一份记录 方便在订单未完成时查询任务详情 | |||
* | |||
* @param param id | |||
* @return 结果 | |||
@@ -6,6 +6,7 @@ import com.mt.wms.core.vo.R; | |||
import com.mt.wms.empty.params.OrderInfoTaskDetParam; | |||
import com.mt.wms.empty.vo.OrderInfoTaskDetVo; | |||
import java.util.HashMap; | |||
import java.util.List; | |||
/** | |||
@@ -39,4 +40,12 @@ public interface TaskDetHisService { | |||
* @return 结果 | |||
*/ | |||
PageVo<OrderInfoTaskDetVo> getHisOrderHisTask(OrderInfoTaskDetParam param); | |||
/** | |||
* 通过标识卡号查询订单统计数 | |||
* | |||
* @param idCard 任务详情历史 | |||
* @return 结果 | |||
*/ | |||
HashMap<String, Double> getSumByIdCard(String idCard); | |||
} |
@@ -13,12 +13,15 @@ import com.mt.wms.empty.params.CurrTaskDetQueryParam; | |||
import com.mt.wms.empty.params.OrderInfoTaskDetParam; | |||
import com.mt.wms.empty.params.TaskCreateDetParam; | |||
import com.mt.wms.empty.service.CurrTaskDetService; | |||
import com.mt.wms.empty.service.CurrTaskService; | |||
import com.mt.wms.empty.vo.CurrTaskDetVo; | |||
import com.mt.wms.empty.vo.CurrTaskVo; | |||
import com.mt.wms.empty.vo.OrderInfoTaskDetVo; | |||
import org.springframework.beans.factory.annotation.Autowired; | |||
import org.springframework.stereotype.Service; | |||
import org.springframework.transaction.annotation.Transactional; | |||
import java.util.HashMap; | |||
import java.util.List; | |||
/** | |||
@@ -34,15 +37,17 @@ public class CurrTaskDetServiceImpl extends BaseService implements CurrTaskDetSe | |||
@Autowired | |||
CurrTaskDetServiceBiz currTaskDetServiceBiz; | |||
@Autowired | |||
CurrTaskService currTaskService; | |||
@Override | |||
public PageVo<OrderInfoTaskDetVo> getCurrOrderCurrTask(OrderInfoTaskDetParam param) { | |||
QueryWrapper<CurrTaskDet> queryWrapper = new QueryWrapper<>(); | |||
queryWrapper.eq(CurrTaskDet.IDEN_CARD_NUM,param.getIdenCardNum()) | |||
.eq(CurrTaskDet.ORDER_NO,param.getOrderNo()) | |||
.eq(CurrTaskDet.VALID,1); | |||
queryWrapper.eq(CurrTaskDet.IDEN_CARD_NUM, param.getIdenCardNum()) | |||
.eq(CurrTaskDet.ORDER_NO, param.getOrderNo()) | |||
.eq(CurrTaskDet.VALID, 1); | |||
Page<CurrTaskDet> page = currTaskDetServiceBiz.page(new Page<>(param.getCurrent(), param.getSize()), queryWrapper); | |||
return new PageVo<>(page, OrderInfoTaskDetVo.class); | |||
return new PageVo<>(page, OrderInfoTaskDetVo.class); | |||
} | |||
@Override | |||
@@ -85,4 +90,27 @@ public class CurrTaskDetServiceImpl extends BaseService implements CurrTaskDetSe | |||
currTaskDetServiceBiz.remove(new QueryWrapper<CurrTaskDet>().eq(CurrTaskDet.CURR_TASK_ID, currTaskId)); | |||
return successful("成功。"); | |||
} | |||
@Override | |||
public HashMap<String, Double> getSumByIdCard(String idCard) { | |||
HashMap<String, Double> result = new HashMap<>(2); | |||
QueryWrapper<CurrTaskDet> queryWrapper = new QueryWrapper<>(); | |||
queryWrapper.eq(CurrTaskDet.IDEN_CARD_NUM, idCard) | |||
.eq(CurrTaskDet.VALID, 1); | |||
List<CurrTaskDet> list = currTaskDetServiceBiz.list(queryWrapper); | |||
list.forEach(e -> { | |||
CurrTaskVo byId = currTaskService.getCurrTask(IdParam.builder().id(e.getCurrTaskId()).build()); | |||
//如果加工类型是复加工,或者任务作废。移除对象 | |||
if (byId.getProcessType().equals(2) || byId.getValid() != 1) | |||
{ | |||
list.remove(e); | |||
} | |||
}); | |||
//计算加工总数 | |||
double sumWeight = list.stream().mapToDouble(CurrTaskDet::getWeight).sum(); | |||
double sumQuantity = list.stream().mapToDouble(CurrTaskDet::getQuantity).sum(); | |||
result.put("weight", sumWeight); | |||
result.put("quantity", sumQuantity); | |||
return result; | |||
} | |||
} |
@@ -94,7 +94,9 @@ public class CurrTaskServiceImpl extends BaseService implements CurrTaskService | |||
taskHis.setId(null); | |||
//将主任务放入到历史表,清空id,防止重复 | |||
R<IdVo> save = taskHisService.save(taskHis); | |||
currTaskServiceBiz.removeById(byId.getId()); | |||
byId.setValid(0); | |||
byId.setStatus(2); | |||
currTaskServiceBiz.updateById(byId); | |||
List<CurrTaskDet> taskDetailsByMainId = currTaskDetService.getTaskDetailsByMainId(IdParam.builder().id(byId.getId()).build()); | |||
List<TaskDetHis> taskDetHis = com.mt.wms.core.utils.BeanUtils.copyList(taskDetailsByMainId, TaskDetHis.class); | |||
taskDetHis.forEach(detHis -> { | |||
@@ -23,10 +23,7 @@ import com.mt.wms.core.vo.R; | |||
import com.mt.wms.empty.controller.ApmsController; | |||
import com.mt.wms.empty.enums.OrderSourceEnum; | |||
import com.mt.wms.empty.params.*; | |||
import com.mt.wms.empty.service.CurrTaskDetService; | |||
import com.mt.wms.empty.service.CurrTaskService; | |||
import com.mt.wms.empty.service.OrderInfoHisService; | |||
import com.mt.wms.empty.service.OrderInfoService; | |||
import com.mt.wms.empty.service.*; | |||
import com.mt.wms.empty.vo.CurrTaskVo; | |||
import com.mt.wms.empty.vo.OrderInfoTaskDetVo; | |||
import com.mt.wms.empty.vo.OrderInfoVo; | |||
@@ -37,6 +34,7 @@ import org.springframework.stereotype.Service; | |||
import org.springframework.transaction.annotation.Transactional; | |||
import java.time.LocalDateTime; | |||
import java.util.HashMap; | |||
import java.util.List; | |||
import java.util.Map; | |||
import java.util.stream.Collectors; | |||
@@ -60,6 +58,8 @@ public class OrderInfoServiceImpl extends BaseService implements OrderInfoServic | |||
@Autowired | |||
CurrTaskDetService currTaskDetService; | |||
@Autowired | |||
TaskDetHisService taskDetHisService; | |||
@Autowired | |||
CurrTaskService currTaskService; | |||
@Autowired | |||
KilnInfoService kilnInfoService; | |||
@@ -165,10 +165,21 @@ public class OrderInfoServiceImpl extends BaseService implements OrderInfoServic | |||
@Override | |||
public R<OrderInfoVo> getTaskInfoByIdenCardNum(String idenCardNum) { | |||
QueryWrapper<OrderInfo> wrapper = new QueryWrapper<>(); | |||
wrapper.eq(OrderInfo.IDEN_CARD_NUM, idenCardNum).eq(OrderInfo.VALID, 1).eq(OrderInfo.STATUS, 0); | |||
wrapper.eq(OrderInfo.IDEN_CARD_NUM, idenCardNum).eq(OrderInfo.VALID, 1); | |||
OrderInfo one = orderInfoService.getOne(wrapper); | |||
OrderInfoVo build = OrderInfoVo.builder().build(); | |||
BeanUtils.copyProperties(one, build); | |||
//查询历史任务表,当前任务表,拉取加工完成 创建任务未加工 计算剩余数量 | |||
HashMap<String, Double> sumCurrTask = currTaskDetService.getSumByIdCard(idenCardNum); | |||
build.setWaitQuantity(sumCurrTask.get("quantity").floatValue()); | |||
build.setWaitWeight(sumCurrTask.get("weight").floatValue()); | |||
HashMap<String, Double> sumTaskHis = taskDetHisService.getSumByIdCard(idenCardNum); | |||
build.setFinishQuantity(sumTaskHis.get("quantity").floatValue()); | |||
build.setFinishWeight(sumTaskHis.get("weight").floatValue()); | |||
build.setLastQuantity(build.getQuantity() - build.getFinishQuantity() - build.getWaitQuantity()); | |||
build.setLastWeight(build.getWeight() - build.getFinishWeight() - build.getWaitWeight()); | |||
return successful(build); | |||
} | |||
@@ -3,18 +3,21 @@ package com.mt.wms.empty.service.impl; | |||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | |||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | |||
import com.mt.wms.core.base.BaseService; | |||
import com.mt.wms.core.dal.entity.CurrTaskDet; | |||
import com.mt.wms.core.dal.entity.TaskDetHis; | |||
import com.mt.wms.core.dal.service.TaskDetHisServiceBiz; | |||
import com.mt.wms.core.params.IdParam; | |||
import com.mt.wms.core.vo.PageVo; | |||
import com.mt.wms.core.vo.R; | |||
import com.mt.wms.empty.params.OrderInfoTaskDetParam; | |||
import com.mt.wms.empty.service.TaskDetHisService; | |||
import com.mt.wms.empty.service.TaskHisService; | |||
import com.mt.wms.empty.vo.CurrTaskVo; | |||
import com.mt.wms.empty.vo.OrderInfoTaskDetVo; | |||
import org.springframework.beans.factory.annotation.Autowired; | |||
import org.springframework.stereotype.Service; | |||
import org.springframework.transaction.annotation.Transactional; | |||
import java.util.HashMap; | |||
import java.util.List; | |||
/** | |||
@@ -30,7 +33,8 @@ public class TaskDetHisServiceImpl extends BaseService implements TaskDetHisServ | |||
@Autowired | |||
TaskDetHisServiceBiz taskDetHisServiceBiz; | |||
@Autowired | |||
TaskHisService taskhisService; | |||
@Override | |||
public R<String> save(TaskDetHis taskDetHis) { | |||
@@ -47,10 +51,33 @@ public class TaskDetHisServiceImpl extends BaseService implements TaskDetHisServ | |||
@Override | |||
public PageVo<OrderInfoTaskDetVo> getHisOrderHisTask(OrderInfoTaskDetParam param) { | |||
QueryWrapper<TaskDetHis> queryWrapper = new QueryWrapper<>(); | |||
queryWrapper.eq(CurrTaskDet.IDEN_CARD_NUM, param.getIdenCardNum()) | |||
.eq(CurrTaskDet.ORDER_NO, param.getOrderNo()) | |||
.eq(CurrTaskDet.VALID, 1); | |||
queryWrapper.eq(TaskDetHis.IDEN_CARD_NUM, param.getIdenCardNum()) | |||
.eq(TaskDetHis.ORDER_NO, param.getOrderNo()) | |||
.eq(TaskDetHis.VALID, 1); | |||
Page<TaskDetHis> page = taskDetHisServiceBiz.page(new Page<>(param.getCurrent(), param.getSize()), queryWrapper); | |||
return new PageVo<>(page, OrderInfoTaskDetVo.class); | |||
} | |||
@Override | |||
public HashMap<String, Double> getSumByIdCard(String idCard) { | |||
HashMap<String, Double> result = new HashMap<>(2); | |||
QueryWrapper<TaskDetHis> queryWrapper = new QueryWrapper<>(); | |||
queryWrapper.eq(TaskDetHis.IDEN_CARD_NUM, idCard) | |||
.eq(TaskDetHis.VALID, 1); | |||
List<TaskDetHis> list = taskDetHisServiceBiz.list(queryWrapper); | |||
list.forEach(e -> { | |||
CurrTaskVo byId = taskhisService.getById(IdParam.builder().id(e.getTaskId()).build()); | |||
//如果加工类型是复加工,或者任务作废。移除对象 | |||
if (byId.getProcessType().equals(2) || byId.getValid() != 1) | |||
{ | |||
list.remove(e); | |||
} | |||
}); | |||
//计算加工总数 | |||
double sumWeight = list.stream().mapToDouble(TaskDetHis::getWeight).sum(); | |||
double sumQuantity = list.stream().mapToDouble(TaskDetHis::getQuantity).sum(); | |||
result.put("weight", sumWeight); | |||
result.put("quantity", sumQuantity); | |||
return result; | |||
} | |||
} |
@@ -25,6 +25,14 @@ import java.time.LocalDateTime; | |||
public class CurrTaskVo extends BaseVo implements PageVo.ConvertVo { | |||
@ApiModelProperty(value = "id") | |||
private Long id; | |||
/** | |||
* 删除标志,是否有效:1 可用 0不可用,2停止 | |||
*/ | |||
@ApiModelProperty("删除标志") | |||
private Integer valid; | |||
/** | |||
* 状态: 0等待执行,1执行中,2执行完成,3追加后完成(追加后就按完成来算) | |||
*/ | |||
@@ -55,6 +63,12 @@ public class CurrTaskVo extends BaseVo implements PageVo.ConvertVo { | |||
@ApiModelProperty("任务类型") | |||
private Integer taskType; | |||
/** | |||
* 加工类型:0 初始加工,1 复加工 ,2 追加加工 | |||
*/ | |||
@ApiModelProperty("任务类型") | |||
private Integer processType; | |||
/** | |||
* 托盘编码 | |||
*/ | |||
@@ -1,8 +1,6 @@ | |||
package com.mt.wms.empty.vo; | |||
import com.baomidou.mybatisplus.annotation.*; | |||
import com.mt.wms.core.base.BaseVo; | |||
import com.mt.wms.core.base.ITree; | |||
import com.mt.wms.core.vo.PageVo; | |||
import io.swagger.annotations.ApiModel; | |||
import io.swagger.annotations.ApiModelProperty; | |||
@@ -11,9 +9,7 @@ import lombok.Data; | |||
import lombok.EqualsAndHashCode; | |||
import lombok.experimental.Accessors; | |||
import javax.validation.constraints.NotNull; | |||
import java.time.LocalDateTime; | |||
import java.util.List; | |||
/** | |||
* | |||
@@ -32,6 +28,12 @@ public class OrderInfoVo extends BaseVo implements PageVo.ConvertVo { | |||
*/ | |||
@ApiModelProperty(value = "主键") | |||
private Long id; | |||
/** | |||
* 删除标志,是否有效:1 可用 0不可用,2停止 | |||
*/ | |||
@ApiModelProperty("删除标志") | |||
private Integer valid; | |||
/** | |||
* 来源:1.APMS 2.人工输入 | |||
*/ | |||
@@ -65,13 +67,6 @@ public class OrderInfoVo extends BaseVo implements PageVo.ConvertVo { | |||
*/ | |||
@ApiModelProperty(value = "状态") | |||
private Integer status; | |||
/** | |||
* 内部编码,系统自动生成 | |||
*/ | |||
@ApiModelProperty(value = "内部编码") | |||
private String interCode; | |||
/** | |||
* 编码 | |||
*/ | |||
@@ -143,4 +138,41 @@ public class OrderInfoVo extends BaseVo implements PageVo.ConvertVo { | |||
*/ | |||
@ApiModelProperty(value = "数量") | |||
private Float quantity; | |||
/** | |||
* 重量 | |||
*/ | |||
@ApiModelProperty(value = "完成加工重量") | |||
private Float finishWeight; | |||
/** | |||
* 数量 | |||
*/ | |||
@ApiModelProperty(value = "完成加工数量") | |||
private Float finishQuantity; | |||
/** | |||
* 待加工重量 任务创建等待中 | |||
*/ | |||
@ApiModelProperty(value = "等待重量") | |||
private Float waitWeight; | |||
/** | |||
* 待加工数量 任务创建等待中 | |||
*/ | |||
@ApiModelProperty(value = "等待数量") | |||
private Float waitQuantity; | |||
/** | |||
* 剩余重量 完全未处理 | |||
*/ | |||
@ApiModelProperty(value = "剩余重量") | |||
private Float lastWeight; | |||
/** | |||
* 剩余数量 完全未处理 | |||
*/ | |||
@ApiModelProperty(value = "剩余数量") | |||
private Float lastQuantity; | |||
} |