package zy.cloud.wms.common.service.erp; 
 | 
  
 | 
import com.alibaba.fastjson.JSON; 
 | 
import com.core.common.Cools; 
 | 
import lombok.extern.slf4j.Slf4j; 
 | 
import org.springframework.beans.factory.annotation.Autowired; 
 | 
import org.springframework.stereotype.Component; 
 | 
import zy.cloud.wms.common.service.MainService; 
 | 
import zy.cloud.wms.common.service.erp.entity.GetDataResult; 
 | 
import zy.cloud.wms.manager.entity.Mat; 
 | 
import zy.cloud.wms.manager.service.MatService; 
 | 
import zy.cloud.wms.manager.utils.HttpHandler; 
 | 
  
 | 
import java.io.IOException; 
 | 
import java.util.HashMap; 
 | 
import java.util.List; 
 | 
import java.util.Map; 
 | 
  
 | 
/** 
 | 
 * erp任务控制器 
 | 
 * Created by vincent on 2020/11/27 
 | 
 */ 
 | 
@Slf4j 
 | 
@Component 
 | 
public class ErpScheduler { 
 | 
  
 | 
    public static final String URI = "http://8.133.182.21:8080/api/"; 
 | 
    public static final String GET_ORDERS = "cM/basis/getOrders"; 
 | 
  
 | 
    @Autowired 
 | 
    private MatService matService; 
 | 
    @Autowired 
 | 
    private MainService mainService; 
 | 
  
 | 
    /** 
 | 
     * 原材料 
 | 
     */ 
 | 
//    @Scheduled(cron = "0/3 * * * * ? ") 
 | 
    public void getOrdersExecute(){ 
 | 
        try { 
 | 
            Map<String, Object> json = new HashMap<>(); 
 | 
            json.put("vchType", 41); 
 | 
            String response = new HttpHandler.Builder() 
 | 
                    .setUri(URI) 
 | 
                    .setPath(GET_ORDERS) 
 | 
                    .setJson(JSON.toJSONString(json)) 
 | 
                    .build() 
 | 
                    .doPost(); 
 | 
            if (Cools.isEmpty(response)) { 
 | 
                log.error("请求:{}\nError,响应结果为空!", URI + GET_ORDERS); 
 | 
            } else { 
 | 
                log.info(response); 
 | 
                Result result = JSON.parseObject(response, Result.class); 
 | 
                List<GetDataResult> datas = JSON.parseArray(result.getData(), GetDataResult.class); 
 | 
                if (!Cools.isEmpty(datas)) { 
 | 
                    for (GetDataResult data : datas) { 
 | 
                        // 生成出库单 
 | 
                        Mat mat = matService.selectByMatnr(data.getUserCode()); 
 | 
                        mainService.stockOutProcess(); 
 | 
  
 | 
  
 | 
                    } 
 | 
                } 
 | 
  
 | 
            } 
 | 
        } catch (IOException e) { 
 | 
            e.printStackTrace(); 
 | 
        } 
 | 
  
 | 
    } 
 | 
  
 | 
} 
 |