Files
jx-print/dao/print_setting.go
邹宗楠 e552efc2ad 打印机
2022-08-03 09:04:28 +08:00

78 lines
2.2 KiB
Go

package dao
import (
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-print/globals"
settingModel "git.rosy.net.cn/jx-print/model/app_model"
)
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(param *settingModel.PrintSetting) error {
return Insert(globals.GetDB(), 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.SystemVoice != 0 {
sql += ` system_voice = ? `
param2 = append(param2, param.SystemVoice)
}
if param.PrintVoiceSetting != "" {
sql += ` print_voice_setting = ? `
param2 = append(param2, param.PrintVoiceSetting)
}
if param.OrderVoiceSetting != "" {
sql += ` order_voice_setting = ? `
param2 = append(param2, param.OrderVoiceSetting)
}
if param.RiderVoiceSetting != "" {
sql += ` rider_voice_setting = ? `
param2 = append(param2, param.RiderVoiceSetting)
}
if param.CustomerVoiceSetting != "" {
sql += ` customer_voice_setting = ? `
param2 = append(param2, param.CustomerVoiceSetting)
}
if param.PickingSetting != "" {
sql += ` picking_setting = ? `
param2 = append(param2, param.PickingSetting)
}
sql += ` WHERE print_no = ? `
_, 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 in (?)`, []interface{}{printNo}...)
return err
}