|
@@ -0,0 +1,622 @@
|
|
|
+package services
|
|
|
+
|
|
|
+import (
|
|
|
+ "encoding/json"
|
|
|
+ "eta/eta_crawler/models"
|
|
|
+ "eta/eta_crawler/utils"
|
|
|
+ "fmt"
|
|
|
+
|
|
|
+ "github.com/tealeg/xlsx"
|
|
|
+)
|
|
|
+
|
|
|
+func JsmHistory(path string) (err error) {
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("RefreshDataFromCoalCoastal Err:" + err.Error())
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("RefreshDataFromCoalCoastal, Err: %s", err))
|
|
|
+ }
|
|
|
+ }()
|
|
|
+
|
|
|
+ var xlFile *xlsx.File
|
|
|
+ exist, err := PathExists(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if exist {
|
|
|
+ xlFile, err = xlsx.OpenFile(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("OpenFile err:", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ fmt.Println("Not Exist")
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ sheetDatas := make([]models.CoalSheetData, 0)
|
|
|
+ data := *xlFile.Sheets[0]
|
|
|
+ sheetData := models.CoalSheetData{
|
|
|
+ Name: data.Name,
|
|
|
+ MaxRow: data.MaxRow,
|
|
|
+ MaxCol: data.MaxCol,
|
|
|
+ Hidden: data.Hidden,
|
|
|
+ Selected: data.Selected,
|
|
|
+ }
|
|
|
+ rows := make([]models.Row, 0)
|
|
|
+ for _, v := range data.Rows {
|
|
|
+ cells := make([]models.Cell, 0)
|
|
|
+ for _, cell := range v.Cells {
|
|
|
+ cells = append(cells, models.Cell{
|
|
|
+ Value: cell.String(),
|
|
|
+ })
|
|
|
+ }
|
|
|
+ row := models.Row{
|
|
|
+ Cells: cells,
|
|
|
+ }
|
|
|
+ rows = append(rows, row)
|
|
|
+ }
|
|
|
+ sheetData.Rows = rows
|
|
|
+ sheetDatas = append(sheetDatas, sheetData)
|
|
|
+
|
|
|
+ params := make(map[string]interface{})
|
|
|
+ params["SheetData"] = sheetDatas
|
|
|
+
|
|
|
+ result, e := PostEdbLib(params, utils.LIB_ROUTE_COAL_MINE_JSM_HISTORY)
|
|
|
+ if e != nil {
|
|
|
+ b, _ := json.Marshal(params)
|
|
|
+ fmt.Println(e)
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("PostEdbLib err: %s, params: %s", e.Error(), string(b)))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resp := new(models.BaseResponse)
|
|
|
+ if e := json.Unmarshal(result, &resp); e != nil {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("json.Unmarshal err: %s", e))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if resp.Ret != 200 {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("Msg: %s, ErrMsg: %s", resp.Msg, resp.ErrMsg))
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
+func CoastalHistory(path string) (err error) {
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("RefreshDataFromCoalCoastal Err:" + err.Error())
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("RefreshDataFromCoalCoastal, Err: %s", err))
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ //path := "/Users/xi/Desktop/瑞茂通-中国煤炭市场网数据/442家晋陕蒙、沿海8省、内陆17省历史数据/CⅢ-8-16 25省市库存和日耗情况(CCTD).xlsx"
|
|
|
+ //path := "D:\\瑞茂通-中国煤炭市场网数据\\442家晋陕蒙、沿海8省、内陆17省历史数据\\CⅢ-8-16 25省市库存和日耗情况(CCTD).xlsx"
|
|
|
+
|
|
|
+ var xlFile *xlsx.File
|
|
|
+ exist, err := PathExists(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if exist {
|
|
|
+ xlFile, err = xlsx.OpenFile(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("OpenFile err:", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ fmt.Println("Not Exist")
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ sheetDatas := make([]models.CoalSheetData, 0)
|
|
|
+ for i, sheet := range xlFile.Sheets {
|
|
|
+ if i < 4 {
|
|
|
+ data := sheet
|
|
|
+ sheetData := models.CoalSheetData{
|
|
|
+ Name: data.Name,
|
|
|
+ MaxRow: data.MaxRow,
|
|
|
+ MaxCol: data.MaxCol,
|
|
|
+ Hidden: data.Hidden,
|
|
|
+ Selected: data.Selected,
|
|
|
+ }
|
|
|
+ rows := make([]models.Row, 0)
|
|
|
+ for _, v := range data.Rows {
|
|
|
+ cells := make([]models.Cell, 0)
|
|
|
+ for _, cell := range v.Cells {
|
|
|
+ cells = append(cells, models.Cell{
|
|
|
+ Value: cell.String(),
|
|
|
+ })
|
|
|
+ }
|
|
|
+ row := models.Row{
|
|
|
+ Cells: cells,
|
|
|
+ }
|
|
|
+ rows = append(rows, row)
|
|
|
+ }
|
|
|
+ sheetData.Rows = rows
|
|
|
+ sheetDatas = append(sheetDatas, sheetData)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ params := make(map[string]interface{})
|
|
|
+ params["SheetData"] = sheetDatas
|
|
|
+ result, e := PostEdbLib(params, utils.LIB_ROUTE_COAL_MINE_COASTAL_HISTORY)
|
|
|
+ if e != nil {
|
|
|
+ b, _ := json.Marshal(params)
|
|
|
+ fmt.Println(e)
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("PostEdbLib err: %s, params: %s", e.Error(), string(b)))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resp := new(models.BaseResponse)
|
|
|
+ if e := json.Unmarshal(result, &resp); e != nil {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("json.Unmarshal err: %s", e))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if resp.Ret != 200 {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("Msg: %s, ErrMsg: %s", resp.Msg, resp.ErrMsg))
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
+func InlandHistory(path string) (err error) {
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("RefreshDataFromCoalCoastal Err:" + err.Error())
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("RefreshDataFromCoalCoastal, Err: %s", err))
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ //path := "/Users/xi/Desktop/瑞茂通-中国煤炭市场网数据/442家晋陕蒙、沿海8省、内陆17省历史数据/CⅢ-8-16 25省市库存和日耗情况(CCTD).xlsx"
|
|
|
+ //path := "D:\\瑞茂通-中国煤炭市场网数据\\442家晋陕蒙、沿海8省、内陆17省历史数据\\CⅢ-8-16 25省市库存和日耗情况(CCTD).xlsx"
|
|
|
+
|
|
|
+ var xlFile *xlsx.File
|
|
|
+ exist, err := PathExists(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if exist {
|
|
|
+ xlFile, err = xlsx.OpenFile(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("OpenFile err:", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ fmt.Println("Not Exist")
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ sheetDatas := make([]models.CoalSheetData, 0)
|
|
|
+ for i, sheet := range xlFile.Sheets {
|
|
|
+ if i > 3 {
|
|
|
+ data := sheet
|
|
|
+ sheetData := models.CoalSheetData{
|
|
|
+ Name: data.Name,
|
|
|
+ MaxRow: data.MaxRow,
|
|
|
+ MaxCol: data.MaxCol,
|
|
|
+ Hidden: data.Hidden,
|
|
|
+ Selected: data.Selected,
|
|
|
+ }
|
|
|
+ rows := make([]models.Row, 0)
|
|
|
+ for _, v := range data.Rows {
|
|
|
+ cells := make([]models.Cell, 0)
|
|
|
+ for _, cell := range v.Cells {
|
|
|
+ cells = append(cells, models.Cell{
|
|
|
+ Value: cell.String(),
|
|
|
+ })
|
|
|
+ }
|
|
|
+ row := models.Row{
|
|
|
+ Cells: cells,
|
|
|
+ }
|
|
|
+ rows = append(rows, row)
|
|
|
+ }
|
|
|
+ sheetData.Rows = rows
|
|
|
+ sheetDatas = append(sheetDatas, sheetData)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ params := make(map[string]interface{})
|
|
|
+ params["SheetData"] = sheetDatas
|
|
|
+ result, e := PostEdbLib(params, utils.LIB_ROUTE_COAL_MINE_INLAND_HISTORY)
|
|
|
+ if e != nil {
|
|
|
+ b, _ := json.Marshal(params)
|
|
|
+ fmt.Println(e)
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("PostEdbLib err: %s, params: %s", e.Error(), string(b)))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resp := new(models.BaseResponse)
|
|
|
+ if e := json.Unmarshal(result, &resp); e != nil {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("json.Unmarshal err: %s", e))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if resp.Ret != 200 {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("Msg: %s, ErrMsg: %s", resp.Msg, resp.ErrMsg))
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
+func Jsm(path string) (err error) {
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("RefreshDataFromCoalCoastal Err:" + err.Error())
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("RefreshDataFromCoalCoastal, Err: %s", err))
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ //path := "/home/code/python/coal_mail/emailFile/沿海八省动力煤终端用户供耗存数据更新.xlsx"
|
|
|
+ //path := "/Users/xi/Desktop/瑞茂通-中国煤炭市场网数据/442家晋陕蒙、沿海8省、内陆17省最新数据/442家晋陕蒙煤矿周度产量数据-20231201.xlsx"
|
|
|
+ //path := "D:\\瑞茂通-中国煤炭市场网数据\\442家晋陕蒙、沿海8省、内陆17省历史数据\\442家晋陕蒙历史数据.xlsx"
|
|
|
+
|
|
|
+ var xlFile *xlsx.File
|
|
|
+ exist, err := PathExists(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if exist {
|
|
|
+ xlFile, err = xlsx.OpenFile(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("OpenFile err:", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ fmt.Println("Not Exist")
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ sheetDatas := make([]models.CoalSheetData, 0)
|
|
|
+ data := *xlFile.Sheets[0]
|
|
|
+ sheetData := models.CoalSheetData{
|
|
|
+ Name: data.Name,
|
|
|
+ MaxRow: data.MaxRow,
|
|
|
+ MaxCol: data.MaxCol,
|
|
|
+ Hidden: data.Hidden,
|
|
|
+ Selected: data.Selected,
|
|
|
+ }
|
|
|
+ rows := make([]models.Row, 0)
|
|
|
+ for _, v := range data.Rows {
|
|
|
+ cells := make([]models.Cell, 0)
|
|
|
+ for _, cell := range v.Cells {
|
|
|
+ cells = append(cells, models.Cell{
|
|
|
+ Value: cell.String(),
|
|
|
+ })
|
|
|
+ }
|
|
|
+ row := models.Row{
|
|
|
+ Cells: cells,
|
|
|
+ }
|
|
|
+ rows = append(rows, row)
|
|
|
+ }
|
|
|
+ sheetData.Rows = rows
|
|
|
+ sheetDatas = append(sheetDatas, sheetData)
|
|
|
+
|
|
|
+ params := make(map[string]interface{})
|
|
|
+ params["SheetData"] = sheetDatas
|
|
|
+ result, e := PostEdbLib(params, utils.LIB_ROUTE_COAL_MINE_JSM)
|
|
|
+ if e != nil {
|
|
|
+ b, _ := json.Marshal(params)
|
|
|
+ fmt.Println(e)
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("PostEdbLib err: %s, params: %s", e.Error(), string(b)))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resp := new(models.BaseResponse)
|
|
|
+ if e := json.Unmarshal(result, &resp); e != nil {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("json.Unmarshal err: %s", e))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if resp.Ret != 200 {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("Msg: %s, ErrMsg: %s", resp.Msg, resp.ErrMsg))
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
+func Coastal(path string) (err error) {
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("RefreshDataFromCoalCoastal Err:" + err.Error())
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("RefreshDataFromCoalCoastal, Err: %s", err))
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ //path := "/Users/xi/Desktop/瑞茂通-中国煤炭市场网数据/442家晋陕蒙、沿海8省、内陆17省最新数据/内陆17省动力煤终端用户供耗存.xlsx"
|
|
|
+ //path := "D:\\瑞茂通-中国煤炭市场网数据\\442家晋陕蒙、沿海8省、内陆17省历史数据\\CⅢ-8-16 25省市库存和日耗情况(CCTD).xlsx"
|
|
|
+
|
|
|
+ fmt.Println("沿海开始")
|
|
|
+ var xlFile *xlsx.File
|
|
|
+ exist, err := PathExists(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if exist {
|
|
|
+ xlFile, err = xlsx.OpenFile(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("OpenFile err:", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ fmt.Println("Not Exist")
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ sheetDatas := make([]models.CoalSheetData, 0)
|
|
|
+ for _, sheet := range xlFile.Sheets {
|
|
|
+ data := sheet
|
|
|
+ sheetData := models.CoalSheetData{
|
|
|
+ Name: data.Name,
|
|
|
+ MaxRow: data.MaxRow,
|
|
|
+ MaxCol: data.MaxCol,
|
|
|
+ Hidden: data.Hidden,
|
|
|
+ Selected: data.Selected,
|
|
|
+ }
|
|
|
+ rows := make([]models.Row, 0)
|
|
|
+ for _, v := range data.Rows {
|
|
|
+ cells := make([]models.Cell, 0)
|
|
|
+ for _, cell := range v.Cells {
|
|
|
+ cells = append(cells, models.Cell{
|
|
|
+ Value: cell.String(),
|
|
|
+ })
|
|
|
+ }
|
|
|
+ row := models.Row{
|
|
|
+ Cells: cells,
|
|
|
+ }
|
|
|
+ rows = append(rows, row)
|
|
|
+ }
|
|
|
+ sheetData.Rows = rows
|
|
|
+ fmt.Println("rows:", len(rows))
|
|
|
+ sheetDatas = append(sheetDatas, sheetData)
|
|
|
+ }
|
|
|
+ fmt.Println("sheetDatas:", len(sheetDatas))
|
|
|
+
|
|
|
+ params := make(map[string]interface{})
|
|
|
+ params["SheetData"] = sheetDatas
|
|
|
+ result, e := PostEdbLib(params, utils.LIB_ROUTE_COAL_MINE_COASTAL)
|
|
|
+ if e != nil {
|
|
|
+ b, _ := json.Marshal(params)
|
|
|
+ fmt.Println(e)
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("PostEdbLib err: %s, params: %s", e.Error(), string(b)))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resp := new(models.BaseResponse)
|
|
|
+ if e := json.Unmarshal(result, &resp); e != nil {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("json.Unmarshal err: %s", e))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if resp.Ret != 200 {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("Msg: %s, ErrMsg: %s", resp.Msg, resp.ErrMsg))
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
+func Inland(path string) (err error) {
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("RefreshDataFromCoalCoastal Err:" + err.Error())
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("RefreshDataFromCoalCoastal, Err: %s", err))
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ //path := "/Users/xi/Desktop/瑞茂通-中国煤炭市场网数据/442家晋陕蒙、沿海8省、内陆17省最新数据/内陆17省动力煤终端用户供耗存.xlsx"
|
|
|
+ //path := "D:\\瑞茂通-中国煤炭市场网数据\\442家晋陕蒙、沿海8省、内陆17省历史数据\\CⅢ-8-16 25省市库存和日耗情况(CCTD).xlsx"
|
|
|
+
|
|
|
+ var xlFile *xlsx.File
|
|
|
+ exist, err := PathExists(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if exist {
|
|
|
+ xlFile, err = xlsx.OpenFile(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("OpenFile err:", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ fmt.Println("Not Exist")
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ sheetDatas := make([]models.CoalSheetData, 0)
|
|
|
+ for _, sheet := range xlFile.Sheets {
|
|
|
+ data := sheet
|
|
|
+ sheetData := models.CoalSheetData{
|
|
|
+ Name: data.Name,
|
|
|
+ MaxRow: data.MaxRow,
|
|
|
+ MaxCol: data.MaxCol,
|
|
|
+ Hidden: data.Hidden,
|
|
|
+ Selected: data.Selected,
|
|
|
+ }
|
|
|
+ rows := make([]models.Row, 0)
|
|
|
+ for _, v := range data.Rows {
|
|
|
+ cells := make([]models.Cell, 0)
|
|
|
+ for _, cell := range v.Cells {
|
|
|
+ cells = append(cells, models.Cell{
|
|
|
+ Value: cell.String(),
|
|
|
+ })
|
|
|
+ }
|
|
|
+ row := models.Row{
|
|
|
+ Cells: cells,
|
|
|
+ }
|
|
|
+ rows = append(rows, row)
|
|
|
+ }
|
|
|
+ sheetData.Rows = rows
|
|
|
+ sheetDatas = append(sheetDatas, sheetData)
|
|
|
+ }
|
|
|
+
|
|
|
+ params := make(map[string]interface{})
|
|
|
+ params["SheetData"] = sheetDatas
|
|
|
+ result, e := PostEdbLib(params, utils.LIB_ROUTE_COAL_MINE_INLAND)
|
|
|
+ if e != nil {
|
|
|
+ b, _ := json.Marshal(params)
|
|
|
+ fmt.Println(e)
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("PostEdbLib err: %s, params: %s", e.Error(), string(b)))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resp := new(models.BaseResponse)
|
|
|
+ if e := json.Unmarshal(result, &resp); e != nil {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("json.Unmarshal err: %s", e))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if resp.Ret != 200 {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("Msg: %s, ErrMsg: %s", resp.Msg, resp.ErrMsg))
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
+func Mtjh(path string) (err error) {
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("RefreshDataFromCoalMtjh Err:" + err.Error())
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("RefreshDataFromCoalMtjh, Err: %s", err))
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ //path = "/Users/xi/Desktop/煤炭江湖数据定制化服务——中国主流港口煤炭库存20231129.xlsx"
|
|
|
+
|
|
|
+ var xlFile *xlsx.File
|
|
|
+ exist, err := PathExists(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if exist {
|
|
|
+ xlFile, err = xlsx.OpenFile(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("OpenFile err:", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ fmt.Println("Not Exist")
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ sheetDatas := make([]models.CoalSheetData, 0)
|
|
|
+ for i, sheet := range xlFile.Sheets {
|
|
|
+ if i > 0 {
|
|
|
+ break
|
|
|
+ }
|
|
|
+ data := sheet
|
|
|
+ sheetData := models.CoalSheetData{
|
|
|
+ Name: data.Name,
|
|
|
+ MaxRow: data.MaxRow,
|
|
|
+ MaxCol: data.MaxCol,
|
|
|
+ Hidden: data.Hidden,
|
|
|
+ Selected: data.Selected,
|
|
|
+ }
|
|
|
+ rows := make([]models.Row, 0)
|
|
|
+ for _, v := range data.Rows {
|
|
|
+ cells := make([]models.Cell, 0)
|
|
|
+ for _, cell := range v.Cells {
|
|
|
+ cells = append(cells, models.Cell{
|
|
|
+ Value: cell.String(),
|
|
|
+ })
|
|
|
+ }
|
|
|
+ row := models.Row{
|
|
|
+ Cells: cells,
|
|
|
+ }
|
|
|
+ rows = append(rows, row)
|
|
|
+ }
|
|
|
+ sheetData.Rows = rows
|
|
|
+ sheetDatas = append(sheetDatas, sheetData)
|
|
|
+ }
|
|
|
+
|
|
|
+ params := make(map[string]interface{})
|
|
|
+ params["SheetData"] = sheetDatas
|
|
|
+ result, e := PostEdbLib(params, utils.LIB_ROUTE_COAL_MINE_MTJH)
|
|
|
+ if e != nil {
|
|
|
+ b, _ := json.Marshal(params)
|
|
|
+ fmt.Println(e)
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("PostEdbLib err: %s, params: %s", e.Error(), string(b)))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resp := new(models.BaseResponse)
|
|
|
+ if e := json.Unmarshal(result, &resp); e != nil {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("json.Unmarshal err: %s", e))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if resp.Ret != 200 {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("Msg: %s, ErrMsg: %s", resp.Msg, resp.ErrMsg))
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
+func Firm(path string) (err error) {
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("RefreshDataFromCoalFirm Err:" + err.Error())
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("RefreshDataFromCoalFirm, Err: %s", err))
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ //path = "/Users/xi/Desktop/煤炭江湖数据定制化服务——中国主流港口煤炭库存20231129.xlsx"
|
|
|
+
|
|
|
+ var xlFile *xlsx.File
|
|
|
+ exist, err := PathExists(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if exist {
|
|
|
+ xlFile, err = xlsx.OpenFile(path)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("OpenFile err:", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ fmt.Println("Not Exist")
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ sheetDatas := make([]models.CoalSheetData, 0)
|
|
|
+ for _, sheet := range xlFile.Sheets {
|
|
|
+ data := sheet
|
|
|
+ sheetData := models.CoalSheetData{
|
|
|
+ Name: data.Name,
|
|
|
+ MaxRow: data.MaxRow,
|
|
|
+ MaxCol: data.MaxCol,
|
|
|
+ Hidden: data.Hidden,
|
|
|
+ Selected: data.Selected,
|
|
|
+ }
|
|
|
+ rows := make([]models.Row, 0)
|
|
|
+ for _, v := range data.Rows {
|
|
|
+ cells := make([]models.Cell, 0)
|
|
|
+ for _, cell := range v.Cells {
|
|
|
+ cells = append(cells, models.Cell{
|
|
|
+ Value: cell.String(),
|
|
|
+ })
|
|
|
+ }
|
|
|
+ row := models.Row{
|
|
|
+ Cells: cells,
|
|
|
+ }
|
|
|
+ rows = append(rows, row)
|
|
|
+ }
|
|
|
+ sheetData.Rows = rows
|
|
|
+ sheetDatas = append(sheetDatas, sheetData)
|
|
|
+ }
|
|
|
+
|
|
|
+ params := make(map[string]interface{})
|
|
|
+ params["SheetData"] = sheetDatas
|
|
|
+ result, e := PostEdbLib(params, utils.LIB_ROUTE_COAL_MINE_FIRM)
|
|
|
+ if e != nil {
|
|
|
+ b, _ := json.Marshal(params)
|
|
|
+ fmt.Println(e)
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("PostEdbLib err: %s, params: %s", e.Error(), string(b)))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resp := new(models.BaseResponse)
|
|
|
+ if e := json.Unmarshal(result, &resp); e != nil {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("json.Unmarshal err: %s", e))
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if resp.Ret != 200 {
|
|
|
+ utils.FileLog.Info(fmt.Sprintf("Msg: %s, ErrMsg: %s", resp.Msg, resp.ErrMsg))
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ return
|
|
|
+}
|