|
|
package web_client
|
|
|
|
|
|
import (
|
|
|
"github.com/beego/beego/v2/server/web/context"
|
|
|
"path/filepath"
|
|
|
|
|
|
"github.com/beego/beego/v2/server/web/context"
|
|
|
"github.com/linmadan/egglib-go/utils/excel"
|
|
|
"gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/excelData/query"
|
|
|
"gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/excelData/service"
|
|
|
"gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway/allied_creation_cooperation"
|
|
|
"gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/log"
|
|
|
)
|
|
|
|
...
|
...
|
@@ -52,3 +54,61 @@ func (controller ExcelDataController) ExportCompanyUser() { |
|
|
}
|
|
|
controller.responseExcelByFile(controller.Ctx, excelTool, "导出公司用户")
|
|
|
}
|
|
|
|
|
|
func (controller ExcelDataController) ImportDividendsReturnedOrder() {
|
|
|
excelFile, fileHeader, err := controller.GetFile("file")
|
|
|
if err != nil {
|
|
|
log.Logger.Error("接收文件失败," + err.Error())
|
|
|
controller.Response(nil, err)
|
|
|
return
|
|
|
}
|
|
|
if filepath.Ext(fileHeader.Filename) == "" {
|
|
|
//TODO 判断文件类型
|
|
|
log.Logger.Error("获取到的文件:" + fileHeader.Filename)
|
|
|
}
|
|
|
excelImport := excel.NewExcelImport()
|
|
|
excelImport.RowBegin = 2 //第二行开始读取
|
|
|
excelImport.DataFields = []excel.DataField{
|
|
|
{EnName: "OriginalOrderNum", CnName: "*来源源单号"},
|
|
|
{EnName: "DividendsReturnedCustomerName", CnName: "*客户名称"},
|
|
|
{EnName: "OrderGoodName", CnName: "*产品名称"},
|
|
|
{EnName: "DividendsReturnedDate", CnName: "*退货日期"},
|
|
|
{EnName: "OrderTime", CnName: "*订单日期"},
|
|
|
{EnName: "RegionName", CnName: "*退货区域"},
|
|
|
{EnName: "OrderGoodQuantity", CnName: "*退货数量"},
|
|
|
{EnName: "OrderGoodPrice", CnName: "*退货价格"},
|
|
|
{EnName: "CooperationContractNumber", CnName: "项目合约编号"},
|
|
|
}
|
|
|
excelData, err := excelImport.OpenExcelFromIoReader(excelFile)
|
|
|
if err != nil {
|
|
|
log.Logger.Error("解析excel文件失败," + err.Error())
|
|
|
controller.Response(nil, err)
|
|
|
return
|
|
|
}
|
|
|
//退货单数据
|
|
|
returnedOrderData := []allied_creation_cooperation.ImportDividendsReturnedOrderData{}
|
|
|
for _, v := range excelData {
|
|
|
//TODO 按需转化
|
|
|
item := allied_creation_cooperation.ImportDividendsReturnedOrderData{
|
|
|
OriginalOrderNum: v["OriginalOrderNum"],
|
|
|
DividendsReturnedCustomerName: v["DividendsReturnedCustomerName"],
|
|
|
OrderGoodName: v["OrderGoodName"],
|
|
|
DividendsReturnedDate: v["DividendsReturnedDate"],
|
|
|
OrderTime: v["OrderTime"],
|
|
|
RegionName: v["RegionName"],
|
|
|
OrderGoodQuantity: v["OrderGoodQuantity"],
|
|
|
OrderGoodPrice: v["OrderGoodPrice"],
|
|
|
CooperationContractNumber: v["CooperationContractNumber"],
|
|
|
}
|
|
|
returnedOrderData = append(returnedOrderData, item)
|
|
|
}
|
|
|
creationCooperationGate := allied_creation_cooperation.NewHttplibAlliedCreationCooperation(controller.GetOperator())
|
|
|
result, err := creationCooperationGate.ImportDividendsReturnedOrder(allied_creation_cooperation.ReqImportDividendsReturnedOrder{
|
|
|
DividendsReturnedOrderData: returnedOrderData,
|
|
|
})
|
|
|
if err != nil {
|
|
|
controller.Response(nil, err)
|
|
|
return
|
|
|
}
|
|
|
controller.Response(result, nil)
|
|
|
} |
...
|
...
|
|