获取打印消息
This commit is contained in:
@@ -2,6 +2,7 @@ package controllers
|
||||
|
||||
import (
|
||||
"crypto/md5"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/business/jxstore/cms"
|
||||
@@ -33,6 +34,8 @@ const (
|
||||
keyName = "name"
|
||||
keyStatus = "status"
|
||||
keyOrderNo = "order_no"
|
||||
keyContent = "content"
|
||||
keyMsgID = "msg_id"
|
||||
)
|
||||
|
||||
var (
|
||||
@@ -273,27 +276,67 @@ func (c *ApiController) DelPrinterSeq(dataMap map[string]interface{}) (data, err
|
||||
return "", errCode, err
|
||||
}
|
||||
|
||||
//发送打印消息
|
||||
func (c *ApiController) DoPrint(dataMap map[string]interface{}) (data, errCode string, err error) {
|
||||
var (
|
||||
content = dataMap["data"].(string)
|
||||
printNo = dataMap["print_no"].(string)
|
||||
orderNo = utils.Interface2Int64WithDefault(dataMap["order_no"], 0)
|
||||
db = dao.GetDB()
|
||||
printNo, content string
|
||||
orderNo, appID int
|
||||
)
|
||||
globals.SugarLogger.Debugf("Begin API DoPrint data: [%v]", utils.Format4Output(dataMap, false))
|
||||
if orderNo == 0 {
|
||||
return data, model.ErrCodeOpenAPIParamErrNormal, fmt.Errorf("参数错误:order_no 不能为空")
|
||||
if _, ok := dataMap[keyPrintNo].(string); !ok {
|
||||
return buildParamErrCodeAndErr(keyPrintNo)
|
||||
} else {
|
||||
if printNo = dataMap[keyPrintNo].(string); printNo == "" {
|
||||
return buildParamErrCodeAndErr(keyPrintNo)
|
||||
}
|
||||
}
|
||||
if _, ok := dataMap[keyContent].(string); !ok {
|
||||
return buildParamErrCodeAndErr(keyContent)
|
||||
} else {
|
||||
if content = dataMap[keyContent].(string); content == "" {
|
||||
return buildParamErrCodeAndErr(keyContent)
|
||||
}
|
||||
}
|
||||
if _, ok := dataMap[keyOrderNo].(int); !ok {
|
||||
return buildParamErrCodeAndErr(keyOrderNo)
|
||||
} else {
|
||||
if orderNo = dataMap[keyOrderNo].(int); orderNo == 0 {
|
||||
return buildParamErrCodeAndErr(keyOrderNo)
|
||||
}
|
||||
}
|
||||
appID = dataMap[keyAppID].(int)
|
||||
msgID := time.Now().Format("20060102150405") + "_" + jxutils.RandStringBytes(8)
|
||||
printMsg := &model.PrintMsg{
|
||||
PrintNo: printNo,
|
||||
Content: content,
|
||||
OrderNo: int(orderNo),
|
||||
MsgID: msgID,
|
||||
}
|
||||
dao.WrapAddIDCULDEntity(printMsg, "")
|
||||
if err = dao.CreateEntity(db, printMsg); err != nil {
|
||||
return data, model.ErrCodeGeneralFailed, err
|
||||
if err = cms.DoPrint(appID, msgID, content, printNo, orderNo); err != nil {
|
||||
return "", model.ErrCodeGeneralFailed, err
|
||||
}
|
||||
return msgID, errCode, err
|
||||
}
|
||||
|
||||
//获取某打印消息
|
||||
func (c *ApiController) GetPrintMsg(dataMap map[string]interface{}) (data, errCode string, err error) {
|
||||
var (
|
||||
msgID string
|
||||
appID int
|
||||
)
|
||||
globals.SugarLogger.Debugf("Begin API GetPrintMsg data: [%v]", utils.Format4Output(dataMap, false))
|
||||
if _, ok := dataMap[keyMsgID].(string); !ok {
|
||||
return buildParamErrCodeAndErr(keyMsgID)
|
||||
} else {
|
||||
if msgID = dataMap[keyMsgID].(string); msgID == "" {
|
||||
return buildParamErrCodeAndErr(keyMsgID)
|
||||
}
|
||||
}
|
||||
appID = dataMap[keyAppID].(int)
|
||||
if printMsg, err := cms.GetPrintMsg(appID, msgID); err != nil {
|
||||
return "", model.ErrCodeGeneralFailed, err
|
||||
} else if printMsg == nil {
|
||||
return "", model.ErrCodeGeneralFailed, fmt.Errorf("未查询到该消息! msg_id: %v", msgID)
|
||||
} else {
|
||||
if byteData, err := json.Marshal(printMsg); err == nil {
|
||||
data = string(byteData)
|
||||
} else {
|
||||
return "", model.ErrCodeGeneralFailed, err
|
||||
}
|
||||
}
|
||||
return data, errCode, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user