fix
wangpengfei
2023-07-20 f7da9306eb62a7ccda30a002f2d4242c4e52cfa3
docs/swagger.yaml
@@ -60,6 +60,22 @@
      msg:
        type: string
    type: object
  model.Authority:
    properties:
      authorityName:
        description: 角色名
        type: string
      defaultRouter:
        description: 默认菜单(默认dashboard)
        type: string
      id:
        description: 角色ID
        type: integer
      menus:
        items:
          $ref: '#/definitions/model.Menu'
        type: array
    type: object
  model.City:
    properties:
      id:
@@ -79,12 +95,20 @@
        $ref: '#/definitions/model.City'
      city_id:
        type: integer
      client_level:
        $ref: '#/definitions/model.ClientLevel'
      client_level_id:
        type: integer
      client_origin:
        $ref: '#/definitions/model.ClientOrigin'
      client_origin_id:
        type: integer
      client_status:
        $ref: '#/definitions/model.ClientStatus'
      client_status_id:
        type: integer
      client_type:
        $ref: '#/definitions/model.ClientType'
      client_type_id:
        type: integer
      contacts:
@@ -296,6 +320,30 @@
          $ref: '#/definitions/model.Province'
        type: array
    type: object
  model.CustomerServiceSheet:
    properties:
      handleStatus:
        type: integer
      id:
        type: integer
      memberId:
        type: integer
      number:
        type: string
      priority:
        type: integer
      serviceFollowupId:
        type: integer
      serviceMode:
        type: integer
    type: object
  model.Department:
    properties:
      id:
        type: integer
      name:
        type: string
    type: object
  model.EnterpriseNature:
    properties:
      id:
@@ -312,10 +360,14 @@
    type: object
  model.FollowRecord:
    properties:
      client:
        $ref: '#/definitions/model.Client'
      client_id:
        type: integer
      client_status_id:
        type: integer
      contact:
        $ref: '#/definitions/model.Contact'
      contact_id:
        type: integer
      contact_information_id:
@@ -365,6 +417,24 @@
      number:
        type: string
      start_time:
        type: string
    type: object
  model.Menu:
    properties:
      children:
        items:
          $ref: '#/definitions/model.Menu'
        type: array
      id:
        description: 主键ID
        type: integer
      name:
        type: string
      parentId:
        type: integer
      path:
        type: string
      title:
        type: string
    type: object
  model.Plan:
@@ -507,6 +577,8 @@
        type: integer
      currency:
        $ref: '#/definitions/constvar.CurrencyType'
      detail_address:
        type: string
      disadvantages:
        type: string
      expected_time:
@@ -543,6 +615,8 @@
        type: integer
      regular_customers_id:
        type: integer
      remark:
        type: string
      sale_stage_id:
        type: integer
      sale_type_id:
@@ -677,12 +751,124 @@
      refundMethod:
        type: string
    type: object
  model.SalesReturn:
    properties:
      clientId:
        type: integer
      id:
        type: integer
      memberId:
        type: integer
      number:
        type: string
      products:
        items:
          $ref: '#/definitions/model.Product'
        type: array
      reason:
        type: string
      repository:
        type: string
      returnDate:
        type: string
      status:
        type: integer
    type: object
  model.SalesSources:
    properties:
      id:
        type: integer
      name:
        type: string
    type: object
  model.ServiceContract:
    properties:
      clientId:
        type: integer
      contactId:
        type: integer
      contractId:
        type: integer
      endTime:
        type: string
      id:
        type: integer
      memberId:
        type: integer
      number:
        type: string
      products:
        items:
          $ref: '#/definitions/model.Product'
        type: array
      quotationId:
        type: integer
      remark:
        type: string
      saleChanceId:
        type: integer
      serviceTimes:
        type: integer
      signTime:
        type: string
      startTime:
        type: string
      statusId:
        type: integer
      terms:
        type: string
      typeId:
        type: integer
    type: object
  model.ServiceFeeManage:
    properties:
      client:
        $ref: '#/definitions/model.Client'
      client_id:
        type: integer
      file:
        type: string
      id:
        type: integer
      latest_date:
        type: string
      member_id:
        type: integer
      remark:
        type: string
    type: object
  model.ServiceFollowup:
    properties:
      clientId:
        type: integer
      contactId:
        type: integer
      customerServiceSheet:
        $ref: '#/definitions/model.CustomerServiceSheet'
      file:
        type: string
      id:
        type: integer
      isVisit:
        type: integer
      memberId:
        type: integer
      number:
        type: string
      oldMemberId:
        type: integer
      planId:
        type: integer
      remark:
        type: string
      satisfaction:
        type: integer
      serviceId:
        type: integer
      solveRate:
        type: integer
      timelyRate:
        type: integer
    type: object
  model.SubOrder:
    properties:
@@ -703,21 +889,19 @@
    type: object
  model.User:
    properties:
      companyName:
        type: string
      createAt:
        description: 创建时间
        type: string
      authority:
        $ref: '#/definitions/model.Authority'
      authorityId:
        description: 用户角色ID
        type: integer
      departmentId:
        type: integer
      email:
        type: string
      enable:
        type: boolean
      headerImg:
        type: string
      id:
        type: string
      ip:
        type: string
        type: integer
      menuIds:
        description: 菜单ID列表
        items:
@@ -725,25 +909,27 @@
        type: array
      nickName:
        type: string
      parentId:
        type: string
      parentName:
        type: string
      phone:
        type: string
      port:
        type: string
      pos:
        type: string
      status:
        type: integer
      updateAt:
        description: 更新时间
      realName:
        type: string
      userType:
        $ref: '#/definitions/constvar.UserType'
      username:
        type: string
      uuid:
        type: string
    type: object
  request.AddAuthority:
    properties:
      authorityName:
        type: string
      casbinInfos:
        items:
          $ref: '#/definitions/request.CasbinInfo'
        type: array
    type: object
  request.AddCity:
    properties:
@@ -914,6 +1100,26 @@
        description: 国家名称
        type: string
    type: object
  request.AddCustomerServiceSheet:
    properties:
      handleStatus:
        type: integer
      memberId:
        type: integer
      number:
        type: string
      priority:
        type: integer
      serviceMode:
        type: integer
    type: object
  request.AddDepartment:
    properties:
      name:
        type: string
    required:
    - name
    type: object
  request.AddEnterpriseNature:
    properties:
      name:
@@ -956,6 +1162,27 @@
        type: string
      start_time:
        type: string
    type: object
  request.AddOrderManage:
    properties:
      clientId:
        type: integer
      contactId:
        type: integer
      file:
        type: string
      name:
        type: string
      number:
        type: string
      orderType:
        type: integer
      problemDescription:
        type: string
      reportSourceId:
        type: integer
      sourceSheet:
        type: integer
    type: object
  request.AddPlan:
    properties:
@@ -1036,6 +1263,8 @@
        type: integer
      currency:
        type: integer
      detail_address:
        type: string
      disadvantages:
        type: string
      expected_time:
@@ -1066,6 +1295,8 @@
        type: integer
      regular_customers_id:
        type: integer
      remark:
        type: string
      sale_stage_id:
        type: integer
      sale_type_id:
@@ -1152,6 +1383,85 @@
    required:
    - name
    type: object
  request.AddServiceContract:
    properties:
      clientId:
        type: integer
      contactId:
        type: integer
      contractId:
        type: integer
      endTime:
        type: string
      memberId:
        type: integer
      number:
        type: string
      products:
        items:
          $ref: '#/definitions/model.Product'
        type: array
      quotationId:
        type: integer
      remark:
        type: string
      saleChanceId:
        type: integer
      serviceTimes:
        type: integer
      signTime:
        type: string
      startTime:
        type: string
      statusId:
        type: integer
      terms:
        type: string
      typeId:
        type: integer
    type: object
  request.AddServiceFeeManage:
    properties:
      client_id:
        type: integer
      file:
        type: string
      latest_date:
        type: string
      member_id:
        type: integer
      remark:
        type: string
    type: object
  request.AddServiceFollowup:
    properties:
      clientId:
        type: integer
      contactId:
        type: integer
      file:
        type: string
      isVisit:
        type: integer
      memberId:
        type: integer
      number:
        type: string
      oldMemberId:
        type: integer
      planId:
        type: integer
      remark:
        type: string
      satisfaction:
        type: integer
      serviceId:
        type: integer
      solveRate:
        type: integer
      timelyRate:
        type: integer
    type: object
  request.AddStatus:
    properties:
      name:
@@ -1161,8 +1471,46 @@
    type: object
  request.AddSubOrder:
    properties:
      subOrder:
        $ref: '#/definitions/request.SubOrder'
      clientId:
        type: integer
      masterOrderId:
        type: integer
      memberId:
        type: integer
      number:
        type: string
      product:
        items:
          $ref: '#/definitions/model.Product'
        type: array
    type: object
  request.AddVetting:
    properties:
      opinion:
        type: string
      status:
        type: integer
      userId:
        type: integer
      vettingId:
        type: integer
      vettingType:
        type: integer
    required:
    - opinion
    - status
    - userId
    - vettingId
    - vettingType
    type: object
  request.CasbinInfo:
    properties:
      method:
        description: 方法
        type: string
      path:
        description: 路径
        type: string
    type: object
  request.ChangePasswordReq:
    properties:
@@ -1193,6 +1541,76 @@
      pos:
        description: 用户岗位
        type: string
    type: object
  request.Client:
    properties:
      business_scope:
        description: 经营范围
        type: string
      city_id:
        type: integer
      client_level_id:
        description: 客户等级ID
        type: integer
      client_origin_id:
        description: 客户来源ID
        type: integer
      client_status_id:
        description: 客户状态ID
        type: integer
      client_type_id:
        description: 客户类型ID
        type: integer
      contact:
        $ref: '#/definitions/request.Contact'
      country_id:
        type: integer
      detail_address:
        description: 详细地址
        type: string
      enterprise_nature_id:
        description: 企业性质
        type: integer
      enterprise_scale_id:
        description: 企业规模
        type: integer
      industry_id:
        description: 所属行业
        type: integer
      latest_service_time:
        description: 最晚服务时间
        type: string
      member_id:
        description: 销售负责人ID
        type: integer
      name:
        description: 公司名称
        type: string
      next_visit_time:
        description: 下次回访时间
        type: string
      number:
        description: 公司编号
        type: string
      province_id:
        type: integer
      region_id:
        type: integer
      registered_capital_id:
        description: 注册资金
        type: integer
      registration_time:
        description: 注册时间
        type: string
      remark:
        description: 备注
        type: string
      representative:
        description: 法人代表
        type: string
      service_member_id:
        description: 服务负责人ID
        type: integer
    type: object
  request.Contact:
    properties:
@@ -1336,23 +1754,33 @@
    type: object
  request.Register:
    properties:
      authorityId:
        description: 用户角色ID
        type: integer
      departmentId:
        type: integer
      email:
        example: 电子邮箱
        type: string
      headerImg:
        example: 头像链接
        type: string
      id:
        type: string
      nickName:
        example: 昵称
        type: string
      passWord:
        example: 密码
      password:
        type: string
      phone:
        example: 电话号码
        type: string
      userName:
        example: 用户名
      pos:
        type: string
      rePassword:
        description: 确认密码
        type: string
      realName:
        type: string
      userType:
        $ref: '#/definitions/constvar.UserType'
      username:
        type: string
    type: object
  request.SalesDetails:
@@ -1432,6 +1860,15 @@
      status:
        type: integer
    type: object
  request.SetAuthorityMenu:
    properties:
      authorityId:
        type: integer
      menus:
        items:
          type: integer
        type: array
    type: object
  request.SetCity:
    properties:
      city_ids:
@@ -1463,21 +1900,6 @@
        description: 地区ID列表
        items:
          type: integer
        type: array
    type: object
  request.SubOrder:
    properties:
      clientId:
        type: integer
      masterOrderId:
        type: integer
      memberId:
        type: integer
      number:
        type: string
      product:
        items:
          $ref: '#/definitions/model.Product'
        type: array
    type: object
  request.UpdateCities:
@@ -1720,6 +2142,40 @@
        description: 国家名称
        type: string
    type: object
  request.UpdateCustomerServiceSheet:
    properties:
      handleStatus:
        type: integer
      id:
        type: integer
      memberId:
        type: integer
      number:
        type: string
      priority:
        type: integer
      serviceMode:
        type: integer
    type: object
  request.UpdateDepartment:
    properties:
      id:
        type: integer
      name:
        type: string
    required:
    - id
    - name
    type: object
  request.UpdateDepartmentList:
    properties:
      departments:
        items:
          $ref: '#/definitions/request.UpdateDepartment'
        type: array
    required:
    - departments
    type: object
  request.UpdateEnterpriseNature:
    properties:
      id:
@@ -1798,6 +2254,29 @@
        type: string
      start_time:
        type: string
    type: object
  request.UpdateOrderManage:
    properties:
      clientId:
        type: integer
      contactId:
        type: integer
      file:
        type: string
      id:
        type: integer
      name:
        type: string
      number:
        type: string
      orderType:
        type: integer
      problemDescription:
        type: string
      reportSourceId:
        type: integer
      sourceSheet:
        type: integer
    type: object
  request.UpdatePlan:
    properties:
@@ -1938,6 +2417,8 @@
        type: integer
      currency:
        type: integer
      detail_address:
        type: string
      disadvantages:
        type: string
      expected_time:
@@ -1970,6 +2451,8 @@
        type: integer
      regular_customers_id:
        type: integer
      remark:
        type: string
      sale_stage_id:
        type: integer
      sale_type_id:
@@ -2116,6 +2599,93 @@
          $ref: '#/definitions/request.UpdateSalesSources'
        type: array
    type: object
  request.UpdateServiceContract:
    properties:
      clientId:
        type: integer
      contactId:
        type: integer
      contractId:
        type: integer
      endTime:
        type: string
      id:
        type: integer
      memberId:
        type: integer
      number:
        type: string
      products:
        items:
          $ref: '#/definitions/model.Product'
        type: array
      quotationId:
        type: integer
      remark:
        type: string
      saleChanceId:
        type: integer
      serviceTimes:
        type: integer
      signTime:
        type: string
      startTime:
        type: string
      statusId:
        type: integer
      terms:
        type: string
      typeId:
        type: integer
    type: object
  request.UpdateServiceFeeManage:
    properties:
      client:
        $ref: '#/definitions/request.Client'
      client_id:
        type: integer
      file:
        type: string
      id:
        type: integer
      latest_date:
        type: string
      member_id:
        type: integer
      remark:
        type: string
    type: object
  request.UpdateServiceFollowup:
    properties:
      clientId:
        type: integer
      contactId:
        type: integer
      file:
        type: string
      id:
        type: integer
      isVisit:
        type: integer
      memberId:
        type: integer
      number:
        type: string
      oldMemberId:
        type: integer
      planId:
        type: integer
      remark:
        type: string
      satisfaction:
        type: integer
      serviceId:
        type: integer
      solveRate:
        type: integer
      timelyRate:
        type: integer
    type: object
  request.UpdateStatus:
    properties:
      id:
@@ -2215,6 +2785,106 @@
          $ref: '#/definitions/model.Country'
        type: array
    type: object
  response.DataResponse:
    properties:
      city:
        description: 城市数据
        items:
          $ref: '#/definitions/model.City'
        type: array
      client_level:
        description: 客户等级
        items:
          $ref: '#/definitions/model.ClientLevel'
        type: array
      client_origin:
        description: 客户来源
        items:
          $ref: '#/definitions/model.ClientOrigin'
        type: array
      client_status:
        description: 客户状态
        items:
          $ref: '#/definitions/model.ClientStatus'
        type: array
      client_type:
        description: 客户类型
        items:
          $ref: '#/definitions/model.ClientType'
        type: array
      country:
        description: 国家数据
        items:
          $ref: '#/definitions/model.Country'
        type: array
      department:
        description: 部门
        items:
          $ref: '#/definitions/model.Department'
        type: array
      enterprise_nature:
        description: 企业性质
        items:
          $ref: '#/definitions/model.EnterpriseNature'
        type: array
      enterprise_scale:
        description: 企业规模
        items:
          $ref: '#/definitions/model.EnterpriseScale'
        type: array
      industry:
        description: 行业
        items:
          $ref: '#/definitions/model.Industry'
        type: array
      member:
        description: Member
        items:
          $ref: '#/definitions/model.User'
        type: array
      province:
        description: 省份数据
        items:
          $ref: '#/definitions/model.Province'
        type: array
      region:
        description: 区域数据
        items:
          $ref: '#/definitions/model.Region'
        type: array
      registered_capital:
        description: 注册资金
        items:
          $ref: '#/definitions/model.RegisteredCapital'
        type: array
      regular_customers:
        description: 老客户营销
        items:
          $ref: '#/definitions/model.RegularCustomers'
        type: array
      sale_stage:
        description: 销售阶段
        items:
          $ref: '#/definitions/model.SaleStage'
        type: array
      sale_type:
        description: 销售类型
        items:
          $ref: '#/definitions/model.SaleType'
        type: array
      sales_source:
        description: 商机来源
        items:
          $ref: '#/definitions/model.SalesSources'
        type: array
    type: object
  response.DepartmentResponse:
    properties:
      list:
        items:
          $ref: '#/definitions/model.Department'
        type: array
    type: object
  response.EnterpriseNatureResponse:
    properties:
      list:
@@ -2257,6 +2927,13 @@
      list:
        items:
          $ref: '#/definitions/model.MasterOrder'
        type: array
    type: object
  response.MenuTreeResponse:
    properties:
      list:
        items:
          $ref: '#/definitions/model.Menu'
        type: array
    type: object
  response.PageResult:
@@ -2353,11 +3030,39 @@
          $ref: '#/definitions/model.SalesRefund'
        type: array
    type: object
  response.SalesReturnResponse:
    properties:
      list:
        items:
          $ref: '#/definitions/model.SalesReturn'
        type: array
    type: object
  response.SalesSourceResponse:
    properties:
      list:
        items:
          $ref: '#/definitions/model.SalesSources'
        type: array
    type: object
  response.ServiceContractsResponse:
    properties:
      list:
        items:
          $ref: '#/definitions/model.ServiceContract'
        type: array
    type: object
  response.ServiceFeeManageResponse:
    properties:
      list:
        items:
          $ref: '#/definitions/model.ServiceFeeManage'
        type: array
    type: object
  response.ServiceFollowupResponse:
    properties:
      list:
        items:
          $ref: '#/definitions/model.ServiceFollowup'
        type: array
    type: object
  response.SubOrderResponse:
@@ -2375,6 +3080,52 @@
info:
  contact: {}
paths:
  /api/authority/add:
    post:
      consumes:
      - application/json
      parameters:
      - description: 查询参数
        in: body
        name: data
        required: true
        schema:
          $ref: '#/definitions/request.AddAuthority'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      security:
      - ApiKeyAuth: []
      summary: 创建角色
      tags:
      - Authority
  /api/authority/setMenuAuthority:
    post:
      consumes:
      - application/json
      parameters:
      - description: 设置角色资源权限
        in: body
        name: data
        required: true
        schema:
          $ref: '#/definitions/request.SetAuthorityMenu'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      security:
      - ApiKeyAuth: []
      summary: 设置角色菜单
      tags:
      - Authority
  /api/base/captcha:
    post:
      produces:
@@ -2455,6 +3206,11 @@
      - City
  /api/city/list:
    get:
      parameters:
      - description: 省份ID
        in: query
        name: province_id
        type: integer
      produces:
      - application/json
      responses:
@@ -2563,7 +3319,7 @@
      tags:
      - Client
  /api/client/update:
    post:
    put:
      parameters:
      - description: 查询参数
        in: body
@@ -3093,6 +3849,164 @@
      summary: 更新国家
      tags:
      - Country
  /api/customerServiceSheet/add:
    post:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.AddCustomerServiceSheet'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 添加客服单
      tags:
      - CustomerServiceSheet
  /api/customerServiceSheet/delete/{id}:
    delete:
      parameters:
      - description: 查询参数
        in: path
        name: id
        required: true
        type: integer
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 删除客服单
      tags:
      - CustomerServiceSheet
  /api/customerServiceSheet/list:
    get:
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 获取客服单列表
      tags:
      - CustomerServiceSheet
  /api/customerServiceSheet/update/{id}:
    put:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.UpdateCustomerServiceSheet'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 更新客服单
      tags:
      - CustomerServiceSheet
  /api/data/getAllData:
    get:
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            allOf:
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  $ref: '#/definitions/response.DataResponse'
              type: object
      summary: 获取所有数据
      tags:
      - Data
  /api/department/add:
    post:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.AddDepartment'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 添加部门
      tags:
      - Department
  /api/department/delete/{id}:
    delete:
      parameters:
      - description: 部门ID
        in: path
        name: id
        required: true
        type: integer
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 删除部门
      tags:
      - Department
  /api/department/list:
    get:
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            allOf:
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  $ref: '#/definitions/response.DepartmentResponse'
              type: object
      summary: 部门列表
      tags:
      - Department
  /api/department/update/{id}:
    put:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.UpdateDepartmentList'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 更新部门
      tags:
      - Department
  /api/enterpriseNature/add:
    post:
      parameters:
@@ -3475,6 +4389,99 @@
      summary: 更新主订单
      tags:
      - MasterOrder
  /api/menu/getMenu:
    get:
      parameters:
      - description: Authorization
        in: header
        name: Authorization
        required: true
        type: string
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            allOf:
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  $ref: '#/definitions/response.MenuTreeResponse'
              type: object
      security:
      - ApiKeyAuth: []
      summary: 获取菜单树
      tags:
      - Menu
  /api/orderManage/add:
    post:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.AddOrderManage'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 添加订单
      tags:
      - OrderManage
  /api/orderManage/delete/{id}:
    delete:
      parameters:
      - description: 查询参数
        in: path
        name: id
        required: true
        type: integer
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 删除订单
      tags:
      - OrderManage
  /api/orderManage/list:
    get:
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 订单列表
      tags:
      - OrderManage
  /api/orderManage/update:
    put:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.UpdateOrderManage'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 更新订单
      tags:
      - OrderManage
  /api/plan/add:
    post:
      parameters:
@@ -3660,6 +4667,12 @@
      - Province
  /api/province/list:
    get:
      parameters:
      - description: 国家ID
        in: query
        name: country_id
        required: true
        type: integer
      produces:
      - application/json
      responses:
@@ -3825,6 +4838,12 @@
      - Region
  /api/region/list:
    get:
      parameters:
      - description: 城市ID
        in: query
        name: city_id
        required: true
        type: integer
      produces:
      - application/json
      responses:
@@ -4502,7 +5521,12 @@
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
            allOf:
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  $ref: '#/definitions/response.SalesReturnResponse'
              type: object
      summary: 获取销售退货列表
      tags:
      - SalesReturn
@@ -4598,6 +5622,225 @@
      summary: 更新商机来源
      tags:
      - SalesSources
  /api/serviceContract/add:
    post:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.AddServiceContract'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 添加服务合同
      tags:
      - ServiceContract
  /api/serviceContract/delete/{id}:
    delete:
      parameters:
      - description: 查询参数
        in: path
        name: id
        required: true
        type: integer
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 删除服务合同
      tags:
      - ServiceContract
  /api/serviceContract/list:
    get:
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            allOf:
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  $ref: '#/definitions/response.ServiceContractsResponse'
              type: object
      summary: 服务合同列表
      tags:
      - ServiceContract
  /api/serviceContract/update:
    put:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.UpdateServiceContract'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 更新服务合同
      tags:
      - ServiceContract
  /api/serviceFeeManage/add:
    post:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.AddServiceFeeManage'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 添加服务费管理
      tags:
      - ServiceFeeManage
  /api/serviceFeeManage/delete/{id}:
    delete:
      parameters:
      - description: 查询参数
        in: path
        name: id
        required: true
        type: integer
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 删除服务费管理
      tags:
      - ServiceFeeManage
  /api/serviceFeeManage/list:
    get:
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            allOf:
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  $ref: '#/definitions/response.ServiceFeeManageResponse'
              type: object
      summary: 服务费管理列表
      tags:
      - ServiceFeeManage
  /api/serviceFeeManage/update:
    put:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.UpdateServiceFeeManage'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 更新服务费管理
      tags:
      - ServiceFeeManage
  /api/serviceFollowup/add:
    post:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.AddServiceFollowup'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 添加服务跟进
      tags:
      - ServiceFollowup
  /api/serviceFollowup/delete/{id}:
    delete:
      parameters:
      - description: 查询参数
        in: path
        name: id
        required: true
        type: integer
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 删除服务跟进
      tags:
      - ServiceFollowup
  /api/serviceFollowup/list:
    get:
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            allOf:
            - $ref: '#/definitions/contextx.Response'
            - properties:
                data:
                  $ref: '#/definitions/response.ServiceFollowupResponse'
              type: object
      summary: 服务跟进列表
      tags:
      - ServiceFollowup
  /api/serviceFollowup/update:
    put:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.UpdateServiceFollowup'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 更新服务跟进
      tags:
      - ServiceFollowup
  /api/status/add:
    post:
      parameters:
@@ -4894,4 +6137,23 @@
      summary: 设置用户信息
      tags:
      - User
  /api/vetting/add:
    post:
      parameters:
      - description: 查询参数
        in: body
        name: object
        required: true
        schema:
          $ref: '#/definitions/request.AddVetting'
      produces:
      - application/json
      responses:
        "200":
          description: OK
          schema:
            $ref: '#/definitions/contextx.Response'
      summary: 添加审批
      tags:
      - Vetting
swagger: "2.0"