1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- package services
- import (
- "encoding/json"
- "eta/eta_task/models/data_manage"
- "eta/eta_task/utils"
- "fmt"
- "time"
- )
- // ICPI消费指数指标数据同步
- func SyncBaseFromIcpi() (err error) {
- var startDate string
- maxDate, err := data_manage.GetBaseFromIcpiIndexMaxDate()
- if err != nil || maxDate.IsZero() {
- startDate = time.Now().AddDate(0, 0, -1).Format(utils.FormatDate) + " 00:00:00"
- } else {
- startDate = maxDate.AddDate(0, 0, 1).Format(utils.FormatDate) + " 00:00:00"
- }
- method := `index/list`
- data := make(map[string]interface{})
- data["Source"] = utils.DATA_SOURCE_ICPI
- data["StartDate"] = startDate
- //data["EndDate"] = endDate
- result, err := HttpPost("SyncRankingFromIcpi", method, data)
- utils.FileLog.Info(result)
- fmt.Println(result)
- respObj := new(data_manage.IcpiIndexResp)
- err = json.Unmarshal([]byte(result), &respObj)
- if err != nil {
- return err
- }
- //获取所有指标信息 某一天的
- allIndex, err := data_manage.GetBaseFromIcpiIndexAll(startDate)
- if err != nil {
- return
- }
- existIndexMap := make(map[int]*data_manage.BaseFromIcpiIndex)
- for _, v := range allIndex {
- existIndexMap[v.BaseFromIcpiIndexId] = v
- }
- icpiObj := new(data_manage.BaseFromIcpiIndex)
- for _, zv := range respObj.Data {
- if _, ok := existIndexMap[zv.BaseFromIcpiIndexId]; !ok {
- newID, err := icpiObj.AddBaseFromIcpiIndex(zv)
- if err != nil {
- fmt.Println("insert error:", err)
- }
- fmt.Println("insert new indexID:", newID)
- }
- }
- return err
- }
- // ICPI消费指数-分类
- func SyncBaseFromIcpiClassify() (err error) {
- data := make(map[string]interface{})
- data["Source"] = utils.DATA_SOURCE_ICPI
- method := `classify/list`
- result, err := HttpPost("SyncBaseFromIcpiClassify", method, data)
- if err != nil {
- fmt.Println("SyncBaseFromIcpiClassify HttpPost Err:", err.Error())
- }
- utils.FileLog.Info(result)
- fmt.Println("SyncBaseFromIcpiClassify result:", result)
- respObj := new(data_manage.IcpiClassifyResp)
- err = json.Unmarshal([]byte(result), &respObj)
- if err != nil {
- return err
- }
- //获取所有分类
- allClassify, err := data_manage.GetBaseFromIcpiClassifyAll()
- if err != nil {
- return
- }
- existIndexMap := make(map[int]*data_manage.BaseFromIcpiClassify)
- for _, v := range allClassify {
- existIndexMap[v.BaseFromIcpiClassifyId] = v
- }
- for _, item := range respObj.Data {
- if _, ok := existIndexMap[item.BaseFromIcpiClassifyId]; !ok {
- newID, err := data_manage.AddBaseFromIcpiClassify(item)
- if err != nil {
- fmt.Println("AddBaseFromIcpiClassify error:", err)
- }
- fmt.Println("AddBaseFromIcpiClassify new indexID:", newID)
- }
- }
- return err
- }
|