Blame view

src/main/java/com/huaheng/api/SSP/service/ItemDownloadApiService.java 4.86 KB
易文鹏 authored
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package com.huaheng.api.SSP.service;

import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.huaheng.api.SSP.domain.SSPmaterialModel;
import com.huaheng.common.exception.service.ServiceException;
import com.huaheng.common.utils.StringUtils;
import com.huaheng.common.utils.http.HttpUtils;
import com.huaheng.common.utils.security.ShiroUtils;
import com.huaheng.framework.web.domain.AjaxResult;
import com.huaheng.pc.config.address.domain.Address;
import com.huaheng.pc.config.address.service.AddressService;
import com.huaheng.pc.config.material.domain.Material;
import com.huaheng.pc.config.material.service.MaterialService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.text.SimpleDateFormat;
import java.util.Date;

//物料信息上传
@Service
@Transactional
public class ItemDownloadApiService {

    @Autowired
    MaterialService materialService;

    @Autowired
    private AddressService addressService;


    public String getQGUrl(String containerCode){
        Address address =new Address();
        String number=containerCode.substring(0,1);
        address.setNumber(number);
        address.setParam("QG");
        address.setWarehouseCode(ShiroUtils.getWarehouseCode());
        String url=addressService.selectEntity(address).getUrl();
        return url;
    }

    //private  static String address="http://172.16.30.238:4322/api/SSP/";

    public AjaxResult Idls(String url){
        String ur=url.substring(0,25);
易文鹏 authored
48
49
        Address address =new Address();
        address.setUrl(ur);
易文鹏 authored
50
51
52
53
54
        //String warehouseCode=addressService.selectWarehouse(address).getWarehouseCode();
        String warehouseCode=addressService.list(new LambdaQueryWrapper<Address>().like(Address::getUrl,ur)).get(0).getWarehouseCode();
        if (StringUtils.isEmpty(warehouseCode)){
            return AjaxResult.success("该地址没找到仓库");
        }
易文鹏 authored
55
56
57
58
59
60
61
62
        Material material = new Material();
        material.setWarehouseCode(warehouseCode);
        material.setZoneCode("QG");
        material.setUserDef2("0");
        Material materials = materialService.list(new LambdaQueryWrapper<Material>()
                .eq(Material::getUserDef2,0)
                .eq(Material::getWarehouseCode,warehouseCode)
                .eq(Material::getZoneCode, "QG")).get(0);
易文鹏 authored
63
        //Material materials = materialService.selectFirstEntity(material);
易文鹏 authored
64
        if (materials==null){
易文鹏 authored
65
66
            return AjaxResult.success("系统中没有钱柜的物料!!或钱柜的物流已全部发完!!");
        }
易文鹏 authored
67
易文鹏 authored
68
69
        try {
            SSPmaterialModel smm = new SSPmaterialModel();
易文鹏 authored
70
71
72
73
74
75
76
77
            smm.setSpecification(materials.getSpec());
            smm.setCubeCode(materials.getZoneCode());
            smm.setCompanyCode(materials.getCompanyCode());
            smm.setItemCode(materials.getCode());
            smm.setItemName(materials.getName());
            smm.setItemBarcode(materials.getCode());
            smm.setWarehouseCode(materials.getWarehouseCode());
            smm.setItemUnit(materials.getUnit());
易文鹏 authored
78
79
80
81
            SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:sss");
            smm.setcDatetime(df.format(new Date()));

            String JsonParam = JSON.toJSONString(smm);
tongzhonghao authored
82
            String result = HttpUtils.bodypost(url, JsonParam,"CS0001");
易文鹏 authored
83
84
85
            AjaxResult ajaxResult = JSON.parseObject(result, AjaxResult.class);

            Material upm = new Material();
易文鹏 authored
86
            upm.setId(materials.getId());
易文鹏 authored
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
            upm.setUserDef2("1");
            materialService.updateById(upm);
            return ajaxResult;
        }catch (Exception e){
            throw new ServiceException("物料信息同步上传失败");
        }
    }

    public AjaxResult sendMaterial(Material material,String containerCode){
        SSPmaterialModel smm = new SSPmaterialModel();
        smm.setSpecification(material.getSpec());
        smm.setCubeCode(material.getZoneCode());
        smm.setCompanyCode(material.getCompanyCode());
        smm.setItemCode(material.getCode());
        smm.setItemName(material.getName());
        smm.setItemBarcode(material.getCode());
        smm.setWarehouseCode(material.getWarehouseCode());
        smm.setItemUnit(material.getUnit());
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:sss");
        smm.setcDatetime(df.format(new Date()));
        String url=this.getQGUrl(containerCode)+"ItemDownload";
        String JsonParam = JSON.toJSONString(smm);
tongzhonghao authored
109
        String result = HttpUtils.bodypost(url, JsonParam,"CS0001");
易文鹏 authored
110
111
112
113
114
115
116
117
118
        if(StringUtils.isEmpty(result)){
            throw new ServiceException("接口地址错误或服务器连接不到或返回为空");
        }
        AjaxResult ajaxResult = JSON.parseObject(result, AjaxResult.class);
        return ajaxResult;
    }


}