123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- package tables
- import (
- "Wine-Server/utils"
- )
- type ParamsTable struct {
- Id uint32 `json:"id"`
- Key string `json:"key"`
- Value uint32 `json:"value"`
- Describe string `json:"describe"`
- }
- func CreateParamsTable() error {
- sql := "CREATE TABLE IF NOT EXISTS `params`(" +
- "`id` SMALLINT UNSIGNED PRIMARY KEY," +
- "`key` VARCHAR(32) NOT NULL," +
- "`value` INT UNSIGNED NOT NULL," +
- "`describe` VARCHAR(32) DEFAULT '');"
- _, err := utils.Mysql.Exec(sql)
- return err
- }
- // Insert deprecated
- func (row *ParamsTable) Insert() error {
- sql := "INSERT INTO `params`(`key`,`value`,`describe`) VALUES(?,?,?);"
- pre, err := utils.Mysql.Prepare(sql)
- if err != nil {
- return err
- }
- _, err = pre.Exec(row.Key, row.Value, row.Describe)
- return err
- }
- // Delete deprecated
- func (row *ParamsTable) Delete() error {
- pre, err := utils.Mysql.Prepare("DELETE FROM `params` WHERE `id`=?;")
- if err != nil {
- return err
- }
- _, err = pre.Exec(row.Id)
- return err
- }
- func (row *ParamsTable) Update(args utils.JsonType) error {
- keys, values := utils.UnZip(args)
- sql := utils.Format("UPDATE `params` SET %s WHERE `id`=%d;", utils.SqlFields(keys), row.Id)
- pre, err := utils.Mysql.Prepare(sql)
- if err != nil {
- return err
- }
- _, err = pre.Exec(values...)
- return err
- }
- func (row *ParamsTable) UpdateSelf() error {
- sql := "UPDATE `params` SET `key`=?,`value`=?,`describe`=? WHERE `id`=?;"
- pre, err := utils.Mysql.Prepare(sql)
- if err != nil {
- return err
- }
- _, err = pre.Exec(row.Key, row.Value, row.Describe, row.Id)
- return err
- }
- func (row *ParamsTable) Get() error {
- sql := "SELECT `key`,`value`,`describe` FROM `params` WHERE `id`=?;"
- pre, err := utils.Mysql.Prepare(sql)
- if err != nil {
- return err
- }
- err = pre.QueryRow(row.Id).Scan(&row.Key, &row.Value, &row.Describe)
- return err
- }
- func ParamsListAll() ([]ParamsTable, error) {
- var res []ParamsTable
- query, err := utils.Mysql.Query("SELECT `id`,`key`,`value`,`describe` FROM `params`;")
- if err != nil {
- return nil, err
- }
- for query.Next() {
- var one ParamsTable
- err = query.Scan(&one.Id, &one.Key, &one.Value, &one.Describe)
- if err != nil {
- return nil, err
- }
- res = append(res, one)
- }
- return res, nil
- }
- func ParamsListAllForSuper() ([]utils.JsonType, error) {
- query, err := utils.Mysql.Query("SELECT `id`,`value`,`describe` FROM `params`;")
- if err != nil {
- return nil, err
- }
- var res []utils.JsonType
- for query.Next() {
- var one ParamsTable
- err = query.Scan(&one.Id, &one.Value, &one.Describe)
- if err != nil {
- return nil, err
- }
- res = append(res, utils.JsonType{"id": one.Id, "name": one.Describe, "value": one.Value})
- }
- return res, nil
- }
|