|
@@ -97,8 +97,7 @@ func (e *ExcelChartEdb) Delete() (err error) {
|
|
|
|
|
|
type AddChartEdbAndDataItem struct {
|
|
type AddChartEdbAndDataItem struct {
|
|
ChartEdb *ExcelChartEdb
|
|
ChartEdb *ExcelChartEdb
|
|
- DateList []string `description:"日期列表"`
|
|
+ DataList []*ExcelChartData `description:"数据列表"`
|
|
- ValList []float64 `description:"数据列表"`
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -117,7 +116,7 @@ func (e *ExcelChartEdb) AddChartEdbAndData(list []*AddChartEdbAndDataItem, chart
|
|
|
|
|
|
|
|
|
|
if len(deleteEdbIds) > 0 && chartInfo.ChartInfoId > 0 {
|
|
if len(deleteEdbIds) > 0 && chartInfo.ChartInfoId > 0 {
|
|
- sql := `DELETE FROM excel_chart_edb WHERE excel_chart_info_id = ? AND excel_chart_edb_id in (` + utils.GetOrmInReplace(len(deleteEdbIds)) + `)`
|
|
+ sql := `DELETE FROM excel_chart_edb WHERE chart_info_id = ? AND excel_chart_edb_id in (` + utils.GetOrmInReplace(len(deleteEdbIds)) + `)`
|
|
_, err = o.Raw(sql, chartInfo.ChartInfoId, deleteEdbIds).Exec()
|
|
_, err = o.Raw(sql, chartInfo.ChartInfoId, deleteEdbIds).Exec()
|
|
if err != nil {
|
|
if err != nil {
|
|
err = fmt.Errorf("删除原先的指标失败:%v", err)
|
|
err = fmt.Errorf("删除原先的指标失败:%v", err)
|
|
@@ -128,7 +127,7 @@ func (e *ExcelChartEdb) AddChartEdbAndData(list []*AddChartEdbAndDataItem, chart
|
|
updateIds := make([]int, 0)
|
|
updateIds := make([]int, 0)
|
|
var edbInfoIdArrStr []string
|
|
var edbInfoIdArrStr []string
|
|
for _, item := range list {
|
|
for _, item := range list {
|
|
- err = addChartEdbAndData(o, item.ChartEdb, item.DateList, item.ValList)
|
|
+ err = addChartEdbAndData(o, item.ChartEdb, item.DataList)
|
|
if err != nil {
|
|
if err != nil {
|
|
return
|
|
return
|
|
}
|
|
}
|
|
@@ -154,7 +153,7 @@ func (e *ExcelChartEdb) AddChartEdbAndData(list []*AddChartEdbAndDataItem, chart
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
- sql := `update excel_chart_edb set chart_info_id = ? where excel_chart_edb_id in (` + utils.GetOrmInReplace(len(updateIds)) + `)`
|
|
+ sql := `update excel_chart_edb set chart_info_id = ? where excel_chart_edb_id in (` + utils.GetOrmInReplace(len(updateIds)) + `) and chart_info_id=0`
|
|
_, err = o.Raw(sql, chartInfoId, updateIds).Exec()
|
|
_, err = o.Raw(sql, chartInfoId, updateIds).Exec()
|
|
if err != nil {
|
|
if err != nil {
|
|
err = fmt.Errorf("更新图表id失败,AddChartEdbAndData: %v", err)
|
|
err = fmt.Errorf("更新图表id失败,AddChartEdbAndData: %v", err)
|
|
@@ -170,7 +169,7 @@ func (e *ExcelChartEdb) AddChartEdbAndData(list []*AddChartEdbAndDataItem, chart
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
-func addChartEdbAndData(o orm.TxOrmer, chartEdb *ExcelChartEdb, dateList []string, valList []float64) (err error) {
|
|
+func addChartEdbAndData(o orm.TxOrmer, chartEdb *ExcelChartEdb, dataList []*ExcelChartData) (err error) {
|
|
|
|
|
|
excelChartEdbId := chartEdb.ExcelChartEdbId
|
|
excelChartEdbId := chartEdb.ExcelChartEdbId
|
|
if chartEdb.ExcelChartEdbId <= 0 {
|
|
if chartEdb.ExcelChartEdbId <= 0 {
|
|
@@ -198,28 +197,22 @@ func addChartEdbAndData(o orm.TxOrmer, chartEdb *ExcelChartEdb, dateList []strin
|
|
|
|
|
|
|
|
|
|
addList := make([]*ExcelChartData, 0)
|
|
addList := make([]*ExcelChartData, 0)
|
|
- if len(dateList) > 0 && len(valList) > 0 {
|
|
+ if len(dataList) > 0 {
|
|
- for k, v := range dateList {
|
|
+ for _, v := range dataList {
|
|
chartData := &ExcelChartData{
|
|
chartData := &ExcelChartData{
|
|
ExcelInfoId: chartEdb.ExcelInfoId,
|
|
ExcelInfoId: chartEdb.ExcelInfoId,
|
|
ExcelChartEdbId: chartEdb.ExcelChartEdbId,
|
|
ExcelChartEdbId: chartEdb.ExcelChartEdbId,
|
|
- DataTime: v,
|
|
+ ChartInfoId: chartEdb.ChartInfoId,
|
|
- Value: valList[k],
|
|
+ DataTime: v.DataTime,
|
|
|
|
+ Value: v.Value,
|
|
|
|
+ DataTimestamp: v.DataTimestamp,
|
|
ModifyTime: time.Now(),
|
|
ModifyTime: time.Now(),
|
|
CreateTime: time.Now(),
|
|
CreateTime: time.Now(),
|
|
}
|
|
}
|
|
-
|
|
|
|
- currentDate, er := time.Parse(utils.FormatDate, v)
|
|
|
|
- if er != nil {
|
|
|
|
- err = fmt.Errorf("时间格式化失败 err:%v", er)
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
- timestamp := currentDate.UnixNano() / 1e6
|
|
|
|
- chartData.DataTimestamp = timestamp
|
|
|
|
addList = append(addList, chartData)
|
|
addList = append(addList, chartData)
|
|
|
|
|
|
if len(addList) > 1000 {
|
|
if len(addList) > 1000 {
|
|
- _, err = o.InsertMulti(len(addList), len(addList))
|
|
+ _, err = o.InsertMulti(len(addList), addList)
|
|
if err != nil {
|
|
if err != nil {
|
|
return
|
|
return
|
|
}
|
|
}
|
|
@@ -230,7 +223,7 @@ func addChartEdbAndData(o orm.TxOrmer, chartEdb *ExcelChartEdb, dateList []strin
|
|
|
|
|
|
|
|
|
|
if len(addList) > 0 {
|
|
if len(addList) > 0 {
|
|
- _, err = o.InsertMulti(len(addList), len(addList))
|
|
+ _, err = o.InsertMulti(len(addList), addList)
|
|
if err != nil {
|
|
if err != nil {
|
|
return
|
|
return
|
|
}
|
|
}
|
|
@@ -243,7 +236,7 @@ func GetExcelChartEdbMappingByExcelInfoId(excelInfoId int) (list []*ExcelChartEd
|
|
sql := ` SELECT *
|
|
sql := ` SELECT *
|
|
FROM excel_chart_edb
|
|
FROM excel_chart_edb
|
|
WHERE excel_info_id=?
|
|
WHERE excel_info_id=?
|
|
- ORDER BY excel_chart_edb_id ASC `
|
|
+ ORDER BY chart_info_id asc, excel_chart_edb_id ASC `
|
|
_, err = o.Raw(sql, excelInfoId).QueryRows(&list)
|
|
_, err = o.Raw(sql, excelInfoId).QueryRows(&list)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
@@ -331,3 +324,40 @@ func DeleteExcelChartEdbAndData(excelInfoIds []int, chartInfoIds []int) (err err
|
|
}
|
|
}
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+func DeleteBalanceExcelChartInfoAndData(chartInfoId int) (err error) {
|
|
|
|
+ o := orm.NewOrmUsingDB("data")
|
|
|
|
+ to, err := o.Begin()
|
|
|
|
+ if err != nil {
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ defer func() {
|
|
|
|
+ if err != nil {
|
|
|
|
+ _ = to.Rollback()
|
|
|
|
+ } else {
|
|
|
|
+ _ = to.Commit()
|
|
|
|
+ }
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+ sql := ` DELETE FROM chart_info WHERE chart_info_id=? `
|
|
|
|
+ _, err = to.Raw(sql, chartInfoId).Exec()
|
|
|
|
+ if err != nil {
|
|
|
|
+ err = fmt.Errorf("删除平衡表图表失败 %s", err.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ sql = ` DELETE FROM excel_chart_edb WHERE chart_info_id=? `
|
|
|
|
+ _, err = to.Raw(sql, chartInfoId).Exec()
|
|
|
|
+ if err != nil {
|
|
|
|
+ err = fmt.Errorf("删除平衡表图表指标失败 %s", err.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ sql = ` DELETE FROM excel_chart_data WHERE chart_info_id=? `
|
|
|
|
+ _, err = to.Raw(sql, chartInfoId).Exec()
|
|
|
|
+ if err != nil {
|
|
|
|
+ err = fmt.Errorf("删除平衡表图表指标失败 %s", err.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ return
|
|
|
|
+}
|