From 677424b0d9fbd4e8a0475de6322680d69bed9ca5 Mon Sep 17 00:00:00 2001 From: Toby Date: Fri, 12 Jan 2024 17:20:19 +0800 Subject: [PATCH 1/5] =?UTF-8?q?feat:=E5=A2=9E=E5=8A=A0=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/api/v1/ProblemRecordPkg/enter.go | 5 + .../api/v1/ProblemRecordPkg/problem_record.go | 166 ++++++++ server/api/v1/enter.go | 2 + server/initialize/gorm.go | 3 +- server/initialize/router.go | 7 + server/model/NestAirlinePkg/nest_airline.go | 7 +- .../model/ProblemRecordPkg/problem_record.go | 29 ++ .../request/problem_record.go | 14 + server/router/ProblemRecordPkg/enter.go | 5 + .../router/ProblemRecordPkg/problem_record.go | 27 ++ server/router/enter.go | 2 + .../NestExecRecordPkg/nest_exec_record.go | 1 + server/service/ProblemRecordPkg/enter.go | 5 + .../ProblemRecordPkg/problem_record.go | 71 ++++ server/service/enter.go | 2 + web/src/api/problemRecord.js | 97 +++++ web/src/view/nestAirline/nestAirline.vue | 14 + web/src/view/nestAirline/nestAirlineForm.vue | 4 + web/src/view/problemRecord/problemRecord.vue | 392 ++++++++++++++++++ .../view/problemRecord/problemRecordForm.vue | 141 +++++++ 20 files changed, 990 insertions(+), 4 deletions(-) create mode 100644 server/api/v1/ProblemRecordPkg/enter.go create mode 100644 server/api/v1/ProblemRecordPkg/problem_record.go create mode 100644 server/model/ProblemRecordPkg/problem_record.go create mode 100644 server/model/ProblemRecordPkg/request/problem_record.go create mode 100644 server/router/ProblemRecordPkg/enter.go create mode 100644 server/router/ProblemRecordPkg/problem_record.go create mode 100644 server/service/ProblemRecordPkg/enter.go create mode 100644 server/service/ProblemRecordPkg/problem_record.go create mode 100644 web/src/api/problemRecord.js create mode 100644 web/src/view/problemRecord/problemRecord.vue create mode 100644 web/src/view/problemRecord/problemRecordForm.vue diff --git a/server/api/v1/ProblemRecordPkg/enter.go b/server/api/v1/ProblemRecordPkg/enter.go new file mode 100644 index 0000000000..e9af0f2e34 --- /dev/null +++ b/server/api/v1/ProblemRecordPkg/enter.go @@ -0,0 +1,5 @@ +package ProblemRecordPkg + +type ApiGroup struct { + ProblemRecordApi +} diff --git a/server/api/v1/ProblemRecordPkg/problem_record.go b/server/api/v1/ProblemRecordPkg/problem_record.go new file mode 100644 index 0000000000..4517fe68f3 --- /dev/null +++ b/server/api/v1/ProblemRecordPkg/problem_record.go @@ -0,0 +1,166 @@ +package ProblemRecordPkg + +import ( + "github.com/flipped-aurora/gin-vue-admin/server/global" + "github.com/flipped-aurora/gin-vue-admin/server/model/ProblemRecordPkg" + ProblemRecordPkgReq "github.com/flipped-aurora/gin-vue-admin/server/model/ProblemRecordPkg/request" + "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/service" + "github.com/gin-gonic/gin" + "go.uber.org/zap" +) + +type ProblemRecordApi struct { +} + +var pbRecordService = service.ServiceGroupApp.ProblemRecordPkgServiceGroup.ProblemRecordService + +// CreateProblemRecord 创建ProblemRecord +// @Tags ProblemRecord +// @Summary 创建ProblemRecord +// @Security ApiKeyAuth +// @accept application/json +// @Produce application/json +// @Param data body ProblemRecordPkg.ProblemRecord true "创建ProblemRecord" +// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}" +// @Router /pbRecord/createProblemRecord [post] +func (pbRecordApi *ProblemRecordApi) CreateProblemRecord(c *gin.Context) { + var pbRecord ProblemRecordPkg.ProblemRecord + err := c.ShouldBindJSON(&pbRecord) + if err != nil { + response.FailWithMessage(err.Error(), c) + return + } + if err := pbRecordService.CreateProblemRecord(&pbRecord); err != nil { + global.GVA_LOG.Error("创建失败!", zap.Error(err)) + response.FailWithMessage("创建失败", c) + } else { + response.OkWithMessage("创建成功", c) + } +} + +// DeleteProblemRecord 删除ProblemRecord +// @Tags ProblemRecord +// @Summary 删除ProblemRecord +// @Security ApiKeyAuth +// @accept application/json +// @Produce application/json +// @Param data body ProblemRecordPkg.ProblemRecord true "删除ProblemRecord" +// @Success 200 {string} string "{"success":true,"data":{},"msg":"删除成功"}" +// @Router /pbRecord/deleteProblemRecord [delete] +func (pbRecordApi *ProblemRecordApi) DeleteProblemRecord(c *gin.Context) { + var pbRecord ProblemRecordPkg.ProblemRecord + err := c.ShouldBindJSON(&pbRecord) + if err != nil { + response.FailWithMessage(err.Error(), c) + return + } + if err := pbRecordService.DeleteProblemRecord(pbRecord); err != nil { + global.GVA_LOG.Error("删除失败!", zap.Error(err)) + response.FailWithMessage("删除失败", c) + } else { + response.OkWithMessage("删除成功", c) + } +} + +// DeleteProblemRecordByIds 批量删除ProblemRecord +// @Tags ProblemRecord +// @Summary 批量删除ProblemRecord +// @Security ApiKeyAuth +// @accept application/json +// @Produce application/json +// @Param data body request.IdsReq true "批量删除ProblemRecord" +// @Success 200 {string} string "{"success":true,"data":{},"msg":"批量删除成功"}" +// @Router /pbRecord/deleteProblemRecordByIds [delete] +func (pbRecordApi *ProblemRecordApi) DeleteProblemRecordByIds(c *gin.Context) { + var IDS request.IdsReq + err := c.ShouldBindJSON(&IDS) + if err != nil { + response.FailWithMessage(err.Error(), c) + return + } + if err := pbRecordService.DeleteProblemRecordByIds(IDS); err != nil { + global.GVA_LOG.Error("批量删除失败!", zap.Error(err)) + response.FailWithMessage("批量删除失败", c) + } else { + response.OkWithMessage("批量删除成功", c) + } +} + +// UpdateProblemRecord 更新ProblemRecord +// @Tags ProblemRecord +// @Summary 更新ProblemRecord +// @Security ApiKeyAuth +// @accept application/json +// @Produce application/json +// @Param data body ProblemRecordPkg.ProblemRecord true "更新ProblemRecord" +// @Success 200 {string} string "{"success":true,"data":{},"msg":"更新成功"}" +// @Router /pbRecord/updateProblemRecord [put] +func (pbRecordApi *ProblemRecordApi) UpdateProblemRecord(c *gin.Context) { + var pbRecord ProblemRecordPkg.ProblemRecord + err := c.ShouldBindJSON(&pbRecord) + if err != nil { + response.FailWithMessage(err.Error(), c) + return + } + if err := pbRecordService.UpdateProblemRecord(pbRecord); err != nil { + global.GVA_LOG.Error("更新失败!", zap.Error(err)) + response.FailWithMessage("更新失败", c) + } else { + response.OkWithMessage("更新成功", c) + } +} + +// FindProblemRecord 用id查询ProblemRecord +// @Tags ProblemRecord +// @Summary 用id查询ProblemRecord +// @Security ApiKeyAuth +// @accept application/json +// @Produce application/json +// @Param data query ProblemRecordPkg.ProblemRecord true "用id查询ProblemRecord" +// @Success 200 {string} string "{"success":true,"data":{},"msg":"查询成功"}" +// @Router /pbRecord/findProblemRecord [get] +func (pbRecordApi *ProblemRecordApi) FindProblemRecord(c *gin.Context) { + var pbRecord ProblemRecordPkg.ProblemRecord + err := c.ShouldBindQuery(&pbRecord) + if err != nil { + response.FailWithMessage(err.Error(), c) + return + } + if repbRecord, err := pbRecordService.GetProblemRecord(pbRecord.ID); err != nil { + global.GVA_LOG.Error("查询失败!", zap.Error(err)) + response.FailWithMessage("查询失败", c) + } else { + response.OkWithData(gin.H{"repbRecord": repbRecord}, c) + } +} + +// GetProblemRecordList 分页获取ProblemRecord列表 +// @Tags ProblemRecord +// @Summary 分页获取ProblemRecord列表 +// @Security ApiKeyAuth +// @accept application/json +// @Produce application/json +// @Param data query ProblemRecordPkgReq.ProblemRecordSearch true "分页获取ProblemRecord列表" +// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}" +// @Router /pbRecord/getProblemRecordList [get] +func (pbRecordApi *ProblemRecordApi) GetProblemRecordList(c *gin.Context) { + var pageInfo ProblemRecordPkgReq.ProblemRecordSearch + err := c.ShouldBindQuery(&pageInfo) + if err != nil { + response.FailWithMessage(err.Error(), c) + return + } + if list, total, err := pbRecordService.GetProblemRecordInfoList(pageInfo); err != nil { + global.GVA_LOG.Error("获取失败!", zap.Error(err)) + response.FailWithMessage("获取失败", c) + } else { + response.OkWithDetailed(response.PageResult{ + List: list, + Total: total, + Page: pageInfo.Page, + PageSize: pageInfo.PageSize, + }, "获取成功", c) + } +} diff --git a/server/api/v1/enter.go b/server/api/v1/enter.go index b34965ca45..8298ce029a 100644 --- a/server/api/v1/enter.go +++ b/server/api/v1/enter.go @@ -7,6 +7,7 @@ import ( "github.com/flipped-aurora/gin-vue-admin/server/api/v1/NestExecRecordPkg" "github.com/flipped-aurora/gin-vue-admin/server/api/v1/NestInfo" "github.com/flipped-aurora/gin-vue-admin/server/api/v1/Nestrolepkg" + "github.com/flipped-aurora/gin-vue-admin/server/api/v1/ProblemRecordPkg" "github.com/flipped-aurora/gin-vue-admin/server/api/v1/Theme" "github.com/flipped-aurora/gin-vue-admin/server/api/v1/UserTeemlinkPkg" "github.com/flipped-aurora/gin-vue-admin/server/api/v1/example" @@ -24,6 +25,7 @@ type ApiGroup struct { UserTeemlinkPkgApiGroup UserTeemlinkPkg.ApiGroup AerialPhotographyResultPkgApiGroup AerialPhotographyResultPkg.ApiGroup ThemeApiGroup Theme.ApiGroup + ProblemRecordPkgApiGroup ProblemRecordPkg.ApiGroup } var ApiGroupApp = new(ApiGroup) diff --git a/server/initialize/gorm.go b/server/initialize/gorm.go index 16f46afd22..bedaf249e3 100644 --- a/server/initialize/gorm.go +++ b/server/initialize/gorm.go @@ -14,6 +14,7 @@ import ( "github.com/flipped-aurora/gin-vue-admin/server/model/NestExecRecordPkg" "github.com/flipped-aurora/gin-vue-admin/server/model/NestInfo" "github.com/flipped-aurora/gin-vue-admin/server/model/Nestrolepkg" + "github.com/flipped-aurora/gin-vue-admin/server/model/ProblemRecordPkg" "github.com/flipped-aurora/gin-vue-admin/server/model/Theme" "github.com/flipped-aurora/gin-vue-admin/server/model/UserTeemlinkPkg" "go.uber.org/zap" @@ -59,7 +60,7 @@ func RegisterTables() { example.ExaFile{}, example.ExaCustomer{}, example.ExaFileChunk{}, - example.ExaFileUploadAndDownload{}, NestInfo.NestInfo{}, Nestrolepkg.NestRole{}, NestExecRecordPkg.NestExecRecord{}, FlyResultPkg.FlyResult{}, UserTeemlinkPkg.UserTeemlink{}, NestAirlinePkg.NestAirline{}, AerialPhotographyResultPkg.AerialPhotographyResult{}, Theme.Theme{}, + example.ExaFileUploadAndDownload{}, NestInfo.NestInfo{}, Nestrolepkg.NestRole{}, NestExecRecordPkg.NestExecRecord{}, FlyResultPkg.FlyResult{}, UserTeemlinkPkg.UserTeemlink{}, NestAirlinePkg.NestAirline{}, AerialPhotographyResultPkg.AerialPhotographyResult{}, Theme.Theme{}, ProblemRecordPkg.ProblemRecord{}, ) if err != nil { global.GVA_LOG.Error("register table failed", zap.Error(err)) diff --git a/server/initialize/router.go b/server/initialize/router.go index cfce4cb832..a4ce3446ba 100644 --- a/server/initialize/router.go +++ b/server/initialize/router.go @@ -100,6 +100,13 @@ func Routers() *gin.Engine { ThemeRouter := router.RouterGroupApp.Theme ThemeRouter.InitThemeRouter(PrivateGroup) } + { + + } + { + ProblemRecordPkgRouter := router.RouterGroupApp.ProblemRecordPkg + ProblemRecordPkgRouter.InitProblemRecordRouter(PrivateGroup) + } global.GVA_LOG.Info("router register success") return Router diff --git a/server/model/NestAirlinePkg/nest_airline.go b/server/model/NestAirlinePkg/nest_airline.go index 4616578624..20c395923a 100644 --- a/server/model/NestAirlinePkg/nest_airline.go +++ b/server/model/NestAirlinePkg/nest_airline.go @@ -28,9 +28,10 @@ type NestAirline struct { FixedReturnPoint string `json:"fixedReturnPoint" form:"fixedReturnPoint" gorm:"column:fixed_return_point;comment:;"` NestId string `json:"nestId" form:"nestId" gorm:"column:nest_id;comment:;"` Remark string `json:"remark" form:"remark" gorm:"column:remark;comment:;"` - GoHomeHeight *float64 `json:"goHomeHeight" form:"goHomeHeight" gorm:"column:go_home_height;comment:;"` //返航高度 - ExecDistance *float64 `json:"execDistance" form:"execDistance" gorm:"column:exec_distance;comment:;"` //预估距离 - ExecTimeSpend *float64 `json:"execTimeSpend" form:"execTimeSpend" gorm:"column:exec_time_spend;comment:;"` //预估执行时间 + GoHomeHeight *float64 `json:"goHomeHeight" form:"goHomeHeight" gorm:"column:go_home_height;comment:;"` //返航高度 + ExecDistance *float64 `json:"execDistance" form:"execDistance" gorm:"column:exec_distance;comment:;"` //预估距离 + ExecTimeSpend *float64 `json:"execTimeSpend" form:"execTimeSpend" gorm:"column:exec_time_spend;comment:;"` //预估执行时间 + UseMultiSpectrum *int `json:"useMultispectrum" form:"useMultiSpectrum" gorm:"column:use_multi_spectrum;comment:0-否 1-是;"` //是否多光谱 CreatedBy uint `gorm:"column:created_by;comment:创建者"` UpdatedBy uint `gorm:"column:updated_by;comment:更新者"` DeletedBy uint `gorm:"column:deleted_by;comment:删除者"` diff --git a/server/model/ProblemRecordPkg/problem_record.go b/server/model/ProblemRecordPkg/problem_record.go new file mode 100644 index 0000000000..249b031d8c --- /dev/null +++ b/server/model/ProblemRecordPkg/problem_record.go @@ -0,0 +1,29 @@ +// 自动生成模板ProblemRecord +package ProblemRecordPkg + +import ( + "github.com/flipped-aurora/gin-vue-admin/server/global" + "time" +) + +// ProblemRecord 结构体 +type ProblemRecord struct { + global.GVA_MODEL + OrderNum *int `json:"orderNum" form:"orderNum" gorm:"column:order_num;comment:;"` + RegisterDate *time.Time `json:"registerDate" form:"registerDate" gorm:"column:register_date;comment:;"` + ProblemName string `json:"problemName" form:"problemName" gorm:"column:problem_name;comment:;"` + ProblemType string `json:"problemType" form:"problemType" gorm:"column:problem_type;comment:;"` + ProblemSource string `json:"problemSource" form:"problemSource" gorm:"column:problem_source;comment:;"` + ProblemDesc string `json:"problemDesc" form:"problemDesc" gorm:"column:problem_desc;comment:;"` + PersonCharge string `json:"personCharge" form:"personCharge" gorm:"column:person_charge;comment:;"` + ProblemImage string `json:"problemImage" form:"problemImage" gorm:"column:problem_image;comment:;"` + HandMeasurce string `json:"handMeasurce" form:"handMeasurce" gorm:"column:hand_measurce;comment:;"` + CurrState string `json:"currState" form:"currState" gorm:"column:curr_state;type:enum('已处理','未处理');comment:;"` + Lng *float64 `json:"lng" form:"lng" gorm:"column:lng;comment:;"` + Lat *float64 `json:"lat" form:"lat" gorm:"column:lat;comment:;"` +} + +// TableName ProblemRecord 表名 +func (ProblemRecord) TableName() string { + return "problem_record" +} diff --git a/server/model/ProblemRecordPkg/request/problem_record.go b/server/model/ProblemRecordPkg/request/problem_record.go new file mode 100644 index 0000000000..be0d038755 --- /dev/null +++ b/server/model/ProblemRecordPkg/request/problem_record.go @@ -0,0 +1,14 @@ +package request + +import ( + "github.com/flipped-aurora/gin-vue-admin/server/model/ProblemRecordPkg" + "github.com/flipped-aurora/gin-vue-admin/server/model/common/request" + "time" +) + +type ProblemRecordSearch struct { + ProblemRecordPkg.ProblemRecord + StartCreatedAt *time.Time `json:"startCreatedAt" form:"startCreatedAt"` + EndCreatedAt *time.Time `json:"endCreatedAt" form:"endCreatedAt"` + request.PageInfo +} diff --git a/server/router/ProblemRecordPkg/enter.go b/server/router/ProblemRecordPkg/enter.go new file mode 100644 index 0000000000..ed46893b3f --- /dev/null +++ b/server/router/ProblemRecordPkg/enter.go @@ -0,0 +1,5 @@ +package ProblemRecordPkg + +type RouterGroup struct { + ProblemRecordRouter +} diff --git a/server/router/ProblemRecordPkg/problem_record.go b/server/router/ProblemRecordPkg/problem_record.go new file mode 100644 index 0000000000..751f1c3ed3 --- /dev/null +++ b/server/router/ProblemRecordPkg/problem_record.go @@ -0,0 +1,27 @@ +package ProblemRecordPkg + +import ( + "github.com/flipped-aurora/gin-vue-admin/server/api/v1" + "github.com/flipped-aurora/gin-vue-admin/server/middleware" + "github.com/gin-gonic/gin" +) + +type ProblemRecordRouter struct { +} + +// InitProblemRecordRouter 初始化 ProblemRecord 路由信息 +func (s *ProblemRecordRouter) InitProblemRecordRouter(Router *gin.RouterGroup) { + pbRecordRouter := Router.Group("pbRecord").Use(middleware.OperationRecord()) + pbRecordRouterWithoutRecord := Router.Group("pbRecord") + var pbRecordApi = v1.ApiGroupApp.ProblemRecordPkgApiGroup.ProblemRecordApi + { + pbRecordRouter.POST("createProblemRecord", pbRecordApi.CreateProblemRecord) // 新建ProblemRecord + pbRecordRouter.DELETE("deleteProblemRecord", pbRecordApi.DeleteProblemRecord) // 删除ProblemRecord + pbRecordRouter.DELETE("deleteProblemRecordByIds", pbRecordApi.DeleteProblemRecordByIds) // 批量删除ProblemRecord + pbRecordRouter.PUT("updateProblemRecord", pbRecordApi.UpdateProblemRecord) // 更新ProblemRecord + } + { + pbRecordRouterWithoutRecord.GET("findProblemRecord", pbRecordApi.FindProblemRecord) // 根据ID获取ProblemRecord + pbRecordRouterWithoutRecord.GET("getProblemRecordList", pbRecordApi.GetProblemRecordList) // 获取ProblemRecord列表 + } +} diff --git a/server/router/enter.go b/server/router/enter.go index ead615fa5d..2a060c13fd 100644 --- a/server/router/enter.go +++ b/server/router/enter.go @@ -8,6 +8,7 @@ import ( "github.com/flipped-aurora/gin-vue-admin/server/router/NestExecRecordPkg" "github.com/flipped-aurora/gin-vue-admin/server/router/NestInfo" "github.com/flipped-aurora/gin-vue-admin/server/router/Nestrolepkg" + "github.com/flipped-aurora/gin-vue-admin/server/router/ProblemRecordPkg" "github.com/flipped-aurora/gin-vue-admin/server/router/Theme" "github.com/flipped-aurora/gin-vue-admin/server/router/UserTeemlinkPkg" "github.com/flipped-aurora/gin-vue-admin/server/router/example" @@ -26,6 +27,7 @@ type RouterGroup struct { AerialPhotographyResult AerialPhotographyResult.RouterGroup AerialPhotographyResultPkg AerialPhotographyResultPkg.RouterGroup Theme Theme.RouterGroup + ProblemRecordPkg ProblemRecordPkg.RouterGroup } var RouterGroupApp = new(RouterGroup) diff --git a/server/service/NestExecRecordPkg/nest_exec_record.go b/server/service/NestExecRecordPkg/nest_exec_record.go index 4ed03e8503..e96cf279ab 100644 --- a/server/service/NestExecRecordPkg/nest_exec_record.go +++ b/server/service/NestExecRecordPkg/nest_exec_record.go @@ -94,6 +94,7 @@ func (NtERecordService *NestExecRecordService) GetNestExecRecordInfoList(info Ne db = db.Order("execute_at desc") } } + db = db.Order("created_at desc") err = db.Count(&total).Error if err != nil { return diff --git a/server/service/ProblemRecordPkg/enter.go b/server/service/ProblemRecordPkg/enter.go new file mode 100644 index 0000000000..73a53b94f6 --- /dev/null +++ b/server/service/ProblemRecordPkg/enter.go @@ -0,0 +1,5 @@ +package ProblemRecordPkg + +type ServiceGroup struct { + ProblemRecordService +} diff --git a/server/service/ProblemRecordPkg/problem_record.go b/server/service/ProblemRecordPkg/problem_record.go new file mode 100644 index 0000000000..782da34fb3 --- /dev/null +++ b/server/service/ProblemRecordPkg/problem_record.go @@ -0,0 +1,71 @@ +package ProblemRecordPkg + +import ( + "github.com/flipped-aurora/gin-vue-admin/server/global" + "github.com/flipped-aurora/gin-vue-admin/server/model/ProblemRecordPkg" + ProblemRecordPkgReq "github.com/flipped-aurora/gin-vue-admin/server/model/ProblemRecordPkg/request" + "github.com/flipped-aurora/gin-vue-admin/server/model/common/request" +) + +type ProblemRecordService struct { +} + +// CreateProblemRecord 创建ProblemRecord记录 +// Author [piexlmax](https://github.com/piexlmax) +func (pbRecordService *ProblemRecordService) CreateProblemRecord(pbRecord *ProblemRecordPkg.ProblemRecord) (err error) { + err = global.GVA_DB.Create(pbRecord).Error + return err +} + +// DeleteProblemRecord 删除ProblemRecord记录 +// Author [piexlmax](https://github.com/piexlmax) +func (pbRecordService *ProblemRecordService) DeleteProblemRecord(pbRecord ProblemRecordPkg.ProblemRecord) (err error) { + err = global.GVA_DB.Delete(&pbRecord).Error + return err +} + +// DeleteProblemRecordByIds 批量删除ProblemRecord记录 +// Author [piexlmax](https://github.com/piexlmax) +func (pbRecordService *ProblemRecordService) DeleteProblemRecordByIds(ids request.IdsReq) (err error) { + err = global.GVA_DB.Delete(&[]ProblemRecordPkg.ProblemRecord{}, "id in ?", ids.Ids).Error + return err +} + +// UpdateProblemRecord 更新ProblemRecord记录 +// Author [piexlmax](https://github.com/piexlmax) +func (pbRecordService *ProblemRecordService) UpdateProblemRecord(pbRecord ProblemRecordPkg.ProblemRecord) (err error) { + err = global.GVA_DB.Save(&pbRecord).Error + return err +} + +// GetProblemRecord 根据id获取ProblemRecord记录 +// Author [piexlmax](https://github.com/piexlmax) +func (pbRecordService *ProblemRecordService) GetProblemRecord(id uint) (pbRecord ProblemRecordPkg.ProblemRecord, err error) { + err = global.GVA_DB.Where("id = ?", id).First(&pbRecord).Error + return +} + +// GetProblemRecordInfoList 分页获取ProblemRecord记录 +// Author [piexlmax](https://github.com/piexlmax) +func (pbRecordService *ProblemRecordService) GetProblemRecordInfoList(info ProblemRecordPkgReq.ProblemRecordSearch) (list []ProblemRecordPkg.ProblemRecord, total int64, err error) { + limit := info.PageSize + offset := info.PageSize * (info.Page - 1) + // 创建db + db := global.GVA_DB.Model(&ProblemRecordPkg.ProblemRecord{}) + var pbRecords []ProblemRecordPkg.ProblemRecord + // 如果有条件搜索 下方会自动创建搜索语句 + if info.StartCreatedAt != nil && info.EndCreatedAt != nil { + db = db.Where("created_at BETWEEN ? AND ?", info.StartCreatedAt, info.EndCreatedAt) + } + err = db.Count(&total).Error + if err != nil { + return + } + if info.Page == 0 || info.PageSize == 0 { + err = db.Find(&pbRecords).Error + } else { + err = db.Limit(limit).Offset(offset).Find(&pbRecords).Error + } + + return pbRecords, total, err +} diff --git a/server/service/enter.go b/server/service/enter.go index 82068e1cc7..5895adea29 100644 --- a/server/service/enter.go +++ b/server/service/enter.go @@ -7,6 +7,7 @@ import ( "github.com/flipped-aurora/gin-vue-admin/server/service/NestExecRecordPkg" "github.com/flipped-aurora/gin-vue-admin/server/service/NestInfo" "github.com/flipped-aurora/gin-vue-admin/server/service/Nestrolepkg" + "github.com/flipped-aurora/gin-vue-admin/server/service/ProblemRecordPkg" "github.com/flipped-aurora/gin-vue-admin/server/service/Theme" "github.com/flipped-aurora/gin-vue-admin/server/service/UserTeemlinkPkg" "github.com/flipped-aurora/gin-vue-admin/server/service/example" @@ -24,6 +25,7 @@ type ServiceGroup struct { UserTeemlinkPkgServiceGroup UserTeemlinkPkg.ServiceGroup AerialPhotographyResultPkgServiceGroup AerialPhotographyResultPkg.ServiceGroup ThemeServiceGroup Theme.ServiceGroup + ProblemRecordPkgServiceGroup ProblemRecordPkg.ServiceGroup } var ServiceGroupApp = new(ServiceGroup) diff --git a/web/src/api/problemRecord.js b/web/src/api/problemRecord.js new file mode 100644 index 0000000000..ff79c5f873 --- /dev/null +++ b/web/src/api/problemRecord.js @@ -0,0 +1,97 @@ +import service from '@/utils/request' + +// @Tags ProblemRecord +// @Summary 创建ProblemRecord +// @Security ApiKeyAuth +// @accept application/json +// @Produce application/json +// @Param data body model.ProblemRecord true "创建ProblemRecord" +// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}" +// @Router /pbRecord/createProblemRecord [post] +export const createProblemRecord = (data) => { + return service({ + url: '/pbRecord/createProblemRecord', + method: 'post', + data + }) +} + +// @Tags ProblemRecord +// @Summary 删除ProblemRecord +// @Security ApiKeyAuth +// @accept application/json +// @Produce application/json +// @Param data body model.ProblemRecord true "删除ProblemRecord" +// @Success 200 {string} string "{"success":true,"data":{},"msg":"删除成功"}" +// @Router /pbRecord/deleteProblemRecord [delete] +export const deleteProblemRecord = (data) => { + return service({ + url: '/pbRecord/deleteProblemRecord', + method: 'delete', + data + }) +} + +// @Tags ProblemRecord +// @Summary 删除ProblemRecord +// @Security ApiKeyAuth +// @accept application/json +// @Produce application/json +// @Param data body request.IdsReq true "批量删除ProblemRecord" +// @Success 200 {string} string "{"success":true,"data":{},"msg":"删除成功"}" +// @Router /pbRecord/deleteProblemRecord [delete] +export const deleteProblemRecordByIds = (data) => { + return service({ + url: '/pbRecord/deleteProblemRecordByIds', + method: 'delete', + data + }) +} + +// @Tags ProblemRecord +// @Summary 更新ProblemRecord +// @Security ApiKeyAuth +// @accept application/json +// @Produce application/json +// @Param data body model.ProblemRecord true "更新ProblemRecord" +// @Success 200 {string} string "{"success":true,"data":{},"msg":"更新成功"}" +// @Router /pbRecord/updateProblemRecord [put] +export const updateProblemRecord = (data) => { + return service({ + url: '/pbRecord/updateProblemRecord', + method: 'put', + data + }) +} + +// @Tags ProblemRecord +// @Summary 用id查询ProblemRecord +// @Security ApiKeyAuth +// @accept application/json +// @Produce application/json +// @Param data query model.ProblemRecord true "用id查询ProblemRecord" +// @Success 200 {string} string "{"success":true,"data":{},"msg":"查询成功"}" +// @Router /pbRecord/findProblemRecord [get] +export const findProblemRecord = (params) => { + return service({ + url: '/pbRecord/findProblemRecord', + method: 'get', + params + }) +} + +// @Tags ProblemRecord +// @Summary 分页获取ProblemRecord列表 +// @Security ApiKeyAuth +// @accept application/json +// @Produce application/json +// @Param data query request.PageInfo true "分页获取ProblemRecord列表" +// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}" +// @Router /pbRecord/getProblemRecordList [get] +export const getProblemRecordList = (params) => { + return service({ + url: '/pbRecord/getProblemRecordList', + method: 'get', + params + }) +} diff --git a/web/src/view/nestAirline/nestAirline.vue b/web/src/view/nestAirline/nestAirline.vue index 290a56b6d7..a764651b41 100644 --- a/web/src/view/nestAirline/nestAirline.vue +++ b/web/src/view/nestAirline/nestAirline.vue @@ -190,6 +190,12 @@ prop="isActive" width="120" /> + + + + + + + @@ -120,6 +123,7 @@ const formData = ref({ producer: '', productionUnit: '', isActive: '', + useMultispectrum: 0, fixedReturnPoint: '', nestId: '', remark: '', diff --git a/web/src/view/problemRecord/problemRecord.vue b/web/src/view/problemRecord/problemRecord.vue new file mode 100644 index 0000000000..e726eb08ca --- /dev/null +++ b/web/src/view/problemRecord/problemRecord.vue @@ -0,0 +1,392 @@ + + + + + + + diff --git a/web/src/view/problemRecord/problemRecordForm.vue b/web/src/view/problemRecord/problemRecordForm.vue new file mode 100644 index 0000000000..81889acadd --- /dev/null +++ b/web/src/view/problemRecord/problemRecordForm.vue @@ -0,0 +1,141 @@ + + + + + + + From 3c977c16e77650df65414c946a3cbf865c374ef8 Mon Sep 17 00:00:00 2001 From: hhy <2054973475@qq.com> Date: Thu, 18 Jan 2024 10:57:23 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=F0=9F=90=9E=20fix:=201=E3=80=81=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E5=88=87=E6=8D=A2=E8=A7=92=E8=89=B2=E6=97=B6=E4=B8=BB?= =?UTF-8?q?=E9=A2=98=E6=B2=A1=E6=9C=89=E5=88=87=E6=8D=A2=E9=97=AE=E9=A2=98?= =?UTF-8?q?=202=E3=80=81=E4=BF=AE=E5=A4=8D=E5=88=87=E6=8D=A2=E8=A7=92?= =?UTF-8?q?=E8=89=B2=E6=97=B6=E6=96=B0=E8=A7=92=E8=89=B2=E6=B2=A1=E6=9C=89?= =?UTF-8?q?=E5=AF=B9=E5=BA=94=E8=8F=9C=E5=8D=95=E6=8A=A5=E9=94=99=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/view/layout/index.vue | 73 ++++++++++++++++++++++++++++++++++- web/src/view/login/index.vue | 6 --- 2 files changed, 71 insertions(+), 8 deletions(-) diff --git a/web/src/view/layout/index.vue b/web/src/view/layout/index.vue index 0d92498d95..a05fe6b09f 100644 --- a/web/src/view/layout/index.vue +++ b/web/src/view/layout/index.vue @@ -177,6 +177,7 @@ export default { diff --git a/web/src/view/nestRole/nestRoleForm.vue b/web/src/view/nestRole/nestRoleForm.vue index b5da7f8398..a3665d91d7 100755 --- a/web/src/view/nestRole/nestRoleForm.vue +++ b/web/src/view/nestRole/nestRoleForm.vue @@ -74,48 +74,45 @@ export default { From 209c814c2bddc3f08c36616c8f850261ac575fb8 Mon Sep 17 00:00:00 2001 From: hhy <2054973475@qq.com> Date: Fri, 19 Jan 2024 16:42:30 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=F0=9F=90=9E=20fix(=E6=9C=BA=E5=B7=A2?= =?UTF-8?q?=E8=A7=92=E8=89=B2=E7=BB=91=E5=AE=9A):=201=E3=80=81=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E7=82=B9=E5=87=BB=E5=8F=98=E6=9B=B4=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=95=B0=E6=8D=AE=E5=8F=98=E6=88=90=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=95=B0=E6=8D=AE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/.env.development | 6 +++--- web/src/view/nestRole/nestRole.vue | 6 ++---- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/web/.env.development b/web/.env.development index e89b026306..35271a4975 100644 --- a/web/.env.development +++ b/web/.env.development @@ -5,7 +5,7 @@ VITE_BASE_API = /api # VITE_BASE_PATH = http://127.0.0.1 VITE_BASE_PATH = http://192.168.0.117 VITE_EDITOR = vscode -// VITE_EDITOR = webstorm 如果使用webstorm开发且要使用dom定位到代码行功能 请先自定添加 webstorm到环境变量 再将VITE_EDITOR值修改为webstorm -// 如果使用docker-compose开发模式,设置为下面的地址或本机主机IP -//VITE_BASE_PATH = http://177.7.0.12 +# VITE_EDITOR = webstorm 如果使用webstorm开发且要使用dom定位到代码行功能 请先自定添加 webstorm到环境变量 再将VITE_EDITOR值修改为webstorm +# 如果使用docker-compose开发模式,设置为下面的地址或本机主机IP +#VITE_BASE_PATH = http://177.7.0.12 diff --git a/web/src/view/nestRole/nestRole.vue b/web/src/view/nestRole/nestRole.vue index 7e5f82fcde..45948a8942 100755 --- a/web/src/view/nestRole/nestRole.vue +++ b/web/src/view/nestRole/nestRole.vue @@ -330,10 +330,8 @@ const updateNestRoleFunc = async (row) => { const res = await findNestRole({ ID: row.ID }); type.value = "update"; if (res.code === 0) { - // formData.value = res.data.renestrole; - formData.value.roleid = res.data.renestrole.roleid; - formData.value.nestid = JSON.parse(res.data.renestrole.nestid); - console.log(formData.value); + formData.value = JSON.parse(JSON.stringify(res.data.renestrole)); + formData.value.nestid = JSON.parse(formData.value.nestid); dialogFormVisible.value = true; } };