/* * @Author: wfhou * @Date: 2022-09-03 16:18:47 * @LastEditors: wfhou * @LastEditTime: 2022-09-03 19:56:22 * @FilePath: \camera_guardd:\project\goProject\src\jujutong\scd\models\bo\checkInBook.go * @Description:对签入台账信息本身进行的CRUD操作 * * Copyright (c) 2022 by wfhou/jujutong, All Rights Reserved. */ package bo import ( "scd_check_tools/logger" "scd_check_tools/models/enum" "scd_check_tools/tools" "fmt" "log" "strconv" "github.com/astaxie/beego/orm" ) type checkInBook struct { Model t_base_checkin_book DeviceBaseModel CheckinTypeDefined map[string]string CheckinSubtypeDefined map[string]string } // 签入台账模型 type t_base_checkin_book struct { Id int64 `orm:pk;auto` // 主键 CREATEDY int `gorm:"CREATED_BY"` // 创建人 CREATEDIME string `gorm:"CREATED_TIME"` // 创建时间 UPDATEDY int `gorm:"UPDATED_BY"` // 更新人 UPDATEDIME string `gorm:"UPDATED_TIME"` // 更新时间 Remark string `gorm:"remark"` // 备注 StationId string `gorm:"station_id"` // 所属变电站 Manufactor string `gorm:"manufactor"` // 集成厂家 Optor string `gorm:"optor"` // 集成人姓名 Linkphone string `gorm:"linkphone"` // 集成人联系方式 DesignUnit string `gorm:"design_unit"` // 设计单位 ManageUnit string `gorm:"manage_unit"` // 项目管理单位 FinishDate string `gorm:"finish_date"` // 项目完成时间 CheckinType string `gorm:"checkin_type"` // 签入类型 CheckinSubtype string `gorm:"checkin_subtype"` // 签入子类型 JobId string `gorm:"job_id"` // 工作内容 } var CheckinTypeDefined map[string]string var CheckinSubtypeDefined map[string]string func init() { orm.RegisterModel(new(t_base_checkin_book)) } //初始化获取模型中需要的数据字典代码 func (c *checkInBook) initSysCodeDict() { } //签入台账新增 func (c *checkInBook) Insert(field t_base_checkin_book) (err error) { dblog := new(SystemLog) dblog.SetUserInfo(c.GetUserInfo()) dblog.Audittype = enum.AuditType_check_inout dblog.Logtype = enum.LogType_Insert dblog.Eventtype = enum.OptEventType_Bus dblog.Eventlevel = enum.OptEventLevel_Hight o := orm.NewOrm() userId, err := strconv.Atoi(c.GetUserId()) if err != nil { logger.Logger.Error(err, fmt.Sprintf("获取用户id失败!")) dblog.Description = "获取用户id失败!" dblog.Fail2() return err } c.Model = field c.Model.CREATEDY = userId c.Model.UPDATEDY = userId c.Model.CREATEDIME = tools.NowTime() c.Model.UPDATEDIME = tools.NowTime() _, err2 := o.Insert(&c.Model) if err2 != nil { logger.Logger.Error(err2, fmt.Sprintf("新增配置签入台账失败:%s", err.Error())) dblog.Description = fmt.Sprintf("新增配置签入台账失败:%s", err.Error()) dblog.Fail2() } else { dblog.Description = fmt.Sprintf("新增配置签入台账成功!") dblog.Success2() } return err2 } //签入台账修改更新 func (c *checkInBook) update(field t_base_checkin_book) (err error) { o := orm.NewOrm() userId, err := strconv.Atoi(c.GetUserId()) if err != nil { logger.Logger.Error(err) return err } dblog := new(SystemLog) dblog.SetUserInfo(c.GetUserInfo()) dblog.Audittype = enum.AuditType_check_inout dblog.Logtype = enum.LogType_Update dblog.Eventtype = enum.OptEventType_Bus dblog.Eventlevel = enum.OptEventLevel_Hight c.Model = field c.Model.UPDATEDY = userId c.Model.UPDATEDIME = tools.NowTime() _, err2 := o.Update(&c.Model) if err2 != nil { logger.Logger.Error(err2) dblog.Description = fmt.Sprintf("修改配置签入台账失败:%s", err.Error()) dblog.Fail2() } else { dblog.Description = fmt.Sprintf("修改配置签入台账成功!") dblog.Success2() } return err2 } //返回所有签入台账记录和总记录数 func (c *checkInBook) list() ([]t_base_checkin_book, int, error) { o := orm.NewOrm() qs := o.QueryTable("t_base_checkin_book") r := []t_base_checkin_book{} _, err := qs.All(&r) if err != nil { log.Println(err) } return r, len(r), err } //查询单行台账记录 func (c *checkInBook) get(id int64) (t_base_checkin_book, error) { o := orm.NewOrm() obj := t_base_checkin_book{Id: id} err := o.Read(&obj) return obj, err } //删除台账记录 func (c *checkInBook) del(id int64) (int64, error) { o := orm.NewOrm() num, err := o.Delete(&t_base_checkin_book{Id: id}) if err != nil { return 0, err } return num, err }