获取供应商 token
This commit is contained in:
@@ -3,6 +3,7 @@ package com.ruoyi;
|
|||||||
import org.springframework.boot.SpringApplication;
|
import org.springframework.boot.SpringApplication;
|
||||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||||
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
|
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
|
||||||
|
import org.springframework.cache.annotation.EnableCaching;
|
||||||
import org.springframework.context.annotation.ComponentScan;
|
import org.springframework.context.annotation.ComponentScan;
|
||||||
import org.springframework.scheduling.annotation.EnableScheduling;
|
import org.springframework.scheduling.annotation.EnableScheduling;
|
||||||
|
|
||||||
|
|||||||
@@ -1,22 +1,13 @@
|
|||||||
package com.ruoyi.api.controller;
|
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.IToErpService;
|
||||||
import com.ruoyi.api.service.IToWmsService;
|
|
||||||
import com.ruoyi.bas.BasCustomer.domain.BasCustomer;
|
import com.ruoyi.bas.BasCustomer.domain.BasCustomer;
|
||||||
import com.ruoyi.bas.BasProduct.domain.BasProduct;
|
import com.ruoyi.bas.BasProduct.domain.BasProduct;
|
||||||
import com.ruoyi.bas.BasSupplier.domain.BasSupplier;
|
import com.ruoyi.bas.BasSupplier.domain.BasSupplier;
|
||||||
import com.ruoyi.common.core.domain.AjaxResult;
|
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.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 作业统计 Controller
|
* 作业统计 Controller
|
||||||
*/
|
*/
|
||||||
@@ -46,7 +37,13 @@ public class ToErpApiController {
|
|||||||
* 接收供应商信息
|
* 接收供应商信息
|
||||||
*/
|
*/
|
||||||
@GetMapping("/receiveSupplier")
|
@GetMapping("/receiveSupplier")
|
||||||
public AjaxResult receiveSupplier(@RequestBody BasSupplier basSupplier) {
|
public AjaxResult receiveSupplier(/*@RequestBody BasSupplier basSupplier*/) {
|
||||||
return toErpService.receiveSupplier(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 receiveCustomer(BasCustomer basProduct);
|
||||||
|
|
||||||
AjaxResult receiveSupplier(BasSupplier basSupplier);
|
AjaxResult receiveSupplier();
|
||||||
|
|
||||||
|
String login();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +1,15 @@
|
|||||||
package com.ruoyi.api.service.impl;
|
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.core.util.ObjUtil;
|
||||||
|
import cn.hutool.http.HttpRequest;
|
||||||
import cn.hutool.http.HttpUtil;
|
import cn.hutool.http.HttpUtil;
|
||||||
import com.ruoyi.api.mapper.JobStatisticsMapper;
|
import cn.hutool.json.JSONUtil;
|
||||||
import com.ruoyi.api.service.IJobStatisticsService;
|
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.api.service.IToErpService;
|
||||||
import com.ruoyi.bas.BasCustomer.domain.BasCustomer;
|
import com.ruoyi.bas.BasCustomer.domain.BasCustomer;
|
||||||
import com.ruoyi.bas.BasCustomer.service.IBasCustomerService;
|
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.BasProduct.service.IBasProductService;
|
||||||
import com.ruoyi.bas.BasSupplier.domain.BasSupplier;
|
import com.ruoyi.bas.BasSupplier.domain.BasSupplier;
|
||||||
import com.ruoyi.bas.BasSupplier.service.IBasSupplierService;
|
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.core.domain.AjaxResult;
|
||||||
import com.ruoyi.common.utils.DateUtils;
|
import com.ruoyi.common.core.redis.RedisCache;
|
||||||
import com.ruoyi.job.mydojob.domain.MydoJob;
|
|
||||||
import com.ruoyi.job.mydojob.mapper.MydoJobMapper;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
@@ -23,6 +26,7 @@ import java.util.ArrayList;
|
|||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 作业统计 Service 实现
|
* 作业统计 Service 实现
|
||||||
@@ -39,6 +43,15 @@ public class ToErpServiceImpl implements IToErpService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private IBasCustomerService basCustomerService;
|
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
|
@Override
|
||||||
public Map<String, String> saveTransferBill() {
|
public Map<String, String> saveTransferBill() {
|
||||||
@@ -79,14 +92,54 @@ public class ToErpServiceImpl implements IToErpService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult receiveSupplier(BasSupplier basSupplier) {
|
public AjaxResult receiveSupplier() {
|
||||||
String supplierNo = basSupplier.getId();
|
ErpSupplierParam erpSupplierParam = new ErpSupplierParam();
|
||||||
BasSupplier oldSupplier = basSupplierService.selectBasSupplierById(supplierNo);
|
erpSupplierParam.setPage_index(1);
|
||||||
if (ObjUtil.isNotNull(oldSupplier)){
|
erpSupplierParam.setPage_size(100000);
|
||||||
basSupplierService.updateBasSupplier(basSupplier);
|
String body = HttpRequest.post(supplierListUrl).header("ZBAPI-Token", login()).body(JSONUtil.toJsonStr(erpSupplierParam)).execute().body();
|
||||||
}else {
|
ErpSupplierResponse responseBean = JSONUtil.toBean(body, ErpSupplierResponse.class);
|
||||||
basSupplierService.insertBasSupplier(basSupplier);
|
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();
|
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");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -104,7 +104,7 @@ public class SecurityConfig
|
|||||||
// 静态资源,可匿名访问
|
// 静态资源,可匿名访问
|
||||||
.requestMatchers(HttpMethod.GET, "/", "/*.html", "/**.html", "/**.css", "/**.js", "/profile/**").permitAll()
|
.requestMatchers(HttpMethod.GET, "/", "/*.html", "/**.html", "/**.css", "/**.js", "/profile/**").permitAll()
|
||||||
.requestMatchers("/swagger-ui.html", "/v3/api-docs/**", "/swagger-ui/**", "/druid/**").permitAll()
|
.requestMatchers("/swagger-ui.html", "/v3/api-docs/**", "/swagger-ui/**", "/druid/**").permitAll()
|
||||||
.requestMatchers("/api/**","/api2wms/**").permitAll()
|
.requestMatchers("/api/**","/api2wms/**","/api2erp/**").permitAll()
|
||||||
// 除上面外的所有请求全部需要鉴权认证
|
// 除上面外的所有请求全部需要鉴权认证
|
||||||
.anyRequest().authenticated();
|
.anyRequest().authenticated();
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user