正在显示
2 个修改的文件
包含
77 行增加
和
17 行删除
@@ -3,7 +3,6 @@ package allied_creation_cooperation | @@ -3,7 +3,6 @@ package allied_creation_cooperation | ||
3 | import ( | 3 | import ( |
4 | "encoding/json" | 4 | "encoding/json" |
5 | "fmt" | 5 | "fmt" |
6 | - "time" | ||
7 | 6 | ||
8 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway" | 7 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway" |
9 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/log" | 8 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/log" |
@@ -12,14 +11,15 @@ import ( | @@ -12,14 +11,15 @@ import ( | ||
12 | //ReqImportDividendsReturnedOrder 导入退货数据 | 11 | //ReqImportDividendsReturnedOrder 导入退货数据 |
13 | type ( | 12 | type ( |
14 | ImportDividendsReturnedOrderData struct { | 13 | ImportDividendsReturnedOrderData struct { |
15 | - DividendsReturnedCustomerName string `json:"dividendsReturnedCustomerName"` //退货客户名称 | ||
16 | - OriginalOrderNum string `json:"originalOrderNum"` //来源单号,源单号,订单号 | ||
17 | - OrderGoodName string `json:"orderGoodName"` //订单产品名称 | ||
18 | - DividendsReturnedDate time.Time `json:"dividendsReturnedDate"` //退货日期 | ||
19 | - RegionName string `json:"regionName"` //退货区域名称 | ||
20 | - OrderGoodPrice float64 `json:"orderGoodPrice"` //订单产品单价 | ||
21 | - OrderGoodQuantity int64 `json:"orderGoodQuantity"` //订单产品数量 | ||
22 | - CooperationContractNumber string `json:"cooperationContractNumber"` //合约编号 | 14 | + DividendsReturnedCustomerName string `json:"dividendsReturnedCustomerName"` //退货客户名称 |
15 | + OriginalOrderNum string `json:"originalOrderNum"` //来源单号,源单号,订单号 | ||
16 | + OrderGoodName string `json:"orderGoodName"` //订单产品名称 | ||
17 | + DividendsReturnedDate string `json:"dividendsReturnedDate"` //退货日期 | ||
18 | + RegionName string `json:"regionName"` //退货区域名称 | ||
19 | + OrderGoodPrice string `json:"orderGoodPrice"` //订单产品单价 | ||
20 | + OrderGoodQuantity string `json:"orderGoodQuantity"` //订单产品数量 | ||
21 | + CooperationContractNumber string `json:"cooperationContractNumber"` //合约编号 | ||
22 | + OrderTime string `json:"orderTime"` //订单日期 | ||
23 | } | 23 | } |
24 | //请求参数 | 24 | //请求参数 |
25 | ReqImportDividendsReturnedOrder struct { | 25 | ReqImportDividendsReturnedOrder struct { |
@@ -28,25 +28,25 @@ type ( | @@ -28,25 +28,25 @@ type ( | ||
28 | } | 28 | } |
29 | //响应参数 | 29 | //响应参数 |
30 | DataImportDividendsReturnedOrder struct { | 30 | DataImportDividendsReturnedOrder struct { |
31 | - SuccessCount int | 31 | + SuccessCount int `json:"successCount"` |
32 | Fail struct { | 32 | Fail struct { |
33 | Header struct { | 33 | Header struct { |
34 | - } | 34 | + } `json:"header"` |
35 | Body []struct { | 35 | Body []struct { |
36 | - } | ||
37 | - } | 36 | + } `json:"body"` |
37 | + } `json:"fail"` | ||
38 | } | 38 | } |
39 | ) | 39 | ) |
40 | 40 | ||
41 | // ImportDividendsReturnedOrder 导入退货数据 | 41 | // ImportDividendsReturnedOrder 导入退货数据 |
42 | -func (gateway HttplibAlliedCreationCooperation) ImportDividendsReturnedOrder(param ReqDividendsEstimateSearchDividend) (*DataDividendsEstimateSearchDividend, error) { | 42 | +func (gateway HttplibAlliedCreationCooperation) ImportDividendsReturnedOrder(param ReqImportDividendsReturnedOrder) (*DataImportDividendsReturnedOrder, error) { |
43 | + | ||
43 | url := gateway.baseUrL + "/dividends-returned-orders/import" | 44 | url := gateway.baseUrL + "/dividends-returned-orders/import" |
44 | method := "POST" | 45 | method := "POST" |
45 | req := gateway.CreateRequest(url, method) | 46 | req := gateway.CreateRequest(url, method) |
46 | // oneDemo | 47 | // oneDemo |
47 | log.Logger.Debug("向业务模块请求数据:导入退货数据。", map[string]interface{}{ | 48 | log.Logger.Debug("向业务模块请求数据:导入退货数据。", map[string]interface{}{ |
48 | "api": method + ":" + url, | 49 | "api": method + ":" + url, |
49 | - // "param": param, | ||
50 | }) | 50 | }) |
51 | req, err := req.JSONBody(param) | 51 | req, err := req.JSONBody(param) |
52 | if err != nil { | 52 | if err != nil { |
@@ -65,7 +65,7 @@ func (gateway HttplibAlliedCreationCooperation) ImportDividendsReturnedOrder(par | @@ -65,7 +65,7 @@ func (gateway HttplibAlliedCreationCooperation) ImportDividendsReturnedOrder(par | ||
65 | if err != nil { | 65 | if err != nil { |
66 | return nil, fmt.Errorf("解析导入退货数据:%w", err) | 66 | return nil, fmt.Errorf("解析导入退货数据:%w", err) |
67 | } | 67 | } |
68 | - var data DataDividendsEstimateSearchDividend | 68 | + var data DataImportDividendsReturnedOrder |
69 | err = gateway.GetResponseData(result, &data) | 69 | err = gateway.GetResponseData(result, &data) |
70 | return &data, err | 70 | return &data, err |
71 | } | 71 | } |
1 | package web_client | 1 | package web_client |
2 | 2 | ||
3 | import ( | 3 | import ( |
4 | - "github.com/beego/beego/v2/server/web/context" | 4 | + "path/filepath" |
5 | 5 | ||
6 | + "github.com/beego/beego/v2/server/web/context" | ||
6 | "github.com/linmadan/egglib-go/utils/excel" | 7 | "github.com/linmadan/egglib-go/utils/excel" |
7 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/excelData/query" | 8 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/excelData/query" |
8 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/excelData/service" | 9 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/excelData/service" |
10 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway/allied_creation_cooperation" | ||
9 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/log" | 11 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/log" |
10 | ) | 12 | ) |
11 | 13 | ||
@@ -52,3 +54,61 @@ func (controller ExcelDataController) ExportCompanyUser() { | @@ -52,3 +54,61 @@ func (controller ExcelDataController) ExportCompanyUser() { | ||
52 | } | 54 | } |
53 | controller.responseExcelByFile(controller.Ctx, excelTool, "导出公司用户") | 55 | controller.responseExcelByFile(controller.Ctx, excelTool, "导出公司用户") |
54 | } | 56 | } |
57 | + | ||
58 | +func (controller ExcelDataController) ImportDividendsReturnedOrder() { | ||
59 | + excelFile, fileHeader, err := controller.GetFile("file") | ||
60 | + if err != nil { | ||
61 | + log.Logger.Error("接收文件失败," + err.Error()) | ||
62 | + controller.Response(nil, err) | ||
63 | + return | ||
64 | + } | ||
65 | + if filepath.Ext(fileHeader.Filename) == "" { | ||
66 | + //TODO 判断文件类型 | ||
67 | + log.Logger.Error("获取到的文件:" + fileHeader.Filename) | ||
68 | + } | ||
69 | + excelImport := excel.NewExcelImport() | ||
70 | + excelImport.RowBegin = 2 //第二行开始读取 | ||
71 | + excelImport.DataFields = []excel.DataField{ | ||
72 | + {EnName: "OriginalOrderNum", CnName: "*来源源单号"}, | ||
73 | + {EnName: "DividendsReturnedCustomerName", CnName: "*客户名称"}, | ||
74 | + {EnName: "OrderGoodName", CnName: "*产品名称"}, | ||
75 | + {EnName: "DividendsReturnedDate", CnName: "*退货日期"}, | ||
76 | + {EnName: "OrderTime", CnName: "*订单日期"}, | ||
77 | + {EnName: "RegionName", CnName: "*退货区域"}, | ||
78 | + {EnName: "OrderGoodQuantity", CnName: "*退货数量"}, | ||
79 | + {EnName: "OrderGoodPrice", CnName: "*退货价格"}, | ||
80 | + {EnName: "CooperationContractNumber", CnName: "项目合约编号"}, | ||
81 | + } | ||
82 | + excelData, err := excelImport.OpenExcelFromIoReader(excelFile) | ||
83 | + if err != nil { | ||
84 | + log.Logger.Error("解析excel文件失败," + err.Error()) | ||
85 | + controller.Response(nil, err) | ||
86 | + return | ||
87 | + } | ||
88 | + //退货单数据 | ||
89 | + returnedOrderData := []allied_creation_cooperation.ImportDividendsReturnedOrderData{} | ||
90 | + for _, v := range excelData { | ||
91 | + //TODO 按需转化 | ||
92 | + item := allied_creation_cooperation.ImportDividendsReturnedOrderData{ | ||
93 | + OriginalOrderNum: v["OriginalOrderNum"], | ||
94 | + DividendsReturnedCustomerName: v["DividendsReturnedCustomerName"], | ||
95 | + OrderGoodName: v["OrderGoodName"], | ||
96 | + DividendsReturnedDate: v["DividendsReturnedDate"], | ||
97 | + OrderTime: v["OrderTime"], | ||
98 | + RegionName: v["RegionName"], | ||
99 | + OrderGoodQuantity: v["OrderGoodQuantity"], | ||
100 | + OrderGoodPrice: v["OrderGoodPrice"], | ||
101 | + CooperationContractNumber: v["CooperationContractNumber"], | ||
102 | + } | ||
103 | + returnedOrderData = append(returnedOrderData, item) | ||
104 | + } | ||
105 | + creationCooperationGate := allied_creation_cooperation.NewHttplibAlliedCreationCooperation(controller.GetOperator()) | ||
106 | + result, err := creationCooperationGate.ImportDividendsReturnedOrder(allied_creation_cooperation.ReqImportDividendsReturnedOrder{ | ||
107 | + DividendsReturnedOrderData: returnedOrderData, | ||
108 | + }) | ||
109 | + if err != nil { | ||
110 | + controller.Response(nil, err) | ||
111 | + return | ||
112 | + } | ||
113 | + controller.Response(result, nil) | ||
114 | +} |
-
请 注册 或 登录 后发表评论