This commit is contained in:
苏尹岚
2021-02-22 10:27:51 +08:00
parent 933f9ab820
commit 2b32adefcb
7 changed files with 103 additions and 63 deletions

View File

@@ -10,6 +10,7 @@ import (
"git.rosy.net.cn/jx-callback/business/jxutils"
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
"git.rosy.net.cn/jx-callback/business/model"
"git.rosy.net.cn/jx-callback/business/model/dao"
"git.rosy.net.cn/jx-callback/business/partner"
"git.rosy.net.cn/jx-callback/globals"
"git.rosy.net.cn/jx-callback/globals/api"
@@ -27,7 +28,7 @@ func init() {
partner.RegisterPrinterPlatform(CurPrinterHandler)
}
func (c *PrinterHandler) getOrderContent(order *model.GoodsOrder, storeTel string) (content string) {
func (c *PrinterHandler) getOrderContent(order *model.GoodsOrder, storeTel string, storeDetail *dao.StoreDetail) (content string) {
expectedDeliveryTime := order.ExpectedDeliveredTime
if utils.IsTimeZero(expectedDeliveryTime) {
expectedDeliveryTime = order.OrderCreatedAt.Add(1 * time.Hour)
@@ -37,14 +38,18 @@ func (c *PrinterHandler) getOrderContent(order *model.GoodsOrder, storeTel strin
getCode = fmt.Sprintf("<FS2>饿百取货码:%s</FS2>\\n\n", jxutils.GetEbaiOrderGetCode(order))
}
orderParams := []interface{}{}
if order.VendorOrgCode == "34665" {
orderParams = append(orderParams, globals.StoreNameEbai2)
} else {
orderParams = append(orderParams, globals.StoreName)
orderFmt := ``
if storeDetail.BrandIsPrint == model.NO {
orderFmt += `
<FS2><center>%s</center></FS2>\n\n
`
if order.VendorOrgCode == "34665" {
orderParams = append(orderParams, globals.StoreNameEbai2)
} else {
orderParams = append(orderParams, storeDetail.BrandName)
}
}
//TODO 去掉单价和小计2020-06-18
orderFmt := `
<FS2><center>%s</center></FS2>\n\n
orderFmt += `
<center>手机买菜上京西</center>
<center>极速到家送惊喜</center>\n
--------------------------------
@@ -101,7 +106,7 @@ func (c *PrinterHandler) getOrderContent(order *model.GoodsOrder, storeTel strin
return strings.Replace(fmt.Sprintf(strings.Replace(orderFmt, "\n", "", -1), orderParams...), "\\n", "\r\n", -1)
}
func (c *PrinterHandler) getOrderContentBig(order *model.GoodsOrder, storeTel string) (content string) {
func (c *PrinterHandler) getOrderContentBig(order *model.GoodsOrder, storeTel string, storeDetail *dao.StoreDetail) (content string) {
expectedDeliveryTime := order.ExpectedDeliveredTime
if utils.IsTimeZero(expectedDeliveryTime) {
expectedDeliveryTime = order.OrderCreatedAt.Add(1 * time.Hour)
@@ -111,13 +116,18 @@ func (c *PrinterHandler) getOrderContentBig(order *model.GoodsOrder, storeTel st
getCode = fmt.Sprintf("<FS2>饿百取货码:%s</FS2>\\n\n", jxutils.GetEbaiOrderGetCode(order))
}
orderParams := []interface{}{}
if order.VendorOrgCode == "34665" {
orderParams = append(orderParams, globals.StoreNameEbai2)
} else {
orderParams = append(orderParams, globals.StoreName)
orderFmt := ``
if storeDetail.BrandIsPrint == model.NO {
orderFmt += `
<FS2><center>%s</center></FS2>\n\n
`
if order.VendorOrgCode == "34665" {
orderParams = append(orderParams, globals.StoreNameEbai2)
} else {
orderParams = append(orderParams, storeDetail.BrandName)
}
}
orderFmt := `
<FS2><center>%s</center></FS2>\n\n
orderFmt += `
<center>手机买菜上京西</center>
<center>极速到家送惊喜</center>\n
--------------------------------
@@ -212,16 +222,16 @@ func (c *PrinterHandler) GetPrinterStatus(ctx *jxcontext.Context, machineCode, p
return printerStatus, err
}
func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, order *model.GoodsOrder) (printerStatus *partner.PrinterStatus, err error) {
func (c *PrinterHandler) PrintOrder(ctx *jxcontext.Context, store *model.Store, storeDetail *dao.StoreDetail, order *model.GoodsOrder) (printerStatus *partner.PrinterStatus, err error) {
globals.SugarLogger.Debugf("yilianyun PrintOrderByOrder orderID:%s, storeID:%d", order.VendorOrderID, store.ID)
if len(order.Skus) == 0 {
return
}
content := ""
if store.PrinterFontSize == partner.PrinterFontSizeBig {
content = c.getOrderContentBig(order, store.Tel1)
content = c.getOrderContentBig(order, store.Tel1, storeDetail)
} else {
content = c.getOrderContent(order, store.Tel1)
content = c.getOrderContent(order, store.Tel1, storeDetail)
}
return c.PrintMsg(ctx, store.PrinterSN, store.PrinterKey, order.VendorOrderID, content)
}