167 lines
5.2 KiB
Go
167 lines
5.2 KiB
Go
package dao
|
||
|
||
import (
|
||
"fmt"
|
||
"git.rosy.net.cn/baseapi/utils"
|
||
"git.rosy.net.cn/jx-print/globals"
|
||
"git.rosy.net.cn/jx-print/model/app_model"
|
||
)
|
||
|
||
// GetTempByName 根据模板名称获取模板
|
||
func GetTempByName(userID, printNo, tempName string) ([]*app_model.SystemTemp, error) {
|
||
sql := `SELECT * FROM system_temp WHERE 1=1`
|
||
var param []interface{}
|
||
if userID != "" {
|
||
sql += ` AND user_id = ?`
|
||
param = append(param, userID)
|
||
}
|
||
if printNo != "" {
|
||
sql += ` AND print_sn = ?`
|
||
param = append(param, printNo)
|
||
}
|
||
if tempName != "" {
|
||
sql += ` AND temp_name = ?`
|
||
param = append(param, tempName)
|
||
}
|
||
|
||
sql += ` AND deleted_at = ?`
|
||
param = append(param, utils.DefaultTimeValue)
|
||
|
||
var result []*app_model.SystemTemp
|
||
if err := globals.GetDB().Select(&result, sql, param...); err != nil {
|
||
return nil, err
|
||
}
|
||
return result, nil
|
||
}
|
||
|
||
// AddTemp 添加模板数据
|
||
func AddTemp(param *app_model.SystemTemp) error {
|
||
return Insert(globals.GetDB(), param)
|
||
}
|
||
|
||
// UpdateOtherTempStatus 修改其他模板为非默认
|
||
func UpdateOtherTempStatus(userId, printNo string) error {
|
||
_, err := globals.GetDB().Exec(`UPDATE system_temp SET is_use = ? WHERE user_id = ? AND print_sn = ?`, []interface{}{2, userId, printNo}...)
|
||
return err
|
||
}
|
||
|
||
// UpdateTempOnUser 将模板修改为用户模板
|
||
func UpdateTempOnUser(id int, userId string) error {
|
||
_, err := globals.GetDB().Exec(`UPDATE system_temp SET user_id = ? WHERE id = ?`, []interface{}{userId, id}...)
|
||
return err
|
||
}
|
||
|
||
// UpdateTemp 修改模板数据
|
||
func UpdateTemp(param *app_model.SystemTemp, fields []string) error {
|
||
//sql := `UPDATE system_temp SET `
|
||
//var sqlParam []interface{}
|
||
//updateBuffer := make([]string, 0, 14)
|
||
//if param.CreatedAt != "" {
|
||
// updateBuffer = append(updateBuffer, "created_at")
|
||
// sqlParam = append(sqlParam, param.Temp)
|
||
//}
|
||
//if param.UpdatedAt != "" {
|
||
//}
|
||
//if param.LastOperator != "" {
|
||
//}
|
||
//if param.DeletedAt != "" {
|
||
//}
|
||
//if param.TempName != "" {
|
||
//}
|
||
//if param.TempRank != "" {
|
||
//}
|
||
//if param.Temp != "" {
|
||
//}
|
||
//if param.UserId != "" {
|
||
//}
|
||
//if param.TempType != "" {
|
||
//}
|
||
//if param.TempSize != "" {
|
||
//}
|
||
//if param.PrintSn != "" {
|
||
//}
|
||
//if param.IsUse != "" {
|
||
//}
|
||
//if param.Properties != "" {
|
||
//}
|
||
|
||
return Update(globals.GetDB(), param, fields...)
|
||
}
|
||
|
||
// DeleteTemp 删除模板数据
|
||
func DeleteTemp(id int, userId string) error {
|
||
|
||
_, err := globals.GetDB().Exec(`DELETE FROM system_temp WHERE id = ? AND user_id = ?`, []interface{}{id, userId}...)
|
||
return err
|
||
}
|
||
|
||
// DeleteAllTemp 删除用户所属打印机所有模板
|
||
func DeleteAllTemp(userId string, printNo string) error {
|
||
_, err := globals.GetDB().Exec(`DELETE FROM system_temp WHERE user_id = ? AND print_sn = ? `, []interface{}{userId, printNo}...)
|
||
return err
|
||
}
|
||
|
||
// SelectUserTemp 查询用户模板
|
||
func SelectUserTemp(userId, printSn string) ([]*app_model.SystemTemp, error) {
|
||
var result []*app_model.SystemTemp
|
||
if err := globals.GetDB().Select(&result, `SELECT * FROM system_temp WHERE user_id = ? AND print_sn = ? AND deleted_at = ? ORDER BY created_at desc `, []interface{}{userId, printSn, utils.DefaultTimeValue}...); err != nil {
|
||
return nil, err
|
||
}
|
||
return result, nil
|
||
}
|
||
|
||
// SelectPrintTemp 根据打印机编号查询模板
|
||
func SelectPrintTemp(printSn string) ([]*app_model.SystemTemp, error) {
|
||
var result []*app_model.SystemTemp
|
||
if err := globals.GetDB().Select(&result, `SELECT * FROM system_temp WHERE print_sn = ? AND deleted_at = ? ORDER BY created_at desc `, []interface{}{printSn, utils.DefaultTimeValue}...); err != nil {
|
||
return nil, err
|
||
}
|
||
return result, nil
|
||
}
|
||
|
||
// SelectUserDefaultTemp 查询用户默认模板
|
||
func SelectUserDefaultTemp(userId string, tempType string) (*app_model.SystemTemp, bool, error) {
|
||
var result []*app_model.SystemTemp
|
||
if err := globals.GetDB().Select(&result, `SELECT * FROM system_temp WHERE user_id = ? AND temp_type = ? AND is_use = ? AND deleted_at = ? ORDER BY created_at desc `, []interface{}{userId, tempType, 1, utils.DefaultTimeValue}...); err != nil {
|
||
return nil, false, err
|
||
}
|
||
if len(result) <= 0 {
|
||
return nil, false, nil
|
||
}
|
||
return result[0], true, nil
|
||
}
|
||
|
||
// QuerySystemTemp 查询系统模板
|
||
func QuerySystemTemp() ([]*app_model.SystemTemp, error) {
|
||
var result []*app_model.SystemTemp
|
||
if err := globals.GetDB().Select(&result, `SELECT * FROM system_temp WHERE user_id = ? ORDER BY created_at desc `, []interface{}{"system_user"}...); err != nil {
|
||
return nil, err
|
||
}
|
||
return result, nil
|
||
}
|
||
|
||
// SwitchTemp2User 切换模板
|
||
func SwitchTemp2User(tempId int, userId, printSn string) error {
|
||
if _, err := globals.GetDB().Exec(`UPDATE system_temp SET is_use = 2 WHERE user_id = ? AND print_sn = ?`, []interface{}{userId, printSn}...); err != nil {
|
||
return err
|
||
}
|
||
if _, err := globals.GetDB().Exec(`UPDATE system_temp SET is_use = 1 WHERE id = ? AND user_id = ? AND print_sn = ?`, []interface{}{tempId, userId, printSn}...); err != nil {
|
||
return err
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// QueryTempById 查询模板根据id
|
||
func QueryTempById(id int) (data *app_model.SystemTemp, err error) {
|
||
var result []*app_model.SystemTemp
|
||
|
||
if err := globals.GetDB().Select(&result, `SELECT * FROM system_temp WHERE id = ?`, []interface{}{id}...); err != nil {
|
||
return nil, err
|
||
}
|
||
|
||
if len(result) != 1 {
|
||
return nil, fmt.Errorf("参数异常")
|
||
}
|
||
return result[0], nil
|
||
}
|