swagger: "2.0"
info:
  title: sws xcx api doc
  description: |
    圣卫士小程序API接口文档
  version: 1.0.0
  license:
    name: 领透科技
basePath: /xcx
paths:
  /api/sysdic/getcheckitems:
    get:
      tags:
      - api/sysdic
      description: |-
        获取检测项目列表
        <br>
      operationId: SysDicApiController.GetCheckItems
      responses:
        "200":
          description: success
          schema:
            type: array
            items:
              $ref: '#/definitions/models.CheckItem'
        "500":
          description: error
  /api/sysdic/getdevicetypes:
    get:
      tags:
      - api/sysdic
      description: |-
        获取设备类型列表
        <br>
      operationId: SysDicApiController.GetDeviceTypes
      responses:
        "200":
          description: success
          schema:
            type: array
            items:
              $ref: '#/definitions/models.DicResp'
        "500":
          description: error
  /api/sysdic/getillness:
    get:
      tags:
      - api/sysdic
      description: |-
        获取病情字典
        <br>
      operationId: SysDicApiController.GetIllness
      responses:
        "200":
          description: success
          schema:
            type: array
            items:
              $ref: '#/definitions/models.DicResp'
        "500":
          description: error
  /api/sysdic/getrenalstatus:
    get:
      tags:
      - api/sysdic
      description: |-
        获取肾功能情况列表
        <br>
      operationId: SysDicApiController.GetRenalStatus
      responses:
        "200":
          description: success
          schema:
            type: array
            items:
              $ref: '#/definitions/models.DicResp'
        "500":
          description: error
  /api/user/gethealthprofile:
    get:
      tags:
      - api/user
      description: |-
        获取健康档案
        <br>
      operationId: UserApiController.GetHealthProfile
      responses:
        "200":
          description: success
          schema:
            $ref: '#/definitions/models.HealthProfileResp'
        "500":
          description: error
      security:
      - token: []
  /api/user/getuserinfo:
    get:
      tags:
      - api/user
      description: |-
        获取个人中心信息
        <br>
      operationId: UserApiController.GetUserInfo
      responses:
        "200":
          description: success
          schema:
            $ref: '#/definitions/models.UserInfoResp'
        "500":
          description: error
      security:
      - token: []
  /api/user/login:
    post:
      tags:
      - api/user
      description: |-
        微信小程序登录
        <br>
      operationId: LoginApiController.WxXcxLogin
      parameters:
      - in: body
        name: body
        description: 小程序登录请求参数
        required: true
        schema:
          $ref: '#/definitions/models.WxXcxLoginReq'
      responses:
        "200":
          description: ""
          schema:
            $ref: '#/definitions/models.WxXcxLoginResp'
        "500":
          description: error
  /api/user/savehealthprofile:
    post:
      tags:
      - api/user
      description: |-
        保存健康档案
        <br>
      operationId: UserApiController.SaveHealthProfile
      parameters:
      - in: body
        name: body
        description: 小程序登录请求参数
        required: true
        schema:
          $ref: '#/definitions/models.SaveHealthProfileReq'
      responses:
        "200":
          description: success
        "500":
          description: error
      security:
      - token: []
  /api/user/saveuserinfo:
    post:
      tags:
      - api/user
      description: |-
        个人中心保存用户信息和透析病友信息
        <br>
      operationId: UserApiController.SaveUserInfo
      parameters:
      - in: body
        name: body
        description: 小程序登录请求参数
        required: true
        schema:
          $ref: '#/definitions/models.SaveUserInfoReq'
      responses:
        "200":
          description: success
        "500":
          description: error
      security:
      - token: []
  /api/user/updatephonebycode:
    post:
      tags:
      - api/user
      description: |-
        获取小程序绑定的手机号码并更新到用户信息
        <br>
      operationId: UserApiController.UpdatePhoneByCode
      parameters:
      - in: body
        name: body
        description: 小程序登录请求参数
        required: true
        schema:
          $ref: '#/definitions/models.WxXcxLoginReq'
      responses:
        "200":
          description: success
          schema:
            $ref: '#/definitions/models.XcxUser'
        "500":
          description: error
      security:
      - token: []
definitions:
  models.CheckItem:
    title: CheckItem
    type: object
    properties:
      check_item_number:
        description: 排序
        type: integer
        format: int64
      check_type:
        description: 检测类型(试纸类型)
        type: string
      ctime:
        description: 创建时间
        type: string
        format: datetime
      delete_flag:
        description: 删除标志
        type: integer
        format: int64
      details:
        description: 描述
        type: string
      device_type:
        description: 设备类型
        type: string
      id:
        description: 检测项目ID
        type: integer
        format: int64
      language:
        description: 'cn: 中文 en 英文'
        type: string
      mtime:
        description: '更新时间 '
        type: string
        format: datetime
      name_cn:
        description: 检测项目中文名
        type: string
      name_en:
        description: 检测项目英文名
        type: string
      reference_value:
        description: ' 参考值'
        type: string
      remark:
        description: 备注
        type: string
      scope_list:
        description: 范围value 值，type =1为正常、2及以上为异 常
        type: string
      text:
        description: 文本
        type: string
      unit:
        description: 单位
        type: string
  models.Device:
    title: Device
    type: object
    properties:
      batch_number:
        description: 批号
        type: integer
        format: int64
      ctime:
        description: 创建时间
        type: string
        format: datetime
      delete_flag:
        description: 删除标志
        type: integer
        format: int64
      device_name:
        description: 设备名称
        type: string
      device_type:
        description: 设备类型
        type: string
      emq_password:
        description: emq密码
        type: string
      id:
        description: 设备ID
        type: integer
        format: int64
      inform_type:
        description: 通知类型：0跳转小程序、1跳转网页 、默认跳转小程序
        type: integer
        format: int64
      language:
        description: 语言
        type: string
      mac:
        type: string
      mcu:
        type: string
      mcu_type:
        description: MCU芯片类型
        type: string
      mtime:
        description: '更新时间 '
        type: string
        format: datetime
      name:
        description: 设备名称
        type: string
      number:
        description: 序号
        type: integer
        format: int64
      oem_company:
        description: 厂商（0：自营  1：艾玛OEM）
        type: integer
        format: int64
      paper_check:
        description: 试纸检查状态
        type: integer
        format: int64
      production_date_number:
        description: 生产日期
        type: integer
        format: int64
      qr_code_id:
        type: integer
        format: int64
      sensor_mode:
        description: 传感放大倍数
        type: string
      serialno:
        description: 设备编号
        type: string
      status:
        description: 状态(0:未分配 1：已分配 2：包装中 3:待出厂 6：废弃 99：已出厂 100：销售中 101：已售出）
        type: integer
        format: int64
      ver:
        description: 软件版本
        type: string
      wifi_ver:
        description: WIFI版本
        type: string
  models.DicResp:
    title: DicResp
    type: object
    properties:
      name:
        description: 字典名称
        type: string
      type:
        type: string
      value:
        description: 字典值
        type: integer
        format: int64
  models.HealthProfileResp:
    title: HealthProfileResp
    type: object
    properties:
      birthday:
        description: 生日
        type: string
        format: datetime
      blood_type:
        description: 血型
        type: string
      creatine_time:
        description: 肌酐检测时间
        type: string
        format: datetime
      creatinine:
        description: 血肌酐
        type: integer
        format: int64
      creatinine_unit:
        description: 肌酐单位(umol/L,mg/dl)
        type: string
      ctime:
        description: 创建时间
        type: string
        format: datetime
      gender:
        description: 性别(0:未知 1:男 2:女)
        type: integer
        format: int64
      height:
        description: 身高
        type: integer
        format: int64
      id:
        description: Primary Key ID
        type: integer
        format: int64
      illness_state:
        description: 病情
        type: string
      mtime:
        description: '更新时间 '
        type: string
        format: datetime
      renal_function_status:
        description: '肾功能情况(0:未透析,1: 血液透析,2:腹膜透析,3:肾脏移植)'
        type: integer
        format: int64
      status:
        description: 状态(1:有效 0:无效 )
        type: integer
        format: int64
      urine_protein:
        description: 尿蛋白
        type: integer
        format: int64
      urine_protein_24h:
        description: 24小时尿蛋白
        type: integer
        format: int64
      urine_protein_24h_time:
        description: 24小时尿蛋白检测时间
        type: string
        format: datetime
      urine_protein_24h_unit:
        description: 24小时尿蛋白单位(g/24h,mg/24h)
        type: string
      urine_protein_time:
        description: 尿蛋白检测时间
        type: string
        format: datetime
      urine_protein_unit:
        description: 尿蛋白单位(g,mg)
        type: string
      weight:
        description: 体重
        type: integer
        format: int64
  models.SaveHealthProfileReq:
    title: SaveHealthProfileReq
    type: object
    properties:
      birthday:
        description: 生日
        type: string
        format: datetime
      blood_type:
        description: 血型
        type: string
      creatine_time:
        description: 肌酐检测时间
        type: string
        format: datetime
      creatinine:
        description: 血肌酐
        type: integer
        format: int64
      creatinine_unit:
        description: 肌酐单位(umol/L,mg/dl)
        type: string
      gender:
        description: 性别(0:未知 1:男 2:女)
        type: integer
        format: int64
      height:
        description: 身高
        type: integer
        format: int64
      illness_state:
        description: 病情
        type: string
      renal_function_status:
        description: '肾功能情况(0:未透析,1: 血液透析,2:腹膜透析,3:肾脏移植)'
        type: integer
        format: int64
      urine_protein:
        description: 尿蛋白
        type: integer
        format: int64
      urine_protein_24h:
        description: 24小时尿蛋白
        type: integer
        format: int64
      urine_protein_24h_time:
        description: 24小时尿蛋白检测时间
        type: string
        format: datetime
      urine_protein_24h_unit:
        description: 24小时尿蛋白单位(g/24h,mg/24h)
        type: string
      urine_protein_time:
        description: 尿蛋白检测时间
        type: string
        format: datetime
      urine_protein_unit:
        description: 尿蛋白单位(g,mg)
        type: string
      weight:
        description: 体重
        type: integer
        format: int64
  models.SaveUserInfoReq:
    title: SaveUserInfoReq
    type: object
    properties:
      avatar:
        description: 头像
        type: string
      email:
        description: 邮件
        type: string
      id_card:
        description: 身份证号
        type: string
      inpatient_reg_phone:
        description: 住院登记手机号
        type: string
      nick_name:
        description: 昵称
        type: string
      phone:
        description: 手机号码
        type: string
      real_name:
        description: 真实姓名
        type: string
  models.UserInfoResp:
    title: UserInfoResp
    type: object
    properties:
      avatar:
        description: 头像
        type: string
      ctime:
        description: 创建时间
        type: string
        format: datetime
      email:
        description: 邮件
        type: string
      id:
        description: Primary Key ID
        type: integer
        format: int64
      id_card:
        description: 身份证号
        type: string
      inpatient_reg_phone:
        description: 住院登记手机号
        type: string
      mtime:
        description: '更新时间 '
        type: string
        format: datetime
      nick_name:
        description: 昵称
        type: string
      open_id:
        description: OpenID
        type: string
      phone:
        description: 手机号码
        type: string
      privacy_protocol_versions:
        description: 隐私政策版本
        type: integer
        format: int64
      real_name:
        description: 真实姓名
        type: string
      source:
        description: 用户来源
        type: string
      status:
        description: 状态(1:有效0:无效)
        type: integer
        format: int64
      union_id:
        description: unionid
        type: string
  models.WxXcxLoginReq:
    title: WxXcxLoginReq
    type: object
    properties:
      code:
        type: string
  models.WxXcxLoginResp:
    title: WxXcxLoginResp
    type: object
    properties:
      openid:
        type: string
      token:
        type: string
  models.XcxUser:
    title: XcxUser
    type: object
    properties:
      avatar:
        description: 头像
        type: string
      ctime:
        description: 创建时间
        type: string
        format: datetime
      email:
        description: 邮件
        type: string
      id:
        description: Primary Key ID
        type: integer
        format: int64
      mtime:
        description: '更新时间 '
        type: string
        format: datetime
      nick_name:
        description: 昵称
        type: string
      open_id:
        description: OpenID
        type: string
      phone:
        description: 手机号码
        type: string
      privacy_protocol_versions:
        description: 隐私政策版本
        type: integer
        format: int64
      role_type:
        description: 角色类型 0或空：普通 1：管理员 2：测试
        type: integer
        format: int64
      session_key:
        type: string
      source:
        description: 用户来源
        type: string
      status:
        description: 状态（１：有效　０： 无效）
        type: integer
        format: int64
      union_id:
        description: unionid
        type: string
securityDefinitions:
  token:
    type: apiKey
    name: Authorization
    in: header
