增加backend的erp若干功能
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
package models
|
||||
|
||||
import "time"
|
||||
|
||||
// ErpNormalSetting ERP基础设置表(键值对方式): yz_erp_normalsettings
|
||||
// 每个租户可配置多条基础参数,按 config_group 分组展示
|
||||
type ErpNormalSetting struct {
|
||||
ID uint64 `orm:"column(id);pk;auto" json:"id"`
|
||||
TenantID string `orm:"column(tenant_id);size(64)" json:"tenant_id"`
|
||||
ConfigKey string `orm:"column(config_key);size(100)" json:"config_key"`
|
||||
ConfigValue string `orm:"column(config_value);type(text);null" json:"config_value"`
|
||||
ConfigName string `orm:"column(config_name);size(100)" json:"config_name"`
|
||||
ConfigGroup string `orm:"column(config_group);size(50)" json:"config_group"`
|
||||
ConfigType string `orm:"column(config_type);size(20);default(input)" json:"config_type"` // input/select/number/textarea/switch
|
||||
ConfigOptions string `orm:"column(config_options);type(text);null" json:"config_options"` // select 类型的选项,JSON格式
|
||||
SortOrder int `orm:"column(sort_order);default(0)" json:"sort_order"`
|
||||
Status int8 `orm:"column(status);default(1)" json:"status"`
|
||||
CreateTime time.Time `orm:"column(create_time);auto_now_add;type(datetime)" json:"create_time"`
|
||||
UpdateTime time.Time `orm:"column(update_time);auto_now;type(datetime)" json:"update_time"`
|
||||
}
|
||||
|
||||
func (m *ErpNormalSetting) TableName() string {
|
||||
return "yz_backend_erp_normalsettings"
|
||||
}
|
||||
|
||||
// GetErpNormalSettingsByTenant 获取租户所有启用的基础设置
|
||||
func GetErpNormalSettingsByTenant(tenantID string) ([]ErpNormalSetting, error) {
|
||||
var list []ErpNormalSetting
|
||||
_, err := Orm.QueryTable(new(ErpNormalSetting)).
|
||||
Filter("tenant_id", tenantID).
|
||||
Filter("status", 1).
|
||||
OrderBy("config_group", "sort_order", "id").
|
||||
All(&list)
|
||||
return list, err
|
||||
}
|
||||
|
||||
// GetErpNormalSettingByKey 按租户+key获取配置
|
||||
func GetErpNormalSettingByKey(tenantID, key string) *ErpNormalSetting {
|
||||
var setting ErpNormalSetting
|
||||
err := Orm.QueryTable(new(ErpNormalSetting)).
|
||||
Filter("tenant_id", tenantID).
|
||||
Filter("config_key", key).
|
||||
One(&setting)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return &setting
|
||||
}
|
||||
Reference in New Issue
Block a user