// Code generated by goctl. DO NOT EDIT. package model import ( "context" "database/sql" "fmt" "strings" "time" "github.com/zeromicro/go-zero/core/stores/builder" "github.com/zeromicro/go-zero/core/stores/sqlc" "github.com/zeromicro/go-zero/core/stores/sqlx" "github.com/zeromicro/go-zero/core/stringx" ) var ( dcWorkingUfFieldNames = builder.RawFieldNames(&DcWorkingUf{}) dcWorkingUfRows = strings.Join(dcWorkingUfFieldNames, ",") dcWorkingUfRowsExpectAutoSet = strings.Join(stringx.Remove(dcWorkingUfFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), ",") dcWorkingUfRowsWithPlaceHolder = strings.Join(stringx.Remove(dcWorkingUfFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), "=?,") + "=?" ) type ( dcWorkingUfModel interface { FindFirstByCycleAndStep(ctx context.Context, projectId int64, deviceCode string, filterCycle int64, step int64) (*DcWorkingUf, error) FindLastByCycleAndStep(ctx context.Context, projectId int64, deviceCode string, filterCycle int64, step int64) (*DcWorkingUf, error) FindForCycleAndStep(ctx context.Context, lastId, projectId int64, deviceCode string, filterCycle int64, step int64, sFilterTime, eFilterTime float64, limit int64) ([]DcWorkingUf, error) MultiInsert(ctx context.Context, datas []DcWorkingUf) (int64, error) Insert(ctx context.Context, data *DcWorkingUf) (sql.Result, error) FindOne(ctx context.Context, id int64) (*DcWorkingUf, error) Update(ctx context.Context, data *DcWorkingUf) error Delete(ctx context.Context, id int64) error } defaultDcWorkingUfModel struct { conn sqlx.SqlConn table string } DcWorkingUf struct { Id int64 `db:"id"` ProjectId int64 `db:"project_id"` DeviceCode string `db:"device_code"` WaterTemperature float64 `db:"water_temperature"` // 水温 摄氏度 FeedFlow float64 `db:"feed_flow"` // 进水流量 ConFlow float64 `db:"con_flow"` // 浓水流量 ProductFlow float64 `db:"product_flow"` // 产水流量 FeedPressure float64 `db:"feed_pressure"` // 进水压力 ConPressure float64 `db:"con_pressure"` // 浓水压力 ProductPressure float64 `db:"product_pressure"` // 产水压力 Tmp float64 `db:"tmp"` // 跨膜压差 Flux float64 `db:"flux"` // 膜通量 Permeability float64 `db:"permeability"` // 渗透率 FeedWqTurbidity float64 `db:"feed_wq_turbidity"` // 进水浊度 FeedWqPh int64 `db:"feed_wq_ph"` // 进水 PH 值 ProductWqPh int64 `db:"product_wq_ph"` // 产水 PH 值 FeedWqAl float64 `db:"feed_wq_al"` // 进水水质:铝 ProductWqAl float64 `db:"product_wq_al"` // 产水水质:铝 FeedWqFe float64 `db:"feed_wq_fe"` // 进水水质:铁 ProductWqFe float64 `db:"product_wq_fe"` // 产水水质:铁 FeedWqMn float64 `db:"feed_wq_mn"` // 进水水质:锰 ProductWqMn float64 `db:"product_wq_mn"` // 产水水质:锰 FeedWqSio2 float64 `db:"feed_wq_sio2"` // 进水水质:二氧化硅 ProductWqSio2 float64 `db:"product_wq_sio2"` // 产水水质:二氧化硅 FeedWqCod float64 `db:"feed_wq_cod"` // 进水水质:COD ProductWqCod float64 `db:"product_wq_cod"` // 产水水质:COD FeedWqP float64 `db:"feed_wq_p"` // 进水水质:磷 ProductWqP float64 `db:"product_wq_p"` // 产水水质:磷 Step int64 `db:"step"` // 设备当前步序值 FilterTime float64 `db:"filter_time"` // 过滤时间 FilterCycle int64 `db:"filter_cycle"` // 当前过滤周期数 CTime time.Time `db:"c_time"` } ) func newDcWorkingUfModel(conn sqlx.SqlConn) *defaultDcWorkingUfModel { return &defaultDcWorkingUfModel{ conn: conn, table: "`dc_working_uf`", } } func (m *defaultDcWorkingUfModel) withSession(session sqlx.Session) *defaultDcWorkingUfModel { return &defaultDcWorkingUfModel{ conn: sqlx.NewSqlConnFromSession(session), table: "`dc_working_uf`", } } func (m *defaultDcWorkingUfModel) Delete(ctx context.Context, id int64) error { query := fmt.Sprintf("delete from %s where `id` = ?", m.table) _, err := m.conn.ExecCtx(ctx, query, id) return err } func (m *defaultDcWorkingUfModel) FindForCycleAndStep(ctx context.Context, lastId, projectId int64, deviceCode string, filterCycle int64, step int64, sFilterTime, eFilterTime float64, limit int64) ([]DcWorkingUf, error) { query := fmt.Sprintf("select %s from %s where `id`>? and `project_id`=? and `device_code`=? and `filter_cycle`=? and `step`=? and `filter_time` BETWEEN ? and ? order by id desc limit %d", dcWorkingUfRows, m.table, limit) var resp []DcWorkingUf err := m.conn.QueryRowsCtx(ctx, &resp, query, lastId, projectId, deviceCode, filterCycle, step, sFilterTime, eFilterTime) switch err { case nil: return resp, nil case sqlc.ErrNotFound: return nil, ErrNotFound default: return nil, err } } func (m *defaultDcWorkingUfModel) FindFirstByCycleAndStep(ctx context.Context, projectId int64, deviceCode string, filterCycle int64, step int64) (*DcWorkingUf, error) { query := fmt.Sprintf("select %s from %s where `project_id`=? and `device_code`=? and `filter_cycle`=? and `step`=? order by id asc limit 1", dcWorkingUfRows, m.table) var resp DcWorkingUf err := m.conn.QueryRowCtx(ctx, &resp, query, projectId, deviceCode, filterCycle, step) switch err { case nil: return &resp, nil case sqlc.ErrNotFound: return nil, ErrNotFound default: return nil, err } } func (m *defaultDcWorkingUfModel) FindLastByCycleAndStep(ctx context.Context, projectId int64, deviceCode string, filterCycle int64, step int64) (*DcWorkingUf, error) { query := fmt.Sprintf("select %s from %s where `project_id`=? and `device_code`=? and `filter_cycle`=? and `step`=? order by id desc limit 1", dcWorkingUfRows, m.table) var resp DcWorkingUf err := m.conn.QueryRowCtx(ctx, &resp, query, projectId, deviceCode, filterCycle, step) switch err { case nil: return &resp, nil case sqlc.ErrNotFound: return nil, ErrNotFound default: return nil, err } } func (m *defaultDcWorkingUfModel) FindOne(ctx context.Context, id int64) (*DcWorkingUf, error) { query := fmt.Sprintf("select %s from %s where `id` = ? limit 1", dcWorkingUfRows, m.table) var resp DcWorkingUf err := m.conn.QueryRowCtx(ctx, &resp, query, id) switch err { case nil: return &resp, nil case sqlc.ErrNotFound: return nil, ErrNotFound default: return nil, err } } func (m *defaultDcWorkingUfModel) MultiInsert(ctx context.Context, datas []DcWorkingUf) (int64, error) { query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, dcWorkingUfRowsExpectAutoSet) if bulk, err := sqlx.NewBulkInserter(m.conn, query); err == nil { for _, data := range datas { if err = bulk.Insert(data.ProjectId, data.DeviceCode, data.WaterTemperature, data.FeedFlow, data.ConFlow, data.ProductFlow, data.FeedPressure, data.ConPressure, data.ProductPressure, data.Tmp, data.Flux, data.Permeability, data.FeedWqTurbidity, data.FeedWqPh, data.ProductWqPh, data.FeedWqAl, data.ProductWqAl, data.FeedWqFe, data.ProductWqFe, data.FeedWqMn, data.ProductWqMn, data.FeedWqSio2, data.ProductWqSio2, data.FeedWqCod, data.ProductWqCod, data.FeedWqP, data.ProductWqP, data.Step, data.FilterTime, data.FilterCycle, data.CTime); err != nil { return 0, err } } bulk.Flush() return int64(len(datas)), nil } else { return 0, err } } func (m *defaultDcWorkingUfModel) Insert(ctx context.Context, data *DcWorkingUf) (sql.Result, error) { query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, dcWorkingUfRowsExpectAutoSet) ret, err := m.conn.ExecCtx(ctx, query, data.ProjectId, data.DeviceCode, data.WaterTemperature, data.FeedFlow, data.ConFlow, data.ProductFlow, data.FeedPressure, data.ConPressure, data.ProductPressure, data.Tmp, data.Flux, data.Permeability, data.FeedWqTurbidity, data.FeedWqPh, data.ProductWqPh, data.FeedWqAl, data.ProductWqAl, data.FeedWqFe, data.ProductWqFe, data.FeedWqMn, data.ProductWqMn, data.FeedWqSio2, data.ProductWqSio2, data.FeedWqCod, data.ProductWqCod, data.FeedWqP, data.ProductWqP, data.Step, data.FilterTime, data.FilterCycle, data.CTime) return ret, err } func (m *defaultDcWorkingUfModel) Update(ctx context.Context, data *DcWorkingUf) error { query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, dcWorkingUfRowsWithPlaceHolder) _, err := m.conn.ExecCtx(ctx, query, data.ProjectId, data.DeviceCode, data.WaterTemperature, data.FeedFlow, data.ConFlow, data.ProductFlow, data.FeedPressure, data.ConPressure, data.ProductPressure, data.Tmp, data.Flux, data.FeedWqTurbidity, data.FeedWqPh, data.ProductWqPh, data.FeedWqAl, data.ProductWqAl, data.FeedWqFe, data.ProductWqFe, data.FeedWqMn, data.ProductWqMn, data.FeedWqSio2, data.ProductWqSio2, data.FeedWqCod, data.ProductWqCod, data.FeedWqP, data.ProductWqP, data.Step, data.FilterTime, data.FilterCycle, data.CTime, data.Id) return err } func (m *defaultDcWorkingUfModel) tableName() string { return m.table }