Skip to content

Commit

Permalink
增加package页面修改展示名字/描述内容
Browse files Browse the repository at this point in the history
  • Loading branch information
xue-ding-e committed Jun 4, 2024
1 parent 041a8f4 commit 055f11c
Show file tree
Hide file tree
Showing 6 changed files with 177 additions and 32 deletions.
58 changes: 58 additions & 0 deletions server/api/v1/system/sys_auto_code.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,10 @@ import (
"strings"

"github.com/flipped-aurora/gin-vue-admin/server/global"
"github.com/flipped-aurora/gin-vue-admin/server/model/common/request"
"github.com/flipped-aurora/gin-vue-admin/server/model/common/response"
"github.com/flipped-aurora/gin-vue-admin/server/model/system"
sysReq "github.com/flipped-aurora/gin-vue-admin/server/model/system/request"
"github.com/flipped-aurora/gin-vue-admin/server/utils"

"github.com/gin-gonic/gin"
Expand Down Expand Up @@ -193,6 +195,34 @@ func (autoApi *AutoCodeApi) CreatePackage(c *gin.Context) {
}
}

// UpdatePackage
// @Tags AutoCode
// @Summary 更新package展示名字/描述
// @Security ApiKeyAuth
// @accept application/json
// @Produce application/json
// @Param data body system.SysAutoCode true "更新package"
// @Success 200 {object} response.Response{data=map[string]interface{},msg=string} "更新package成功"
// @Router /autoCode/updatePackageDetail [post]
func (autoApi *AutoCodeApi) UpdatePackageDetail(c *gin.Context) {
var a sysReq.SysAutoCode
var autoCode system.SysAutoCode
_ = c.ShouldBindJSON(&a)
if err := global.GVA_DB.Where("id = ?", a.ID).First(&autoCode).Error; err != nil {
response.FailWithMessage("获取package失败", c)
return
}
// 更新展示名字/描述
autoCode.Label = a.Label
autoCode.Desc = a.Desc
if err := global.GVA_DB.Save(&autoCode).Error; err != nil {
global.GVA_LOG.Error("更新失败!", zap.Error(err))
response.FailWithMessage("更新失败", c)
} else {
response.OkWithMessage("更新成功", c)
}
}

// GetPackage
// @Tags AutoCode
// @Summary 获取package
Expand All @@ -211,6 +241,34 @@ func (autoApi *AutoCodeApi) GetPackage(c *gin.Context) {
}
}

// auto_code_api.go

// GetPackageByID
// @Tags AutoCode
// @Summary 根据ID获取package
// @Security ApiKeyAuth
// @accept application/json
// @Produce application/json
// @Param id body int true "package ID"
// @Success 200 {object} response.Response{data=system.SysAutoCode,msg=string} "根据ID获取package成功"
// @Router /autoCode/getPackageByID/ POST
func (autoApi *AutoCodeApi) GetPackageById(c *gin.Context) {
var pkgId request.GetById
err := c.ShouldBindJSON(&pkgId)
if err != nil {
response.FailWithMessage(err.Error(), c)
return
}
var autoCode system.SysAutoCode
fmt.Printf("pkgId%+v", pkgId)
if err := global.GVA_DB.First(&autoCode, pkgId).Error; err != nil {
global.GVA_LOG.Error("获取失败!", zap.Error(err))
response.FailWithMessage("获取失败", c)
} else {
response.OkWithDetailed(gin.H{"pkg": autoCode}, "获取成功", c)
}
}

// DelPackage
// @Tags AutoCode
// @Summary 删除package
Expand Down
7 changes: 7 additions & 0 deletions server/model/system/request/sys_auto_code.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package request

type SysAutoCode struct {
ID uint `gorm:"primarykey" json:"ID"` // 主键ID
Label string `json:"label" gorm:"comment:展示名"`
Desc string `json:"desc" gorm:"comment:描述"`
}
24 changes: 13 additions & 11 deletions server/router/system/sys_auto_code.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,18 @@ func (s *AutoCodeRouter) InitAutoCodeRouter(Router *gin.RouterGroup) {
autoCodeRouter := Router.Group("autoCode")
autoCodeApi := v1.ApiGroupApp.SystemApiGroup.AutoCodeApi
{
autoCodeRouter.GET("getDB", autoCodeApi.GetDB) // 获取数据库
autoCodeRouter.GET("getTables", autoCodeApi.GetTables) // 获取对应数据库的表
autoCodeRouter.GET("getColumn", autoCodeApi.GetColumn) // 获取指定表所有字段信息
autoCodeRouter.POST("preview", autoCodeApi.PreviewTemp) // 获取自动创建代码预览
autoCodeRouter.POST("createTemp", autoCodeApi.CreateTemp) // 创建自动化代码
autoCodeRouter.POST("createPackage", autoCodeApi.CreatePackage) // 创建package包
autoCodeRouter.POST("getPackage", autoCodeApi.GetPackage) // 获取package包
autoCodeRouter.POST("delPackage", autoCodeApi.DelPackage) // 删除package包
autoCodeRouter.POST("createPlug", autoCodeApi.AutoPlug) // 自动插件包模板
autoCodeRouter.POST("installPlugin", autoCodeApi.InstallPlugin) // 自动安装插件
autoCodeRouter.POST("pubPlug", autoCodeApi.PubPlug) // 打包插件
autoCodeRouter.GET("getDB", autoCodeApi.GetDB) // 获取数据库
autoCodeRouter.GET("getTables", autoCodeApi.GetTables) // 获取对应数据库的表
autoCodeRouter.GET("getColumn", autoCodeApi.GetColumn) // 获取指定表所有字段信息
autoCodeRouter.POST("preview", autoCodeApi.PreviewTemp) // 获取自动创建代码预览
autoCodeRouter.POST("createTemp", autoCodeApi.CreateTemp) // 创建自动化代码
autoCodeRouter.POST("createPackage", autoCodeApi.CreatePackage) // 创建package包
autoCodeRouter.POST("updatePackageDetail", autoCodeApi.UpdatePackageDetail) // 修改package包展示名/描述
autoCodeRouter.POST("getPackage", autoCodeApi.GetPackage) // 获取package包
autoCodeRouter.POST("getPackageById", autoCodeApi.GetPackageById) // 获取package包
autoCodeRouter.POST("delPackage", autoCodeApi.DelPackage) // 删除package包
autoCodeRouter.POST("createPlug", autoCodeApi.AutoPlug) // 自动插件包模板
autoCodeRouter.POST("installPlugin", autoCodeApi.InstallPlugin) // 自动安装插件
autoCodeRouter.POST("pubPlug", autoCodeApi.PubPlug) // 打包插件
}
}
2 changes: 2 additions & 0 deletions server/source/system/api.go
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,9 @@ func (i *initApi) InitializeData(ctx context.Context) (context.Context, error) {

{ApiGroup: "包(pkg)生成器", Method: "POST", Path: "/autoCode/createPackage", Description: "生成包(package)"},
{ApiGroup: "包(pkg)生成器", Method: "POST", Path: "/autoCode/getPackage", Description: "获取所有包(package)"},
{ApiGroup: "包(pkg)生成器", Method: "POST", Path: "/autoCode/getPackageById", Description: "获取包详情(package)"},
{ApiGroup: "包(pkg)生成器", Method: "POST", Path: "/autoCode/delPackage", Description: "删除包(package)"},
{ApiGroup: "包(pkg)生成器", Method: "POST", Path: "/autoCode/updatePackageDetail", Description: "更新包展示名/描述(package)"},

{ApiGroup: "代码生成器历史", Method: "POST", Path: "/autoCode/getMeta", Description: "获取meta信息"},
{ApiGroup: "代码生成器历史", Method: "POST", Path: "/autoCode/rollback", Description: "回滚自动生成代码"},
Expand Down
16 changes: 16 additions & 0 deletions web/src/api/autoCode.js
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,22 @@ export const deletePackageApi = (data) => {
data
})
}
export const getPackageById = (data) => {
return service({
url: '/autoCode/getPackageById',
method: 'post',
data
})
}


export const updatePackageDetail = (data) => {
return service({
url: '/autoCode/updatePackageDetail',
method: 'post',
data
})
}

export const createPlugApi = (data) => {
return service({
Expand Down
102 changes: 81 additions & 21 deletions web/src/view/systemTools/autoPkg/autoPkg.vue
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,12 @@
>
<template #default="scope">
<el-button
icon="delete"
icon="edit"
type="primary"
link
@click="editPackageFunc(scope.row)"
>编辑</el-button>
<el-button icon="delete"

type="primary"
link
Expand Down Expand Up @@ -78,8 +83,9 @@
prop="packageName"
>
<el-input
v-model="form.packageName"
autocomplete="off"
v-model="form.packageName"
autocomplete="off"
disabled="type === 'edit'"
/>
</el-form-item>
<el-form-item
Expand Down Expand Up @@ -122,6 +128,8 @@ import {
createPackageApi,
getPackageApi,
deletePackageApi,
updatePackageDetail,
getPackageById
} from '@/api/autoCode'
import { ref } from 'vue'
import WarningBar from '@/components/warningBar/warningBar.vue'
Expand All @@ -146,42 +154,94 @@ const validateNum = (rule, value, callback) => {
callback()
}
}
const type = ref('')
const rules = ref({
packageName: [
{ required: true, message: '请输入包名', trigger: 'blur' },
{ validator: validateNum, trigger: 'blur' }
],
})
// 编辑弹窗相关
const pkgForm = ref(null)
const initForm = () => {
pkgForm.value.resetFields()
form.value = {
packageName: '',
desc: '',
label: '',
}
}
const dialogTitle = ref('新增Api')
const dialogFormVisible = ref(false)
const openDialog = () => {
const openDialog = (key) => {
switch (key) {
case 'addPackage':
dialogTitle.value = '新增Package'
break
case 'edit':
dialogTitle.value = '编辑Package'
break
default:
break
}
type.value = key
dialogFormVisible.value = true
}
const closeDialog = () => {
initForm()
dialogFormVisible.value = false
form.value = {
packageName: '',
label: '',
desc: '',
}
}
const pkgForm = ref(null)
const enterDialog = async() => {
const editPackageFunc = async (row) => {
const res = await getPackageById({id: row.ID})
form.value = res.data.pkg
openDialog('edit')
}
const enterDialog = async () => {
pkgForm.value.validate(async valid => {
if (valid) {
const res = await createPackageApi(form.value)
if (res.code === 0) {
ElMessage({
type: 'success',
message: '添加成功',
showClose: true
})
switch (type.value) {
case 'addPackage': {
const res = await createPackageApi(form.value)
if (res.code === 0) {
ElMessage({
type: 'success',
message: '添加成功',
showClose: true
})
}
getTableData()
closeDialog()
}
break
case 'edit': {
const res = await updatePackageDetail(form.value)
if (res.code === 0) {
ElMessage({
type: 'success',
message: '编辑成功',
showClose: true
})
}
getTableData()
closeDialog()
}
break
default:
// eslint-disable-next-line no-lone-blocks
{
ElMessage({
type: 'error',
message: '未知操作',
showClose: true
})
}
break
}
getTableData()
closeDialog()
}
})
}
Expand Down

0 comments on commit 055f11c

Please sign in to comment.