TaskFinishController.java 2.45 KB
package com.huaheng.api.wcs.controller;

import com.huaheng.api.wcs.domain.TaskFinishDomain;
import com.huaheng.api.wcs.service.taskFinish.TaskBackService;
import com.huaheng.api.wcs.service.taskFinish.TaskFinishService;
import com.huaheng.common.utils.StringUtils;
import com.huaheng.framework.aspectj.lang.annotation.ApiLogger;
import com.huaheng.framework.aspectj.lang.annotation.Log;
import com.huaheng.framework.aspectj.lang.constant.BusinessType;
import com.huaheng.framework.web.controller.BaseController;
import com.huaheng.framework.web.domain.AjaxResult;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;

/**
 * 任务完成
 * wcs向wms传递数据
 *
 * @author ricard
 * @date 2019/10/11
 */

@RestController
@RequestMapping("/API/WMS/v2")
public class TaskFinishController extends BaseController {

    @Resource
    private TaskFinishService taskFinishService;
    @Resource
    private TaskBackService taskBackService;


    @Log(title = "wcs任务完成", action = BusinessType.INSERT)
    @PostMapping("/complete")
    @ApiOperation("wcs任务完成")
    @ResponseBody
    @ApiLogger(apiName = "wcs任务完成", from = "WCS")
    public AjaxResult complete(@RequestBody TaskFinishDomain taskFinishDomain) {
        AjaxResult ajaxResult = handleMultiProcessV1("complete", new MultiProcessListener() {
            @Override
            public AjaxResult doProcess() {
                AjaxResult ajaxResult = taskFinishService.completeTaskByWCS(taskFinishDomain);
                return ajaxResult;
            }
        });
        return ajaxResult;

    }

    /**
     * 查询钢托盘是否返回
     */
    @PostMapping("/back")
    @ApiOperation("查询托盘是否返回")
    @ApiLogger(apiName = "查询托盘是否返回", from = "WCS")
    @ResponseBody
    public AjaxResult back(@RequestBody TaskFinishDomain taskFinishDomain) {
        String taskNo = taskFinishDomain.getTaskNo();
//        int weight = wcsBack.getWeight();
        if (StringUtils.isEmpty(taskNo)) {
            return AjaxResult.error("没有taskNo值");
        }
        String lockKey = taskNo;
        AjaxResult ajaxResult = handleMultiProcessV1("back", new MultiProcessListener() {
            @Override
            public AjaxResult doProcess() {
                AjaxResult ajaxResult = taskBackService.back(taskNo);
                return ajaxResult;
            }
        });
        return ajaxResult;
    }

}