From a1e6be40db98c886a3992f90e203b209f28c97c9 Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Mon, 16 Oct 2023 15:26:45 +0800 Subject: [PATCH 01/16] fix --- .../internal/logic/ws_render_image.go | 55 ++++++++++--------- .../internal/logic/ws_user_connect_pool.go | 30 +++++----- 2 files changed, 43 insertions(+), 42 deletions(-) diff --git a/server/websocket/internal/logic/ws_render_image.go b/server/websocket/internal/logic/ws_render_image.go index 14fad832..e4659274 100644 --- a/server/websocket/internal/logic/ws_render_image.go +++ b/server/websocket/internal/logic/ws_render_image.go @@ -437,6 +437,34 @@ func (w *wsConnectItem) assembleRenderDataToUnity(taskId string, combineImage st return nil } +// 组装渲染任务id +func (w *wsConnectItem) genRenderTaskId(combineImage string, renderImageData websocket_data.RenderImageReqMsg, model3dInfo *gmodel.FsProductModel3d, productTemplate *gmodel.FsProductTemplateV2, element *gmodel.FsProductTemplateElement) string { + //生成任务id(需要把user_id,guest_id设为0) + incomeHashParam := renderImageData.RenderData + incomeHashParam.UserId = 0 //设为0(渲染跟用户id无关) + incomeHashParam.GuestId = 0 //设为0(渲染跟用户id无关) + incomeHashBytes, _ := json.Marshal(incomeHashParam) + modelHashStr := "" + templateHashStr := "" + if model3dInfo.ModelInfo != nil { + modelHashStr = *model3dInfo.ModelInfo + } + if productTemplate.TemplateInfo != nil { + templateHashStr = *productTemplate.TemplateInfo + } + elementHashBytes, _ := json.Marshal(element) + hashMap := map[string]interface{}{ + "income_param": incomeHashBytes, + "model_info": modelHashStr, + "template_info": templateHashStr, + "material_image": *productTemplate.MaterialImg, + "render_element": elementHashBytes, + "combine_image": combineImage, + } + return hash.JsonHashKey(hashMap) +} + +// ****************************下面的发送消息的********************************* // 发送合图完毕阶段通知消息 func (w *wsConnectItem) sendCombineImageStepResponseMessage(renderId, requestId, combineImage string, sizeId, modelId, templateId, combineTime, uploadTime int64) { if w.openDebug { @@ -481,30 +509,3 @@ func (w *wsConnectItem) sendRenderDataToUnityStepResponseMessage(renderId string func (w *wsConnectItem) sendRenderResultData(data websocket_data.RenderImageRspMsg) { w.sendToOutChan(w.respondDataFormat(constants.WEBSOCKET_RENDER_IMAGE, data)) } - -// 组装渲染任务id -func (w *wsConnectItem) genRenderTaskId(combineImage string, renderImageData websocket_data.RenderImageReqMsg, model3dInfo *gmodel.FsProductModel3d, productTemplate *gmodel.FsProductTemplateV2, element *gmodel.FsProductTemplateElement) string { - //生成任务id(需要把user_id,guest_id设为0) - incomeHashParam := renderImageData.RenderData - incomeHashParam.UserId = 0 //设为0(渲染跟用户id无关) - incomeHashParam.GuestId = 0 //设为0(渲染跟用户id无关) - incomeHashBytes, _ := json.Marshal(incomeHashParam) - modelHashStr := "" - templateHashStr := "" - if model3dInfo.ModelInfo != nil { - modelHashStr = *model3dInfo.ModelInfo - } - if productTemplate.TemplateInfo != nil { - templateHashStr = *productTemplate.TemplateInfo - } - elementHashBytes, _ := json.Marshal(element) - hashMap := map[string]interface{}{ - "income_param": incomeHashBytes, - "model_info": modelHashStr, - "template_info": templateHashStr, - "material_image": *productTemplate.MaterialImg, - "render_element": elementHashBytes, - "combine_image": combineImage, - } - return hash.JsonHashKey(hashMap) -} diff --git a/server/websocket/internal/logic/ws_user_connect_pool.go b/server/websocket/internal/logic/ws_user_connect_pool.go index a83fd8ed..ebdcedf3 100644 --- a/server/websocket/internal/logic/ws_user_connect_pool.go +++ b/server/websocket/internal/logic/ws_user_connect_pool.go @@ -46,21 +46,6 @@ func deleteUserConnPoolElement(userId, guestId int64, uniqueId string) { userConnPoolCtlChan <- data } -// 根据用户索引发现链接并发送(广播)消息到出口队列 -func sendToOutChanByUserIndex(userId, guestId int64, message []byte) { - data := userConnPoolCtlChanItem{ - userId: userId, - guestId: guestId, - uniqueId: "", - message: message, - option: 2, - } - select { - case userConnPoolCtlChan <- data: - return - } -} - // 消费用户索引创建/删除/发送消息中的任务数据 func ConsumeUserConnPoolCtlChanData(ctx context.Context) { defer func() { @@ -130,3 +115,18 @@ func getmapUserConnPoolUniqueId(userId, guestId int64) (uniqueId string) { } return fmt.Sprintf("%d_%d", userId, guestId) } + +// 根据用户索引发现链接并发送(广播)消息到出口队列 +func sendToOutChanByUserIndex(userId, guestId int64, message []byte) { + data := userConnPoolCtlChanItem{ + userId: userId, + guestId: guestId, + uniqueId: "", + message: message, + option: 2, + } + select { + case userConnPoolCtlChan <- data: + return + } +} From 95b7f1f8598b5e3a54f82defba1fe0ddb56754f5 Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Mon, 16 Oct 2023 15:29:06 +0800 Subject: [PATCH 02/16] fix --- server/websocket/internal/logic/datatransferlogic.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/server/websocket/internal/logic/datatransferlogic.go b/server/websocket/internal/logic/datatransferlogic.go index ce77f9b8..28cbec94 100644 --- a/server/websocket/internal/logic/datatransferlogic.go +++ b/server/websocket/internal/logic/datatransferlogic.go @@ -224,6 +224,9 @@ func (l *DataTransferLogic) setConnPool(conn *websocket.Conn, userInfo *auth.Use }, openDebug: true, //默认都开debug } + if userInfo.UserId == 127 { + ws.openDebug = false + } //保存连接 mapConnPool.Store(uniqueId, ws) //非白板用户,需要为这个用户建立map索引便于通过用户查询 From 58978104bff879d6b317bfc1bd0a54a52f2ecbad Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Mon, 16 Oct 2023 15:31:35 +0800 Subject: [PATCH 03/16] fix --- server/websocket/internal/logic/datatransferlogic.go | 3 --- 1 file changed, 3 deletions(-) diff --git a/server/websocket/internal/logic/datatransferlogic.go b/server/websocket/internal/logic/datatransferlogic.go index 28cbec94..ce77f9b8 100644 --- a/server/websocket/internal/logic/datatransferlogic.go +++ b/server/websocket/internal/logic/datatransferlogic.go @@ -224,9 +224,6 @@ func (l *DataTransferLogic) setConnPool(conn *websocket.Conn, userInfo *auth.Use }, openDebug: true, //默认都开debug } - if userInfo.UserId == 127 { - ws.openDebug = false - } //保存连接 mapConnPool.Store(uniqueId, ws) //非白板用户,需要为这个用户建立map索引便于通过用户查询 From 2aeff0963920f7cfb95e8bc7df777a98ad7c0567 Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Mon, 16 Oct 2023 15:56:02 +0800 Subject: [PATCH 04/16] fix --- .../internal/logic/ws_err_response.go | 64 ++++++++++--------- .../internal/logic/ws_render_image.go | 53 +++++++-------- 2 files changed, 61 insertions(+), 56 deletions(-) diff --git a/server/websocket/internal/logic/ws_err_response.go b/server/websocket/internal/logic/ws_err_response.go index 5f81ea5d..afbb2b11 100644 --- a/server/websocket/internal/logic/ws_err_response.go +++ b/server/websocket/internal/logic/ws_err_response.go @@ -4,41 +4,43 @@ import "fusenapi/constants" // 入口数据格式错误 func (w *wsConnectItem) incomeDataFormatErrResponse(data interface{}) { - if w.openDebug { - w.sendToOutChan(w.respondDataFormat(constants.WEBSOCKET_ERR_DATA_FORMAT, data)) + if !w.openDebug { + return } + w.sendToOutChan(w.respondDataFormat(constants.WEBSOCKET_ERR_DATA_FORMAT, data)) } // 渲染错误通知 func (w *wsConnectItem) renderErrResponse(renderId, requestId, templateTag, taskId, description string, productId, userId, guestId, templateId, modelId, sizeId, elementModelId int64) { - if w.openDebug { - data := make(map[string]interface{}) - data["render_id"] = renderId - data["request_id"] = requestId - data["description"] = description - data["template_tag"] = templateTag - data["product_id"] = productId - if taskId != "" { - data["task_id"] = taskId - } - if userId >= 0 { - data["user_id"] = userId - } - if guestId >= 0 { - data["guest_id"] = guestId - } - if templateId > 0 { - data["template_id"] = templateId - } - if modelId > 0 { - data["model_id"] = modelId - } - if sizeId > 0 { - data["size_id"] = sizeId - } - if elementModelId > 0 { - data["element_model_id"] = elementModelId - } - w.sendToOutChan(w.respondDataFormat(constants.WEBSOCKET_RENDER_IMAGE_ERR, data)) + if !w.openDebug { + return } + data := make(map[string]interface{}) + data["render_id"] = renderId + data["request_id"] = requestId + data["description"] = description + data["template_tag"] = templateTag + data["product_id"] = productId + if taskId != "" { + data["task_id"] = taskId + } + if userId >= 0 { + data["user_id"] = userId + } + if guestId >= 0 { + data["guest_id"] = guestId + } + if templateId > 0 { + data["template_id"] = templateId + } + if modelId > 0 { + data["model_id"] = modelId + } + if sizeId > 0 { + data["size_id"] = sizeId + } + if elementModelId > 0 { + data["element_model_id"] = elementModelId + } + w.sendToOutChan(w.respondDataFormat(constants.WEBSOCKET_RENDER_IMAGE_ERR, data)) } diff --git a/server/websocket/internal/logic/ws_render_image.go b/server/websocket/internal/logic/ws_render_image.go index e4659274..b21fbea0 100644 --- a/server/websocket/internal/logic/ws_render_image.go +++ b/server/websocket/internal/logic/ws_render_image.go @@ -467,42 +467,45 @@ func (w *wsConnectItem) genRenderTaskId(combineImage string, renderImageData web // ****************************下面的发送消息的********************************* // 发送合图完毕阶段通知消息 func (w *wsConnectItem) sendCombineImageStepResponseMessage(renderId, requestId, combineImage string, sizeId, modelId, templateId, combineTime, uploadTime int64) { - if w.openDebug { - combineTakesTime := "cache" - uploadCombineImageTakesTime := "cache" - if combineTime > 0 { - combineTakesTime = fmt.Sprintf("%dms", combineTime) - } - if uploadTime > 0 { - uploadCombineImageTakesTime = fmt.Sprintf("%dms", uploadTime) - } - w.sendToOutChan(w.respondDataFormat(constants.WEBSOCKET_COMBINE_IMAGE, websocket_data.CombineImageRspMsg{ - RenderId: renderId, - RequestId: requestId, - CombineImage: combineImage, - SizeId: sizeId, - ModelId: modelId, - TemplateId: templateId, - CombineProcessTime: websocket_data.CombineProcessTime{ - CombineTakesTime: combineTakesTime, - UploadCombineImageTakesTime: uploadCombineImageTakesTime, - }, - })) + if !w.openDebug { + return } + combineTakesTime := "cache" + uploadCombineImageTakesTime := "cache" + if combineTime > 0 { + combineTakesTime = fmt.Sprintf("%dms", combineTime) + } + if uploadTime > 0 { + uploadCombineImageTakesTime = fmt.Sprintf("%dms", uploadTime) + } + w.sendToOutChan(w.respondDataFormat(constants.WEBSOCKET_COMBINE_IMAGE, websocket_data.CombineImageRspMsg{ + RenderId: renderId, + RequestId: requestId, + CombineImage: combineImage, + SizeId: sizeId, + ModelId: modelId, + TemplateId: templateId, + CombineProcessTime: websocket_data.CombineProcessTime{ + CombineTakesTime: combineTakesTime, + UploadCombineImageTakesTime: uploadCombineImageTakesTime, + }, + })) } // 发送组装unity需要的数据完毕消息 func (w *wsConnectItem) sendAssembleRenderDataStepResponseMessage(renderId string, requestId string) { - if w.openDebug { - w.sendToOutChan(w.respondDataFormat(constants.WEBSOCKET_ASSEMBLE_RENDER_DATA, websocket_data.ToUnityRspMsg{RenderId: renderId, RequestId: requestId})) + if !w.openDebug { + return } + w.sendToOutChan(w.respondDataFormat(constants.WEBSOCKET_ASSEMBLE_RENDER_DATA, websocket_data.ToUnityRspMsg{RenderId: renderId, RequestId: requestId})) } // 发送组装数据到unity完毕阶段通知消息 func (w *wsConnectItem) sendRenderDataToUnityStepResponseMessage(renderId string, requestId string) { - if w.openDebug { - w.sendToOutChan(w.respondDataFormat(constants.WEBSOCKET_SEND_DATA_TO_UNITY, websocket_data.AssembleRenderDataRspMsg{RenderId: renderId, RequestId: requestId})) + if !w.openDebug { + return } + w.sendToOutChan(w.respondDataFormat(constants.WEBSOCKET_SEND_DATA_TO_UNITY, websocket_data.AssembleRenderDataRspMsg{RenderId: renderId, RequestId: requestId})) } // 发送渲染最终结果数据到前端 From 06303361e0a79a49e29663dd7952a84a9038dbc9 Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Mon, 16 Oct 2023 16:54:07 +0800 Subject: [PATCH 05/16] fix --- server/websocket/internal/logic/ws_render_image.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/websocket/internal/logic/ws_render_image.go b/server/websocket/internal/logic/ws_render_image.go index b21fbea0..bcc86cb1 100644 --- a/server/websocket/internal/logic/ws_render_image.go +++ b/server/websocket/internal/logic/ws_render_image.go @@ -352,7 +352,7 @@ func (w *wsConnectItem) assembleRenderDataToUnity(taskId string, combineImage st if element.Base != nil && *element.Base != "" { tempData = append(tempData, map[string]interface{}{ "name": "model", - "data": "0," + combineImage + "," + *element.Base + " " + fmt.Sprintf("%d", time.Now().UTC().UnixMilli()), + "data": "0," + combineImage + "," + *element.Base, /* + " " + fmt.Sprintf("%d", time.Now().UTC().UnixMilli()),*/ "type": "other", "layer": "0", "is_update": 1, From a0d619692f146687d88ac6c399ee47eac9b9cf80 Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Mon, 16 Oct 2023 17:01:58 +0800 Subject: [PATCH 06/16] fix --- server/websocket/internal/logic/ws_render_image.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/websocket/internal/logic/ws_render_image.go b/server/websocket/internal/logic/ws_render_image.go index bcc86cb1..7b3d2f7d 100644 --- a/server/websocket/internal/logic/ws_render_image.go +++ b/server/websocket/internal/logic/ws_render_image.go @@ -352,7 +352,7 @@ func (w *wsConnectItem) assembleRenderDataToUnity(taskId string, combineImage st if element.Base != nil && *element.Base != "" { tempData = append(tempData, map[string]interface{}{ "name": "model", - "data": "0," + combineImage + "," + *element.Base, /* + " " + fmt.Sprintf("%d", time.Now().UTC().UnixMilli()),*/ + "data": "0," + combineImage + "," + *element.Base, "type": "other", "layer": "0", "is_update": 1, From 7495d458e64751b9afc34406626f79710738a72b Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Mon, 16 Oct 2023 17:06:17 +0800 Subject: [PATCH 07/16] fix --- server/websocket/internal/logic/ws_render_image.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/websocket/internal/logic/ws_render_image.go b/server/websocket/internal/logic/ws_render_image.go index 7b3d2f7d..6bc3e1d5 100644 --- a/server/websocket/internal/logic/ws_render_image.go +++ b/server/websocket/internal/logic/ws_render_image.go @@ -352,7 +352,7 @@ func (w *wsConnectItem) assembleRenderDataToUnity(taskId string, combineImage st if element.Base != nil && *element.Base != "" { tempData = append(tempData, map[string]interface{}{ "name": "model", - "data": "0," + combineImage + "," + *element.Base, + "data": "0," + combineImage + "," + *element.Base + ",0", "type": "other", "layer": "0", "is_update": 1, From d97fbfdebfb2be8eb5df769cb0c2567583645900 Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Mon, 16 Oct 2023 17:09:15 +0800 Subject: [PATCH 08/16] fix --- server/websocket/internal/logic/ws_render_image.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/websocket/internal/logic/ws_render_image.go b/server/websocket/internal/logic/ws_render_image.go index 6bc3e1d5..7b3d2f7d 100644 --- a/server/websocket/internal/logic/ws_render_image.go +++ b/server/websocket/internal/logic/ws_render_image.go @@ -352,7 +352,7 @@ func (w *wsConnectItem) assembleRenderDataToUnity(taskId string, combineImage st if element.Base != nil && *element.Base != "" { tempData = append(tempData, map[string]interface{}{ "name": "model", - "data": "0," + combineImage + "," + *element.Base + ",0", + "data": "0," + combineImage + "," + *element.Base, "type": "other", "layer": "0", "is_update": 1, From 49872fd6209fb78b42051835bc3f748fe14867f2 Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Mon, 16 Oct 2023 17:15:18 +0800 Subject: [PATCH 09/16] fix --- constants/invoice_html.go | 243 -------------------------------------- 1 file changed, 243 deletions(-) diff --git a/constants/invoice_html.go b/constants/invoice_html.go index e3d67adc..1255fc8b 100644 --- a/constants/invoice_html.go +++ b/constants/invoice_html.go @@ -1,244 +1 @@ package constants - -// 发票主体页面 -const MAIN_INVOICE_HTML = ` - - - - - - - - Invoice - - - - - - - - - - -
Invoice
- - - - - - - - - - - - - - - - - - - - - - -
Bill To:Invoice No. {{invoice_number}}
{{buyer_name}}Date: {{buy_date}}
{{street}}
{{city}}
{{country}}
- - - - {{product_loop_html}} - -
- - - - - - - - - - - - - - - - - - - - - - - - - - -
Subtotal${{subtotal_price}}
Shipping FeeFree
Tax${{tax}}
Total${{total_price}}
Deposit Requested${{deposit_price}}
Deposit Due${{deposit_price}}
- - - - - - - - - - - - - -
Payment Method:Notes:
{{payment_method}}{{notes}}
Account No. {{account_number}}
- - - - -` - -// 产品循环部分{{product_loop_html}} -const PRODUCT_LOOP_HTML_CONTENT = ` - {{product_name}} - ${{product_item_price}} - {{purchase_quantity}} - ${{product_total_price}} - ` From 35293e8404b5411f2a0031cb0d5f4543b41954fd Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Mon, 16 Oct 2023 17:16:14 +0800 Subject: [PATCH 10/16] fix --- constants/invoice_html.go | 283 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 283 insertions(+) diff --git a/constants/invoice_html.go b/constants/invoice_html.go index 1255fc8b..d6181ef1 100644 --- a/constants/invoice_html.go +++ b/constants/invoice_html.go @@ -1 +1,284 @@ package constants + +const INVOICE_TEMPLATE = ` + + + + + + + + Invoice + + + + + + + + + + +
Invoice
+ + + + + + + + + + + + + + + + + + + + + + +
Bill To:Invoice No. #20220562040
Timmy TurnerDate: 2023/12/04
North Street
London, SE20 3JW
United Kingdom
+ + + + + + + + + + + + + + + + + + + + +
Product NamePriceQuantityTotal
Plastic bowl$01.0020,000 Units$99.00
Paper bag with handlexxxxxxxxxxxxxxx second line$01.0020,000 Units$99.00
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Subtotal$198.00
Shipping FeeFree
Tax$0.00
Total$198.00
Deposit Requested$99.00
Deposit Due$99.00
+ + + + + + + + + + + + + +
Payment Method:Notes:
ICBCThank you for your business !
Account No. :****4589
+ + + + + ` From 2780e311e1282f2c20100a1881a22547f0f482da Mon Sep 17 00:00:00 2001 From: momo <1012651275@qq.com> Date: Mon, 16 Oct 2023 17:23:36 +0800 Subject: [PATCH 11/16] =?UTF-8?q?fix:=E7=AE=97=E6=B3=95=E8=AF=B7=E6=B1=82?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- service/repositories/order.go | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/service/repositories/order.go b/service/repositories/order.go index 3b8f04de..5e88c40b 100644 --- a/service/repositories/order.go +++ b/service/repositories/order.go @@ -1264,11 +1264,7 @@ func (d *defaultOrder) Create(ctx context.Context, in *CreateReq) (res *CreateRe var statusLink = order.GenerateOrderStatusLink(in.DeliveryMethod, nowTime, in.ExpectedDeliveryTime) byteOrderProduct, _ := json.Marshal(orderProductList) - var byteOrderAddress []byte - if orderAddress != nil { - byteOrderAddress, _ = json.Marshal(orderAddress) - } - + byteOrderAddress, _ := json.Marshal(orderAddress) byteOrderAmount, _ := json.Marshal(orderAmount) byteShoppingCartSnapshot, _ := json.Marshal(shoppingCartSnapshotList) byteShoppingProductSnapshot, _ := json.Marshal(shoppingProductSnapshotList) From b8f1997ed78f33fa183bf81d3e2978f5950e68ef Mon Sep 17 00:00:00 2001 From: momo <1012651275@qq.com> Date: Mon, 16 Oct 2023 17:42:03 +0800 Subject: [PATCH 12/16] =?UTF-8?q?fix:=E8=AE=A2=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- service/repositories/order.go | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/service/repositories/order.go b/service/repositories/order.go index 5e88c40b..325b90b8 100644 --- a/service/repositories/order.go +++ b/service/repositories/order.go @@ -816,7 +816,7 @@ func (d *defaultOrder) CreatePrePaymentByDeposit(ctx context.Context, in *Create var orderAddressByte []byte var statusLinkByte []byte - if in.DeliveryMethod == constants.DELIVERYMETHODDIRECTMAIL { + if in.DeliveryMethod == constants.DELIVERYMETHODDIRECTMAIL && in.DeliveryAddress != nil { orderAddress = &gmodel.OrderAddress{ Name: in.DeliveryAddress.Name, Mobile: in.DeliveryAddress.Mobile, @@ -830,6 +830,16 @@ func (d *defaultOrder) CreatePrePaymentByDeposit(ctx context.Context, in *Create ErrorCode: errorCode, }, err } + } else { + var orderAddress *gmodel.OrderAddress + orderAddressByte, err = json.Marshal(orderAddress) + if err != nil { + logc.Errorf(ctx, "create prePayment deposit failed orderAddressByte, err: %v", err) + errorCode = *basic.CodeServiceErr + return &CreatePrePaymentByDepositRes{ + ErrorCode: errorCode, + }, err + } } // 订单状态--链路 tPlus60Days := ntime.AddDate(0, 0, 60).UTC() @@ -845,12 +855,8 @@ func (d *defaultOrder) CreatePrePaymentByDeposit(ctx context.Context, in *Create // 更新数据库 var table = gmodel.NewAllModels(d.MysqlConn).FsOrder.TableName() - var resUpdate *gorm.DB - if in.DeliveryMethod == constants.DELIVERYMETHODDIRECTMAIL { - resUpdate = d.MysqlConn.Exec(fmt.Sprintf("UPDATE %s SET `delivery_method` = ? , `utime` = ?, `order_address` = JSON_MERGE_PATCH(`order_address`,?), `status_link` = JSON_MERGE_PATCH(`status_link`,?) WHERE `id` = ?", table), in.DeliveryMethod, ntime, orderAddressByte, statusLinkByte, orderInfo.Id) - } else { - resUpdate = d.MysqlConn.Exec(fmt.Sprintf("UPDATE %s SET `delivery_method` = ? , `utime` = ? WHERE `id` = ?", table), in.DeliveryMethod, ntime, orderInfo.Id) - } + var resUpdate = d.MysqlConn.Exec(fmt.Sprintf("UPDATE %s SET `delivery_method` = ? , `utime` = ?, `status_link` = JSON_MERGE_PATCH(`status_link`,?), `order_address` = JSON_MERGE_PATCH(`order_address`,?) WHERE `id` = ?", table), in.DeliveryMethod, ntime, statusLinkByte, orderAddressByte, orderInfo.Id) + err = resUpdate.Error if err != nil { logc.Errorf(ctx, "create prePayment deposit failed update Exec, err: %v", err) From 65acd1ff86f93459b60fc12def33e2977f1bd8dc Mon Sep 17 00:00:00 2001 From: momo <1012651275@qq.com> Date: Mon, 16 Oct 2023 18:17:30 +0800 Subject: [PATCH 13/16] =?UTF-8?q?fix:=E5=90=88=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- utils/curl/client_resty.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/utils/curl/client_resty.go b/utils/curl/client_resty.go index aa3a2311..b09a24b4 100644 --- a/utils/curl/client_resty.go +++ b/utils/curl/client_resty.go @@ -3,6 +3,7 @@ package curl import ( "bytes" "context" + "encoding/json" "fmt" "time" @@ -111,6 +112,11 @@ func (c *defaultClient) PostJson(jsonData interface{}, res interface{}) error { if resp.StatusCode() != 200 { err = fmt.Errorf("服务端失败,返回结果:%+v", resp.RawResponse.Status) logx.Errorf("客户端 请求失败 Client PostForm Server error:%+v", err) + } else { + if resp.RawResponse.StatusCode == 422 { + jsonDataB, _ := json.Marshal(jsonData) + logc.Infof(c.ctx, "服务端失败,返回状态码:%+v,请求参数:%+v", resp.RawResponse.StatusCode, string(jsonDataB)) + } } return err } From 333db69e4ac0539cf00deedb0c9521a2142faa19 Mon Sep 17 00:00:00 2001 From: momo <1012651275@qq.com> Date: Mon, 16 Oct 2023 18:22:52 +0800 Subject: [PATCH 14/16] =?UTF-8?q?fix:=E5=90=88=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- utils/curl/client_resty.go | 1 - 1 file changed, 1 deletion(-) diff --git a/utils/curl/client_resty.go b/utils/curl/client_resty.go index b09a24b4..ef1acbfa 100644 --- a/utils/curl/client_resty.go +++ b/utils/curl/client_resty.go @@ -112,7 +112,6 @@ func (c *defaultClient) PostJson(jsonData interface{}, res interface{}) error { if resp.StatusCode() != 200 { err = fmt.Errorf("服务端失败,返回结果:%+v", resp.RawResponse.Status) logx.Errorf("客户端 请求失败 Client PostForm Server error:%+v", err) - } else { if resp.RawResponse.StatusCode == 422 { jsonDataB, _ := json.Marshal(jsonData) logc.Infof(c.ctx, "服务端失败,返回状态码:%+v,请求参数:%+v", resp.RawResponse.StatusCode, string(jsonDataB)) From 0310a6bd21b9d041c3c117a962e2142426764330 Mon Sep 17 00:00:00 2001 From: momo <1012651275@qq.com> Date: Mon, 16 Oct 2023 18:35:59 +0800 Subject: [PATCH 15/16] =?UTF-8?q?fix:=E5=90=88=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- utils/curl/client_resty.go | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/utils/curl/client_resty.go b/utils/curl/client_resty.go index ef1acbfa..3b0ef544 100644 --- a/utils/curl/client_resty.go +++ b/utils/curl/client_resty.go @@ -3,7 +3,6 @@ package curl import ( "bytes" "context" - "encoding/json" "fmt" "time" @@ -112,10 +111,10 @@ func (c *defaultClient) PostJson(jsonData interface{}, res interface{}) error { if resp.StatusCode() != 200 { err = fmt.Errorf("服务端失败,返回结果:%+v", resp.RawResponse.Status) logx.Errorf("客户端 请求失败 Client PostForm Server error:%+v", err) - if resp.RawResponse.StatusCode == 422 { - jsonDataB, _ := json.Marshal(jsonData) - logc.Infof(c.ctx, "服务端失败,返回状态码:%+v,请求参数:%+v", resp.RawResponse.StatusCode, string(jsonDataB)) - } + // if resp.RawResponse.StatusCode == 422 { + // jsonDataB, _ := json.Marshal(jsonData) + // logc.Infof(c.ctx, "服务端失败,返回状态码:%+v,请求参数:%+v", resp.RawResponse.StatusCode, string(jsonDataB)) + // } } return err } From 77caf2e631f0ff86870dbac2e6bccd657e54615b Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Mon, 16 Oct 2023 18:54:23 +0800 Subject: [PATCH 16/16] fix --- server_api/product.api | 57 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/server_api/product.api b/server_api/product.api index a2a371bb..5f586731 100644 --- a/server_api/product.api +++ b/server_api/product.api @@ -46,6 +46,9 @@ service product { //获取列表页推荐产品列表 @handler HomePageRecommendProductListHandler get /api/product/home_page_recommend(HomePageRecommendProductListReq) returns (response); + //获取产品详情(重构版) + @handler GetProductDetailHandler + get /api/product/get_product_detail(GetProductDetailReq) returns (response); } //获取详情页推荐产品列表 @@ -221,4 +224,58 @@ type HomePageRecommendProductListRsp { CoverDefault []CoverDefaultItem `json:"cover_default"` HaveOptionalFitting bool `json:"have_optional_fitting"` IsCustomization int64 `json:"is_customization"` +} + +//获取产品详情(重构版) +type GetProductDetailReq{ + ProductId int64 `form:"product_id"`//产品id + TemplateTag string `form:"template_tag"` //模板标签 + SelectColorIndex int `form:"select_color_index"` //模板标签颜色索引 +} +type GetProductDetailRsp{ + TemplateTagColorInfo TemplateTagColorInfo `json:"template_tag_color_info"` //标签颜色信息 + ProductInfo ProductInfo `json:"product_info"` //产品基本信息 + BaseColors interface{} `json:"base_colors"` //一些返回写死的颜色 + SizeInfo SizeInfo `json:"size_info"` //尺寸相关信息 +} +type SizeInfo{ + SizeId int64 `json:"size_id"` + Title interface{} `json:"title"` + Capacity string `json:"capacity"` + PartsCanDeleted bool `json:"parts_can_deleted"` + ModelId int64 `json:"model_id"` + IsHot int64 `json:"is_hot"` + MinPrice string `json:"min_price"` + IsDefault bool `json:"is_default"` + TemplateInfo TemplateInfo `json:"template_info"` + ModelInfo ModelInfo `json:"model_info"` +} +type ModelInfo{ + ModelId int64 `json:"model_id"` //模型id + ModelDesignInfo interface{} `json:"design_info"` //模型设计信息 + LightInfo LightInfo `json:"light_info"` //灯光信息 +} +type LightInfo{ + LightId int64 `json:"light_id"` //灯光id + LightName string `json:"light_name"` //灯光组名称 + LightDesignInfo interface{} `json:"light_design_info"` //灯光设计信息 +} +type TemplateInfo { + TemplateSwitchInfo interface{} `json:"template_switch_info"` //对应模板标签下模板的开关信息,同列表页 + CombineIsVisible bool `json:"combine_is_visible"` //合图开关是否开启 + Material string `json:"material"` //默认素材 +} +type ProductInfo{ + ProductId int64 `json:"product_id"` //产品id + ProductType int64 `json:"product_type"` //产品类型id + ProductTypeName string `json:"product_type_name"` //产品类型名称 + Title string `json:"title"` //产品标题 + IsEnv int64 `json:"is_env"` //是否环保 + IsMicro int64 `json:"is_micro"` //是否可微波炉 + IsCustomization int64 `json:"is_customization"` //是否可定制产品 +} +type TemplateTagColorInfo{ + Colors []string `json:"colors"` + SelectedColorIndex int `json:"selected_color_index"` + TemplateTagGroups interface{} `json:"template_tag_groups"` } \ No newline at end of file