SAPApiController.java 2.21 KB
package com.huaheng.api.sap.controller;


import com.huaheng.api.general.service.ReceiptApiService;
import com.huaheng.api.sap.domain.ZarDomain;
import com.huaheng.api.sap.service.ZarApiService;
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 com.huaheng.pc.sap.domain.Zarsh;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;

@RestController
@RequestMapping("/api/zarapi")
@Api(tags = {"入库单接口"}, value = "入库单接口receipt")
public class SAPApiController extends BaseController{

    @Resource
    private ReceiptApiService receiptApiService;
    @Resource
    private ZarApiService zarApiService;

    /**
     * SAP下发任务单据
     */
    @Log(title = "SAP下发任务单据", action = BusinessType.INSERT)
    @PostMapping("/save")
    @ApiOperation("SAP下发任务单据")
    @ResponseBody
    @ApiLogger(apiName = "SAP下发任务单据", from="ERP")
    public AjaxResult save(@RequestBody ZarDomain zarDomain)
    {
        /**
         * 进制转换 32 - 10
         */
        Zarsh zarsh = zarDomain.getZarsh();
        String toPos = zarsh.getToPos();
        String fromPos = zarsh.getFromPos();
        String toPort = null;
        String fromPort = null;
        if(StringUtils.isNotEmpty(toPos)){
             toPort = "P"+Long.parseLong(toPos, 32);

        }
        if(StringUtils.isNotEmpty(fromPos)){
             fromPort = "P"+Long.parseLong(fromPos, 32);
        }
        zarsh.setToPos(toPort);
        zarsh.setFromPos(fromPort);

        zarDomain.setZarsh(zarsh);
        AjaxResult ajaxResult = handleMultiProcess(new MultiProcessListener() {
            @Override
            public AjaxResult doProcess() {
                AjaxResult ajaxResult = zarApiService.saveSapData(zarDomain);
                return ajaxResult;
            }
        });
        return ajaxResult;
    }



}