123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- package index
- import (
- "context"
- "hongze/mysteel_watch/global"
- "hongze/mysteel_watch/models/base"
- "hongze/mysteel_watch/utils"
- "time"
- )
- // 钢联化工指标数据
- type BaseFromMysteelChemicalIndex struct {
- BaseFromMysteelChemicalIndexId int64 `gorm:"primaryKey;column:base_from_mysteel_chemical_index_id;type:int(11);not null" json:"base_from_mysteel_chemical_index_id"` //序号
- IndexCode string `gorm:"column:index_code" json:"index_code"`
- IndexName string `gorm:"column:index_name" json:"index_name"`
- Unit string `gorm:"column:unit" json:"unit"`
- Source string `gorm:"column:source" json:"source"`
- Frequency string `gorm:"column:frequency" json:"frequency"`
- StartDate time.Time `gorm:"column:start_date" json:"start_date"`
- EndDate time.Time `gorm:"column:end_date" json:"end_date"`
- Describe string `gorm:"column:describe" json:"describe"`
- UpdateWeek string `gorm:"column:update_week" json:"update_week"`
- UpdateTime string `gorm:"column:update_time" json:"update_time"`
- UpdateTime2 string `gorm:"column:update_time2" json:"update_time2"`
- SysUserId int `gorm:"column:sys_user_id" json:"sys_user_id"`
- SysUserRealName string `gorm:"column:sys_user_real_name" json:"sys_user_real_name"`
- FilePath string `gorm:"column:file_path" json:"file_path"`
- MergeFilePath string `gorm:"column:merge_file_path" json:"merge_file_path"`
- base.TimeBase
- }
- // TableName get sql table name.获取数据库表名
- func (r *BaseFromMysteelChemicalIndex) TableName() string {
- return "base_from_mysteel_chemical_index"
- }
- // 新增
- func (r *BaseFromMysteelChemicalIndex) Add(runMod string) (err error) {
- if runMod == "release" {
- err = global.MYSQL["hzdata"].Create(r).Error
- return
- } else {
- err = global.DEFAULT_MYSQL.Create(r).Error
- return
- }
- }
- // 修改
- func (r *BaseFromMysteelChemicalIndex) Update(runMod string, updateCols []string) (err error) {
- if runMod == "release" {
- err = global.MYSQL["hzdata"].Model(r).Where("index_code=?", r.IndexCode).Select(updateCols).Updates(r).Error
- return
- } else {
- err = global.DEFAULT_MYSQL.Model(r).Where("index_code=?", r.IndexCode).Select(updateCols).Updates(r).Error
- return
- }
- }
- type IndexAddReq struct {
- IndexCode string `json:"IndexCode" binding:"required"` //指标编码
- UpdateWeek string `json:"UpdateWeek"` //更新周期
- RunMode string `description:"运行环境:debug:测试(默认),release:生产" json:"RunMode"` //更新周期
- }
- func (d *BaseFromMysteelChemicalIndex) GetIndexItem(runMod, indexCode string) (item *BaseFromMysteelChemicalIndex, err error) {
- if runMod == "release" {
- err = global.MYSQL["hzdata"].WithContext(context.TODO()).Model(d).
- Where("index_code = ?", indexCode).First(&item).Error
- return
- } else {
- err = global.DEFAULT_MYSQL.WithContext(context.TODO()).Model(d).
- Where("index_code = ?", indexCode).First(&item).Error
- return
- }
- }
- type IndexDeleteReq struct {
- IndexCode string `json:"IndexCode" binding:"required"` //指标编码
- }
- func (d *BaseFromMysteelChemicalIndex) GetIndexCreate() (item []*BaseFromMysteelChemicalIndex, err error) {
- endTime := time.Now().Add(-2 * time.Minute).Format(utils.FormatDateTime)
- err = global.MYSQL["hzdata"].WithContext(context.TODO()).Model(d).
- Where("index_name = '' AND create_time<=? ", endTime).First(&item).Error
- //Where("index_name = '' AND create_time<=? ", endTime).Find(&item).Error
- return
- }
- func (d *BaseFromMysteelChemicalIndex) GetIndexRefreshAll() (item []*BaseFromMysteelChemicalIndex, err error) {
- err = global.MYSQL["hzdata"].WithContext(context.TODO()).Model(d).Find(&item).Error
- return
- }
- func (d *BaseFromMysteelChemicalIndex) GetIndexRefreshWeek(nowWeekZn, startTime, endTime string) (item []*BaseFromMysteelChemicalIndex, err error) {
- where := `update_week = ? AND ((update_time >=? AND update_time<=?) OR (update_time2 >=? AND update_time2<=?)) `
- err = global.MYSQL["hzdata"].WithContext(context.TODO()).Model(d).Where(where, nowWeekZn, startTime, endTime, startTime, endTime).Find(&item).Error
- //err = global.DEFAULT_MYSQL.WithContext(context.TODO()).Model(d).Where(where, nowWeekZn, startTime, endTime, startTime, endTime).Find(&item).Error
- return
- }
- func (d *BaseFromMysteelChemicalIndex) GetIndexByFrequency(frequency string) (item []*BaseFromMysteelChemicalIndex, err error) {
- err = global.MYSQL["hzdata"].WithContext(context.TODO()).Model(d).Where("frequency=? AND merge_file_path='' ", frequency).Find(&item).Error
- return
- }
|