2020.10.15

188 阅读4分钟
任务1 截止10.25

用户创建联盟

request

登录

  {
                "userName": "userName",
                "password": "",
                "companyName": "moumou公司",
                "email": "xxxx@xx.com"
}

发送创建联盟申请信息:从session中获取user_name,在league_creation中写入league_name,league_detail,max_num,默认将application_status设置为0

POST   user/leagueCreate/application
  {
                "userNname": "userName",
                "leagueName": "leagueName",
                "leagueDetail": "leagueDetail",
                "maxNum": 10
               
}

success

{
    "status": 0,
    "msg": "成功"
}

fail

{
	"status": 6,
    "msg": "未登录请先登录"
}
leagueName不能重复
{
	"status": 11,
    "msg": "联盟已经存在"
}

基础设施管理员查看创建联盟申请表

request

登录

  {
                "adminName": "adminName",
                "adminPassword": "",
                "role": "admin"     
}

response

success

从league_creation中查看所有待审批的(application_status=0)的信息

GET     bcadmin/leagueCreate/check
{
    "status": 0,
    "data": {
        "xxxxx": [
            {
                "userNname": "userName",
                "leagueName": "leagueName",
                "leagueDetail": "leagueDetail",
                "maxNum": 10
               
            }
            
        ]
      
    }
}

从league_creation中查看所有信息(application_status=0||1)

GET  bcadmin/leagueCreate/checkAll
{
    "status": 0,
    "data": {
        "xxxx": [
            {
                "userNname": "userName",
                "leagueName": "leagueName",
                "leagueDetail": "leagueDetail",
                "maxNum": 10,
                "applicationStatus": "已审批/未审批"
            }
            
        ]
      
    }
}

fail

{
	"status": 6,
    "msg": "未登录请先登录"
}

处理联盟请求 步骤1.后台将新增联盟(组织)完成后,根据以下两个字段将league_creation中查询出来的application_status设置为1

POST   bcadmin/leagueCreate/doCheck
{
	"userName": "userName",
    "leagueName": "leagueName"
}

success

{
    "status": 0,
    "data": {
        "xxxxx": [
            {
                "userNname": "userName",
                "leagueName": "leagueName",
                "leagueDetail": "leagueDetail",
                "maxNum": 10,
                "applicationStatus": "已审批"  
            }
            
        ]
      
    }
}

fail

{
	"status": 6,
    "msg": "未登录请先登录"
}
application_status已经设置为1
{
	"status": 8,
    "msg": "工单已经处理完成"
}

步骤2.在leagueInfo中增加信息:在执行完GET /league/check,选择了一个联盟后,页面跳转到/league/check?leagueName="leagueName"

POST  bcadmin/leagueInfo/add
{
   
    "orgName": "xxxxxxxx",
    "channelName": "channelName",
    "leagueName": "leagueName"
   
}

success

{
    "status": 0,
    "data": {
        "xxxxx": [
            {
                "leagueName": "leagueName",
                "leagueDetail": "leagueDetail",
                "maxMember": 10,
                "orgName": "xx",
                "channelName": "xx"  ,
                "leagueAdminName": "userName"
               
            }
            
        ]
      
    }
}

fail

{
"status": 7,
    "msg": "未登录请先登录"
}
{
"status": 3,
    "msg": "组织名称不能为空"
}
{
"status": 3,
    "msg": "通道名称不能为空"
}
  • 步骤3.在league_member中增加信息
POST  bcadmin/leagueMember/add?leagueName=""

{
	
    "memberName": "节点名称",
    "memberIp": "节点ip",
    isDistributed: 1||0"isLeagueAdmin": 0||0,
    "peerAddressCaRoad": "xxxxxxxx",
    "userName": "联盟管理员"
}

success

{
    "status": 0,
    "msg": "成功"
}

fail

{
"status": 3,
    "msg": "节点名称不能为空"
}
{
"status": 3,
    "msg": "节点ip不能为空"
}
{
"status": 3,
    "msg": "ca地址不能为空"
}
任务2 用户加入联盟申请  计划截止到10.31

用户查看联盟

success

GET user/leagueView
{
    "status": 0,
    "data": {
        "xxxxx": [
            {
                "leagueName": "leagueName",
                "leagueDetail": "leagueDetail",
                "maxMember": 10,
                "leagueAdminName": "userName"
               
            }
            
        ]
      
    }
}

用户加入联盟

填写league_member_application表 qyz

(member_id字段改成user_name,外键删除)

request

登录

  {
                "userName": "userName",
                "password": "",
                "companyName": "moumou公司",
                "email": "xxxx@xx.com"
}

填写申请表 league_member_application application_status默认为0 qyz

POST  user/joinLeague/apply
  {
                "leagueName": "leagueName",
                "applicationDetail": "applicationDetail"
}

success

{
    "status": 0,
    "msg": "成功"
}

fail

{
"status": 7,
    "msg": "未登录请先登录"
}

联盟管理员查看申请加入联盟表 yhs

联盟管理员只看自己管理的联盟下的还未处理的申请,这里先给出我写的sql语句,大家可以先自己想一想如何实现,不过不清除再看我的sql

传值
userName

success

GET leagueAdmin/joinLeague/applyCheck
{
    "status": 0,
    "data": {
        "xxxxx": [
            {
                "userName": "申请者的用户名",
                "leagueName": "申请加入的联盟",
                "application_detail": "申请加入的信息",
                "application_status": "未审批"
               
            }
            
        ]
      
    }
}

建议大家先去navicat里面写sql语句,写完sql语句再写程序,可能涉及到数据库里面一些表的设计会有问题,比如一些外键需要删除

fail

{
"status": 7,
    "msg": "未登录请先登录"
}
{
"status": 9,
    "msg": "您还没有创建联盟,无权查看"
}

联盟管理员只看自己管理的联盟下的所有申请加入联盟的申请 yhs

success

GET leagueAdmin/joinLeague/applyCheck
{
    "status": 0,
    "data": {
        "xxxxx": [
            {
                "userName": "申请者的用户名",
                "leagueName": "申请加入的联盟",
                "application_detail": "申请加入的信息",
                "application_status": "已审批/未审批"
               
            }
            
        ]
      
    }
}

fail

{
"status": 7,
    "msg": "未登录请先登录"
}
{
"status": 9,
    "msg": "您还没有创建联盟,无权查看"
}

联盟管理员审批请求 league_member_application 0->1 yhs

POST leagueAdmin/joinLeague/doCheck
传值
leagueName=""
userName=""

success

{
    "status": 0,
    "msg": "成功"
}

分配节点:查看当前联盟下所有节点信息 league_member xfy

GET leagueAdmin/leaguePeer/distribute/{leagueName}
{
    "status": 0,
    "data": {
        "xxxxx": [
            {
                "member_name": "节点名称",
                "member_ip": "节点ip",
                "isDistributed": "已分配/未分配",
               
                "leagueName": "所属联盟"
         
            },
            {
                "member_name": "节点名称",
                "member_ip": "节点ip",
                "isDistributed": "已分配/未分配",
                
                "leagueName": "所属联盟"
         
            }
            ...
            
        ]
      
    }
}

从league_member中选取一个节点分配给用户 xfy

POST leagueAdmin/league/Peer/distribute
传值
param:leagueName=""
JSON
userName=""
memberName=""
数据库中写入
userName=""
memberName=""
isDistributed=1

success

{
    "status": 0,
    "msg": "成功"
}
{
    "status": 100,
    "msg": "成功,但该联盟下节点使用已经超过80%,请联系管理员扩容"
}

fail

{
"status": 9,
"msg": "该节点已被分配"
}

基础设施管理员增加节点 league_member xy

POST   bcadmin/leagueMember/addNew?leagueName="xxxx"
界面输入
memberName="",
memberIp="",
peerAddressCaRoad="",
写入数据库
memberName="",
memberIp="",
isDistributer=0,
isLeagueAdmin=0
peerAddressCaRoad="",
leagueName="xxx"
最后还要去leagueInfo中修改max_member值

success

{
    "status": 0,
    "msg": "成功"
}

fail

管理员要登录