ExternalTokenRequest.java 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. package com.xuekairui.user.dto;
  2. import jakarta.validation.constraints.NotBlank;
  3. import lombok.Data;
  4. /**
  5. * 外部系统换取 Token 请求(登录 + 信息同步,兼容旧版一并传入)
  6. */
  7. @Data
  8. public class ExternalTokenRequest {
  9. /** 手机号 */
  10. @NotBlank(message = "手机号不能为空")
  11. private String phone;
  12. /** 可选:邀请码 */
  13. private String inviteCode;
  14. /** 可选:用户名(第三方系统传入,保存到 nickname 字段) */
  15. private String username;
  16. /** 可选:昵称(第三方系统传入,若不传则按手机号生成) */
  17. private String nickname;
  18. /** 可选:药店名称 */
  19. private String pharmacyName;
  20. /** 可选:省 */
  21. private String province;
  22. /** 可选:市 */
  23. private String city;
  24. /** 可选:区 */
  25. private String district;
  26. /** 可选:药店详细地址 */
  27. private String pharmacyAddress;
  28. /** 可选:联系人 */
  29. private String contactPerson;
  30. /** 可选:联系电话 */
  31. private String contactPhone;
  32. /** 可选:营业执照号 */
  33. private String businessLicenseNo;
  34. /** 可选:微信小程序 openId */
  35. private String openId;
  36. /** 可选:微信开放平台 unionId */
  37. private String unionId;
  38. // ===== 入驻信息字段 =====
  39. /** 可选:店铺名称(不传则用 pharmacyName 兜底) */
  40. private String storeName;
  41. /** 可选:终端类型:SINGLE-单店, CHAIN-连锁, CLINIC-诊所, COMMUNITY_HEALTH-社康 */
  42. private String terminalType;
  43. /** 可选:营业执照图片URL */
  44. private String businessLicenseUrl;
  45. /** 可选:药品经营许可证图片URL */
  46. private String drugLicenseUrl;
  47. /** 可选:二类医疗器械备案图片URL */
  48. private String medicalDeviceClass2Url;
  49. /** 可选:三类医疗器械备案图片URL */
  50. private String medicalDeviceClass3Url;
  51. /** 可选:入驻审核状态:0-审核中 / 1-审核成功 / 2-审核失败 */
  52. private Integer status;
  53. // ===== 登录控制字段 =====
  54. /** 可选:是否跳过刷新 refreshToken */
  55. private Boolean skipRefreshToken;
  56. /** 可选:登录来源,决定 token 过期策略(MINIAPP=30天 / PC=1小时),不传默认 MINIAPP */
  57. private String loginSource;
  58. }