tao.mo

manager-server | 修改 |

FCL登录获取ean信息
mt
2025年5月27日17:10:40
......@@ -16,6 +16,12 @@ public class PropertiesConfig {
@Value("${fcl.interface.userinfo}")
private String userInfoUrl;
@Value("${fcl.interface.account}")
private String userAccountUrl;
@Value("${fcl.interface.shippingaccounts}")
private String userShippingaccountsUrl;
@Value("${fcl.login.redjrectLogin}")
private String redjrectLogin;
......
......@@ -140,6 +140,7 @@ public class SysAuthController extends BaseController implements ISysAuthControl
if (loginUser == null){
//如果用户不存在,则创建FCL用户信息
SysUserDto dto = new SysUserDto(fcl_uuid, fcl_contactname);
sysUserService.initUserInfo(fclInfoDto,dto);
loginUser = sysUserService.save(dto);
} else {
//首先对用户中的姓名进行解密
......@@ -158,6 +159,7 @@ public class SysAuthController extends BaseController implements ISysAuthControl
loginUser.setUserName(StringUtils.trimToEmpty(fcl_contactname));
}
loginUser.setModifyTime(new Date());
sysUserService.initUserInfo(fclInfoDto,loginUser);
sysUserService.update(loginUser);
}
}
......
......@@ -18,7 +18,9 @@ public class FclInfoDto {
//用户名称
String fclContactname;
//用户登录账号
private String userId;
String userId;
//用户邮箱
private String emailAddress;
String emailAddress;
//用户计费账号
String shipperAccounts;
}
......
package com.fedex.connect.manager.data.vo;
import lombok.Data;
@Data
public class EanTwoVo {
private String defaultEanInfo;
private String accountNumberInfo;
}
package com.fedex.connect.manager.data.vo;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @Author mt
* @Description FCL接口获取用户信息-响应数据对象
* @Date 2025/5/27
*/
@Data
public class FCLAccountsResponseVo implements Serializable {
private String transactionId;
private OutPut output;
@Data
public static class OutPut implements Serializable{
List<FCLCustomerAccount> customerAccountList;
}
@Data
public static class FCLCustomerAccount implements Serializable{
private Account account;
private List<ActiveAppRoleInfo> activeAppRoleInfos;
}
/**
* 账号信息
*/
@Data
public static class Account implements Serializable{
private AccountIdentifier accountIdentifier;
}
@Data
public static class ActiveAppRoleInfo implements Serializable{
private String appName;
private String roleCode;
private Integer roleLevelCode;
}
@Data
public static class AccountIdentifier implements Serializable{
/**
* 账号对应EAN信息
*/
private AccountNumber accountNumber;
private String accountNickname;
private String displayName;
private Boolean meterNumberAvailable;
}
@Data
public static class AccountNumber implements Serializable{
private String value;
private String key;
}
}
......@@ -3,8 +3,10 @@ package com.fedex.connect.manager.data.vo;
import lombok.Data;
/**
* FCL接口获取token响应对象
*/
* @Author mt
* @Description FCL接口获取token响应对象
* @Date 2025/5/27
*/
@Data
public class FCLTokenResponseVo {
......
......@@ -13,7 +13,7 @@ import java.util.List;
* @Date 2025/5/26
*/
@Data
public class FCLUserInfoVo implements Serializable {
public class FCLUserInfoResponseVo implements Serializable {
private String transactionId;
private OutPut output;
......
package com.fedex.connect.manager.data.vo;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class FclEanTwoResponseVo implements Serializable{
private String transactionId;
private Output output;
@Data
public static class Output implements Serializable {
private Boolean success;
private List<AccountInfoVO> accountInfoVOs;
}
@Data
public static class AccountInfoVO implements Serializable {
private DefaultAccount defaultAccount;
private List<AssociatedAccount> associatedAccountList;
}
@Data
public static class DefaultAccount implements Serializable {
private String value;
private String key;
}
@Data
public static class AssociatedAccount implements Serializable {
private AccountNumber accountNumber;
private String accountNickname;
private String accountDisplayName;
}
@Data
public static class AccountNumber implements Serializable {
private String value;
private String key;
}
}
......@@ -2,6 +2,7 @@ package com.fedex.connect.manager.service.sys;
import com.fedex.connect.common.model.sys.User;
import com.fedex.connect.manager.data.bo.AddFlagBo;
import com.fedex.connect.manager.data.dto.FclInfoDto;
import com.fedex.connect.manager.data.dto.SysUserDto;
import javax.servlet.http.HttpServletRequest;
......@@ -19,4 +20,24 @@ public interface ISysUserService {
User findById(Long id);
void updateAddFlag(User user, AddFlagBo bo);
/**
* @Author mt
* @Description 构造用户信息
* @Date 2025/5/27
* @param fclInfoDto
* @param loginUser
* @return void
*/
void initUserInfo(FclInfoDto fclInfoDto,SysUserDto loginUser);
/**
* @Author mt
* @Description 构造用户信息
* @Date 2025/5/27
* @param fclInfoDto
* @param loginUser
* @return void
*/
void initUserInfo(FclInfoDto fclInfoDto, User loginUser);
}
......
......@@ -12,6 +12,7 @@ import com.fedex.connect.common.model.sys.User;
import com.fedex.connect.common.model.sys.UserExample;
import com.fedex.connect.manager.config.PropertiesConfig;
import com.fedex.connect.manager.data.bo.AddFlagBo;
import com.fedex.connect.manager.data.dto.FclInfoDto;
import com.fedex.connect.manager.data.dto.SysUserDto;
import com.fedex.connect.manager.data.model.LogShowModel;
import com.fedex.connect.manager.service.base.BaseService;
......@@ -216,5 +217,43 @@ public class SysUserServiceImpl extends BaseService implements ISysUserService {
userRepository.updateByPrimaryKeySelective(user);
}
/**
* @Author mt
* @Description 构造用户信息
* @Date 2025/5/27
* @param fclInfoDto
* @param loginUser
* @return void
*/
public void initUserInfo(FclInfoDto fclInfoDto,SysUserDto loginUser){
if (StringUtils.isNotEmpty(fclInfoDto.getUserId())){
loginUser.setLoginName(fclInfoDto.getUserId());
}
if(StringUtils.isNotEmpty(fclInfoDto.getEmailAddress())){
loginUser.setEmail(fclInfoDto.getEmailAddress());
}
if(StringUtils.isNotEmpty(fclInfoDto.getShipperAccounts())){
loginUser.setAccountNo(fclInfoDto.getShipperAccounts());
}
}
/**
* @Author mt
* @Description 构造用户信息
* @Date 2025/5/27
* @param fclInfoDto
* @param loginUser
* @return void
*/
public void initUserInfo(FclInfoDto fclInfoDto,User loginUser){
if (StringUtils.isNotEmpty(fclInfoDto.getUserId())){
loginUser.setLoginName(fclInfoDto.getUserId());
}
if(StringUtils.isNotEmpty(fclInfoDto.getEmailAddress())){
loginUser.setEmail(fclInfoDto.getEmailAddress());
}
if(StringUtils.isNotEmpty(fclInfoDto.getShipperAccounts())){
loginUser.setAccountNo(fclInfoDto.getShipperAccounts());
}
}
}
......
......@@ -47,5 +47,7 @@ fcl:
scope: oob
account:
url: /user/v2/accounts
shippingaccounts:
url: /administration/v1/users/shippingaccounts
userinfo:
url: /user/v2/users/userinfo
\ No newline at end of file
......
......@@ -40,5 +40,7 @@ fcl:
scope: oob
account:
url: /user/v2/accounts
shippingaccounts:
url: /administration/v1/users/shippingaccounts
userinfo:
url: /user/v2/users/userinfo
\ No newline at end of file
......
......@@ -41,5 +41,7 @@ fcl:
scope: oob
account:
url: /user/v2/accounts
shippingaccounts:
url: /administration/v1/users/shippingaccounts
userinfo:
url: /user/v2/users/userinfo
\ No newline at end of file
......
......@@ -40,5 +40,7 @@ fcl:
scope: oob
account:
url: /user/v2/accounts
shippingaccounts:
url: /administration/v1/users/shippingaccounts
userinfo:
url: /user/v2/users/userinfo
\ No newline at end of file
......