打印机
This commit is contained in:
38
controllers/app/print_setting.go
Normal file
38
controllers/app/print_setting.go
Normal file
@@ -0,0 +1,38 @@
|
||||
package app
|
||||
|
||||
import (
|
||||
"git.rosy.net.cn/jx-print/controllers"
|
||||
"git.rosy.net.cn/jx-print/model"
|
||||
tempModel "git.rosy.net.cn/jx-print/model/app_model"
|
||||
"git.rosy.net.cn/jx-print/services/print_server/app_server"
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
type PrintSetting struct{}
|
||||
|
||||
var PrintSettingController = new(PrintSetting)
|
||||
|
||||
// UpdatePrintSetting 修改打印机打印设置
|
||||
// @Title 修改打印机打印设置
|
||||
// @Description 修改打印机打印设置
|
||||
// @Param token cookie string true "用户登录token"
|
||||
// @Param data body app_model.UpdatePrintSetting true "请求参数"
|
||||
// @Success 200 {object} controllers.CallResult
|
||||
// @Failure 200 {object} controllers.CallResult
|
||||
// @router /updatePrintSetting [post]
|
||||
func (p *PrintSetting) UpdatePrintSetting(c *gin.Context) {
|
||||
var (
|
||||
err error
|
||||
tokenInfo *model.TokenInfo
|
||||
param = &tempModel.UpdatePrintSetting{}
|
||||
server = app_server.PrintSettingInfoServer
|
||||
)
|
||||
if err = c.ShouldBind(param); err != nil {
|
||||
controllers.BuildErrJson(c, err)
|
||||
return
|
||||
}
|
||||
controllers.CallFunc(c, func() (retVal interface{}, errCode string, err error) {
|
||||
err = server.UpdatePrintSetting(tokenInfo.User.UserID, param)
|
||||
return "", "", err
|
||||
})
|
||||
}
|
||||
@@ -3,8 +3,9 @@ package app
|
||||
import (
|
||||
"git.rosy.net.cn/jx-print/controllers"
|
||||
"git.rosy.net.cn/jx-print/model"
|
||||
print "git.rosy.net.cn/jx-print/model/app_model"
|
||||
printModel "git.rosy.net.cn/jx-print/model/app_model"
|
||||
"git.rosy.net.cn/jx-print/putils"
|
||||
print "git.rosy.net.cn/jx-print/services/print_server"
|
||||
printServer "git.rosy.net.cn/jx-print/services/print_server/app_server"
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
@@ -25,8 +26,9 @@ func (p *Print) AddPrinters(c *gin.Context) {
|
||||
var (
|
||||
err error
|
||||
tokenInfo *model.TokenInfo
|
||||
param = print.AddPrintReq{}
|
||||
param = printModel.AddPrintReq{}
|
||||
printInfo []*model.PrintInfo
|
||||
setting = printServer.PrintSettingInfoServer
|
||||
)
|
||||
|
||||
if err = c.ShouldBind(¶m); err != nil {
|
||||
@@ -42,8 +44,15 @@ func (p *Print) AddPrinters(c *gin.Context) {
|
||||
}
|
||||
|
||||
controllers.CallFunc(c, func() (retVal interface{}, errCode string, err error) {
|
||||
err = printServer.AddPrinters(tokenInfo, param.AppID, printInfo)
|
||||
return retVal, "", err
|
||||
// 添加打印机
|
||||
if err := printServer.AddPrinters(tokenInfo, param.AppID, printInfo); err != nil {
|
||||
return nil, "", err
|
||||
}
|
||||
// 赋予默认配置
|
||||
if err := setting.SystemInitPrintSetting(printInfo[0].PrintNo); err != nil {
|
||||
return nil, "", err
|
||||
}
|
||||
return "", "", nil
|
||||
})
|
||||
|
||||
}
|
||||
@@ -60,7 +69,7 @@ func (p *Print) GetPrinters(c *gin.Context) {
|
||||
var (
|
||||
err error
|
||||
tokenInfo *model.TokenInfo
|
||||
param = print.QueryPrintReq{}
|
||||
param = printModel.QueryPrintReq{}
|
||||
)
|
||||
if err = c.ShouldBind(¶m); err != nil {
|
||||
controllers.BuildErrJson(c, err)
|
||||
@@ -86,10 +95,12 @@ func (p *Print) GetPrinters(c *gin.Context) {
|
||||
// @router /delPrinters [post]
|
||||
func (p *Print) DelPrinters(c *gin.Context) {
|
||||
var (
|
||||
err error
|
||||
tokenInfo *model.TokenInfo
|
||||
param = print.DeletePrintReq{}
|
||||
printNos []string
|
||||
err error
|
||||
tokenInfo *model.TokenInfo
|
||||
param = printModel.DeletePrintReq{}
|
||||
printNos []string
|
||||
tempServer = printServer.TempServer{}
|
||||
settingServer = printServer.PrintSettingServer{}
|
||||
)
|
||||
if err = c.ShouldBind(¶m); err != nil {
|
||||
controllers.BuildErrJson(c, err)
|
||||
@@ -103,7 +114,16 @@ func (p *Print) DelPrinters(c *gin.Context) {
|
||||
return
|
||||
}
|
||||
controllers.CallFunc(c, func() (retVal interface{}, errCode string, err error) {
|
||||
err = printServer.DelPrinters(param.AppID, tokenInfo, printNos)
|
||||
// 删除打印机
|
||||
if err := printServer.DelPrinters(param.AppID, tokenInfo, printNos); err != nil {
|
||||
return nil, "", err
|
||||
}
|
||||
// 删除模板
|
||||
err = tempServer.DeleteAllTemp(tokenInfo.User.UserID, printNos)
|
||||
// 删除设置
|
||||
err = settingServer.DeletePrintSetting(printNos)
|
||||
// 删除打印消息
|
||||
err = print.DeletePrintMsg(printNos)
|
||||
return retVal, "", err
|
||||
})
|
||||
}
|
||||
@@ -120,7 +140,7 @@ func (p *Print) UpdatePrinter(c *gin.Context) {
|
||||
var (
|
||||
err error
|
||||
tokenInfo *model.TokenInfo
|
||||
param = print.UpdatePrintReq{}
|
||||
param = printModel.UpdatePrintReq{}
|
||||
)
|
||||
if err = c.ShouldBind(¶m); err != nil {
|
||||
controllers.BuildErrJson(c, err)
|
||||
@@ -150,7 +170,7 @@ func (p *Print) TestPrint(c *gin.Context) {
|
||||
var (
|
||||
err error
|
||||
tokenInfo *model.TokenInfo
|
||||
param = print.TestPrintReq{}
|
||||
param = printModel.TestPrintReq{}
|
||||
)
|
||||
if err = c.ShouldBind(¶m); err != nil {
|
||||
controllers.BuildErrJson(c, err)
|
||||
@@ -177,7 +197,7 @@ func (p *Print) GetPrintMessages(c *gin.Context) {
|
||||
var (
|
||||
err error
|
||||
tokenInfo *model.TokenInfo
|
||||
param = print.GetPrintMsg{}
|
||||
param = printModel.GetPrintMsg{}
|
||||
)
|
||||
if err = c.ShouldBind(¶m); err != nil {
|
||||
controllers.BuildErrJson(c, err)
|
||||
|
||||
@@ -137,7 +137,7 @@ func TestPrint(c *gin.Context) {
|
||||
param = &struct {
|
||||
AppID int `json:"app_id" form:"app_id" binding:"required"`
|
||||
PrintNo string `json:"print_no" form:"print_no" binding:"required"` //打印机编号
|
||||
OrderNo string `json:"order_no" form:"order_no" binding:"required"` //订单序号
|
||||
OrderNo int64 `json:"order_no" form:"order_no" binding:"required"` //订单序号
|
||||
Content string `json:"content" form:"content"` //打印内容
|
||||
}{}
|
||||
)
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
package dao
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-print/globals"
|
||||
"git.rosy.net.cn/jx-print/model"
|
||||
"github.com/jmoiron/sqlx"
|
||||
"time"
|
||||
@@ -225,3 +227,22 @@ func GetPrinter(db *sqlx.DB, printNo, iccID string) (printer *model.Printer, err
|
||||
}
|
||||
return printer, err
|
||||
}
|
||||
|
||||
// GetPrintById 根据用户id和打印机编号获取打印机
|
||||
func GetPrintById(userId, printNo string) (bool, error) {
|
||||
var printer []*model.Printer
|
||||
sql := `SELECT * FROM printer WHERE print_no = ? AND user_id = ? AND deleted_at = ?`
|
||||
if err := globals.GetDB().Select(&printer, sql, []interface{}{printNo, userId, utils.DefaultTimeValue}...); err != nil {
|
||||
return false, err
|
||||
}
|
||||
if len(printer) != 1 {
|
||||
return false, errors.New("用户打印机数据异常,联系管理员") // 打印机编号唯一
|
||||
}
|
||||
return true, nil
|
||||
}
|
||||
|
||||
// DeletePrinterMsg 删除打印机消息
|
||||
func DeletePrinterMsg(printNos []string) error {
|
||||
_, err := globals.GetDB().Exec(`DELETE FROM print_msg WHERE print_no IN (?) `, []interface{}{printNos}...)
|
||||
return err
|
||||
}
|
||||
|
||||
77
dao/print_setting.go
Normal file
77
dao/print_setting.go
Normal file
@@ -0,0 +1,77 @@
|
||||
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
|
||||
}
|
||||
@@ -39,7 +39,7 @@ func UpdateOtherTempStatus(userId string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
// UpdateTemp 删除模板数据
|
||||
// UpdateTemp 修改模板数据
|
||||
func UpdateTemp(param *app_model.SystemTemp, fields []string) error {
|
||||
return Update(globals.GetDB(), param, fields...)
|
||||
}
|
||||
@@ -50,6 +50,12 @@ func DeleteTemp(id int, userId string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
// DeleteAllTemp 删除用户所属打印机所有模板
|
||||
func DeleteAllTemp(userId string, printNo []string) error {
|
||||
_, err := globals.GetDB().Exec(`DELETE FROM system_temp WHERE user_id = ? AND print_sn IN (?)`, []interface{}{userId, printNo}...)
|
||||
return err
|
||||
}
|
||||
|
||||
// SelectUserTemp 查询用户模板
|
||||
func SelectUserTemp(userId string) ([]*app_model.SystemTemp, error) {
|
||||
var result []*app_model.SystemTemp
|
||||
@@ -62,7 +68,7 @@ func SelectUserTemp(userId string) ([]*app_model.SystemTemp, error) {
|
||||
// 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 = 'system_user' ORDER BY created_at desc `, ""); err != nil {
|
||||
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
|
||||
|
||||
@@ -18,4 +18,4 @@
|
||||
mode: 0755
|
||||
backup: no
|
||||
- name: shell
|
||||
shell: sudo systemctl restart jx-callback-print
|
||||
shell: sudo systemctl restart jx-print
|
||||
|
||||
@@ -31,7 +31,7 @@ type UpdatePrintReq struct {
|
||||
type TestPrintReq struct {
|
||||
AppID int `json:"app_id" form:"app_id" binding:"required"`
|
||||
PrintNo string `json:"print_no" form:"print_no" binding:"required"` //打印机编号
|
||||
OrderNo string `json:"order_no" form:"order_no" binding:"required"` //订单序号
|
||||
OrderNo int64 `json:"order_no" form:"order_no" binding:"required"` //订单序号
|
||||
Content string `json:"content" form:"content"` //打印内容
|
||||
}
|
||||
|
||||
|
||||
80
model/app_model/print_setting.go
Normal file
80
model/app_model/print_setting.go
Normal file
@@ -0,0 +1,80 @@
|
||||
package app_model
|
||||
|
||||
import "time"
|
||||
|
||||
// PrintSetting 打印机设置
|
||||
type PrintSetting struct {
|
||||
ID int `json:"id" db:"id"`
|
||||
CreatedAt time.Time `json:"created_at" db:"created_at"`
|
||||
UpdatedAt time.Time `json:"updated_at" db:"updated_at"`
|
||||
DeletedAt time.Time `json:"deleted_at" db:"deleted_at"`
|
||||
PrintNo string `orm:"type(varchar);size(32)" json:"print_no" db:"print_no"` // 打印机编号
|
||||
CallNameSetting int `orm:"type(int);size(4);default(64)" json:"call_name_setting" db:"call_name_setting"` // 称谓设置 [64-默认老板]
|
||||
SystemVoice int `orm:"type(tinyint);size(2);default(1)" json:"system_voice" db:"system_voice"` // 平台语音开关[1打开]
|
||||
|
||||
PrintVoiceSetting string `orm:"type(varchar);size(255)" json:"print_voice_setting" db:"print_voice_setting"` // 打印机提示语音设置
|
||||
OrderVoiceSetting string `orm:"type(varchar);size(255)" json:"order_voice_setting" db:"order_voice_setting"` // 订单提示设置
|
||||
RiderVoiceSetting string `orm:"type(varchar);size(255)" json:"rider_voice_setting" db:"rider_voice_setting"` // 骑手动态提示设置
|
||||
CustomerVoiceSetting string `orm:"type(varchar);size(255)" json:"customer_voice_setting" db:"customer_voice_setting"` // 客户收货提示设置
|
||||
PickingSetting string `orm:"type(varchar);size(255)" json:"picking_setting" db:"picking_setting"` // 拣货语音设置
|
||||
}
|
||||
|
||||
// PrintVoice 打印机提示语音设置
|
||||
type PrintVoice struct {
|
||||
TimeVoice int `json:"time_voice"` // 平台语音开关[1打开]
|
||||
PaperShortageVoice int `json:"paper_shortage_voice"` // 缺纸语音开关[1打开]
|
||||
DisconnectVoice int `json:"disconnect_voice"` // 打印机断开连接提示[1打开]
|
||||
LoseAuthorization int `json:"lose_authorization"` // 失去授权语音提示[1打开]
|
||||
}
|
||||
|
||||
// OrderVoice 订单提示设置
|
||||
type OrderVoice struct {
|
||||
PrintOrder int `json:"print_order"` // 打印订单[1打开]必须
|
||||
OrderNotice int `json:"order_notice"` // 订单通知[1打开]必须
|
||||
UserOrderCancel int `json:"user_order_cancel"` // 用户取消订单打印[1打开]
|
||||
UserOrderCancelVoice int `json:"user_order_cancel_voice"` // 用户取消订单订单语音提示[1打开]
|
||||
RefundOrder int `json:"refund_order"` // 退款打印[1打开]
|
||||
RefundOrderVoice int `json:"refund_order_voice"` // 退款提示语音[1打开]
|
||||
BusinessOrderCancel int `json:"business_order_cancel"` // 商家取消打印[1打开]
|
||||
BusinessOrderCancelVoice int `json:"business_order_cancel_voice"` // 商家取消订单语音提示[1打开]
|
||||
}
|
||||
|
||||
// RiderVoice 骑手动态语音提示
|
||||
type RiderVoice struct {
|
||||
RiderTakeOrder int `json:"rider_take_order"` // 骑手接单打印[1打开]
|
||||
RiderTakeOrderVoice int `json:"rider_take_order_voice"` // 骑手接单语音[1打开]
|
||||
RiderServiceVoice int `json:"rider_service_voice"` // 骑手送达语音[1打开]
|
||||
RiderReminderVoice int `json:"rider_reminder_voice"` // 骑手催单语音[1打开]
|
||||
}
|
||||
|
||||
// CustomerReceivingGoods 客户收货语音提示
|
||||
type CustomerReceivingGoods struct {
|
||||
CustomerRejectionPrint int `json:"customer_rejection_print"` // 客户拒收打印[1打开]
|
||||
CustomerRejectionVoice int `json:"customer_rejection_voice"` // 客户拒收语音[1打开]
|
||||
CustcareRefundPrint int `json:"custcare_refund_print"` // 客服退款打印[1打开]
|
||||
CustcareRefundVoice int `json:"custcare_refund_voice"` // 客服退款语音[1打开]
|
||||
ConsultingPrint int `json:"consulting_print"` // 进店咨询打印[1打开]
|
||||
ConsultingVoice int `json:"consulting_voice"` // 进店咨询语音[1打开]
|
||||
}
|
||||
|
||||
// ShopPickingVoice 店铺拣货语音提示
|
||||
type ShopPickingVoice struct {
|
||||
BusinessOffLine int `json:"business_off_line"` // 店铺离线打印[1打开]
|
||||
BusinessOffLineVoice int `json:"business_off_line_voice"` // 店铺离线语音[1打开]
|
||||
WaitOrderPrint int `json:"wait_order_print"` // 待接单打印[1打开]
|
||||
WaitOrderVoice int `json:"wait_order_voice"` // 待接单语音[1打开]
|
||||
WaitPickingPrint int `json:"wait_picking_print"` // 待接单打印[1打开]
|
||||
WaitPickingVoice int `json:"wait_picking_voice"` // 待接单语音[1打开]
|
||||
}
|
||||
|
||||
// UpdatePrintSetting 打印机设置添加
|
||||
type UpdatePrintSetting struct {
|
||||
PrintNo string `json:"print_no" form:"print_no" binding:"required"`
|
||||
CallNameSetting int `json:"call_name_setting" form:"call_name_setting"`
|
||||
SystemVoice int `json:"system_voice" form:"system_voice"`
|
||||
PrintVoiceSetting string `json:"print_voice_setting" form:"print_voice_setting"`
|
||||
OrderVoiceSetting string `json:"order_voice_setting" form:"order_voice_setting"`
|
||||
RiderVoiceSetting string `json:"rider_voice_setting" form:"rider_voice_setting"`
|
||||
CustomerVoiceSetting string `json:"customer_voice_setting" form:"customer_voice_setting"`
|
||||
PickingSetting string `json:"picking_setting" form:"picking_setting"`
|
||||
}
|
||||
6
model/app_model/print_setting_static.go
Normal file
6
model/app_model/print_setting_static.go
Normal file
@@ -0,0 +1,6 @@
|
||||
package app_model
|
||||
|
||||
const (
|
||||
SettingOpen = 1 // 开启
|
||||
SettingClose = -1 // 关闭
|
||||
)
|
||||
@@ -1 +0,0 @@
|
||||
package app_model
|
||||
@@ -199,7 +199,7 @@ type PrintMsg struct {
|
||||
DeletedAt *time.Time `json:"deleted_at" db:"deleted_at"`
|
||||
MsgID string `json:"msg_id" db:"msg_id"` //消息ID
|
||||
PrintNo string `json:"print_no" db:"print_no"` //打印机编号
|
||||
OrderNo string `json:"order_no" db:"order_no"` //订单序号
|
||||
OrderNo int64 `json:"order_no" db:"order_no"` //订单序号
|
||||
Content string `json:"content"` //订单内容
|
||||
Status int `json:"status"` //打印状态
|
||||
Comment string `json:"comment"` //失败原因
|
||||
|
||||
@@ -14,8 +14,10 @@ func Init(r *gin.Engine) {
|
||||
InitV1System(r.Group("v1"))
|
||||
|
||||
// app端不需要token
|
||||
InitV3App(r.Group("/v1"))
|
||||
|
||||
// app端需要token
|
||||
InitV4App(r.Group("/v2"))
|
||||
|
||||
//自动路由
|
||||
r.Any("/callback/*path", router.AutoRoute(&controllers.CallbackController{}))
|
||||
|
||||
@@ -25,4 +25,7 @@ func InitV4App(v2 *gin.RouterGroup) {
|
||||
temp.GET("/getUserTempList", app.PrinterTempController.GetUserTempList) // 获取用户模板,模板不足时填充系统模板
|
||||
temp.GET("/switchTemp", app.PrinterTempController.SwitchTemp) // 切换模板打印模板
|
||||
|
||||
// 打印机设置
|
||||
setting := v2.Group("/setting")
|
||||
setting.POST("updatePrintSetting", app.PrintSettingController.UpdatePrintSetting) // 打印机设置修改
|
||||
}
|
||||
|
||||
136
services/print_server/app_server/print_setting.go
Normal file
136
services/print_server/app_server/print_setting.go
Normal file
@@ -0,0 +1,136 @@
|
||||
package app_server
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-print/dao"
|
||||
settingModel "git.rosy.net.cn/jx-print/model/app_model"
|
||||
"time"
|
||||
)
|
||||
|
||||
type PrintSettingServer struct {
|
||||
}
|
||||
|
||||
var PrintSettingInfoServer = new(PrintSettingServer)
|
||||
|
||||
// UpdatePrintSetting 修改打印机绑定信息
|
||||
func (p *PrintSettingServer) UpdatePrintSetting(userId string, param *settingModel.UpdatePrintSetting) error {
|
||||
// 判断打印机和用户是否匹配
|
||||
isTrue, err := dao.GetPrintById(userId, param.PrintNo)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if !isTrue {
|
||||
return errors.New("此打印机不属于该用户")
|
||||
}
|
||||
return dao.PrintSettingInfoDao.UpdatePrinterSetting(param)
|
||||
}
|
||||
|
||||
// SystemInitPrintSetting 绑定打印机时初始化一个打印机设置
|
||||
func (p *PrintSettingServer) SystemInitPrintSetting(printNo string) error {
|
||||
// 打印机标号唯一,判断打印机是否存在设置
|
||||
isHave, err := dao.PrintSettingInfoDao.QueryPrintNoIsExit(printNo)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if !isHave {
|
||||
return errors.New("已经存在绑定的打印机设置,联系管理员")
|
||||
}
|
||||
day := time.Now()
|
||||
|
||||
param, err := MarshalJson2String(&settingModel.PrintSetting{
|
||||
CreatedAt: day,
|
||||
UpdatedAt: day,
|
||||
DeletedAt: utils.DefaultTimeValue,
|
||||
PrintNo: printNo,
|
||||
CallNameSetting: 64,
|
||||
SystemVoice: 1,
|
||||
})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return dao.PrintSettingInfoDao.InsertPrintSetting(param)
|
||||
}
|
||||
|
||||
// DeletePrintSetting 删除打印机设置
|
||||
func (p *PrintSettingServer) DeletePrintSetting(printNo []string) error {
|
||||
return dao.PrintSettingInfoDao.DeleteSetting(printNo)
|
||||
}
|
||||
|
||||
func MarshalJson2String(param *settingModel.PrintSetting) (*settingModel.PrintSetting, error) {
|
||||
// 打印机提示语音设置
|
||||
printVoiceSetting := &settingModel.PrintVoice{
|
||||
TimeVoice: settingModel.SettingClose,
|
||||
PaperShortageVoice: settingModel.SettingOpen,
|
||||
DisconnectVoice: settingModel.SettingOpen,
|
||||
LoseAuthorization: settingModel.SettingOpen,
|
||||
}
|
||||
printVoiceSettingByte, err := json.Marshal(printVoiceSetting)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
param.PrintVoiceSetting = string(printVoiceSettingByte)
|
||||
|
||||
// 订单提示设置
|
||||
orderVoiceSetting := &settingModel.OrderVoice{
|
||||
PrintOrder: settingModel.SettingOpen,
|
||||
OrderNotice: settingModel.SettingOpen,
|
||||
UserOrderCancel: settingModel.SettingClose,
|
||||
UserOrderCancelVoice: settingModel.SettingOpen,
|
||||
RefundOrder: settingModel.SettingOpen,
|
||||
RefundOrderVoice: settingModel.SettingOpen,
|
||||
BusinessOrderCancel: settingModel.SettingClose,
|
||||
BusinessOrderCancelVoice: settingModel.SettingOpen,
|
||||
}
|
||||
orderVoiceSettingByte, err := json.Marshal(orderVoiceSetting)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
param.OrderVoiceSetting = string(orderVoiceSettingByte)
|
||||
|
||||
// 送达设置
|
||||
riderVoiceSetting := &settingModel.RiderVoice{
|
||||
RiderTakeOrder: settingModel.SettingOpen,
|
||||
RiderTakeOrderVoice: settingModel.SettingOpen,
|
||||
RiderServiceVoice: settingModel.SettingOpen,
|
||||
RiderReminderVoice: settingModel.SettingOpen,
|
||||
}
|
||||
riderVoiceSettingByte, err := json.Marshal(riderVoiceSetting)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
param.RiderVoiceSetting = string(riderVoiceSettingByte)
|
||||
|
||||
// 客户收货语音设置
|
||||
customerVoiceSetting := &settingModel.CustomerReceivingGoods{
|
||||
CustomerRejectionPrint: settingModel.SettingClose,
|
||||
CustomerRejectionVoice: settingModel.SettingOpen,
|
||||
CustcareRefundPrint: settingModel.SettingClose,
|
||||
CustcareRefundVoice: settingModel.SettingOpen,
|
||||
ConsultingPrint: settingModel.SettingClose,
|
||||
ConsultingVoice: settingModel.SettingClose,
|
||||
}
|
||||
customerVoiceSettingByte, err := json.Marshal(customerVoiceSetting)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
param.CustomerVoiceSetting = string(customerVoiceSettingByte)
|
||||
|
||||
// 拣货设置
|
||||
pickingSetting := &settingModel.ShopPickingVoice{
|
||||
BusinessOffLine: settingModel.SettingClose,
|
||||
BusinessOffLineVoice: settingModel.SettingOpen,
|
||||
WaitOrderPrint: settingModel.SettingClose,
|
||||
WaitOrderVoice: settingModel.SettingOpen,
|
||||
WaitPickingPrint: settingModel.SettingClose,
|
||||
WaitPickingVoice: settingModel.SettingOpen,
|
||||
}
|
||||
pickingSettingByte, err := json.Marshal(pickingSetting)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
param.PickingSetting = string(pickingSettingByte)
|
||||
return param, nil
|
||||
}
|
||||
11
services/print_server/app_server/setting_test.go
Normal file
11
services/print_server/app_server/setting_test.go
Normal file
@@ -0,0 +1,11 @@
|
||||
package app_server
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestBinding(t *testing.T) {
|
||||
err := PrintSettingInfoServer.SystemInitPrintSetting("199308263974")
|
||||
fmt.Println(err)
|
||||
}
|
||||
@@ -204,3 +204,8 @@ func (t *TempServer) QuerySystemTemp() ([]*tempModel.SystemTemp, error) {
|
||||
func (t *TempServer) SwitchTemp(userId string, tempId int) error {
|
||||
return dao.SwitchTemp2User(tempId, userId)
|
||||
}
|
||||
|
||||
// DeleteAllTemp 删除所有用户打印机模板
|
||||
func (t *TempServer) DeleteAllTemp(userId string, printNo []string) error {
|
||||
return dao.DeleteAllTemp(userId, printNo)
|
||||
}
|
||||
|
||||
@@ -18,6 +18,10 @@ func init() {
|
||||
globals.SugarLogger.Debug("query system temp err :", err)
|
||||
return
|
||||
}
|
||||
if len(sysTempList) <= 0 {
|
||||
globals.SugarLogger.Debug("query system temp err :", "system temp don't have")
|
||||
return
|
||||
}
|
||||
temp := make(map[string]*tempModel.SystemTemp, 0)
|
||||
for _, v := range sysTempList {
|
||||
temp[v.TempSize] = v
|
||||
|
||||
@@ -145,7 +145,7 @@ func UpdatePrinter(appID int, tokenInfo *model.TokenInfo, printNo, name, sound s
|
||||
}
|
||||
|
||||
// TestPrint 测试打印
|
||||
func TestPrint(appID int, tokenInfo *model.TokenInfo, printNo string, orderNo string, content string) (msgID string, err error) {
|
||||
func TestPrint(appID int, tokenInfo *model.TokenInfo, printNo string, orderNo int64, content string) (msgID string, err error) {
|
||||
var (
|
||||
db = globals.GetDB()
|
||||
now = time.Now()
|
||||
|
||||
@@ -147,7 +147,7 @@ func UpdatePrinter(c *gin.Context, appID int, tokenInfo *model.TokenInfo, printN
|
||||
return err
|
||||
}
|
||||
|
||||
func TestPrint(c *gin.Context, appID int, tokenInfo *model.TokenInfo, printNo string, orderNo string, content string) (msgID string, err error) {
|
||||
func TestPrint(c *gin.Context, appID int, tokenInfo *model.TokenInfo, printNo string, orderNo int64, content string) (msgID string, err error) {
|
||||
var (
|
||||
db = globals.GetDB()
|
||||
now = time.Now()
|
||||
@@ -242,3 +242,8 @@ func GetPrinterReport(c *gin.Context, tokenInfo *model.TokenInfo) (getPrinterRep
|
||||
getPrinterReportResult.PaperPrinterCount = paperC
|
||||
return getPrinterReportResult, err
|
||||
}
|
||||
|
||||
// DeletePrintMsg 删除打印机打印消息
|
||||
func DeletePrintMsg(printNos []string) error {
|
||||
return dao.DeletePrinterMsg(printNos)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user