diff --git a/src/main/java/com/gitlink/softbot/controller/user/UserController.java b/src/main/java/com/gitlink/softbot/controller/user/UserController.java index de9bac2..8be80c5 100644 --- a/src/main/java/com/gitlink/softbot/controller/user/UserController.java +++ b/src/main/java/com/gitlink/softbot/controller/user/UserController.java @@ -1,8 +1,11 @@ package com.gitlink.softbot.controller.user; import com.gitlink.softbot.global.exception.BotException; +import com.gitlink.softbot.global.vo.Response; import com.gitlink.softbot.global.vo.Result; import com.gitlink.softbot.service.user.IUserService; +import com.gitlink.softbot.utils.AuthOperate; +import com.gitlink.softbot.utils.GitLinkApi; import com.gitlink.softbot.vo.*; import org.springframework.web.bind.annotation.*; @@ -15,11 +18,15 @@ import javax.validation.Valid; @CrossOrigin() public class UserController { + /** * 注册Bot */ @Resource IUserService userService; + + @Resource + GitLinkApi api; @PostMapping("/registerBot") public Result registerBot(@Valid @RequestBody BotInputVO botInputVO ) throws BotException { Result result = new Result<>(); @@ -161,7 +168,7 @@ public class UserController { * @return */ @PostMapping("/updateInstallBot") - public Result updateInstallBot(@Valid @RequestBody UpdateInstallBotRequest updateInstallBotRequest){ + public Result updateInstallBot(@Valid @RequestBody UpdateInstallBotRequest updateInstallBotRequest) throws BotException{ Result result = new Result<>(); userService.updateInstallBot(updateInstallBotRequest); return result.build(200).build("update bot success!"); @@ -185,8 +192,8 @@ public class UserController { * @return */ @GetMapping("/getInstallBot") - public Result getInstallBot(@RequestParam("user_id") Integer userId, @RequestParam("bot_id") Integer botId) throws BotException{ - GetInstallBotRequest getInstallBotRequest = new GetInstallBotRequest(userId, botId); + public Result getInstallBot(@RequestParam("user_id") Integer userId, @RequestParam("bot_id") Integer botId,@RequestParam("login") String login) throws BotException{ + GetInstallBotRequest getInstallBotRequest = new GetInstallBotRequest(userId, login,botId); Result result = new Result<>(); GetInstallBotResponse getInstallBotResponse = userService.getInstallBot(getInstallBotRequest); return result.build(200).build(getInstallBotResponse).build("get installBot success!"); @@ -235,8 +242,10 @@ public class UserController { * @return */ @GetMapping("/getTransferToBot") - public Result getTransferToBotResponseResult(@RequestParam("user_id") Integer userId, @RequestParam("state") Integer state){ - GetTransferToBotRequest getTransferToBotRequest = new GetTransferToBotRequest(userId, state); + public Result getTransferToBotResponseResult(@RequestParam("user_id") Integer userId, + @RequestParam("state") Integer state, + @RequestParam("login") String login){ + GetTransferToBotRequest getTransferToBotRequest = new GetTransferToBotRequest(userId, login,state); Result result = new Result<>(); GetTransferToBotResponse getTransferToBotResponse = userService.getTransferToBot(getTransferToBotRequest); return result.build(200).build("get transferToBot success!").build(getTransferToBotResponse); @@ -307,6 +316,16 @@ public class UserController { Result result = new Result<>(); return result.build(getStoreAllInstallBotResponse).build(200).build("success!"); } + /** + * 更新ClientSecret + */ + @PostMapping("/updateClientSecret") + public Result updateClientSecret(@RequestParam("user_id") Integer userId,@RequestParam("bot_id") Integer botId){ + + Response response = api.activeBotAuth(userId,botId, AuthOperate.UPDATE_SECRET); + Result result = new Result<>(); + return result.build(response).build(200).build("update success!"); + } } diff --git a/src/main/java/com/gitlink/softbot/entity/db/Bot.java b/src/main/java/com/gitlink/softbot/entity/db/Bot.java index 08dd559..62646b2 100644 --- a/src/main/java/com/gitlink/softbot/entity/db/Bot.java +++ b/src/main/java/com/gitlink/softbot/entity/db/Bot.java @@ -45,6 +45,11 @@ public class Bot { private String category; + private String privateKey; + + private Integer owerId; + + private Integer uid; @TableField(fill = FieldFill.INSERT_UPDATE) private Date updateTime; diff --git a/src/main/java/com/gitlink/softbot/entity/db/InstallBot.java b/src/main/java/com/gitlink/softbot/entity/db/InstallBot.java index f89818f..3e57657 100644 --- a/src/main/java/com/gitlink/softbot/entity/db/InstallBot.java +++ b/src/main/java/com/gitlink/softbot/entity/db/InstallBot.java @@ -31,6 +31,15 @@ public class InstallBot { private Integer state; + //安装者登录名 + private String installerLogin; + + //仓库唯一标识 + private String storeRepo; + + //添加webhookId + private Integer webhookId; + @TableField(fill = FieldFill.INSERT) private Date createTime; diff --git a/src/main/java/com/gitlink/softbot/entity/db/RegisterBot.java b/src/main/java/com/gitlink/softbot/entity/db/RegisterBot.java index be59d6f..a1e32cb 100644 --- a/src/main/java/com/gitlink/softbot/entity/db/RegisterBot.java +++ b/src/main/java/com/gitlink/softbot/entity/db/RegisterBot.java @@ -27,6 +27,11 @@ public class RegisterBot { private Integer developerId; + /** + * 注册者登录名 + */ + private String developerLogin; + @TableField(fill = FieldFill.INSERT) private Date createTime; diff --git a/src/main/java/com/gitlink/softbot/entity/db/TransferBot.java b/src/main/java/com/gitlink/softbot/entity/db/TransferBot.java index 3784438..eec71c2 100644 --- a/src/main/java/com/gitlink/softbot/entity/db/TransferBot.java +++ b/src/main/java/com/gitlink/softbot/entity/db/TransferBot.java @@ -27,8 +27,18 @@ public class TransferBot { private Integer transferFromId; + /** + * 转让者登录名 + */ + private String fromLogin; + private Integer transferToId; + /** + * 接收者登录名 + */ + private String toLogin; + private Integer isSuccess; private Date transferTime; diff --git a/src/main/java/com/gitlink/softbot/service/user/IUserService.java b/src/main/java/com/gitlink/softbot/service/user/IUserService.java index 9c91da8..8d2fc81 100644 --- a/src/main/java/com/gitlink/softbot/service/user/IUserService.java +++ b/src/main/java/com/gitlink/softbot/service/user/IUserService.java @@ -22,7 +22,7 @@ public interface IUserService { //安装Bot void installMarketBot(InstallMarketBotRequest installMarketBotRequest) throws BotException; //用户配置安装的Bot - void updateInstallBot(UpdateInstallBotRequest updateInstallBotRequest); + void updateInstallBot(UpdateInstallBotRequest updateInstallBotRequest) throws BotException; //删除安装的Bot void deleteInstallBot(DeleteInstallBotRequest deleteInstallBotRequest) throws BotException; //修改上市bot diff --git a/src/main/java/com/gitlink/softbot/service/user/impl/UserService.java b/src/main/java/com/gitlink/softbot/service/user/impl/UserService.java index 39c1af6..082f202 100644 --- a/src/main/java/com/gitlink/softbot/service/user/impl/UserService.java +++ b/src/main/java/com/gitlink/softbot/service/user/impl/UserService.java @@ -5,12 +5,17 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.fasterxml.jackson.core.JsonProcessingException; import com.gitlink.softbot.dao.db.*; import com.gitlink.softbot.entity.db.*; import com.gitlink.softbot.global.exception.BotException; +import com.gitlink.softbot.global.vo.Response; import com.gitlink.softbot.service.market.IMarketService; import com.gitlink.softbot.service.user.AbstractUserBot; import com.gitlink.softbot.service.user.IUserService; +import com.gitlink.softbot.utils.AuthOperate; +import com.gitlink.softbot.utils.GitLinkApi; +import com.gitlink.softbot.utils.response.AddWebhookResponse; import com.gitlink.softbot.vo.*; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -42,6 +47,11 @@ public class UserService extends AbstractUserBot implements IUserService { @Autowired TransferBotMapper transferBotMapper; + + + @Autowired + GitLinkApi api; + /** * 获取个人注册bot信息 * @param userId @@ -64,8 +74,11 @@ public class UserService extends AbstractUserBot implements IUserService { LimitVO limitVO = getLimitFromLimitEvents(botLimitEvents); GetRegisterBotResponse getRegisterBotResponse = new GetRegisterBotResponse(); BotOutputVO botOutputVO = new BotOutputVO(); + //增加用户登录名 + botOutputVO.setLogin(registerBot.getDeveloperLogin()); BeanUtils.copyProperties(bot,botOutputVO); getRegisterBotResponse.setBotOutputVO(botOutputVO); + getRegisterBotResponse.setLogin(registerBot.getDeveloperLogin()); botOutputVO.setLimitAndEvents(limitVO); //查询是否传让 @@ -92,6 +105,7 @@ public class UserService extends AbstractUserBot implements IUserService { log.info("开始注册Bot{}", JSON.toJSONString(botVO)); //校验必填信息信息 checkInfo(botVO); + //插入Bot表 botMapper.insert(shiftObject(botVO)); Bot insertBot = botMapper.selectOne(new QueryWrapper().eq("bot_name",botVO.getBotName())); @@ -104,6 +118,9 @@ public class UserService extends AbstractUserBot implements IUserService { RegisterBot registerBot = shiftBotToRegisterBot(botVO,insertBot); registerMapper.insert(registerBot); log.info("注册Bot结束{}",JSON.toJSONString(shiftBotToBotOutputVo(botVO,insertBot))); + + //激活Bot + api.activeBotAuth(botVO.getUserId(), botVO.getBotId(), AuthOperate.AUTH_ACTIVE); return shiftBotToBotOutputVo(botVO,insertBot); } @@ -150,7 +167,6 @@ public class UserService extends AbstractUserBot implements IUserService { //有变化需要更新 if (flag){//权限发生变化则通知安装者 //TODO 通知权限发生变化 - //更新权限 botLimitMapper.delete(new QueryWrapper() .eq("bot_id",id)); @@ -169,14 +185,7 @@ public class UserService extends AbstractUserBot implements IUserService { String eventPr = limitVO.getEventPr(); //无权限条件下 if (StringUtils.isBlank(eventCode)&&StringUtils.isBlank(eventPr)){ - Limit limit = new Limit(); - limit.setEvent(5); - limit.setReadWriteCode(2); - limit.setReadWritePr(2); - limit.setAuthCategory(2); - List limitList = new ArrayList<>(); - limitList.add(limit); - return limitList; + throw new BotException("事件不能为空!"); } //0:只读1:读写2:无权限 Integer jurisDictionCode = limitVO.getJurisDictionCode(); @@ -232,7 +241,7 @@ public class UserService extends AbstractUserBot implements IUserService { registerBots.forEach(registerBot -> { botOutputVOS.add(getBotOutputVoFromLimitAndBot( botMapper.selectById(registerBot.getBotId()),botLimitMapper.selectList(new QueryWrapper() - .eq("bot_id",registerBot.getBotId())),userId + .eq("bot_id",registerBot.getBotId())),userId,registerBot.getDeveloperLogin() )); }); botOutputVOS.forEach(botOutputVO->{ @@ -265,12 +274,13 @@ public class UserService extends AbstractUserBot implements IUserService { throw new BotException("该名称已经被使用!"); } } - public BotOutputVO getBotOutputVoFromLimitAndBot(Bot bot,List botLimitEvents,Integer userId){ + public BotOutputVO getBotOutputVoFromLimitAndBot(Bot bot,List botLimitEvents,Integer userId,String login){ BotOutputVO botOutputVO = new BotOutputVO(); botOutputVO.setBotId(bot.getId()); botOutputVO.setBotDes(bot.getBotDes()); botOutputVO.setBotName(bot.getBotName()); botOutputVO.setUserId(userId); + botOutputVO.setLogin(login); botOutputVO.setLogo(bot.getLogo()); botOutputVO.setWebUrl(bot.getWebUrl()); botOutputVO.setWebhook(bot.getWebhook()); @@ -328,9 +338,7 @@ public class UserService extends AbstractUserBot implements IUserService { bot.setBotName(botVO.getBotName()); bot.setIsPublic(botVO.getIsPublic()); bot.setWebhook(botVO.getWebhook()); - bot.setClientSecret(getClientSecret()); - bot.setClientId(getClientId()); - bot.setWebUrl(getBotUrl(botVO.getBotName())); + bot.setWebUrl(botVO.getBotUrl()); bot.setLogo(botVO.getLogo()); bot.setState(0); return bot; @@ -355,6 +363,7 @@ public class UserService extends AbstractUserBot implements IUserService { RegisterBot registerBot = new RegisterBot(); registerBot.setBotId(bot.getId()); registerBot.setDeveloperId(botInputVO.getUserId()); + registerBot.setDeveloperLogin(botInputVO.getLogin()); return registerBot; } public BotOutputVO shiftBotToBotOutputVo(BotInputVO botInputVO,Bot bot){ @@ -386,6 +395,25 @@ public class UserService extends AbstractUserBot implements IUserService { if (!registerBot.getDeveloperId().equals(deleteBotRequest.getUserId())){ throw new BotException("不能删除不属于自己的Bot!"); } + + //查询所有安装要删除bot的安装信息 + List installBots = installMapper.selectList(Wrappers.lambdaQuery() + .eq(InstallBot::getBotId,deleteBotRequest.getBotId())); + if (installBots!=null&&installBots.size()>0){ + + //批量插入installBot表,添加webhook + for (InstallBot installBot : installBots) { + + //构造接口参数 + Object[] objects = new Object[]{deleteBotRequest.getLogin(), installBot.getStoreRepo()}; + + //调用平台api,删除所有相关webhook + api.deleteWebhook(deleteBotRequest.getUserId(),objects,installBot.getWebhookId()); + } + + } + + int flag1 = botMapper.deleteById(deleteBotRequest.getBotId()); //2.删除limit表中数据 Map map = new HashMap<>(); @@ -532,7 +560,7 @@ public class UserService extends AbstractUserBot implements IUserService { @Override @Transactional(rollbackFor = Exception.class) - public void installMarketBot(InstallMarketBotRequest installMarketBotRequest) throws BotException{ + public void installMarketBot(InstallMarketBotRequest installMarketBotRequest) throws BotException { try { //1.校验有没有安装过此Bot @@ -544,9 +572,32 @@ public class UserService extends AbstractUserBot implements IUserService { } //1.插入到installBot表中 List storeList = installMarketBotRequest.getStoreList(); - storeList.forEach(store ->{ - installMapper.insert(getInstallBot(installMarketBotRequest,store)); - }); + List installBotList = new ArrayList<>(); + + //批量构造InstallBot + getInstallBots(installBotList,installMarketBotRequest,storeList); + + //查询订阅事件 + List botLimitEvents = botLimitMapper.selectList(Wrappers.lambdaQuery() + .eq(BotLimitEvent::getBotId, installMarketBotRequest.getBotId())); + assert botLimitEvents != null && botLimitEvents.size() > 0; + Webhook webhook = getWebhook(botLimitEvents); + + //批量插入installBot表,添加webhook + for (InstallBot installBot : installBotList) { + //插入表 + installMapper.insert(installBot); + + //先获取webhookId构造webhook + Object[] objects = new Object[]{installMarketBotRequest.getLogin(), installBot.getStoreRepo()}; + Response response = api.addWebhook(installMarketBotRequest.getUserId(), objects, webhook); + AddWebhookResponse addWebhookResponse = JSON.parseObject(response.getData().toString(),AddWebhookResponse.class); + + //回写WebhookId + installBot.setWebhookId(addWebhookResponse.getId()); + installMapper.updateById(installBot); + } + //2.对MarketBot表中install_num加1 MarketBot updateMarketBot = marketBotMapper.selectOne(new QueryWrapper() .eq("bot_id",installMarketBotRequest.getBotId())); @@ -569,22 +620,61 @@ public class UserService extends AbstractUserBot implements IUserService { throw new BotException("安装失败!"); } -// //4.对es中install_num加1 -// marketService.updateBotInstall(String.valueOf(installMarketBotRequest.getBotId()),"+"); } - public InstallBot getInstallBot(InstallMarketBotRequest installMarketBotRequest,Integer storeId){ - InstallBot installBot = new InstallBot(); - installBot.setBotId(installMarketBotRequest.getBotId()); - installBot.setInstallerId(installMarketBotRequest.getUserId()); - installBot.setStoreId(storeId); - installBot.setState(installMarketBotRequest.getState()); - return installBot; + + private Webhook getWebhook(List limitEvents){ + + assert !Objects.isNull(limitEvents); + Webhook webhook = new Webhook(); + Object[] objects = new Object[limitEvents.size()]; + for (int i = 0; i < limitEvents.size(); i++) { + if (limitEvents.get(i).getEvent()==0){ + objects[i]="push"; + }else if (limitEvents.get(i).getEvent()==1){ + objects[i]="create"; + }else if (limitEvents.get(i).getEvent()==2){ + objects[i]="delete"; + }else if (limitEvents.get(i).getEvent()==3){ + objects[i]="pull_request"; + }else { + objects[i]="pull_request_assign"; + } + } + Bot bot = botMapper.selectById(limitEvents.get(0).getBotId()); + webhook.setEvents(objects); + webhook.setContent_type("json"); + webhook.setUrl(bot.getWebUrl()); + webhook.setHttp_method("POST"); + webhook.setBranch_filter("*"); + return webhook; + } + public void getInstallBots(List installBots,InstallMarketBotRequest installMarketBotRequest,List storeIds){ +// InstallBot installBot = new InstallBot(); +// installBot.setBotId(installMarketBotRequest.getBotId()); +// installBot.setInstallerId(installMarketBotRequest.getUserId()); +// installBot.setStoreId(storeId); +// installBot.setState(installMarketBotRequest.getState()); + if (storeIds!=null&&storeIds.size()>0){ + storeIds.forEach(storeId->{ + InstallBot installBot = new InstallBot(); + installBot.setBotId(installMarketBotRequest.getBotId()); + installBot.setInstallerId(installMarketBotRequest.getUserId()); + installBot.setInstallerLogin(installMarketBotRequest.getLogin()); + installBot.setStoreId(storeId); + installBot.setStoreRepo(installMarketBotRequest.getRepoMap().get(storeId)); + installBot.setState(installMarketBotRequest.getState()); + installBots.add(installBot); + }); + } + } public InstallBot getInstallBot(UpdateInstallBotRequest updateInstallBotRequest,Integer storeId){ InstallBot installBot = new InstallBot(); installBot.setBotId(updateInstallBotRequest.getBotId()); installBot.setInstallerId(updateInstallBotRequest.getUserId()); installBot.setStoreId(storeId); + installBot.setInstallerLogin(updateInstallBotRequest.getLogin()); + installBot.setStoreRepo(updateInstallBotRequest.getRepoMap().get(storeId)); //TODO 如果bot生效,通过平台该bot installBot.setState(updateInstallBotRequest.getState()); return installBot; @@ -592,20 +682,47 @@ public class UserService extends AbstractUserBot implements IUserService { @Override @Transactional(rollbackFor = Exception.class) - public void updateInstallBot(UpdateInstallBotRequest updateInstallBotRequest) { + public void updateInstallBot(UpdateInstallBotRequest updateInstallBotRequest) throws BotException{ - if (updateInstallBotRequest.getState()==0){ - //TODO 挂起要验证密码 - } //1.先删除botId和userId对应的所有installBot + List installBotList = installMapper.selectList(Wrappers.lambdaQuery() + .eq(InstallBot::getBotId,updateInstallBotRequest.getBotId()) + .eq(InstallBot::getInstallerId,updateInstallBotRequest.getUserId())); + + if (!Objects.isNull(installBotList)){ + + for (InstallBot installBot : installBotList){ + //先删除webhook + Object[] objects = new Object[]{updateInstallBotRequest.getLogin(),installBot.getStoreRepo()}; + api.deleteWebhook(updateInstallBotRequest.getUserId(),objects,installBot.getWebhookId()); + } + } + installMapper.delete(new QueryWrapper() .eq("bot_id",updateInstallBotRequest.getBotId()) .eq("installer_id",updateInstallBotRequest.getUserId())); List storeList = updateInstallBotRequest.getStoreList(); - //2.然后重新插入所有storeId; - storeList.forEach(store->{ - installMapper.insert(getInstallBot(updateInstallBotRequest,store)); - }); + + //2.然后重新插入所有storeId; //新增webhook + List botLimitEvents = botLimitMapper.selectList(Wrappers.lambdaQuery() + .eq(BotLimitEvent::getBotId,updateInstallBotRequest.getBotId())); + + Webhook webhook = getWebhook(botLimitEvents); + for (Integer store : storeList){ + InstallBot installBot = getInstallBot(updateInstallBotRequest,store); + installMapper.insert(installBot); + + Object[] objects = new Object[]{updateInstallBotRequest.getLogin(),installBot.getStoreRepo()}; + try { + Response response = api.addWebhook(updateInstallBotRequest.getUserId(),objects,webhook); + AddWebhookResponse addWebhookResponse = JSON.parseObject(response.getData().toString(),AddWebhookResponse.class); + installBot.setWebhookId(addWebhookResponse.getId()); + installMapper.updateById(installBot); + }catch (Exception e){ + throw new BotException("添加webhook失败"); + } + } + } @Override @@ -629,12 +746,17 @@ public class UserService extends AbstractUserBot implements IUserService { marketBot.setInstallNum(marketBot.getInstallNum()-1); marketBotMapper.updateById(marketBot); } -// //3.es中install_num减去1 -// marketService.updateBotInstall(String.valueOf(deleteInstallBotRequest.getBotId()),"-"); + + //删除install_bot - installMapper.delete(new QueryWrapper() - .eq("bot_id",deleteInstallBotRequest.getBotId()) - .eq("installer_id",deleteInstallBotRequest.getUserId())); + InstallBot installBot = installMapper.selectOne(Wrappers.lambdaQuery() + .eq(InstallBot::getBotId,deleteInstallBotRequest.getBotId()) + .eq(InstallBot::getInstallerId,deleteInstallBotRequest.getUserId())); + installMapper.deleteById(installBot.getId()); + + //删除webhook + Object[] objects = new Object[]{deleteInstallBotRequest.getLogin(),installBot.getStoreRepo()}; + api.deleteWebhook(deleteInstallBotRequest.getUserId(),objects,installBot.getWebhookId()); } @Override diff --git a/src/main/java/com/gitlink/softbot/utils/AuthOperate.java b/src/main/java/com/gitlink/softbot/utils/AuthOperate.java new file mode 100644 index 0000000..1ee2312 --- /dev/null +++ b/src/main/java/com/gitlink/softbot/utils/AuthOperate.java @@ -0,0 +1,9 @@ +package com.gitlink.softbot.utils; + +public class AuthOperate { + + public final static String AUTH_ACTIVE = "auth_active"; + public final static String UPDATE_SECRET = "update_secret"; + public final static String UPDATE_PRIVATE_KEY = "update_private_key"; + +} diff --git a/src/main/java/com/gitlink/softbot/utils/RestTemplateUtil.java b/src/main/java/com/gitlink/softbot/utils/RestTemplateUtil.java index 3b3c776..2f37de8 100644 --- a/src/main/java/com/gitlink/softbot/utils/RestTemplateUtil.java +++ b/src/main/java/com/gitlink/softbot/utils/RestTemplateUtil.java @@ -2,9 +2,6 @@ package com.gitlink.softbot.utils; import com.gitlink.softbot.global.vo.Response; -import org.apache.logging.log4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Value; import org.springframework.http.*; import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; diff --git a/src/main/java/com/gitlink/softbot/utils/response/AddWebhookResponse.java b/src/main/java/com/gitlink/softbot/utils/response/AddWebhookResponse.java new file mode 100644 index 0000000..3e99954 --- /dev/null +++ b/src/main/java/com/gitlink/softbot/utils/response/AddWebhookResponse.java @@ -0,0 +1,19 @@ +package com.gitlink.softbot.utils.response; + +import lombok.Data; + +import java.util.Date; + +@Data +public class AddWebhookResponse { + + private Integer Id; + private String type; + private String contentType; + private String httpMethod; + private String url; + private String[] events; + private Boolean active; + private String branchFilter; + private Date createdAt; +} diff --git a/src/main/java/com/gitlink/softbot/vo/BotInputVO.java b/src/main/java/com/gitlink/softbot/vo/BotInputVO.java index 7affd23..b28fd5d 100644 --- a/src/main/java/com/gitlink/softbot/vo/BotInputVO.java +++ b/src/main/java/com/gitlink/softbot/vo/BotInputVO.java @@ -25,6 +25,8 @@ public class BotInputVO implements Serializable { @NotNull(message = "userId is required") private Integer userId; + private String login; + private Integer botId; //bot名称 @@ -45,6 +47,9 @@ public class BotInputVO implements Serializable { //是否公开 private Integer isPublic; + //TODO 前端改协议 + private String botUrl; + /** * 权限与事件 */ diff --git a/src/main/java/com/gitlink/softbot/vo/BotOutputVO.java b/src/main/java/com/gitlink/softbot/vo/BotOutputVO.java index 7a30931..9747324 100644 --- a/src/main/java/com/gitlink/softbot/vo/BotOutputVO.java +++ b/src/main/java/com/gitlink/softbot/vo/BotOutputVO.java @@ -23,6 +23,8 @@ public class BotOutputVO implements Serializable { private Integer userId; + private String login; + //bot名称 private String botName; diff --git a/src/main/java/com/gitlink/softbot/vo/BotToMarketRequest.java b/src/main/java/com/gitlink/softbot/vo/BotToMarketRequest.java index d1103a2..d6cda1f 100644 --- a/src/main/java/com/gitlink/softbot/vo/BotToMarketRequest.java +++ b/src/main/java/com/gitlink/softbot/vo/BotToMarketRequest.java @@ -22,6 +22,9 @@ public class BotToMarketRequest implements Serializable { @NotNull(message = "userId is required") private Integer userId; + + private String login; + @NotNull(message = "botId is required") private Integer botId; diff --git a/src/main/java/com/gitlink/softbot/vo/CancelTransferBotRequest.java b/src/main/java/com/gitlink/softbot/vo/CancelTransferBotRequest.java index 4d9b2c2..1302c49 100644 --- a/src/main/java/com/gitlink/softbot/vo/CancelTransferBotRequest.java +++ b/src/main/java/com/gitlink/softbot/vo/CancelTransferBotRequest.java @@ -20,6 +20,9 @@ import java.io.Serializable; public class CancelTransferBotRequest implements Serializable { @NotNull(message = "userId is required") private Integer userId; + + private String login; + @NotNull(message = "botId is required") private Integer botId; } diff --git a/src/main/java/com/gitlink/softbot/vo/DeleteBotRequest.java b/src/main/java/com/gitlink/softbot/vo/DeleteBotRequest.java index 6b0aff0..0ba3d39 100644 --- a/src/main/java/com/gitlink/softbot/vo/DeleteBotRequest.java +++ b/src/main/java/com/gitlink/softbot/vo/DeleteBotRequest.java @@ -19,6 +19,9 @@ import javax.validation.constraints.NotNull; public class DeleteBotRequest { @NotNull(message = "userId is required") private Integer userId; + + private String login; + @NotNull(message = "botId is required") private Integer botId; } diff --git a/src/main/java/com/gitlink/softbot/vo/DeleteInstallBotRequest.java b/src/main/java/com/gitlink/softbot/vo/DeleteInstallBotRequest.java index 809a605..0725d2e 100644 --- a/src/main/java/com/gitlink/softbot/vo/DeleteInstallBotRequest.java +++ b/src/main/java/com/gitlink/softbot/vo/DeleteInstallBotRequest.java @@ -20,6 +20,9 @@ import javax.validation.constraints.NotNull; public class DeleteInstallBotRequest { @NotNull(message = "userId is required") private Integer userId; + + private String login; + @NotNull(message = "botId is required") private Integer botId; private String password; diff --git a/src/main/java/com/gitlink/softbot/vo/GetAllInstallBotsResponse.java b/src/main/java/com/gitlink/softbot/vo/GetAllInstallBotsResponse.java index 56c90ad..a4feb7e 100644 --- a/src/main/java/com/gitlink/softbot/vo/GetAllInstallBotsResponse.java +++ b/src/main/java/com/gitlink/softbot/vo/GetAllInstallBotsResponse.java @@ -21,5 +21,7 @@ public class GetAllInstallBotsResponse { Integer userId; + String login; + List installBots; } diff --git a/src/main/java/com/gitlink/softbot/vo/GetBotRequest.java b/src/main/java/com/gitlink/softbot/vo/GetBotRequest.java index 8eafb51..4e0f434 100644 --- a/src/main/java/com/gitlink/softbot/vo/GetBotRequest.java +++ b/src/main/java/com/gitlink/softbot/vo/GetBotRequest.java @@ -18,4 +18,5 @@ import java.io.Serializable; @JsonInclude(JsonInclude.Include.NON_NULL) public class GetBotRequest implements Serializable { private Integer userId; + private String login; } diff --git a/src/main/java/com/gitlink/softbot/vo/GetBotResponse.java b/src/main/java/com/gitlink/softbot/vo/GetBotResponse.java index 1b10f40..b056f53 100644 --- a/src/main/java/com/gitlink/softbot/vo/GetBotResponse.java +++ b/src/main/java/com/gitlink/softbot/vo/GetBotResponse.java @@ -18,5 +18,6 @@ import java.util.List; @JsonInclude(JsonInclude.Include.NON_NULL) public class GetBotResponse { private Integer userId; + private String login; private List list; } diff --git a/src/main/java/com/gitlink/softbot/vo/GetInstallBotRequest.java b/src/main/java/com/gitlink/softbot/vo/GetInstallBotRequest.java index 6bb8278..1fb0a39 100644 --- a/src/main/java/com/gitlink/softbot/vo/GetInstallBotRequest.java +++ b/src/main/java/com/gitlink/softbot/vo/GetInstallBotRequest.java @@ -20,6 +20,7 @@ import java.io.Serializable; public class GetInstallBotRequest implements Serializable { @NotNull(message = "userId is required") private Integer userId; + private String login; @NotNull(message = "botId is required") private Integer botId; } diff --git a/src/main/java/com/gitlink/softbot/vo/GetInstallBotResponse.java b/src/main/java/com/gitlink/softbot/vo/GetInstallBotResponse.java index 3215322..9a3ca8f 100644 --- a/src/main/java/com/gitlink/softbot/vo/GetInstallBotResponse.java +++ b/src/main/java/com/gitlink/softbot/vo/GetInstallBotResponse.java @@ -20,6 +20,7 @@ import java.util.List; @JsonInclude(JsonInclude.Include.NON_NULL) public class GetInstallBotResponse implements Serializable { private Integer userId; + private String login; private Integer botId; private String marketName; private Integer state; diff --git a/src/main/java/com/gitlink/softbot/vo/GetMarketBotsRequest.java b/src/main/java/com/gitlink/softbot/vo/GetMarketBotsRequest.java index 4abfd31..4a983f7 100644 --- a/src/main/java/com/gitlink/softbot/vo/GetMarketBotsRequest.java +++ b/src/main/java/com/gitlink/softbot/vo/GetMarketBotsRequest.java @@ -20,4 +20,5 @@ import java.io.Serializable; public class GetMarketBotsRequest implements Serializable { @NotNull(message = "userId is required") private Integer userId; + private String login; } diff --git a/src/main/java/com/gitlink/softbot/vo/GetMarketBotsResponse.java b/src/main/java/com/gitlink/softbot/vo/GetMarketBotsResponse.java index e3635c7..3a5ffa6 100644 --- a/src/main/java/com/gitlink/softbot/vo/GetMarketBotsResponse.java +++ b/src/main/java/com/gitlink/softbot/vo/GetMarketBotsResponse.java @@ -22,6 +22,7 @@ import java.util.List; @JsonInclude(JsonInclude.Include.NON_NULL) public class GetMarketBotsResponse implements Serializable { private Integer userId; + private String login; private List getMarketBots; public GetMarketBot getMarketBot(MarketBot marketBot){ diff --git a/src/main/java/com/gitlink/softbot/vo/GetRegisterBotResponse.java b/src/main/java/com/gitlink/softbot/vo/GetRegisterBotResponse.java index cb62231..bf2c48a 100644 --- a/src/main/java/com/gitlink/softbot/vo/GetRegisterBotResponse.java +++ b/src/main/java/com/gitlink/softbot/vo/GetRegisterBotResponse.java @@ -18,5 +18,6 @@ import java.util.List; @JsonInclude(JsonInclude.Include.NON_NULL) public class GetRegisterBotResponse { private Integer userId; + private String login; private BotOutputVO botOutputVO; } diff --git a/src/main/java/com/gitlink/softbot/vo/GetTransferFromBotRequest.java b/src/main/java/com/gitlink/softbot/vo/GetTransferFromBotRequest.java index 5e2a7ee..fc188fe 100644 --- a/src/main/java/com/gitlink/softbot/vo/GetTransferFromBotRequest.java +++ b/src/main/java/com/gitlink/softbot/vo/GetTransferFromBotRequest.java @@ -21,6 +21,7 @@ import java.io.Serializable; public class GetTransferFromBotRequest implements Serializable { @NotNull(message = "userId is required") private Integer userId; + private String login; @NotNull(message = "botId is required") private Integer botId; } diff --git a/src/main/java/com/gitlink/softbot/vo/GetTransferFromBotResponse.java b/src/main/java/com/gitlink/softbot/vo/GetTransferFromBotResponse.java index 913c008..718d8c4 100644 --- a/src/main/java/com/gitlink/softbot/vo/GetTransferFromBotResponse.java +++ b/src/main/java/com/gitlink/softbot/vo/GetTransferFromBotResponse.java @@ -19,6 +19,7 @@ import lombok.NoArgsConstructor; @JsonInclude(JsonInclude.Include.NON_NULL) public class GetTransferFromBotResponse { private Integer userId; + private String login; private Integer botId; private Integer state; } diff --git a/src/main/java/com/gitlink/softbot/vo/GetTransferToBotRequest.java b/src/main/java/com/gitlink/softbot/vo/GetTransferToBotRequest.java index c41dfc1..333e8d5 100644 --- a/src/main/java/com/gitlink/softbot/vo/GetTransferToBotRequest.java +++ b/src/main/java/com/gitlink/softbot/vo/GetTransferToBotRequest.java @@ -20,6 +20,7 @@ import java.io.Serializable; public class GetTransferToBotRequest implements Serializable { @NotNull(message = "userId is required") private Integer userId; + private String login; @NotNull(message = "state is required") private Integer state; } diff --git a/src/main/java/com/gitlink/softbot/vo/GetTransferToBotResponse.java b/src/main/java/com/gitlink/softbot/vo/GetTransferToBotResponse.java index 146b8bf..10830f9 100644 --- a/src/main/java/com/gitlink/softbot/vo/GetTransferToBotResponse.java +++ b/src/main/java/com/gitlink/softbot/vo/GetTransferToBotResponse.java @@ -26,6 +26,7 @@ import java.util.List; @Slf4j public class GetTransferToBotResponse implements Serializable { private Integer userId; + private String login; private List botList; public GetTransferToBot getTransferToBot(Bot bot, TransferBot transferBot){ log.info("bot:{}",bot); diff --git a/src/main/java/com/gitlink/softbot/vo/InstallMarketBotRequest.java b/src/main/java/com/gitlink/softbot/vo/InstallMarketBotRequest.java index 3b061a6..5395311 100644 --- a/src/main/java/com/gitlink/softbot/vo/InstallMarketBotRequest.java +++ b/src/main/java/com/gitlink/softbot/vo/InstallMarketBotRequest.java @@ -10,6 +10,7 @@ import lombok.NoArgsConstructor; import java.io.Serializable; import java.util.List; +import java.util.Map; @Data @AllArgsConstructor @@ -19,7 +20,10 @@ import java.util.List; @JsonInclude(JsonInclude.Include.NON_NULL) public class InstallMarketBotRequest implements Serializable { private Integer userId; + private String login; private Integer botId; private Integer state; private List storeList; + //TODO 前端修改 + private Map repoMap; } diff --git a/src/main/java/com/gitlink/softbot/vo/TransferBotRequest.java b/src/main/java/com/gitlink/softbot/vo/TransferBotRequest.java index 5a50dcb..9d0d458 100644 --- a/src/main/java/com/gitlink/softbot/vo/TransferBotRequest.java +++ b/src/main/java/com/gitlink/softbot/vo/TransferBotRequest.java @@ -20,6 +20,7 @@ import java.io.Serializable; public class TransferBotRequest implements Serializable { @NotNull(message = "userId is required") private Integer userId; + private String login; @NotNull(message = "userName is required") private String userName; @NotNull(message = "botId is required") diff --git a/src/main/java/com/gitlink/softbot/vo/UpdateInstallBotRequest.java b/src/main/java/com/gitlink/softbot/vo/UpdateInstallBotRequest.java index d085115..a3dddc1 100644 --- a/src/main/java/com/gitlink/softbot/vo/UpdateInstallBotRequest.java +++ b/src/main/java/com/gitlink/softbot/vo/UpdateInstallBotRequest.java @@ -11,6 +11,7 @@ import lombok.NoArgsConstructor; import javax.validation.constraints.NotNull; import java.io.Serializable; import java.util.List; +import java.util.Map; @Data @AllArgsConstructor @@ -21,10 +22,13 @@ import java.util.List; public class UpdateInstallBotRequest implements Serializable { @NotNull(message = "userId is required") private Integer userId; + private String login; @NotNull(message = "botId is required") private Integer botId; @NotNull(message = "state is required") private Integer state; private String password; private List storeList; + //前端修改 storeId-repo + private Map repoMap; }