Skip to content

Commit

Permalink
Merge pull request #1287 from fitzcao/issus_1285
Browse files Browse the repository at this point in the history
refactor: GrayTestService 添加实现类
  • Loading branch information
irwinsun committed Apr 30, 2020
2 parents 94d8575 + c13fb5f commit 83b20cb
Show file tree
Hide file tree
Showing 2 changed files with 90 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,7 @@ import com.tencent.devops.common.auth.api.pojo.ResourceRegisterInfo
import com.tencent.devops.common.auth.code.BK_DEVOPS_SCOPE
import com.tencent.devops.common.auth.code.GLOBAL_SCOPE_TYPE
import com.tencent.devops.common.auth.code.ProjectAuthServiceCode
import com.tencent.devops.project.dao.ProjectDao
import com.tencent.devops.project.service.ProjectPermissionService
import org.jooq.DSLContext
import org.springframework.beans.factory.annotation.Autowired

class BluekingProjectPermissionServiceImpl @Autowired constructor(
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
/*
* Tencent is pleased to support the open source community by making BK-CI 蓝鲸持续集成平台 available.
*
* Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved.
*
* BK-CI 蓝鲸持续集成平台 is licensed under the MIT license.
*
* A copy of the MIT License is included in this file.
*
*
* Terms of the MIT License:
* ---------------------------------------------------
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy,
* modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
* LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
* NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

package com.tencent.devops.project.service.impl

import com.tencent.devops.project.dao.GrayTestDao
import com.tencent.devops.project.dao.ServiceDao
import com.tencent.devops.project.pojo.service.GrayTestInfo
import com.tencent.devops.project.pojo.service.GrayTestListInfo
import com.tencent.devops.project.service.GrayTestService
import org.jooq.DSLContext
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.stereotype.Service

/**
* @author eltons, Date on 2018-12-05.
*/
@Service
class GrayTestServiceImpl @Autowired constructor(
private val dslContext: DSLContext,
private val grayTestDao: GrayTestDao,
private val serviceDao: ServiceDao
) : GrayTestService {
override fun create(userId: String, grayTestInfo: GrayTestInfo): GrayTestInfo {
return grayTestDao.create(dslContext, userId, grayTestInfo.server_id, grayTestInfo.status)
}

override fun update(userId: String, id: Long, grayTestInfo: GrayTestInfo) {
grayTestDao.update(dslContext, userId, grayTestInfo.server_id, grayTestInfo.status, id)
}

override fun delete(id: Long) {
grayTestDao.delete(dslContext, id)
}

override fun get(id: Long): GrayTestInfo {
return grayTestDao.get(dslContext, id)
}

override fun listByUser(userId: String): List<GrayTestInfo> {
return grayTestDao.listByUser(dslContext, userId)
}

override fun listByCondition(userNameList: List<String>, serviceIdList: List<String>, statusList: List<String>, pageSize: Int, pageNum: Int): List<GrayTestListInfo> {
val notNullUsers = userNameList.filterNot { it == "" }
val notNullIds = serviceIdList.filterNot { it == "" }
val notNullStatus = statusList.filterNot { it == "" }

val grayList =
grayTestDao.listByCondition(dslContext, notNullUsers, notNullIds, notNullStatus, pageSize, pageNum)
val totalRecord = grayTestDao.getSum(dslContext)
val serviceList = serviceDao.getServiceList(dslContext)
return grayList.map {
val server = serviceList.filter { it2 -> it.server_id == it2.id }[0]
GrayTestListInfo(it.id, it.server_id, server.name, it.userName, it.status, totalRecord)
}
}

override fun listAllUsers(): Map<String, List<Any>> {
val allUsers = grayTestDao.listAllUsers(dslContext)
val allService = grayTestDao.listAllService(dslContext)
val map = HashMap<String, List<Any>>()
map.put("users", allUsers)
map.put("services", allService)
return map
}
}

0 comments on commit 83b20cb

Please sign in to comment.