123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- package excel
- import (
- "eta/eta_api/utils"
- "github.com/beego/beego/v2/client/orm"
- "time"
- )
- type ReferencedExcelConfig struct {
- ReferencedExcelConfigId int `orm:"column(referenced_excel_config_id);pk;auto" ` // excel表格配置id
- UniqueCode string // 表格唯一编码
- ReferencedId int // 被引用的id,报告就是报告id,pptId
- FromScene int // 引用类型 1智能研报 2研报列表 3英文研报 4PPT 5英文ppt
- Uuid string // 引用唯一标识
- WidthList string // 宽度数组
- HeightList string // 高度数组
- OpUserId int // 当前编辑操作的用户id
- OpUserName string // 当前编辑的用户名称(冗余字段,避免查表)
- CreateTime time.Time // 创建时间
- Content string // 内容
- ModifyTime time.Time // 修改时间
- }
- type ExcelReferencesReq struct {
- UniqueCode string `description:"表格唯一编码"`
- ReferencedId int `description:"被引用的ID"`
- FromScene int `description:"引用类型 1智能研报 2研报列表 3英文研报 4PPT 5英文PPT"`
- Uuid string `description:"引用唯一标识"`
- WidthList string `description:"宽度数组"`
- HeightList string `description:"高度数组"`
- }
- // add
- func AddReferencedExcelConfig(items []*ReferencedExcelConfig) (err error) {
- o := orm.NewOrmUsingDB("data")
- _, err = o.InsertMulti(len(items), items)
- return
- }
- // getByCode
- func GetReferencedExcelConfig(referencedId, fromScene int, uniqueCode, uuid string) (item ReferencedExcelConfig, err error) {
- o := orm.NewOrmUsingDB("data")
- sql := ` SELECT * FROM referenced_excel_config WHERE referenced_id = ? AND from_scene = ? AND unique_code = ? AND uuid= ? `
- err = o.Raw(sql, referencedId, fromScene, uniqueCode, uuid).QueryRow(&item)
- return
- }
- // update
- func UpdateReferencedExcelConfig(item *ReferencedExcelConfig) (err error) {
- o := orm.NewOrmUsingDB("data")
- _, err = o.Update(item, "WidthList", "HeightList", "OpUserId", "OpUserName", "ModifyTime")
- return
- }
- // delete
- func DeleteReferencedExcelConfig(uniqueCode string) (err error) {
- o := orm.NewOrmUsingDB("data")
- sql := `DELETE FROM referenced_excel_config WHERE unique_code=? `
- _, err = o.Raw(sql, uniqueCode).Exec()
- return
- }
- // GetReferencedExcelConfigList
- // @Description: 根据来源类型和来源id获取所有配置列表
- // @author: Roc
- // @datetime 2025-01-09 14:31:20
- // @param referencedId int
- // @param fromScene int
- // @return items []ReferencedExcelConfig
- // @return err error
- func GetReferencedExcelConfigList(referencedId, fromScene int) (items []ReferencedExcelConfig, err error) {
- o := orm.NewOrmUsingDB("data")
- sql := ` SELECT * FROM referenced_excel_config WHERE referenced_id = ? AND from_scene = ? `
- _, err = o.Raw(sql, referencedId, fromScene).QueryRows(&items)
- return
- }
- // CopyReferencedExcelConfigByReferencedIdAndFromScene
- // @Description: 根据原引用Id和引用类型创建新的表格关系
- // @author: Roc
- // @datetime 2025-01-09 15:02:43
- // @param oldReferencedId int
- // @param oldFromScene int
- // @param newReferencedId int
- // @param newFromScene int
- // @param sysUserId int
- // @param sysUserName string
- // @return err error
- func CopyReferencedExcelConfigByReferencedIdAndFromScene(oldReferencedId, oldFromScene, newReferencedId, newFromScene, sysUserId int, sysUserName string) (addList []*ReferencedExcelConfig, err error) {
- o := orm.NewOrmUsingDB("data")
- var items []ReferencedExcelConfig
- sql := ` SELECT * FROM referenced_excel_config WHERE referenced_id = ? AND from_scene = ? `
- _, err = o.Raw(sql, oldReferencedId, oldFromScene).QueryRows(&items)
- if err != nil {
- return
- }
- addList = make([]*ReferencedExcelConfig, 0)
- for _, v := range items {
- addList = append(addList, &ReferencedExcelConfig{
- ReferencedExcelConfigId: 0,
- UniqueCode: v.UniqueCode,
- ReferencedId: newReferencedId,
- FromScene: newFromScene,
- Uuid: v.Uuid,
- WidthList: v.WidthList,
- HeightList: v.HeightList,
- OpUserId: sysUserId,
- OpUserName: sysUserName,
- CreateTime: time.Now(),
- Content: v.Content,
- ModifyTime: time.Now(),
- })
- }
- // 批量复制表格关系
- _, err = o.InsertMulti(utils.MultiAddNum, addList)
- return
- }
|