获取供应商 token
This commit is contained in:
@@ -3,6 +3,7 @@ package com.ruoyi;
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
|
||||
import org.springframework.cache.annotation.EnableCaching;
|
||||
import org.springframework.context.annotation.ComponentScan;
|
||||
import org.springframework.scheduling.annotation.EnableScheduling;
|
||||
|
||||
|
||||
@@ -1,22 +1,13 @@
|
||||
package com.ruoyi.api.controller;
|
||||
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.ruoyi.api.domain.ReMaterialParam;
|
||||
import com.ruoyi.api.domain.RequestEnter;
|
||||
import com.ruoyi.api.domain.WmsJobRequest;
|
||||
import com.ruoyi.api.service.IToErpService;
|
||||
import com.ruoyi.api.service.IToWmsService;
|
||||
import com.ruoyi.bas.BasCustomer.domain.BasCustomer;
|
||||
import com.ruoyi.bas.BasProduct.domain.BasProduct;
|
||||
import com.ruoyi.bas.BasSupplier.domain.BasSupplier;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.log.domain.RequestLog;
|
||||
import com.ruoyi.log.service.IRequestLogService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 作业统计 Controller
|
||||
*/
|
||||
@@ -46,7 +37,13 @@ public class ToErpApiController {
|
||||
* 接收供应商信息
|
||||
*/
|
||||
@GetMapping("/receiveSupplier")
|
||||
public AjaxResult receiveSupplier(@RequestBody BasSupplier basSupplier) {
|
||||
return toErpService.receiveSupplier(basSupplier);
|
||||
public AjaxResult receiveSupplier(/*@RequestBody BasSupplier basSupplier*/) {
|
||||
return toErpService.receiveSupplier();
|
||||
}
|
||||
|
||||
@PostMapping("/login")
|
||||
public AjaxResult login() {
|
||||
toErpService.login();
|
||||
return AjaxResult.success();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
package com.ruoyi.api.domain.erp;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class ErpSupplierParam {
|
||||
private String myuserid;
|
||||
private String fl;
|
||||
private String jb;
|
||||
private String hy;
|
||||
private String gysname;
|
||||
private String phone;
|
||||
private String address;
|
||||
private String url;
|
||||
private int page_size;
|
||||
private int page_index;
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package com.ruoyi.api.domain.erp;
|
||||
|
||||
import cn.hutool.core.annotation.Alias;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class ErpSupplierResponse {
|
||||
@Alias("Page")
|
||||
private Page page;
|
||||
@Alias("Cols")
|
||||
private List<String> cols;
|
||||
@Alias("Rows")
|
||||
private List<List<Object>> rows;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public static class Page {
|
||||
@Alias("RecordCount")
|
||||
private int recordCount;
|
||||
@Alias("PageSize")
|
||||
private int pageSize;
|
||||
@Alias("PageIndex")
|
||||
private int pageIndex;
|
||||
@Alias("PageCount")
|
||||
private int pageCount;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.ruoyi.api.domain.erp;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class LoginParam {
|
||||
|
||||
private List<ErpUserDataInfo> datas;
|
||||
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public static class ErpUserDataInfo {
|
||||
private String id;
|
||||
private String val;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package com.ruoyi.api.domain.erp;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class LoginResponse {
|
||||
|
||||
private Header header;
|
||||
private Body body;
|
||||
|
||||
@Data
|
||||
public class Header{
|
||||
String code;
|
||||
String message;
|
||||
String session;
|
||||
String appversion;
|
||||
}
|
||||
|
||||
@Data
|
||||
public class Body{
|
||||
String model;
|
||||
}
|
||||
}
|
||||
@@ -21,5 +21,7 @@ public interface IToErpService {
|
||||
|
||||
AjaxResult receiveCustomer(BasCustomer basProduct);
|
||||
|
||||
AjaxResult receiveSupplier(BasSupplier basSupplier);
|
||||
AjaxResult receiveSupplier();
|
||||
|
||||
String login();
|
||||
}
|
||||
|
||||
@@ -1,9 +1,15 @@
|
||||
package com.ruoyi.api.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.util.ObjUtil;
|
||||
import cn.hutool.http.HttpRequest;
|
||||
import cn.hutool.http.HttpUtil;
|
||||
import com.ruoyi.api.mapper.JobStatisticsMapper;
|
||||
import com.ruoyi.api.service.IJobStatisticsService;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.ruoyi.api.domain.erp.ErpSupplierParam;
|
||||
import com.ruoyi.api.domain.erp.ErpSupplierResponse;
|
||||
import com.ruoyi.api.domain.erp.LoginParam;
|
||||
import com.ruoyi.api.domain.erp.LoginResponse;
|
||||
import com.ruoyi.api.service.IToErpService;
|
||||
import com.ruoyi.bas.BasCustomer.domain.BasCustomer;
|
||||
import com.ruoyi.bas.BasCustomer.service.IBasCustomerService;
|
||||
@@ -11,11 +17,8 @@ import com.ruoyi.bas.BasProduct.domain.BasProduct;
|
||||
import com.ruoyi.bas.BasProduct.service.IBasProductService;
|
||||
import com.ruoyi.bas.BasSupplier.domain.BasSupplier;
|
||||
import com.ruoyi.bas.BasSupplier.service.IBasSupplierService;
|
||||
import com.ruoyi.bas.cargoSpace.mapper.BasCargoSpaceMapper;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.utils.DateUtils;
|
||||
import com.ruoyi.job.mydojob.domain.MydoJob;
|
||||
import com.ruoyi.job.mydojob.mapper.MydoJobMapper;
|
||||
import com.ruoyi.common.core.redis.RedisCache;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -23,6 +26,7 @@ import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
/**
|
||||
* 作业统计 Service 实现
|
||||
@@ -39,6 +43,15 @@ public class ToErpServiceImpl implements IToErpService {
|
||||
@Autowired
|
||||
private IBasCustomerService basCustomerService;
|
||||
|
||||
@Autowired
|
||||
private RedisCache redisCache;
|
||||
|
||||
|
||||
private static final String erpUrl = "http://115.190.99.109:5055";
|
||||
|
||||
private static final String loginUrl = erpUrl+"/webapi/v3/ov1/login";
|
||||
private static final String supplierListUrl = erpUrl+"/webapi/v3/store/supplierList";
|
||||
|
||||
|
||||
@Override
|
||||
public Map<String, String> saveTransferBill() {
|
||||
@@ -79,14 +92,54 @@ public class ToErpServiceImpl implements IToErpService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public AjaxResult receiveSupplier(BasSupplier basSupplier) {
|
||||
String supplierNo = basSupplier.getId();
|
||||
BasSupplier oldSupplier = basSupplierService.selectBasSupplierById(supplierNo);
|
||||
if (ObjUtil.isNotNull(oldSupplier)){
|
||||
basSupplierService.updateBasSupplier(basSupplier);
|
||||
}else {
|
||||
basSupplierService.insertBasSupplier(basSupplier);
|
||||
public AjaxResult receiveSupplier() {
|
||||
ErpSupplierParam erpSupplierParam = new ErpSupplierParam();
|
||||
erpSupplierParam.setPage_index(1);
|
||||
erpSupplierParam.setPage_size(100000);
|
||||
String body = HttpRequest.post(supplierListUrl).header("ZBAPI-Token", login()).body(JSONUtil.toJsonStr(erpSupplierParam)).execute().body();
|
||||
ErpSupplierResponse responseBean = JSONUtil.toBean(body, ErpSupplierResponse.class);
|
||||
for (List<Object> row : responseBean.getRows()) {
|
||||
BasSupplier supplier = new BasSupplier();
|
||||
supplier.setSupplierName(Convert.toStr(row.get(0)));
|
||||
supplier.setTaxpayerRegistrationNumber(Convert.toStr(row.get(1)));
|
||||
supplier.setId(Convert.toStr(row.get(2)));
|
||||
supplier.setSupplierNo(Convert.toStr(row.get(2)));
|
||||
supplier.setSupplierArae(Convert.toStr(row.get(3)));
|
||||
supplier.setContactName(Convert.toStr(row.get(4)));
|
||||
supplier.setContactNumber(Convert.toStr(row.get(5)));
|
||||
supplier.setCountry(Convert.toStr(row.get(6)));
|
||||
supplier.setTimeZone(Convert.toStr(row.get(7)));
|
||||
supplier.setUseable("1");
|
||||
BasSupplier basSupplier = basSupplierService.selectBasSupplierById(supplier.getId());
|
||||
if (ObjUtil.isNotNull(basSupplier)){
|
||||
basSupplierService.updateBasSupplier(basSupplier);
|
||||
}else {
|
||||
basSupplierService.insertBasSupplier( supplier);
|
||||
}
|
||||
}
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String login() {
|
||||
LoginParam loginParam = new LoginParam();
|
||||
List<LoginParam.ErpUserDataInfo> datas = new ArrayList<>();
|
||||
LoginParam.ErpUserDataInfo d1 = new LoginParam.ErpUserDataInfo("user", "txt:孙瑞雅");
|
||||
LoginParam.ErpUserDataInfo d2 = new LoginParam.ErpUserDataInfo("password", "txt:888888");
|
||||
LoginParam.ErpUserDataInfo d3 = new LoginParam.ErpUserDataInfo("serialnum", "txt:abcd1234");
|
||||
LoginParam.ErpUserDataInfo d4 = new LoginParam.ErpUserDataInfo("rndcode", "");
|
||||
datas.add(d1);
|
||||
datas.add(d2);
|
||||
datas.add(d3);
|
||||
datas.add(d4);
|
||||
loginParam.setDatas(datas);
|
||||
String post = HttpUtil.post(loginUrl, JSONUtil.toJsonStr(loginParam));
|
||||
LoginResponse bean = JSONUtil.toBean(post, LoginResponse.class);
|
||||
if (!redisCache.hasKey("erpSession")){
|
||||
redisCache.setCacheObject("erpSession", bean.getHeader().getSession(), 1500, TimeUnit.SECONDS);
|
||||
return bean.getHeader().getSession();
|
||||
}else {
|
||||
return redisCache.getCacheObject("erpSession");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user