package controller import ( "gas-cylinder-api/app/admin/model" "gas-cylinder-api/app/admin/service" "gas-cylinder-api/app/admin/service/dto" "gas-cylinder-api/common/actions" "github.com/gin-gonic/gin" "github.com/gin-gonic/gin/binding" "gogs.baozhida.cn/zoie/OAuth-core/api" "gogs.baozhida.cn/zoie/OAuth-core/pkg/jwtauth/user" _ "gogs.baozhida.cn/zoie/OAuth-core/pkg/response" ) type GasCylinderStatusController struct { api.Api } // GetPage 获取钢瓶状态列表 // @Summary 获取钢瓶状态列表 // @Description 获取钢瓶状态列表 // @Tags 钢瓶状态 // @Param name query string false "钢瓶状态名称" // @Success 200 {object} response.Response{data=response.Page{list=[]model.GasCylinderStatus}} "{"code": 200, "data": [...]}" // @Router /api/dispatch-cost [get] // @Security Bearer func (e GasCylinderStatusController) GetPage(c *gin.Context) { s := service.GasCylinderStatus{} userSvc := service.SysUser{} req := dto.GasCylinderStatusGetPageReq{} err := e.MakeContext(c). MakeOrm(). Bind(&req, binding.Query). MakeService(&s.Service). MakeService(&userSvc.Service). Errors if err != nil { e.Logger.Error(err) e.Error(500, err, err.Error()) return } //数据权限检查 p := actions.GetPermissionFromContext(c) var userObj model.SysUser err = userSvc.Get(&dto.SysUserGetReq{Id: user.GetUserId(c)}, nil, &userObj) if err != nil { e.Error(500, err, err.Error()) return } list := make([]model.GasCylinderStatus, 0) var count int64 if (userObj.ProvUser.UserType == 3 && userObj.ProvUser.Isorders == 0) || userObj.ProvUser.UserType == 4 { // 送气员 货车司机 err = s.GetUserPage(&req, &list, &count, p) } else { err = s.GetPage(&req, &list, &count, p) } if err != nil { e.Error(500, err, err.Error()) return } e.PageOK(list, int(count), req.GetPageIndex(), req.GetPageSize(), "查询成功") } // Get 通过id获取钢瓶状态 // @Summary 通过id获取钢瓶状态 // @Description 通过id获取钢瓶状态 // @Tags 钢瓶状态 // @Param id path string true "钢瓶状态id" // @Success 200 {object} response.Response{data=model.GasCylinderStatus} "{"code": 200, "data": [...]}" // @Router /api/dispatch-cost/{id} [get] // @Security Bearer func (e GasCylinderStatusController) Get(c *gin.Context) { s := service.GasCylinderStatus{} req := dto.GasCylinderStatusGetReq{} err := e.MakeContext(c). MakeOrm(). Bind(&req, nil). MakeService(&s.Service). Errors if err != nil { e.Logger.Error(err) e.Error(500, err, err.Error()) return } var object model.GasCylinderStatus p := actions.GetPermissionFromContext(c) //数据权限检查 err = s.Get(&req, &object, p) if err != nil { e.Error(500, err, err.Error()) return } e.OK(object, "查询成功") } // Insert 添加钢瓶状态 // @Summary 修改钢瓶状态 // @Description 修改钢瓶状态 // @Tags 钢瓶状态 // @Accept application/json // @Product application/json // @Param data body dto.GasCylinderStatusInsertReq true "body" // @Success 200 {string} string "{"code": 200, "message": "添加成功"}" // @Success 200 {string} string "{"code": -1, "message": "添加失败"}" // @Router /api/dispatch-cost [put] // @Security Bearer func (e GasCylinderStatusController) Insert(c *gin.Context) { s := service.GasCylinderStatus{} userSvc := service.SysUser{} req := dto.GasCylinderStatusInsertReq{} err := e.MakeContext(c). MakeOrm(). Bind(&req). MakeService(&s.Service). MakeService(&userSvc.Service). Errors if err != nil { e.Logger.Error(err) e.Error(500, err, err.Error()) return } p := actions.GetPermissionFromContext(c) // 设置创建人 req.SetCreateBy(user.GetUserId(c)) req.SetDeptId(p.DeptId) var userObj model.SysUser err = userSvc.Get(&dto.SysUserGetReq{Id: user.GetUserId(c)}, nil, &userObj) if err != nil { e.Error(500, err, err.Error()) return } if userObj.ProvUser.UserType == 3 && userObj.ProvUser.Isorders == 0 { // 送气员 err = s.UserInsert(&req, p, true) } else if userObj.ProvUser.UserType == 4 { // 货车司机 err = s.UserInsert(&req, p, false) } else { err = s.Insert(&req, p) } if err != nil { e.Error(500, err, err.Error()) return } e.OK(req.GetId(), "添加成功") } // Update 修改钢瓶状态 // @Summary 修改钢瓶状态 // @Description 修改钢瓶状态 // @Tags 钢瓶状态 // @Accept application/json // @Product application/json // @Param data body dto.GasCylinderStatusUpdateReq true "body" // @Success 200 {string} string "{"code": 200, "message": "添加成功"}" // @Success 200 {string} string "{"code": -1, "message": "添加失败"}" // @Router /api/dispatch-cost [put] // @Security Bearer func (e GasCylinderStatusController) Update(c *gin.Context) { s := service.GasCylinderStatus{} userSvc := service.SysUser{} req := dto.GasCylinderStatusUpdateReq{} err := e.MakeContext(c). MakeOrm(). Bind(&req). MakeService(&s.Service). MakeService(&userSvc.Service). Errors if err != nil { e.Logger.Error(err) e.Error(500, err, err.Error()) return } p := actions.GetPermissionFromContext(c) // 设置创建人 req.SetUpdateBy(user.GetUserId(c)) err = s.Update(&req, p) if err != nil { e.Error(500, err, err.Error()) return } e.OK(req.InnerCodeList, "修改成功") } // Delete 删除钢瓶状态 // @Summary 删除钢瓶状态 // @Description 删除钢瓶状态 // @Tags 钢瓶状态 // @Accept application/json // @Product application/json // @Param data body dto.GasCylinderStatusDeleteReq true "body" // @Success 200 {string} string "{"code": 200, "message": "删除成功"}" // @Success 200 {string} string "{"code": -1, "message": "删除失败"}" // @Router /api/dispatch-cost [delete] // @Security Bearer func (e GasCylinderStatusController) Delete(c *gin.Context) { s := service.GasCylinderStatus{} req := dto.GasCylinderStatusDeleteReq{} userSvc := service.SysUser{} err := e.MakeContext(c). MakeOrm(). Bind(&req, binding.JSON, nil). MakeService(&s.Service). MakeService(&userSvc.Service). Errors if err != nil { e.Logger.Error(err) e.Error(500, err, err.Error()) return } //数据权限检查 p := actions.GetPermissionFromContext(c) err = s.Remove(&req, p) if err != nil { e.Error(500, err, err.Error()) return } e.OK(req.GetId(), "删除成功") }