mysteel_chemical_index.go 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965
  1. package data_manage
  2. import (
  3. "eta_gn/eta_api/global"
  4. "eta_gn/eta_api/utils"
  5. "fmt"
  6. "strings"
  7. "time"
  8. "github.com/rdlucklib/rdluck_tools/paging"
  9. )
  10. // BaseFromMysteelChemicalIndex 钢联化工指标表
  11. type BaseFromMysteelChemicalIndex struct {
  12. BaseFromMysteelChemicalIndexId int `orm:"column(base_from_mysteel_chemical_index_id);pk" gorm:"primaryKey" `
  13. BaseFromMysteelChemicalClassifyId int `orm:"column(base_from_mysteel_chemical_classify_id)" description:"钢联化工指标分类id"`
  14. IndexCode string `description:"指标编码"`
  15. IndexName string `description:"指标名称"`
  16. Unit string `description:"单位"`
  17. Source string `description:"数据来源"`
  18. Frequency string `description:"频度"`
  19. StartDate string `description:"开始日期"`
  20. EndDate string `description:"结束日期"`
  21. Describe string `description:"指标描述"`
  22. UpdateWeek string `description:"更新周期"`
  23. UpdateTime string `description:"更新时间1"`
  24. UpdateTime2 string `description:"更新时间2"`
  25. SysUserId int `description:"创建人id"`
  26. SysUserRealName string `description:"创建人姓名"`
  27. ModifyTime time.Time `description:"修改时间"`
  28. CreateTime time.Time `description:"创建时间"`
  29. Sort int `description:"排序字段"`
  30. MergeFilePath string `description:"合并文件"`
  31. TerminalCode string `description:"终端编码"`
  32. IsStop int `description:"是否停更:1:停更,0:未停更"`
  33. EndValue float64 `description:"指标的最新值"`
  34. IsSupplierStop int `description:"是否供应商停更:1:停更,0:未停更"`
  35. }
  36. type BaseFromMysteelChemicalIndexItem struct {
  37. BaseFromMysteelChemicalIndexId int64 `orm:"column(base_from_mysteel_chemical_index_id);pk" gorm:"primaryKey" `
  38. IndexCode string `description:"指标编码"`
  39. IndexName string `description:"指标名称"`
  40. Unit string `description:"单位"`
  41. Frequency string `description:"频度"`
  42. Source int `description:"数据来源"`
  43. StartDate string `description:"开始日期"`
  44. EndDate string `description:"结束日期"`
  45. CreateTime string `description:"创建时间"`
  46. ModifyTime string `description:"修改时间"`
  47. EdbInfoId int `description:"eta指标库的id"`
  48. EdbUniqueCode string `description:"指标库唯一编码"`
  49. EdbClassifyId int `description:"指标库分类ID"`
  50. IsStop int `description:"是否停更:1:停更,0:未停更"`
  51. EdbExist int `description:"指标库是否已添加:0-否;1-是"`
  52. }
  53. var BaseFromMysteelChemicalIndexCols = struct {
  54. BaseFromMysteelChemicalIndexId string
  55. IndexCode string
  56. IndexName string
  57. Unit string
  58. Frequency string
  59. Source string
  60. StartDate string
  61. EndDate string
  62. CreateTime string
  63. ModifyTime string
  64. }{
  65. BaseFromMysteelChemicalIndexId: "base_from_mysteel_chemical_index_id",
  66. IndexCode: "index_code",
  67. IndexName: "index_name",
  68. Unit: "unit",
  69. Frequency: "frequency",
  70. Source: "source",
  71. StartDate: "start_date",
  72. EndDate: "end_date",
  73. CreateTime: "create_time",
  74. ModifyTime: "modify_time",
  75. }
  76. // Update 更新钢联化工指标基础信息
  77. func (item *BaseFromMysteelChemicalIndex) Update(cols []string) (err error) {
  78. //o := orm.NewOrmUsingDB("data")
  79. //_, err = o.Update(item, cols...)
  80. err = global.DmSQL["data"].Select(cols).Updates(item).Error
  81. return
  82. }
  83. func (m *BaseFromMysteelChemicalIndex) GeItemsByCondition(condition string, pars []interface{}, limitSize int) (items []*BaseFromMysteelChemicalIndexItem, err error) {
  84. if pars == nil {
  85. pars = make([]interface{}, 0)
  86. }
  87. //sql := `select a.*,b.edb_info_id,b.unique_code as edb_unique_code,b.classify_id as edb_classify_id FROM base_from_mysteel_chemical_index AS a LEFT JOIN edb_info b on a.index_code=b.edb_code AND b.source=? WHERE 1=1 `
  88. //if condition != "" {
  89. // sql += condition
  90. //}
  91. //sql += ` order by a.base_from_mysteel_chemical_index_id desc `
  92. //
  93. //if limitSize > 0 {
  94. // sql += " limit ? "
  95. // pars = append(pars, limitSize)
  96. //}
  97. //
  98. //o := orm.NewOrmUsingDB("data")
  99. //_, err = o.Raw(sql, utils.DATA_SOURCE_MYSTEEL_CHEMICAL, pars).QueryRows(&items)
  100. sql := `select a.*,b.edb_info_id,b.unique_code as edb_unique_code,b.classify_id as edb_classify_id FROM base_from_mysteel_chemical_index AS a LEFT JOIN edb_info b on a.index_code=b.edb_code AND b.source=? WHERE 1=1 `
  101. if condition != "" {
  102. sql += condition
  103. }
  104. sql += ` order by a.base_from_mysteel_chemical_index_id desc `
  105. if limitSize > 0 {
  106. sql += " limit ? "
  107. pars = append(pars, limitSize)
  108. }
  109. err = global.DmSQL["data"].Raw(sql, utils.DATA_SOURCE_MYSTEEL_CHEMICAL, pars).Find(&items).Error
  110. return
  111. }
  112. // AddBaseFromMysteelChemicalIndex 添加钢联化工指标
  113. func AddBaseFromMysteelChemicalIndex(item *BaseFromMysteelChemicalIndex) (lastId int64, err error) {
  114. //o := orm.NewOrmUsingDB("data")
  115. //lastId, err = o.Insert(item)
  116. //if err != nil {
  117. // return
  118. //}
  119. //item.BaseFromMysteelChemicalIndexId = int(lastId)
  120. err = global.DmSQL["data"].Create(item).Error
  121. return
  122. }
  123. // AddBaseFromMysteelChemicalIndex 添加钢联化工指标
  124. func BatchAddBaseFromMysteelChemicalIndex(items []*BaseFromMysteelChemicalIndex) (lastId int64, err error) {
  125. //o := orm.NewOrmUsingDB("data")
  126. //_, err = o.InsertMulti(len(items), items)
  127. err = global.DmSQL["data"].CreateInBatches(items, utils.MultiAddNum).Error
  128. return
  129. }
  130. // BaseFromMysteelChemicalData 钢联化工指标数据表
  131. type BaseFromMysteelChemicalData struct {
  132. BaseFromMysteelChemicalDataId int `orm:"column(base_from_mysteel_chemical_data_id);pk" gorm:"primaryKey" `
  133. BaseFromMysteelChemicalIndexId int `orm:"column(base_from_mysteel_chemical_index_id)" description:"钢联化工指标id"`
  134. IndexCode string `description:"指标编码"`
  135. DataTime time.Time `description:"数据日期"`
  136. Value float64 `description:"数据值"`
  137. ModifyTime time.Time `description:"修改时间"`
  138. CreateTime time.Time `description:"创建时间"`
  139. }
  140. // MysteelChemicalFrequency 钢联化工频度
  141. type MysteelChemicalFrequency struct {
  142. Frequency string `description:"频度:1-日度 2-周度 3-月度 4-季度 5-年度 99-无固定频率"`
  143. }
  144. // GetMysteelChemicalIndexByClassifyId 用于分类展示
  145. func GetMysteelChemicalIndexByClassifyId(classifyId int) (items []*BaseFromMysteelChemicalClassifyItems, err error) {
  146. //o := orm.NewOrmUsingDB("data")
  147. //sql := ` SELECT base_from_mysteel_chemical_index_id,base_from_mysteel_chemical_classify_id,index_name AS classify_name,
  148. // sys_user_id,sys_user_real_name,sort,index_code
  149. // FROM base_from_mysteel_chemical_index where base_from_mysteel_chemical_classify_id=? ORDER BY sort asc, create_time ASC `
  150. //_, err = o.Raw(sql, classifyId).QueryRows(&items)
  151. sql := ` SELECT base_from_mysteel_chemical_index_id,base_from_mysteel_chemical_classify_id,index_name AS classify_name,
  152. sys_user_id,sys_user_real_name,sort,index_code
  153. FROM base_from_mysteel_chemical_index where base_from_mysteel_chemical_classify_id=? ORDER BY sort asc, create_time ASC `
  154. err = global.DmSQL["data"].Raw(sql, classifyId).Find(&items).Error
  155. return
  156. }
  157. //// MysteelChemicalFrequencyByClassifyId 根据分类id获取钢联化工频度数据列表
  158. //func MysteelChemicalFrequencyByClassifyId(classifyId int) (items []*MysteelChemicalFrequency, err error) {
  159. // o := orm.NewOrmUsingDB("data")
  160. // if classifyId == 0 {
  161. // sql := ` SELECT frequency FROM base_from_mysteel_chemical_index WHERE frequency != "" GROUP BY frequency ORDER BY frequency ASC `
  162. // _, err = o.Raw(sql).QueryRows(&items)
  163. // return
  164. // } else {
  165. // sql := ` SELECT frequency FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_classify_id = ? AND frequency != "" GROUP BY frequency ORDER BY frequency ASC `
  166. // _, err = o.Raw(sql, classifyId).QueryRows(&items)
  167. // return
  168. // }
  169. //}
  170. // GetMysteelChemicalFrequency 获取钢联化工频度数据列表
  171. func GetMysteelChemicalFrequency(condition string, pars []interface{}) (items []*MysteelChemicalFrequency, err error) {
  172. //o := orm.NewOrmUsingDB("data")
  173. //sql := ` SELECT frequency FROM base_from_mysteel_chemical_index WHERE 1=1 AND frequency != "" `
  174. //if condition != "" {
  175. // sql += condition
  176. //}
  177. //sql += ` GROUP BY frequency ORDER BY frequency ASC `
  178. //_, err = o.Raw(sql, pars).QueryRows(&items)
  179. sql := ` SELECT frequency FROM base_from_mysteel_chemical_index WHERE 1=1 AND frequency != "" `
  180. if condition != "" {
  181. sql += condition
  182. }
  183. sql += ` GROUP BY frequency ORDER BY frequency ASC `
  184. err = global.DmSQL["data"].Raw(sql, pars).Find(&items).Error
  185. return
  186. }
  187. // MysteelChemicalList 钢联化工指标列表
  188. type MysteelChemicalList struct {
  189. Id int `orm:"column(base_from_mysteel_chemical_index_id)"`
  190. BaseFromMysteelChemicalClassifyId int `orm:"column(base_from_mysteel_chemical_classify_id)" description:"钢联化工指标分类id"`
  191. ParentClassifyId int `description:"钢联化工指标父级分类id"`
  192. IndexCode string `description:"指标编码"`
  193. IndexName string `description:"指标名称"`
  194. UnitName string `orm:"column(unit)"`
  195. UniqueCode string `description:"唯一编码"`
  196. FrequencyName string `orm:"column(frequency)"`
  197. EdbInfoId int `description:"指标库的id"`
  198. UpdateTime string `orm:"column(modify_time)"`
  199. IsStop int `description:"是否停更:1:停更,0:未停更"`
  200. IsSupplierStop int `description:"是否供应商停更:1:停更,0:未停更"`
  201. Paging *paging.PagingItem `description:"分页数据"`
  202. DataList []*MysteelChemicalData `gorm:"-"`
  203. }
  204. // MysteelChemicalData 钢联化工数据列表
  205. type MysteelChemicalData struct {
  206. InputValue string `orm:"column(value)" description:"值"`
  207. DataTime string `orm:"column(data_time)" description:"日期"`
  208. }
  209. // GetMysteelChemicalIndex 根据分类id获取钢联化工频度数据列表
  210. func GetMysteelChemicalIndex(condition string, pars []interface{}) (items []*MysteelChemicalList, err error) {
  211. //o := orm.NewOrmUsingDB("data")
  212. //sql := ` SELECT * FROM base_from_mysteel_chemical_index WHERE 1=1 `
  213. //
  214. //if condition != "" {
  215. // sql += condition
  216. //}
  217. //sql += ` ORDER BY base_from_mysteel_chemical_index_id ASC `
  218. //_, err = o.Raw(sql, pars).QueryRows(&items)
  219. sql := ` SELECT * FROM base_from_mysteel_chemical_index WHERE 1=1 `
  220. if condition != "" {
  221. sql += condition
  222. }
  223. sql += ` ORDER BY base_from_mysteel_chemical_index_id ASC `
  224. err = global.DmSQL["data"].Raw(sql, pars).Find(&items).Error
  225. return
  226. }
  227. // GetMysteelChemicalIndexData 根据指标code获取钢联化工数据列表
  228. func GetMysteelChemicalIndexData(indexCode string, startSize, pageSize int) (items []*MysteelChemicalData, err error) {
  229. //sql := ` SELECT * FROM (
  230. //SELECT DISTINCT a.index_code,a.value,a.data_time FROM base_from_mysteel_chemical_data AS a WHERE index_code=?
  231. //ORDER BY data_time DESC
  232. //)AS t
  233. //GROUP BY t.data_time
  234. //ORDER BY t.data_time DESC LIMIT ?,? `
  235. //o := orm.NewOrmUsingDB("data")
  236. //_, err = o.Raw(sql, indexCode, startSize, pageSize).QueryRows(&items)
  237. sql := ` SELECT * FROM (
  238. SELECT DISTINCT a.index_code,a.value,a.data_time FROM base_from_mysteel_chemical_data AS a WHERE index_code=?
  239. ORDER BY data_time DESC
  240. )AS t
  241. GROUP BY t.data_time
  242. ORDER BY t.data_time DESC LIMIT ?,? `
  243. err = global.DmSQL["data"].Raw(sql, indexCode, startSize, pageSize).Find(&items).Error
  244. return
  245. }
  246. // GetMysteelChemicalIndexDataCount 根据指标code获取钢联化工数据列表 获取钢联数据总数
  247. func GetMysteelChemicalIndexDataCount(indexCode string) (count int, err error) {
  248. //sql := `SELECT COUNT(1) AS count FROM (
  249. // SELECT * FROM (
  250. //SELECT DISTINCT a.index_code,a.value,a.data_time FROM base_from_mysteel_chemical_data AS a WHERE index_code=?
  251. //ORDER BY data_time DESC
  252. //)AS t
  253. //GROUP BY t.data_time
  254. //ORDER BY t.data_time DESC
  255. // )AS n `
  256. //o := orm.NewOrmUsingDB("data")
  257. //err = o.Raw(sql, indexCode).QueryRow(&count)
  258. sql := `SELECT COUNT(1) AS count FROM (
  259. SELECT * FROM (
  260. SELECT DISTINCT a.index_code,a.value,a.data_time FROM base_from_mysteel_chemical_data AS a WHERE index_code=?
  261. ORDER BY data_time DESC
  262. )AS t
  263. GROUP BY t.data_time
  264. ORDER BY t.data_time DESC
  265. )AS n `
  266. err = global.DmSQL["data"].Raw(sql, indexCode).Scan(&count).Error
  267. return
  268. }
  269. // GetBaseFromMysteelChemicalIndexByIndexId 根据指标id获取指标信息
  270. func GetBaseFromMysteelChemicalIndexByIndexId(indexId int) (item *BaseFromMysteelChemicalIndex, err error) {
  271. //o := orm.NewOrmUsingDB("data")
  272. //sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_index_id=? `
  273. //err = o.Raw(sql, indexId).QueryRow(&item)
  274. sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_index_id=? `
  275. err = global.DmSQL["data"].Raw(sql, indexId).First(&item).Error
  276. return
  277. }
  278. // GetBaseFromMysteelChemicalIndexByCode 根据指标code获取指标信息
  279. func GetBaseFromMysteelChemicalIndexByCode(indexCode string) (item *BaseFromMysteelChemicalIndex, err error) {
  280. //o := orm.NewOrmUsingDB("data")
  281. //sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE index_code=? `
  282. //err = o.Raw(sql, indexCode).QueryRow(&item)
  283. sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE index_code=? `
  284. err = global.DmSQL["data"].Raw(sql, indexCode).First(&item).Error
  285. return
  286. }
  287. // GetBaseFromMysteelChemicalIndexByCodeList 根据指标code获取指标信息
  288. func GetBaseFromMysteelChemicalIndexByCodeList(indexCodeList []string) (items []*BaseFromMysteelChemicalIndex, err error) {
  289. if len(indexCodeList) <= 0 {
  290. return
  291. }
  292. //o := orm.NewOrmUsingDB("data")
  293. //sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE index_code IN (%s) `
  294. //holder := make([]string, 0)
  295. //for range indexCodeList {
  296. // holder = append(holder, "?")
  297. //}
  298. //sql = fmt.Sprintf(sql, strings.Join(holder, ","))
  299. //_, err = o.Raw(sql, indexCodeList).QueryRows(&items)
  300. sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE index_code IN (%s) `
  301. holder := make([]string, 0)
  302. for range indexCodeList {
  303. holder = append(holder, "?")
  304. }
  305. sql = fmt.Sprintf(sql, strings.Join(holder, ","))
  306. err = global.DmSQL["data"].Raw(sql, indexCodeList).Find(&items).Error
  307. return
  308. }
  309. //
  310. //// GetBaseFromMysteelChemicalIndexByClassifyIdAndName 根据分类id和指标名名获取指标信息
  311. //func GetBaseFromMysteelChemicalIndexByClassifyIdAndName(classifyId int, chartName string) (item *BaseFromMysteelChemicalIndex, err error) {
  312. // o := orm.NewOrmUsingDB("data")
  313. // sql := ` SELECT * FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_classify_id = ? and index_name = ? `
  314. // err = o.Raw(sql, classifyId, chartName).QueryRow(&item)
  315. // return
  316. //}
  317. //
  318. //// GetBaseFromMysteelChemicalIndexListByClassifyId 根据指标分类id获取指标列表信息
  319. //func GetBaseFromMysteelChemicalIndexListByClassifyId(classifyId int) (items []*BaseFromMysteelChemicalIndex, err error) {
  320. // o := orm.NewOrmUsingDB("data")
  321. // sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_classify_id=? `
  322. // _, err = o.Raw(sql, classifyId).QueryRows(&items)
  323. // return
  324. //}
  325. // GetBaseFromMysteelChemicalIndexListByClassifyIdList 根据指标分类id集合获取指标列表信息
  326. func GetBaseFromMysteelChemicalIndexListByClassifyIdList(classifyIdList []int) (items []*BaseFromMysteelChemicalIndex, err error) {
  327. num := len(classifyIdList)
  328. if num <= 0 {
  329. return
  330. }
  331. //o := orm.NewOrmUsingDB("data")
  332. //sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_classify_id IN (` + utils.GetOrmInReplace(num) + `) `
  333. //_, err = o.Raw(sql, classifyIdList).QueryRows(&items)
  334. sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_classify_id IN (` + utils.GetOrmInReplace(num) + `) `
  335. err = global.DmSQL["data"].Raw(sql, classifyIdList).Find(&items).Error
  336. return
  337. }
  338. // GetBaseFromMysteelChemicalDataMaxCount 获取分类下指标的最大数量
  339. func GetBaseFromMysteelChemicalDataMaxCount(classifyId int) (count int, err error) {
  340. //o := orm.NewOrmUsingDB("data")
  341. //sql := `SELECT MAX(t.num) AS count FROM (
  342. // SELECT COUNT(1) AS num FROM base_from_mysteel_chemical_index AS a
  343. // INNER JOIN base_from_mysteel_chemical_data AS b ON a.base_from_mysteel_chemical_index_id=b.base_from_mysteel_chemical_index_id
  344. // WHERE a.base_from_mysteel_chemical_classify_id=?
  345. // GROUP BY a.base_from_mysteel_chemical_index_id
  346. // )AS t `
  347. //err = o.Raw(sql, classifyId).QueryRow(&count)
  348. sql := `SELECT MAX(t.num) AS count FROM (
  349. SELECT COUNT(1) AS num FROM base_from_mysteel_chemical_index AS a
  350. INNER JOIN base_from_mysteel_chemical_data AS b ON a.base_from_mysteel_chemical_index_id=b.base_from_mysteel_chemical_index_id
  351. WHERE a.base_from_mysteel_chemical_classify_id=?
  352. GROUP BY a.base_from_mysteel_chemical_index_id
  353. )AS t `
  354. err = global.DmSQL["data"].Raw(sql, classifyId).Scan(&count).Error
  355. return
  356. }
  357. // GetMysteelChemicalIndexDataByCode 通过钢联化工指标code获取所有数据列表
  358. func GetMysteelChemicalIndexDataByCode(indexCode string) (items []*MysteelChemicalData, err error) {
  359. //sql := ` SELECT * FROM (
  360. //SELECT DISTINCT a.index_code,a.value,a.data_time FROM base_from_mysteel_chemical_data AS a WHERE index_code=?
  361. //ORDER BY data_time DESC
  362. //)AS t
  363. //GROUP BY t.data_time
  364. //ORDER BY t.data_time DESC `
  365. //o := orm.NewOrmUsingDB("data")
  366. //_, err = o.Raw(sql, indexCode).QueryRows(&items)
  367. sql := ` SELECT * FROM (
  368. SELECT DISTINCT a.index_code,a.value,a.data_time FROM base_from_mysteel_chemical_data AS a WHERE index_code=?
  369. ORDER BY data_time DESC
  370. )AS t
  371. GROUP BY t.data_time
  372. ORDER BY t.data_time DESC `
  373. err = global.DmSQL["data"].Raw(sql, indexCode).Find(&items).Error
  374. return
  375. }
  376. // MoveBaseFromMysteelChemicalIndex 移动钢联化工指标分类
  377. func MoveBaseFromMysteelChemicalIndex(chartInfoId, classifyId int) (err error) {
  378. //o := orm.NewOrmUsingDB("data")
  379. //sql := ` UPDATE base_from_mysteel_chemical_index
  380. // SET
  381. // base_from_mysteel_chemical_classify_id = ?
  382. // WHERE base_from_mysteel_chemical_index_id = ?`
  383. //_, err = o.Raw(sql, classifyId, chartInfoId).Exec()
  384. sql := ` UPDATE base_from_mysteel_chemical_index
  385. SET
  386. base_from_mysteel_chemical_classify_id = ?
  387. WHERE base_from_mysteel_chemical_index_id = ?`
  388. err = global.DmSQL["data"].Exec(sql, classifyId, chartInfoId).Error
  389. return
  390. }
  391. // UpdateBaseFromMysteelChemicalIndexByClassifyId 根据指标id更新排序
  392. func UpdateBaseFromMysteelChemicalIndexByClassifyId(classifyId, nowSort, prevIndexInfoId int, updateSort string) (err error) {
  393. //o := orm.NewOrmUsingDB("data")
  394. //sql := ` update base_from_mysteel_chemical_index set sort = ` + updateSort + ` WHERE base_from_mysteel_chemical_classify_id=? AND `
  395. //if prevIndexInfoId > 0 {
  396. // sql += ` ( sort > ? or (base_from_mysteel_chemical_index_id > ` + fmt.Sprint(prevIndexInfoId) + ` and sort = ` + fmt.Sprint(nowSort) + `))`
  397. //}
  398. //_, err = o.Raw(sql, classifyId, nowSort).Exec()
  399. sql := ` update base_from_mysteel_chemical_index set sort = ` + updateSort + ` WHERE base_from_mysteel_chemical_classify_id=? AND `
  400. if prevIndexInfoId > 0 {
  401. sql += ` ( sort > ? or (base_from_mysteel_chemical_index_id > ` + fmt.Sprint(prevIndexInfoId) + ` and sort = ` + fmt.Sprint(nowSort) + `))`
  402. }
  403. err = global.DmSQL["data"].Exec(sql, classifyId, nowSort).Error
  404. return
  405. }
  406. // GetFirstBaseFromMysteelChemicalIndexByClassifyId 获取当前分类下,且排序数相同 的排序第一条的数据
  407. func GetFirstBaseFromMysteelChemicalIndexByClassifyId(classifyId int) (item *BaseFromMysteelChemicalIndex, err error) {
  408. //o := orm.NewOrmUsingDB("data")
  409. //sql := ` SELECT * FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_classify_id=? order by sort asc,base_from_mysteel_chemical_index_id asc limit 1`
  410. //err = o.Raw(sql, classifyId).QueryRow(&item)
  411. sql := ` SELECT * FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_classify_id=? order by sort asc,base_from_mysteel_chemical_index_id asc limit 1`
  412. err = global.DmSQL["data"].Raw(sql, classifyId).First(&item).Error
  413. return
  414. }
  415. // GetMysteelChemicalIndexCount 根据条件获取钢联化工数据
  416. func GetMysteelChemicalIndexCount(condition string, pars []interface{}) (count int, err error) {
  417. //o := orm.NewOrmUsingDB("data")
  418. //sql := ` SELECT COUNT(1) AS count FROM base_from_mysteel_chemical_index WHERE 1=1 `
  419. //
  420. //if condition != "" {
  421. // sql += condition
  422. //}
  423. //sql += ` ORDER BY base_from_mysteel_chemical_index_id ASC `
  424. //err = o.Raw(sql, pars).QueryRow(&count)
  425. sql := ` SELECT COUNT(1) AS count FROM base_from_mysteel_chemical_index WHERE 1=1 `
  426. if condition != "" {
  427. sql += condition
  428. }
  429. sql += ` ORDER BY base_from_mysteel_chemical_index_id ASC `
  430. err = global.DmSQL["data"].Raw(sql, pars).Scan(&count).Error
  431. return
  432. }
  433. // GetMysteelChemicalIndexList 根据分类id获取钢联化工频度数据列表
  434. func GetMysteelChemicalIndexList(condition string, pars []interface{}, startSize, pageSize int, orderDesc string) (items []*BaseFromMysteelChemicalIndex, err error) {
  435. //o := orm.NewOrmUsingDB("data")
  436. //sql := ` SELECT * FROM base_from_mysteel_chemical_index WHERE 1=1 `
  437. //
  438. //if condition != "" {
  439. // sql += condition
  440. //}
  441. //
  442. //if orderDesc == `` {
  443. // orderDesc = ` ASC `
  444. //}
  445. //sql += ` ORDER BY base_from_mysteel_chemical_index_id `
  446. //sql += orderDesc
  447. //sql += ` LIMIT ?,? `
  448. //_, err = o.Raw(sql, pars...).QueryRows(&items)
  449. sql := ` SELECT * FROM base_from_mysteel_chemical_index WHERE 1=1 `
  450. if condition != "" {
  451. sql += condition
  452. }
  453. if orderDesc == `` {
  454. orderDesc = ` ASC `
  455. }
  456. sql += ` ORDER BY base_from_mysteel_chemical_index_id `
  457. sql += orderDesc
  458. sql += ` LIMIT ?,? `
  459. pars = append(pars, startSize)
  460. pars = append(pars, pageSize)
  461. err = global.DmSQL["data"].Raw(sql, pars...).Find(&items).Error
  462. return
  463. }
  464. //// GetMysteelChemicalIndexListGroupByUserId 根据指标id列表、用户分组获取指标信息
  465. //func GetMysteelChemicalIndexListGroupByUserId(edbIdList []string) (items []*BaseFromMysteelChemicalIndex, err error) {
  466. // num := len(edbIdList)
  467. // if num <= 0 {
  468. // return
  469. // }
  470. // o := orm.NewOrmUsingDB("data")
  471. // sql := ` SELECT * FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_index_id in (` + utils.GetOrmInReplace(num) + `) GROUP BY sys_user_id `
  472. // _, err = o.Raw(sql, edbIdList).QueryRows(&items)
  473. //
  474. // return
  475. //}
  476. // GetMysteelChemicalIndexListByIndexId
  477. // @Description: 根据指标id列表获取列表信息
  478. // @param edbIdList
  479. // @return items
  480. // @return err
  481. func GetMysteelChemicalIndexListByIndexId(edbIdList []string) (items []*BaseFromMysteelChemicalIndex, err error) {
  482. num := len(edbIdList)
  483. if num <= 0 {
  484. return
  485. }
  486. //o := orm.NewOrmUsingDB("data")
  487. //sql := ` SELECT * FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_index_id in (` + utils.GetOrmInReplace(num) + `) `
  488. //_, err = o.Raw(sql, edbIdList).QueryRows(&items)
  489. sql := ` SELECT * FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_index_id in (` + utils.GetOrmInReplace(num) + `) `
  490. err = global.DmSQL["data"].Raw(sql, edbIdList).Find(&items).Error
  491. return
  492. }
  493. // GetMysteelChemicalIndexListByUserId
  494. // @Description: 根据用户id列表获取列表信息
  495. // @param userIdList
  496. // @return items
  497. // @return err
  498. func GetMysteelChemicalIndexListByUserId(userIdList []int) (items []*BaseFromMysteelChemicalIndex, err error) {
  499. num := len(userIdList)
  500. if num <= 0 {
  501. return
  502. }
  503. //o := orm.NewOrmUsingDB("data")
  504. //sql := ` SELECT * FROM base_from_mysteel_chemical_index WHERE sys_user_id in (` + utils.GetOrmInReplace(num) + `) `
  505. //_, err = o.Raw(sql, userIdList).QueryRows(&items)
  506. sql := ` SELECT * FROM base_from_mysteel_chemical_index WHERE sys_user_id in (` + utils.GetOrmInReplace(num) + `) `
  507. err = global.DmSQL["data"].Raw(sql, userIdList).Find(&items).Error
  508. return
  509. }
  510. // ModifyMysteelChemicalIndexUserIdByCodeList 根据指标code列表修改创建人
  511. func ModifyMysteelChemicalIndexUserIdByCodeList(edbIdList []string, userId int, userName string) (err error) {
  512. num := len(edbIdList)
  513. if num <= 0 {
  514. return
  515. }
  516. //o := orm.NewOrmUsingDB("data")
  517. //sql := `UPDATE base_from_mysteel_chemical_index SET sys_user_id=?,sys_user_real_name=? WHERE base_from_mysteel_chemical_index_id in (` + utils.GetOrmInReplace(num) + `) `
  518. //_, err = o.Raw(sql, userId, userName, edbIdList).Exec()
  519. sql := `UPDATE base_from_mysteel_chemical_index SET sys_user_id=?,sys_user_real_name=? WHERE base_from_mysteel_chemical_index_id in (` + utils.GetOrmInReplace(num) + `) `
  520. err = global.DmSQL["data"].Exec(sql, userId, userName, edbIdList).Error
  521. return
  522. }
  523. // ModifyMysteelChemicalIndexUserIdByOldUserId
  524. // @Description: 根据旧用户id修改新用户id
  525. // @author: Roc
  526. // @datetime 2024-03-25 17:59:08
  527. // @param oldUserId int
  528. // @param userId int
  529. // @param userName string
  530. // @return err error
  531. func ModifyMysteelChemicalIndexUserIdByOldUserId(oldUserIdList []int, userId int, userName string) (err error) {
  532. num := len(oldUserIdList)
  533. if num <= 0 {
  534. return
  535. }
  536. //o := orm.NewOrmUsingDB("data")
  537. //sql := `UPDATE base_from_mysteel_chemical_index SET sys_user_id=?,sys_user_real_name=? WHERE sys_user_id in (` + utils.GetOrmInReplace(num) + `) `
  538. //_, err = o.Raw(sql, userId, userName, oldUserIdList).Exec()
  539. sql := `UPDATE base_from_mysteel_chemical_index SET sys_user_id=?,sys_user_real_name=? WHERE sys_user_id in (` + utils.GetOrmInReplace(num) + `) `
  540. err = global.DmSQL["data"].Exec(sql, userId, userName, oldUserIdList).Error
  541. return
  542. }
  543. // GetMysteelChemicalIndexAdminList 获取所有指标创建人
  544. func GetMysteelChemicalIndexAdminList() (list []int, err error) {
  545. //o := orm.NewOrmUsingDB("data")
  546. //sql := ` SELECT sys_user_id FROM base_from_mysteel_chemical_index GROUP BY sys_user_id `
  547. //
  548. //_, err = o.Raw(sql).QueryRows(&list)
  549. sql := ` SELECT sys_user_id FROM base_from_mysteel_chemical_index GROUP BY sys_user_id `
  550. err = global.DmSQL["data"].Raw(sql).Find(&list).Error
  551. return
  552. }
  553. type TerminalNum struct {
  554. TerminalCode string `description:"terminal_code"`
  555. Num int `description:"num"`
  556. }
  557. // GetMysteelChemicalGroupTerminalNum 获取钢联化工指标的终端分布
  558. func GetMysteelChemicalGroupTerminalNum() (items []*TerminalNum, err error) {
  559. //o := orm.NewOrmUsingDB("data")
  560. //sql := ` SELECT terminal_code,count(1) num FROM base_from_mysteel_chemical_index GROUP BY terminal_code ORDER BY num ASC `
  561. //_, err = o.Raw(sql).QueryRows(&items)
  562. sql := ` SELECT terminal_code,count(1) num FROM base_from_mysteel_chemical_index GROUP BY terminal_code ORDER BY num ASC `
  563. err = global.DmSQL["data"].Raw(sql).Find(&items).Error
  564. return
  565. }
  566. // BaseRefreshEdbInfo
  567. // @Description: 刷新配置的基础指标信息结构体
  568. type BaseRefreshEdbInfo struct {
  569. EdbInfoId int
  570. ClassifyId int `description:"钢联化工指标分类id"`
  571. IndexCode string `description:"指标编码"`
  572. IndexName string `description:"指标名称"`
  573. EndDate string `description:"最新日期"`
  574. EndValue string `description:"最新值"`
  575. SysUserId int `description:"创建人id"`
  576. SysUserRealName string `description:"创建人姓名"`
  577. Frequency string `description:"频度"`
  578. IsStop int `description:"是否停更:1:停更,0:未停更"`
  579. TerminalCode string `description:"终端编码"`
  580. RefreshTime string `description:"刷新时间"`
  581. }
  582. // RefreshBaseEdbInfoResp
  583. // @Description: 刷新数据源的数据返回
  584. type RefreshBaseEdbInfoResp struct {
  585. Paging *paging.PagingItem
  586. List []*BaseRefreshEdbInfo
  587. }
  588. // GetMysteelChemicalBaseInfoList
  589. // @Description: 获取钢联化工数据列表
  590. // @author: Roc
  591. // @datetime 2024-01-10 14:28:35
  592. // @param condition string
  593. // @param pars []interface{}
  594. // @param orderBy string
  595. // @param startSize int
  596. // @param pageSize int
  597. // @return total int
  598. // @return items []*BaseRefreshEdbInfo
  599. // @return err error
  600. func GetMysteelChemicalBaseInfoList(condition string, pars []interface{}, orderBy string, startSize, pageSize int) (total int, items []*BaseRefreshEdbInfo, err error) {
  601. //o := orm.NewOrmUsingDB("data")
  602. // 数量汇总
  603. //totalSql := ` SELECT count(1) FROM base_from_mysteel_chemical_index WHERE 1=1 `
  604. //if condition != "" {
  605. // totalSql += condition
  606. //}
  607. //err = o.Raw(totalSql, pars).QueryRow(&total)
  608. //if err != nil {
  609. // return
  610. //}
  611. totalSql := ` SELECT count(1) FROM base_from_mysteel_chemical_index WHERE 1=1 `
  612. if condition != "" {
  613. totalSql += condition
  614. }
  615. err = global.DmSQL["data"].Raw(totalSql, pars).Scan(&total).Error
  616. if err != nil {
  617. return
  618. }
  619. // 列表数据
  620. //sql := ` SELECT base_from_mysteel_chemical_index_id as edb_info_id, base_from_mysteel_chemical_classify_id as classify_id,index_code,index_name,end_date,end_value,sys_user_id,sys_user_real_name,frequency,is_stop,terminal_code FROM base_from_mysteel_chemical_index WHERE 1=1 `
  621. //if condition != "" {
  622. // sql += condition
  623. //}
  624. //
  625. //if orderBy != "" {
  626. // sql += ` ORDER BY ` + orderBy
  627. //} else {
  628. // sql += ` ORDER BY base_from_mysteel_chemical_index_id ASC `
  629. //}
  630. //sql += ` LIMIT ?,? `
  631. //
  632. //_, err = o.Raw(sql, pars...).QueryRows(&items)
  633. sql := ` SELECT base_from_mysteel_chemical_index_id as edb_info_id, base_from_mysteel_chemical_classify_id as classify_id,index_code,index_name,end_date,end_value,sys_user_id,sys_user_real_name,frequency,is_stop,terminal_code FROM base_from_mysteel_chemical_index WHERE 1=1 `
  634. if condition != "" {
  635. sql += condition
  636. }
  637. if orderBy != "" {
  638. sql += ` ORDER BY ` + orderBy
  639. } else {
  640. sql += ` ORDER BY base_from_mysteel_chemical_index_id ASC `
  641. }
  642. sql += ` LIMIT ?,? `
  643. pars = append(pars, startSize)
  644. pars = append(pars, pageSize)
  645. err = global.DmSQL["data"].Raw(sql, pars...).Find(&items).Error
  646. return
  647. }
  648. // ModifyMysteelChemicalUpdateStatus
  649. // @Description: 修改钢联化工数据停更状态
  650. // @author: Roc
  651. // @datetime 2024-01-08 16:23:31
  652. // @param edbIdList []int
  653. // @param indexCodeList []string
  654. // @param isStop int
  655. // @return err error
  656. func ModifyMysteelChemicalUpdateStatus(edbIdList []int, indexCodeList []string, isStop int) (err error) {
  657. idNum := len(edbIdList)
  658. if idNum <= 0 {
  659. return
  660. }
  661. //o, err := orm.NewOrmUsingDB("data").Begin()
  662. //if err != nil {
  663. // return
  664. //}
  665. //defer func() {
  666. // if err != nil {
  667. // _ = o.Rollback()
  668. // return
  669. // }
  670. // _ = o.Commit()
  671. //}()
  672. // 更改数据源的更新状态
  673. //sql := ` UPDATE base_from_mysteel_chemical_index SET is_stop = ? WHERE base_from_mysteel_chemical_index_id IN (` + utils.GetOrmInReplace(idNum) + `) `
  674. //_, err = o.Raw(sql, isStop, edbIdList).Exec()
  675. //if err != nil {
  676. // return
  677. //}
  678. sql := ` UPDATE base_from_mysteel_chemical_index SET is_stop = ? WHERE base_from_mysteel_chemical_index_id IN (` + utils.GetOrmInReplace(idNum) + `) `
  679. err = global.DmSQL["data"].Exec(sql, isStop, edbIdList).Error
  680. if err != nil {
  681. return
  682. }
  683. codeNum := len(indexCodeList)
  684. if codeNum <= 0 {
  685. // 需要通过指标id列表查找code列表
  686. //sql := ` SELECT index_code FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_index_id IN (` + utils.GetOrmInReplace(idNum) + `) `
  687. //_, err = o.Raw(sql, edbIdList).QueryRows(&indexCodeList)
  688. //if err != nil {
  689. // return
  690. //}
  691. sql := ` SELECT index_code FROM base_from_mysteel_chemical_index WHERE base_from_mysteel_chemical_index_id IN (` + utils.GetOrmInReplace(idNum) + `) `
  692. err = global.DmSQL["data"].Raw(sql, edbIdList).Find(&indexCodeList).Error
  693. if err != nil {
  694. return
  695. }
  696. }
  697. codeNum = len(indexCodeList)
  698. // 查出来的编码是空的话,那么就直接返回了
  699. if codeNum <= 0 {
  700. return
  701. }
  702. // 更改指标的更新状态
  703. //sql = ` UPDATE edb_info SET no_update = ? WHERE source = ? AND sub_source= ? AND edb_code IN (` + utils.GetOrmInReplace(codeNum) + `) `
  704. //_, err = o.Raw(sql, isStop, utils.DATA_SOURCE_MYSTEEL_CHEMICAL, 0, indexCodeList).Exec()
  705. //if err != nil {
  706. // return
  707. //}
  708. sql = ` UPDATE edb_info SET no_update = ? WHERE source = ? AND sub_source= ? AND edb_code IN (` + utils.GetOrmInReplace(codeNum) + `) `
  709. err = global.DmSQL["data"].Exec(sql, isStop, utils.DATA_SOURCE_MYSTEEL_CHEMICAL, 0, indexCodeList).Error
  710. if err != nil {
  711. return
  712. }
  713. return
  714. }
  715. // ModifyMysteelChemicalUpdateStatusByEdbInfoId
  716. // @Description: 修改单个钢联化工指标停更状态,同时停更依赖于该指标的计算指标
  717. // @author: Roc
  718. // @datetime 2024-01-08 16:23:31
  719. // @param edbIdList []int
  720. // @param indexCodeList []string
  721. // @param isStop int
  722. // @return err error
  723. func ModifyMysteelChemicalUpdateStatusByEdbInfoId(edbInfoId, isStop int, edbCode string, calculateEdbInfoIds []int) (err error) {
  724. //o, err := orm.NewOrmUsingDB("data").Begin()
  725. //if err != nil {
  726. // return
  727. //}
  728. //defer func() {
  729. // if err != nil {
  730. // _ = o.Rollback()
  731. // return
  732. // }
  733. // _ = o.Commit()
  734. //}()
  735. to := global.DmSQL["data"].Begin()
  736. defer func() {
  737. if err != nil {
  738. _ = to.Rollback()
  739. } else {
  740. _ = to.Commit()
  741. }
  742. }()
  743. // 更改数据源的更新状态
  744. //sql := ` UPDATE base_from_mysteel_chemical_index SET is_stop = ? WHERE index_code = ? `
  745. //_, err = o.Raw(sql, isStop, edbCode).Exec()
  746. //if err != nil {
  747. // return
  748. //}
  749. sql := ` UPDATE base_from_mysteel_chemical_index SET is_stop = ? WHERE index_code = ? `
  750. err = to.Exec(sql, isStop, edbCode).Error
  751. if err != nil {
  752. return
  753. }
  754. // 更改指标的更新状态
  755. //sql = ` UPDATE edb_info SET no_update = ? WHERE source = ? AND sub_source= ? AND edb_info_id=? `
  756. //_, err = o.Raw(sql, isStop, utils.DATA_SOURCE_MYSTEEL_CHEMICAL, 0, edbInfoId).Exec()
  757. //if err != nil {
  758. // return
  759. //}
  760. sql = ` UPDATE edb_info SET no_update = ? WHERE source = ? AND sub_source= ? AND edb_info_id=? `
  761. err = to.Exec(sql, isStop, utils.DATA_SOURCE_MYSTEEL_CHEMICAL, 0, edbInfoId).Error
  762. if err != nil {
  763. return
  764. }
  765. if len(calculateEdbInfoIds) > 0 {
  766. // 批量更新相关联的指标ID
  767. //sql = ` UPDATE edb_info SET no_update = ? WHERE edb_info_id IN (` + utils.GetOrmInReplace(len(calculateEdbInfoIds)) + `) `
  768. //_, err = o.Raw(sql, isStop, calculateEdbInfoIds).Exec()
  769. //if err != nil {
  770. // return
  771. //}
  772. sql = ` UPDATE edb_info SET no_update = ? WHERE edb_info_id IN (` + utils.GetOrmInReplace(len(calculateEdbInfoIds)) + `) `
  773. err = to.Exec(sql, isStop, calculateEdbInfoIds).Error
  774. if err != nil {
  775. return
  776. }
  777. }
  778. return
  779. }
  780. func ModifyMysteelChemicalUpdateStatusByEdbInfoIds(edbInfoIds []int, isStop int, edbCodes []string, calculateEdbInfoIds []int) (err error) {
  781. //o, err := orm.NewOrmUsingDB("data").Begin()
  782. //if err != nil {
  783. // return
  784. //}
  785. //defer func() {
  786. // if err != nil {
  787. // _ = o.Rollback()
  788. // return
  789. // }
  790. // _ = o.Commit()
  791. //}()
  792. to := global.DmSQL["data"].Begin()
  793. defer func() {
  794. if err != nil {
  795. _ = to.Rollback()
  796. } else {
  797. _ = to.Commit()
  798. }
  799. }()
  800. // 更改数据源的更新状态
  801. //sql := ` UPDATE base_from_mysteel_chemical_index SET is_stop = ? WHERE index_code IN (` + utils.GetOrmInReplace(len(edbCodes)) + `) `
  802. //_, err = o.Raw(sql, isStop, edbCodes).Exec()
  803. //if err != nil {
  804. // return
  805. //}
  806. sql := ` UPDATE base_from_mysteel_chemical_index SET is_stop = ? WHERE index_code IN (` + utils.GetOrmInReplace(len(edbCodes)) + `) `
  807. err = to.Exec(sql, isStop, edbCodes).Error
  808. if err != nil {
  809. return
  810. }
  811. // 更改指标的更新状态
  812. //sql = ` UPDATE edb_info SET no_update = ? WHERE source = ? AND edb_info_id IN (` + utils.GetOrmInReplace(len(edbInfoIds)) + `) `
  813. //_, err = o.Raw(sql, isStop, utils.DATA_SOURCE_MYSTEEL_CHEMICAL, edbInfoIds).Exec()
  814. //if err != nil {
  815. // return
  816. //}
  817. sql = ` UPDATE edb_info SET no_update = ? WHERE source = ? AND edb_info_id IN (` + utils.GetOrmInReplace(len(edbInfoIds)) + `) `
  818. err = to.Exec(sql, isStop, utils.DATA_SOURCE_MYSTEEL_CHEMICAL, edbInfoIds).Error
  819. if err != nil {
  820. return
  821. }
  822. if len(calculateEdbInfoIds) > 0 {
  823. // 批量更新相关联的指标ID
  824. //sql = ` UPDATE edb_info SET no_update = ? WHERE edb_info_id IN (` + utils.GetOrmInReplace(len(calculateEdbInfoIds)) + `) `
  825. //_, err = o.Raw(sql, isStop, calculateEdbInfoIds).Exec()
  826. //if err != nil {
  827. // return
  828. //}
  829. sql = ` UPDATE edb_info SET no_update = ? WHERE edb_info_id IN (` + utils.GetOrmInReplace(len(calculateEdbInfoIds)) + `) `
  830. err = to.Exec(sql, isStop, calculateEdbInfoIds).Error
  831. if err != nil {
  832. return
  833. }
  834. }
  835. return
  836. }
  837. // GetNotIsSupplierStopIndexByCodeList
  838. // @Description: 获取未被供应商停更的指标
  839. // @author: Roc
  840. // @datetime 2024-08-28 18:15:03
  841. // @param codeList []string
  842. // @param isStop int
  843. // @return items []*BaseFromMysteelChemicalIndex
  844. // @return err error
  845. func GetNotIsSupplierStopIndexByCodeList(codeList []string, isStop int) (items []*BaseFromMysteelChemicalIndex, err error) {
  846. num := len(codeList)
  847. if num <= 0 {
  848. return
  849. }
  850. //o := orm.NewOrmUsingDB("data")
  851. //sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE is_supplier_stop = ? AND index_code in (` + utils.GetOrmInReplace(num) + `) `
  852. //_, err = o.Raw(sql, isStop, codeList).QueryRows(&items)
  853. sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE is_supplier_stop = ? AND index_code in (` + utils.GetOrmInReplace(num) + `) `
  854. err = global.DmSQL["data"].Raw(sql, isStop, codeList).Find(&items).Error
  855. return
  856. }