浏览代码

研报时间格式处理

xyxie 4 周之前
父节点
当前提交
c488678bf4
共有 2 个文件被更改,包括 87 次插入9 次删除
  1. 27 8
      models/document_manage_model/outside_report.go
  2. 60 1
      models/report.go

+ 27 - 8
models/document_manage_model/outside_report.go

@@ -5,8 +5,8 @@ import (
 	"eta/eta_api/global"
 	"eta/eta_api/utils"
 
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
+	"gorm.io/gorm"
 )
 
 type OutsideReport struct {
@@ -25,7 +25,27 @@ type OutsideReport struct {
 	CreateTime       string `orm:"column(create_time)" description:"创建时间"`
 	ReportCode       string `orm:"column(report_code)" description:"报告唯一编码"`
 }
+// AfterFind
+// @Description: 转成需要输出的格式
+// @receiver m
+func (m *OutsideReport) AfterFind(db *gorm.DB) (err error) {
+	m.ReportUpdateTime = utils.GormDateStrToDateStr(m.ReportUpdateTime)
+	m.ModifyTime = utils.GormDateStrToDateStr(m.ModifyTime)
+	m.CreateTime = utils.GormDateStrToDateStr(m.CreateTime)
 
+	return
+}
+
+// ConvertTimeStr
+// @Description: 转成需要输出的格式
+// @receiver m
+func (m *OutsideReport) ConvertTimeStr() {
+	m.ReportUpdateTime = utils.GormDateStrToDateStr(m.ReportUpdateTime)
+	m.ModifyTime = utils.GormDateStrToDateStr(m.ModifyTime)
+	m.CreateTime = utils.GormDateStrToDateStr(m.CreateTime)
+
+	return
+}
 type OutsideReportPage struct {
 	List   []OutsideReport    `description:"报告列表"`
 	Paging *paging.PagingItem `description:"分页数据"`
@@ -47,11 +67,6 @@ type OutsideReportBO struct {
 	AttachmentList  []*OutsideReportAttachment
 }
 
-// 在 init 函数中注册模型
-func init() {
-	orm.RegisterModel(new(OutsideReport))
-}
-
 // GetOutsideReportListByConditionCount 根据条件查询列表条数
 func GetOutsideReportListByConditionCount(condition string, pars []interface{}, chartPermissionIdList []string) (count int, err error) {
 	o := global.DbMap[utils.DbNameReport]
@@ -69,7 +84,7 @@ func GetOutsideReportListByConditionCount(condition string, pars []interface{},
 	}
 
 	err = o.Raw(sql, pars...).Scan(&count).Error
-	if err != nil && err != orm.ErrNoRows {
+	if err != nil {
 		return 0, err
 	}
 
@@ -85,7 +100,7 @@ t1.modify_time, t1.create_time, t1.report_code from outside_report t1
 left join chart_permission_search_key_word_mapping t2 on t1.classify_id = t2.classify_id  where 1 = 1 `
 	sql += condition
 	err = o.Raw(sql, pars...).Find(&list).Error
-	if err != nil && err != orm.ErrNoRows {
+	if err != nil {
 		return nil, err
 	}
 
@@ -111,6 +126,10 @@ func GetOutsideReportById(id int) (outsideReport *OutsideReport, err error) {
 
 	//err = o.QueryTable("outside_report").Filter("outside_report_id", id).One(outsideReport)
 	err = o.Raw("select * from outside_report where outside_report_id = ?", id).First(outsideReport).Error
+	if err != nil {
+		return
+	}
+	outsideReport.ConvertTimeStr()
 	return
 }
 

+ 60 - 1
models/report.go

@@ -10,6 +10,7 @@ import (
 	"time"
 
 	"github.com/rdlucklib/rdluck_tools/paging"
+	"gorm.io/gorm"
 )
 
 // 报告状态
@@ -91,6 +92,19 @@ type Report struct {
 	VoiceGenerateType   int       `description:"音频生成方式,0:系统生成,1:人工上传"`
 }
 
+func (m *Report) AfterFind(db *gorm.DB) (err error) {
+	m.CreateTime = utils.GormDateStrToDateStr(m.CreateTime)
+	return
+}
+
+// ConvertTimeStr
+// @Description: 转成需要输出的格式
+// @receiver m
+func (m *Report) ConvertTimeStr() {
+	m.CreateTime = utils.GormDateStrToDateStr(m.CreateTime)
+	return
+}
+
 type ReportList struct {
 	Id                 int                       `gorm:"column:id;primaryKey;autoIncrement" description:"报告Id"`
 	AddType            int                       `description:"新增方式:1:新增报告,2:继承报告"`
@@ -152,7 +166,15 @@ type ReportList struct {
 	ClassifyNameThird   string    `description:"三级分类名称"`
 	InheritReportId     int       `description:"待继承的报告ID"`
 }
-
+func (m *ReportList) AfterFind(db *gorm.DB) (err error) {
+	m.ModifyTime = utils.GormDateStrToDateStr(m.ModifyTime)
+	m.PublishTime = utils.GormDateStrToDateStr(m.PublishTime)
+	m.CreateTime = utils.GormDateStrToDateStr(m.CreateTime)
+	m.ApproveTime = utils.GormDateStrToDateStr(m.ApproveTime)
+	m.MsgSendTime = utils.GormDateStrToDateStr(m.MsgSendTime)
+	m.PrePublishTime = utils.GormDateStrToDateStr(m.PrePublishTime)
+	return
+}
 type ReportListResp struct {
 	List   []*ReportList
 	Paging *paging.PagingItem `description:"分页数据"`
@@ -419,10 +441,31 @@ type ReportDetail struct {
 	ReportCreateTime    time.Time `description:"报告时间创建时间"`
 }
 
+func (m *ReportDetail) AfterFind(db *gorm.DB) (err error) {
+	m.CreateTime = utils.GormDateStrToDateStr(m.CreateTime)
+	m.ModifyTime = utils.GormDateStrToDateStr(m.ModifyTime)
+	m.PublishTime = utils.GormDateStrToDateStr(m.PublishTime)
+	m.PrePublishTime = utils.GormDateStrToDateStr(m.PrePublishTime)
+
+	return
+}
+func (m *ReportDetail) ConvertTimeStr() {
+	m.CreateTime = utils.GormDateStrToDateStr(m.CreateTime)
+	m.ModifyTime = utils.GormDateStrToDateStr(m.ModifyTime)
+	m.PublishTime = utils.GormDateStrToDateStr(m.PublishTime)
+	m.PrePublishTime = utils.GormDateStrToDateStr(m.PrePublishTime)
+
+	return
+}
+
 func GetReportById(reportId int) (item *ReportDetail, err error) {
 	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM report WHERE id=?`
 	err = o.Raw(sql, reportId).First(&item).Error
+	if err != nil {
+		return
+	}
+	item.ConvertTimeStr()
 	return
 }
 
@@ -674,6 +717,10 @@ func GetReportDetailByClassifyId(classifyIdFirst, classifyIdSecond int) (item *R
 		sql = sql + ` AND classify_id_first=?   ORDER BY stage DESC LIMIT 1`
 		err = o.Raw(sql, classifyIdFirst).First(&item).Error
 	}
+	if err != nil {
+		return
+	}
+	item.ConvertTimeStr()
 	return
 }
 
@@ -847,6 +894,10 @@ func GetReportByReportId(reportId int) (item *Report, err error) {
 	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM report WHERE id = ?`
 	err = o.Raw(sql, reportId).First(&item).Error
+	if err != nil {
+		return
+	}
+	item.ConvertTimeStr()
 	return
 }
 
@@ -855,6 +906,10 @@ func GetReportByOldReportId(reportId int) (item *Report, err error) {
 	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM report WHERE old_report_id = ?`
 	err = o.Raw(sql, reportId).First(&item).Error
+	if err != nil {
+		return
+	}
+	item.ConvertTimeStr()
 	return
 }
 
@@ -1424,6 +1479,10 @@ func (m *Report) GetItemById(id int) (item *Report, err error) {
 	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM report WHERE id = ? LIMIT 1`
 	err = o.Raw(sql, id).First(&item).Error
+	if err != nil {
+		return
+	}
+	item.ConvertTimeStr()
 	return
 }