TaskByWcsImpl.java 1.54 KB
package com.huaheng.api.wcs.service.taskByWcs;

import com.huaheng.api.wcs.service.taskAssignService.TaskAssignService;
import com.huaheng.framework.web.domain.AjaxResult;
import com.huaheng.pc.task.taskHeader.service.TaskHeaderService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;

@Service
public class TaskByWcsImpl implements TaskByWcs{
    @Autowired
    private TaskHeaderService taskHeaderService;
    @Autowired
    private TaskAssignService taskAssignService;
    public static String platform = "wms";

    private static final Logger
        logger = LoggerFactory.getLogger(TaskAssignService.class);
    @Override
    @Transactional(rollbackFor = Exception.class)
    public AjaxResult taskByWcs(String containerCode) {
        try {
            final AjaxResult emptyIn = taskHeaderService.createEmptyIn(containerCode);
            if(emptyIn.getCode()==200){
                taskAssignService.wcsTaskAssign(taskHeaderService.getById((Integer) emptyIn.getData()));
                return AjaxResult.success("下发成功");
            }
        } catch (Exception e){
            logger.info("手动回滚:{}"+e);
            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
            return AjaxResult.error("任务生成失败");
        }
        return null;
    }
}