183 lines
6.9 KiB
Java
183 lines
6.9 KiB
Java
package com.ruoyi.api.controller;
|
||
|
||
import cn.hutool.json.JSONUtil;
|
||
import com.ruoyi.api.domain.ErpProduct;
|
||
import com.ruoyi.api.domain.ReMaterialParam;
|
||
import com.ruoyi.api.domain.RequestEnter;
|
||
import com.ruoyi.api.domain.WmsJobRequest;
|
||
import com.ruoyi.api.service.IToWmsService;
|
||
import com.ruoyi.bas.BasProduct.domain.BasProduct;
|
||
import com.ruoyi.bas.BasProduct.service.IBasProductService;
|
||
import com.ruoyi.common.annotation.Log;
|
||
import com.ruoyi.common.core.domain.AjaxResult;
|
||
import com.ruoyi.common.enums.BusinessType;
|
||
import com.ruoyi.log.domain.RequestLog;
|
||
import com.ruoyi.log.service.IRequestLogService;
|
||
import com.ruoyi.out.outStockout.domain.OutStockoutVo;
|
||
import com.ruoyi.out.outStockout.service.IOutStockoutService;
|
||
import org.springframework.beans.factory.annotation.Autowired;
|
||
import org.springframework.security.access.prepost.PreAuthorize;
|
||
import org.springframework.web.bind.annotation.*;
|
||
|
||
import java.util.Map;
|
||
|
||
/**
|
||
* 作业统计 Controller
|
||
*/
|
||
@RestController
|
||
@RequestMapping("/api2wms")
|
||
public class ToWmsApiController {
|
||
|
||
@Autowired
|
||
private IToWmsService toWmsService;
|
||
@Autowired
|
||
private IRequestLogService requestLogService;
|
||
@Autowired
|
||
private IOutStockoutService outStockoutService;
|
||
@Autowired
|
||
private IBasProductService basProductService;
|
||
|
||
/**
|
||
* 入库请求生成作业
|
||
*/
|
||
@PostMapping("/requestEnterByTrayCode")
|
||
public AjaxResult requestEnterByTrayCode(@RequestBody RequestEnter requestEnter) {
|
||
AjaxResult ajaxResult = toWmsService.requestEnterByTrayCode(requestEnter);
|
||
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(requestEnter), "入库任务创建请求",ajaxResult);
|
||
requestLogService.insertRequestLog(requestLog);
|
||
return ajaxResult;
|
||
}
|
||
@PostMapping("/sendCargoSpace")
|
||
public AjaxResult sendCargoSpace(@RequestBody RequestEnter requestEnter) {
|
||
AjaxResult ajaxResult = toWmsService.requestEnterByTaskNo(requestEnter);
|
||
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(requestEnter), "入库任务创建请求",ajaxResult);
|
||
requestLogService.insertRequestLog(requestLog);
|
||
return ajaxResult;
|
||
}
|
||
|
||
|
||
/**
|
||
* 请求补码作业
|
||
*/
|
||
@RequestMapping("/requestByNoTrayCode")
|
||
public AjaxResult requestByNoTrayCode(@RequestBody RequestEnter requestEnter) {
|
||
AjaxResult ajaxResult = toWmsService.selectMydoJobByEntranceId(requestEnter);
|
||
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(requestEnter), "请求补码作业",ajaxResult);
|
||
requestLogService.insertRequestLog(requestLog);
|
||
return ajaxResult;
|
||
}
|
||
|
||
/**
|
||
* 获取入库作业
|
||
*/
|
||
@RequestMapping("/requestEnterByTrayCodeAndEntranceId")
|
||
public AjaxResult requestEnterByTrayCodeAndEntranceId(@RequestBody RequestEnter requestEnter) {
|
||
AjaxResult ajaxResult = toWmsService.requestEnterByTrayCodeAndEntranceId(requestEnter);
|
||
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(requestEnter), "获取入库作业",ajaxResult);
|
||
requestLogService.insertRequestLog(requestLog);
|
||
return ajaxResult;
|
||
}
|
||
|
||
|
||
/**
|
||
* 入库、出库 任务完成回传
|
||
* Map<String, String>
|
||
* "wmsType": "任务类型" 1-入库 2-出库 3-agv搬运,
|
||
* taskNo:出库 入库任务号
|
||
* trayCode:托盘码
|
||
* positionCode1:起点
|
||
* positionCode2:终点
|
||
* containerCode:容器编码
|
||
*
|
||
*/
|
||
@PostMapping("/jobFinish")
|
||
public AjaxResult jobFinish(@RequestBody WmsJobRequest wmsJobRequest) {
|
||
AjaxResult ajaxResult = toWmsService.jobFinish(wmsJobRequest);
|
||
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(wmsJobRequest), "jobFinish",ajaxResult);
|
||
requestLogService.insertRequestLog(requestLog);
|
||
return ajaxResult;
|
||
}
|
||
|
||
/**
|
||
* 放货有货,重新分配货位
|
||
*/
|
||
@PostMapping("/reAssign")
|
||
public AjaxResult reAssign(@RequestBody ReMaterialParam reMaterialParam) {
|
||
AjaxResult ajaxResult = toWmsService.reAssign(reMaterialParam);
|
||
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(reMaterialParam), "reAssign",ajaxResult);
|
||
requestLogService.insertRequestLog(requestLog);
|
||
return ajaxResult;
|
||
}
|
||
|
||
/**
|
||
* 取货无货,重新分配物料
|
||
*/
|
||
@PostMapping("/reMaterial")
|
||
public AjaxResult reMaterial(@RequestBody ReMaterialParam reMaterialParam) {
|
||
AjaxResult ajaxResult = toWmsService.reMaterial(reMaterialParam);
|
||
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(reMaterialParam), "reMaterial",ajaxResult);
|
||
requestLogService.insertRequestLog(requestLog);
|
||
return ajaxResult;
|
||
}
|
||
|
||
|
||
|
||
/**
|
||
* 出库单据保存
|
||
*
|
||
* @param outStockoutVo
|
||
* @return
|
||
*/
|
||
@Log(title = "出库主单保存", businessType = BusinessType.OTHER)
|
||
@PostMapping("/saveOutBill")
|
||
@ResponseBody
|
||
public AjaxResult saveBill(@RequestBody OutStockoutVo outStockoutVo) {
|
||
String stockOutId = outStockoutService.saveBill(outStockoutVo);
|
||
AjaxResult ajaxResult = AjaxResult.success(stockOutId);
|
||
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(outStockoutVo), "出库单据保存", ajaxResult);
|
||
requestLogService.insertRequestLog(requestLog);
|
||
return ajaxResult;
|
||
}
|
||
|
||
|
||
/**
|
||
* 接收物料
|
||
*/
|
||
@Log(title = "接收物料", businessType = BusinessType.INSERT)
|
||
@PutMapping("/receiveProduct")
|
||
public AjaxResult receiveProduct(@RequestBody ErpProduct erpProduct)
|
||
{
|
||
AjaxResult ajaxResult = toWmsService.receiveProduct(erpProduct);
|
||
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(erpProduct), "接收物料", ajaxResult);
|
||
requestLogService.insertRequestLog(requestLog);
|
||
return ajaxResult;
|
||
}
|
||
|
||
/**
|
||
* 修改物料管理
|
||
*/
|
||
@Log(title = "修改物料管理", businessType = BusinessType.UPDATE)
|
||
@PutMapping("/updateProduct")
|
||
public AjaxResult updateProduct(@RequestBody ErpProduct erpProduct)
|
||
{
|
||
AjaxResult ajaxResult = toWmsService.updateProduct(erpProduct);
|
||
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(erpProduct), "修改物料管理", ajaxResult);
|
||
requestLogService.insertRequestLog(requestLog);
|
||
return ajaxResult;
|
||
}
|
||
|
||
/**
|
||
* 作废物料
|
||
*/
|
||
@Log(title = "作废物料", businessType = BusinessType.UPDATE)
|
||
@PutMapping("/InvalidProduct")
|
||
public AjaxResult InvalidProduct(@RequestBody ErpProduct erpProduct)
|
||
{
|
||
AjaxResult ajaxResult = toWmsService.InvalidProduct(erpProduct);
|
||
RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(erpProduct), "作废物料", ajaxResult);
|
||
requestLogService.insertRequestLog(requestLog);
|
||
return ajaxResult;
|
||
}
|
||
|
||
}
|