第二代基于事件的高级计划排程引擎
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.

182 lines
5.0 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 Person struct {
  10. Plantnr int `json:"PlantNr" xorm:"not null pk INT(4)"`
  11. Personnr int `json:"PersonNr" xorm:"not null pk INT(4)"`
  12. Personid string `json:"PersonId" xorm:"not null NVARCHAR(80)"`
  13. Name string `json:"Name" xorm:"not null NVARCHAR(80)"`
  14. Status int `json:"Status" xorm:"not null INT(4)"`
  15. Costcenterid string `json:"CostCenterId" xorm:"not null NVARCHAR(80)"`
  16. Departmentid string `json:"DepartmentId" xorm:"not null NVARCHAR(80)"`
  17. Salarygrpid string `json:"SalaryGrpId" xorm:"not null NVARCHAR(80)"`
  18. Bonusgrpid string `json:"BonusGrpId" xorm:"not null NVARCHAR(80)"`
  19. Entrydate time.Time `json:"EntryDate" xorm:"DATE(3)"`
  20. Birthdate time.Time `json:"BirthDate" xorm:"DATE(3)"`
  21. Avatar string `json:"Avatar" xorm:"not null NVARCHAR(200)"`
  22. Personipara1 int `json:"PersonIPara1" xorm:"not null INT(4)"`
  23. Personipara2 int `json:"PersonIPara2" xorm:"not null INT(4)"`
  24. Persondpara1 float32 `json:"PersonDPara1" xorm:"not null FLOAT(8)"`
  25. Persondpara2 float32 `json:"PersonDPara2" xorm:"not null FLOAT(8)"`
  26. Lastmodify time.Time `json:"LastModify" xorm:"DATETIME(8)"`
  27. Lastuser string `json:"LastUser" xorm:"not null NVARCHAR(40)"`
  28. Createtime time.Time `json:"CreateTime" xorm:"DATETIME(8)"`
  29. }
  30. /******数据表名******/
  31. func (t *Person) TableName() string {
  32. return "Person"
  33. }
  34. /******************************************************************************
  35. *
  36. * @Function Name :
  37. *-----------------------------------------------------------------------------
  38. *
  39. * @Description : 数据添加
  40. *
  41. * @Function Parameters:
  42. *
  43. * @Return Value :
  44. *
  45. * @Author : Lou Wenzhi
  46. *
  47. * @Date : 2021/3/6 8:47
  48. *
  49. ******************************************************************************/
  50. func (t *Person) Add() error {
  51. e := db.Eloquent.Master()
  52. count := new(Person)
  53. /**主键:****/
  54. /******/
  55. affw, err := e.Table(t.TableName()).ID(core.PK{t.Plantnr, t.Personnr}).Count(count)
  56. if err != nil {
  57. return err
  58. }
  59. if affw > 0 {
  60. return errors.New("数据已经存在!")
  61. }
  62. _, err = e.Table(t.TableName()).Insert(t)
  63. if err != nil {
  64. return err
  65. }
  66. return nil
  67. }
  68. /******************************************************************************
  69. *
  70. * @Function Name :
  71. *-----------------------------------------------------------------------------
  72. *
  73. * @Description : 数据删除
  74. *
  75. * @Function Parameters:
  76. *
  77. * @Return Value :
  78. *
  79. * @Author : Lou Wenzhi
  80. *
  81. * @Date : 2021/3/6 8:47
  82. *
  83. ******************************************************************************/
  84. func (t *Person) Del() (err error) {
  85. e := db.Eloquent.Master()
  86. /**主键:****/
  87. /******/
  88. _, err = e.ID(core.PK{t.Plantnr, t.Personnr}).Delete(&Person{})
  89. if err != nil {
  90. return
  91. }
  92. return nil
  93. }
  94. /******************************************************************************
  95. *
  96. * @Function Name :
  97. *-----------------------------------------------------------------------------
  98. *
  99. * @Description : 数据修改
  100. *
  101. * @Function Parameters:
  102. *
  103. * @Return Value :
  104. *
  105. * @Author : Lou Wenzhi
  106. *
  107. * @Date : 2021/3/6 8:47
  108. *
  109. ******************************************************************************/
  110. func (t *Person) Update() error {
  111. e := db.Eloquent.Master()
  112. /**主键:****/
  113. /******/
  114. _, err := e.ID(core.PK{t.Plantnr, t.Personnr}).Update(t)
  115. if err != nil {
  116. return err
  117. }
  118. return nil
  119. }
  120. /******************************************************************************
  121. *
  122. * @Function Name :
  123. *-----------------------------------------------------------------------------
  124. *
  125. * @Description : 数据查找
  126. *
  127. * @Function Parameters:
  128. *
  129. * @Return Value :
  130. *
  131. * @Author : Lou Wenzhi
  132. *
  133. * @Date : 2021/3/6 8:47
  134. *
  135. ******************************************************************************/
  136. func (t *Person) SelectOne() (Person, error) {
  137. e := db.Eloquent.Master()
  138. var data Person
  139. /**主键:****/
  140. /******/
  141. _, err := e.ID(core.PK{t.Plantnr, t.Personnr}).Get(&data)
  142. if err != nil {
  143. return data, err
  144. }
  145. return data, nil
  146. }
  147. /******************************************************************************
  148. *
  149. * @Function Name :
  150. *-----------------------------------------------------------------------------
  151. *
  152. * @Description : 查找所有的人员
  153. *
  154. * @Function Parameters:
  155. *
  156. * @Return Value :
  157. *
  158. * @Author : LEO XUE
  159. *
  160. * @Date : 2021/5/10 8:47
  161. *
  162. ******************************************************************************/
  163. func (t *Person) SelectAll() (datalst []Person, err error) {
  164. e := db.Eloquent.Master()
  165. if err = e.Table(t.TableName()).Where("PlantNr = ?",t.Plantnr).OrderBy("PersonNr").Find(&datalst); err != nil{
  166. return
  167. }
  168. return
  169. }