第二代基于事件的高级计划排程引擎
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

175 lines
4.5 KiB

3 years ago
3 years ago
3 years ago
  1. // Copyright (c) Shenyang Leading Edge Intelligent Technology Co., Ltd. All rights reserved.
  2. package models
  3. import (
  4. "errors"
  5. "leit.com/aps_engine/db"
  6. "time"
  7. "xorm.io/core"
  8. )
  9. type Skill struct {
  10. Plantnr int `json:"PlantNr" xorm:"not null pk INT(4)"`
  11. Skillnr int `json:"SkillNr" xorm:"not null pk INT(4)"`
  12. Abrev string `json:"Abrev" xorm:"not null NVARCHAR(80)"`
  13. Descr string `json:"Descr" xorm:"not null NVARCHAR(200)"`
  14. Skilltype string `json:"SkillType" xorm:"not null NVARCHAR(80)"`
  15. Ctrlpara1 int `json:"CtrlPara1" xorm:"not null INT(4)"`
  16. Ctrlpara2 int `json:"CtrlPara2" xorm:"not null INT(4)"`
  17. Ctrlstr1 string `json:"CtrlStr1" xorm:"not null NVARCHAR(200)"`
  18. Ctrlstr2 string `json:"CtrlStr2" xorm:"not null NVARCHAR(200)"`
  19. Lastmodify time.Time `json:"LastModify" xorm:"DATETIME(8)"`
  20. Lastuser string `json:"LastUser" xorm:"not null NVARCHAR(40)"`
  21. Createtime time.Time `json:"CreateTime" xorm:"DATETIME(8)"`
  22. }
  23. /******数据表名******/
  24. func (t *Skill) TableName() string {
  25. return "Skill"
  26. }
  27. /******************************************************************************
  28. *
  29. * @Function Name :
  30. *-----------------------------------------------------------------------------
  31. *
  32. * @Description : 数据添加
  33. *
  34. * @Function Parameters:
  35. *
  36. * @Return Value :
  37. *
  38. * @Author : Lou Wenzhi
  39. *
  40. * @Date : 2021/3/6 8:47
  41. *
  42. ******************************************************************************/
  43. func (t *Skill) Add() error {
  44. e := db.Eloquent.Master()
  45. count := new(Skill)
  46. /**主键:****/
  47. /******/
  48. affw, err := e.Table(t.TableName()).ID(core.PK{t.Plantnr, t.Skillnr}).Count(count)
  49. if err != nil {
  50. return err
  51. }
  52. if affw > 0 {
  53. return errors.New("数据已经存在!")
  54. }
  55. _, err = e.Table(t.TableName()).Insert(t)
  56. if err != nil {
  57. return err
  58. }
  59. return nil
  60. }
  61. /******************************************************************************
  62. *
  63. * @Function Name :
  64. *-----------------------------------------------------------------------------
  65. *
  66. * @Description : 数据删除
  67. *
  68. * @Function Parameters:
  69. *
  70. * @Return Value :
  71. *
  72. * @Author : Lou Wenzhi
  73. *
  74. * @Date : 2021/3/6 8:47
  75. *
  76. ******************************************************************************/
  77. func (t *Skill) Del() (err error) {
  78. e := db.Eloquent.Master()
  79. /**主键:****/
  80. /******/
  81. _, err = e.ID(core.PK{t.Plantnr, t.Skillnr}).Delete(&Skill{})
  82. if err != nil {
  83. return
  84. }
  85. return nil
  86. }
  87. /******************************************************************************
  88. *
  89. * @Function Name :
  90. *-----------------------------------------------------------------------------
  91. *
  92. * @Description : 数据修改
  93. *
  94. * @Function Parameters:
  95. *
  96. * @Return Value :
  97. *
  98. * @Author : Lou Wenzhi
  99. *
  100. * @Date : 2021/3/6 8:47
  101. *
  102. ******************************************************************************/
  103. func (t *Skill) Update() error {
  104. e := db.Eloquent.Master()
  105. /**主键:****/
  106. /******/
  107. _, err := e.ID(core.PK{t.Plantnr, t.Skillnr}).Update(t)
  108. if err != nil {
  109. return err
  110. }
  111. return nil
  112. }
  113. /******************************************************************************
  114. *
  115. * @Function Name :
  116. *-----------------------------------------------------------------------------
  117. *
  118. * @Description : 数据查找
  119. *
  120. * @Function Parameters:
  121. *
  122. * @Return Value :
  123. *
  124. * @Author : Lou Wenzhi
  125. *
  126. * @Date : 2021/3/6 8:47
  127. *
  128. ******************************************************************************/
  129. func (t *Skill) SelectOne() (Skill, error) {
  130. e := db.Eloquent.Master()
  131. var data Skill
  132. /**主键:****/
  133. /******/
  134. _, err := e.ID(core.PK{t.Plantnr, t.Skillnr}).Get(&data)
  135. if err != nil {
  136. return data, err
  137. }
  138. return data, nil
  139. }
  140. /******************************************************************************
  141. *
  142. * @Function Name :
  143. *-----------------------------------------------------------------------------
  144. *
  145. * @Description : 查找所有的技能
  146. *
  147. * @Function Parameters:
  148. *
  149. * @Return Value :
  150. *
  151. * @Author : LEO XUE
  152. *
  153. * @Date : 2021/5/10 8:47
  154. *
  155. ******************************************************************************/
  156. func (t *Skill) SelectAll() (datalst []Skill, err error) {
  157. e := db.Eloquent.Master()
  158. if err = e.Table(t.TableName()).Where("PlantNr = ?",t.Plantnr).OrderBy("SkillNr").Find(&datalst); err != nil{
  159. return
  160. }
  161. return
  162. }