package route import com.jfinal.kit.JsonKit import com.jfinal.plugin.activerecord.Db import com.jfinal.plugin.activerecord.Record import model.JSONResponse import model.ModelRole import ro.pippo.controller.* import ro.pippo.controller.extractor.Param import service.Service import util.* @Path("/role") class CtrlRole : Controller() { val service = Service() @GET("/{id: [0-9]+}") @Produces(Produces.JSON) fun getRoleById(@Param("id") id: Int): JSONResponse { val role = service.getRoleById(id) if (role == null) { return responseNotFoundById() } return responseSuccess(role) } //校验用户名是否存在 @POST("/checkName/{name}") @Produces(Produces.JSON) fun checkName(@Param("name") name : String ) :JSONResponse{ if ( null == name || "" == name.trim()){ responseCheckNameFailed() } service.getRoleByName(name) ?: return responseCheckNameFailed() return responseSuccess(true) } @GET("/{page: [0-9]+}/{size: [0-9]+}") @Produces(Produces.JSON) fun pagi(@Param("page") num:Int, @Param("size") size:Int) :String { val page = service.pagiRole(num,size) return JsonKit.toJson(responseSuccess(page)) } @GET("/byUser/{userId: [0-9]+}") @Produces(Produces.JSON) fun getRoleByUserId(@Param("userId") userId: Int): JSONResponse { val user = service.getUserById(userId) if (user == null) { return responseNotFoundById() } val role = service.getRoleByUserId(userId) if (role == null) { return responseNotFoundById() } return responseSuccess(role) } @POST("/") @Produces(Produces.JSON) fun addRole(): JSONResponse { val role: ModelRole? = request.createEntityFromParameters(ModelRole::class.java) if (role == null) { return responseInvalidParams() } val isSuccess = service.saveRole(role) return if (isSuccess) { responseSuccess(role) } else { responseOperationFailed() } } @POST("/del/{id: [0-9]+}") @Produces(Produces.JSON) fun delRole(@Param("id") roleId: Int): JSONResponse { val role = service.getRoleById(roleId) if (role == null) { responseNotFoundById() } val isSuccess = service.deleteRole(roleId) return if (isSuccess) { responseSuccess(roleId) } else { responseOperationFailed() } } @POST("/{id: [0-9]+}") @Produces(Produces.JSON) fun updateRole():JSONResponse { val role: ModelRole? = request.createEntityFromParameters(ModelRole::class.java) if (role == null) { return responseNotFoundById() } val isSuccess = service.updateRole(role) return if (isSuccess) { responseSuccess(role) } else { responseOperationFailed() } } //更新 @POST("/update") @Produces(Produces.JSON) fun updateRol() :JSONResponse{ if (request.parameters["id"] != null) { val record = Record() updateUtil(record,request) val isSuccess = Db.update("role","id",record) return if (isSuccess){ responseSuccess(true) } else{ responseUpdateRoleFailed() } }else { return responseUpdateRoleFailed() } } }