99 lines
2.9 KiB
Go
99 lines
2.9 KiB
Go
package dao
|
|
|
|
import (
|
|
"fmt"
|
|
"git.rosy.net.cn/baseapi/utils"
|
|
"git.rosy.net.cn/jx-print/globals"
|
|
settingModel "git.rosy.net.cn/jx-print/model/app_model"
|
|
"github.com/jmoiron/sqlx"
|
|
)
|
|
|
|
type PrintSettingDao struct{}
|
|
|
|
var PrintSettingInfoDao = new(PrintSettingDao)
|
|
|
|
// QueryPrintNoIsExit 查询打印机绑定设置是否存在
|
|
func (p *PrintSettingDao) QueryPrintNoIsExit(printNo string) (bool, error) {
|
|
sql := `SELECT COUNT(print_no) count FROM print_setting WHERE deleted_at = ? and print_no = ?`
|
|
//查总数
|
|
count := 0
|
|
row := globals.GetDB().DB.QueryRow(sql, []interface{}{utils.DefaultTimeValue, printNo}...)
|
|
if err := row.Scan(&count); err != nil {
|
|
return false, err
|
|
}
|
|
if count != 0 {
|
|
return false, nil
|
|
}
|
|
return true, nil
|
|
}
|
|
|
|
// InsertPrintSetting 插入打印机设置
|
|
func (p *PrintSettingDao) InsertPrintSetting(tx *sqlx.Tx, param *settingModel.PrintSetting) error {
|
|
return InsertTx(tx, param)
|
|
}
|
|
|
|
// UpdatePrinterSetting 修改打印机配置
|
|
func (p *PrintSettingDao) UpdatePrinterSetting(param *settingModel.UpdatePrintSetting) error {
|
|
db := globals.GetDB()
|
|
|
|
sql := `UPDATE print_setting SET `
|
|
var param2 []interface{}
|
|
|
|
if param.CallNameSetting != 0 {
|
|
sql += ` call_name_setting = ? `
|
|
param2 = append(param2, param.CallNameSetting)
|
|
}
|
|
if param.BusinessOffLineVoice != 0 {
|
|
sql += ` ,business_off_line_voice = ? `
|
|
param2 = append(param2, param.BusinessOffLineVoice)
|
|
}
|
|
if param.BalanceNotEnoughVoice != 0 {
|
|
sql += ` ,balance_not_enough_voice = ? `
|
|
param2 = append(param2, param.BalanceNotEnoughVoice)
|
|
}
|
|
if param.EveryDayGreetVoice != 0 {
|
|
sql += ` ,every_day_greet_voice = ? `
|
|
param2 = append(param2, param.EveryDayGreetVoice)
|
|
}
|
|
if param.BusinessPrintNum != 0 {
|
|
sql += ` ,business_print_num = ? `
|
|
param2 = append(param2, param.BusinessPrintNum)
|
|
}
|
|
if param.CustomerPrintNum != 0 {
|
|
sql += ` ,customer_print_num = ? `
|
|
param2 = append(param2, param.CustomerPrintNum)
|
|
}
|
|
if param.VoiceSetting != "" {
|
|
sql += ` ,voice_setting = ? `
|
|
param2 = append(param2, param.VoiceSetting)
|
|
}
|
|
if param.PrintSetting != "" {
|
|
sql += ` ,print_setting = ? `
|
|
param2 = append(param2, param.PrintSetting)
|
|
}
|
|
sql += ` WHERE print_no = ? `
|
|
param2 = append(param2, param.PrintNo)
|
|
|
|
_, err := db.Exec(sql, param2...)
|
|
return err
|
|
}
|
|
|
|
// DeleteSetting 删除打印机设置
|
|
func (p *PrintSettingDao) DeleteSetting(printNo string) error {
|
|
_, err := globals.GetDB().Exec(`DELETE FROM print_setting WHERE print_no = ?`, []interface{}{printNo}...)
|
|
return err
|
|
}
|
|
|
|
// QueryPrintSetting 查询打印机设置
|
|
func (p *PrintSettingDao) QueryPrintSetting(printNo string) (*settingModel.PrintSetting, error) {
|
|
result := make([]*settingModel.PrintSetting, 0, 0)
|
|
sql := `SELECT * FROM print_setting WHERE print_no = ? AND deleted_at = ?`
|
|
if err := globals.GetDB().Select(&result, sql, []interface{}{printNo, utils.DefaultTimeValue}...); err != nil {
|
|
return nil, err
|
|
}
|
|
if len(result) != 1 {
|
|
return nil, fmt.Errorf("打印机设置查询错误,联系管理员")
|
|
}
|
|
return result[0], nil
|
|
}
|