contractEvaluationItems.go 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337
  1. package oilcontract
  2. import (
  3. "encoding/json"
  4. "strconv"
  5. "time"
  6. "dashoo.cn/backend/api/business/baseUser"
  7. // "dashoo.cn/backend/api/business/items"
  8. "dashoo.cn/backend/api/business/oilcontract/contractEvaluationItems"
  9. . "dashoo.cn/backend/api/controllers"
  10. "dashoo.cn/business2/userRole"
  11. "dashoo.cn/utils"
  12. )
  13. type OilContractEvaluationItemsController struct {
  14. BaseController
  15. }
  16. // @Title 获取列表
  17. // @Description get user by token
  18. // @Success 200 {object} []contractEvaluationItems.OilContractEvaluationItems
  19. // @router /list [get]
  20. func (this *OilContractEvaluationItemsController) GetEntityList() {
  21. //获取分页信息
  22. page := this.GetPageInfoForm()
  23. where := " 1=1 "
  24. orderby := "Id"
  25. asc := false
  26. Order := this.GetString("Order")
  27. Prop := this.GetString("Prop")
  28. if Order != "" && Prop != "" {
  29. orderby = Prop
  30. if Order == "asc" {
  31. asc = true
  32. }
  33. }
  34. Id := this.GetString("Id")
  35. ContractId := this.GetString("ContractId")
  36. ParentId := this.GetString("ParentId")
  37. SequenceNo := this.GetString("SequenceNo")
  38. Content := this.GetString("Content")
  39. NormalScore := this.GetString("NormalScore")
  40. Score := this.GetString("Score")
  41. LevelCode := this.GetString("LevelCode")
  42. Remark := this.GetString("Remark")
  43. ModifiedOn := this.GetString("ModifiedOn")
  44. ModifiedUserId := this.GetString("ModifiedUserId")
  45. ModifiedBy := this.GetString("ModifiedBy")
  46. if Id != "" {
  47. where = where + " and Id like '%" + Id + "%'"
  48. }
  49. if ContractId != "" {
  50. where = where + " and ContractId like '%" + ContractId + "%'"
  51. }
  52. if ParentId != "" {
  53. where = where + " and ParentId like '%" + ParentId + "%'"
  54. }
  55. if SequenceNo != "" {
  56. where = where + " and SequenceNo like '%" + SequenceNo + "%'"
  57. }
  58. if Content != "" {
  59. where = where + " and Content like '%" + Content + "%'"
  60. }
  61. if NormalScore != "" {
  62. where = where + " and NormalScore like '%" + NormalScore + "%'"
  63. }
  64. if Score != "" {
  65. where = where + " and Score like '%" + Score + "%'"
  66. }
  67. if LevelCode != "" {
  68. where = where + " and LevelCode like '%" + LevelCode + "%'"
  69. }
  70. if Remark != "" {
  71. where = where + " and Remark like '%" + Remark + "%'"
  72. }
  73. if ModifiedOn != "" {
  74. where = where + " and ModifiedOn like '%" + ModifiedOn + "%'"
  75. }
  76. if ModifiedUserId != "" {
  77. where = where + " and ModifiedUserId like '%" + ModifiedUserId + "%'"
  78. }
  79. if ModifiedBy != "" {
  80. where = where + " and ModifiedBy like '%" + ModifiedBy + "%'"
  81. }
  82. svc := contractEvaluationItems.GetOilContractEvaluationItemsService(utils.DBE)
  83. var list []contractEvaluationItems.OilContractEvaluationItems
  84. total := svc.GetPagingEntitiesWithOrderBytbl("", page.CurrentPage, page.Size, orderby, asc, &list, where)
  85. var datainfo DataInfo
  86. datainfo.Items = list
  87. datainfo.CurrentItemCount = total
  88. datainfo.PageIndex = page.CurrentPage
  89. datainfo.ItemsPerPage = page.Size
  90. this.Data["json"] = &datainfo
  91. this.ServeJSON()
  92. }
  93. // @Title 获取列表树
  94. // @Description get user by token
  95. // @Success 200 {object} []contractEvaluationItems.OilContractEvaluationItems
  96. // @router /tree [get]
  97. func (this *OilContractEvaluationItemsController) GetTreeList() {
  98. //获取分页信息
  99. page := this.GetPageInfoForm()
  100. orderby := "Id"
  101. where := " ParentId = 0 "
  102. Id := this.GetString("ContentReviewId") // 评价主表ID
  103. Category:= this.GetString("Category","0") // 类型 0 二级部门创建 1 专业处创建
  104. if Id != "" {
  105. where = where + " and ContentReviewId = '" + Id + "'"
  106. }
  107. if Category != "" {
  108. where = where + " and Category = '" + Category + "'"
  109. }
  110. svc := contractEvaluationItems.GetOilContractEvaluationItemsService(utils.DBE)
  111. var list []contractEvaluationItems.OilContractEvaluationItems
  112. var result []contractEvaluationItems.EvaluationItems
  113. total := svc.GetPagingEntitiesWithOrderBytbl("", page.CurrentPage, page.Size, orderby, true, &list, where)
  114. for _, value := range list {
  115. var firstTmp contractEvaluationItems.EvaluationItems
  116. firstTmp.Content = value.Content
  117. firstTmp.ParentId = value.ParentId
  118. firstTmp.Id = value.Id
  119. firstTmp.SequenceNo = value.SequenceNo
  120. firstTmp.NormalScore = value.NormalScore
  121. firstTmp.Remark = value.Remark
  122. firstTmp.LevelCode = value.LevelCode
  123. var list1 []contractEvaluationItems.EvaluationItems
  124. where1 := " ParentId = " + strconv.Itoa(value.Id)
  125. svc.GetPagingEntitiesWithOrderBytbl("", page.CurrentPage, page.Size, orderby, true, &list1, where1)
  126. for _, v := range list1 {
  127. var secTmp contractEvaluationItems.EvaluationItems
  128. secTmp.Content = v.Content
  129. secTmp.Content = v.Content
  130. secTmp.ParentId = v.ParentId
  131. secTmp.Id = v.Id
  132. secTmp.SequenceNo = v.SequenceNo
  133. secTmp.NormalScore = v.NormalScore
  134. secTmp.Remark = v.Remark
  135. secTmp.LevelCode = v.LevelCode
  136. firstTmp.Child = append(firstTmp.Child, secTmp)
  137. }
  138. result = append(result, firstTmp)
  139. }
  140. var datainfo DataInfo
  141. datainfo.Items = result
  142. datainfo.CurrentItemCount = total
  143. //datainfo.PageIndex = page.CurrentPage
  144. //datainfo.ItemsPerPage = page.Size
  145. this.Data["json"] = &datainfo
  146. this.ServeJSON()
  147. }
  148. // @Title 获取字典列表
  149. // @Description get user by token
  150. // @Success 200 {object} map[string]interface{}
  151. // @router /dictlist [get]
  152. func (this *OilContractEvaluationItemsController) GetDictList() {
  153. dictList := make(map[string]interface{})
  154. //dictSvc := items.GetItemsService(utils.DBE)
  155. userSvc := baseUser.GetBaseUserService(utils.DBE)
  156. //customerSvc := svccustomer.GetCustomerService(utils.DBE)
  157. //dictList["WellNo"] = dictSvc.GetKeyValueItems("WellNo", "")
  158. var userEntity userRole.Base_User
  159. userSvc.GetEntityById(this.User.Id, &userEntity)
  160. dictList["Supervisers"] = userSvc.GetUserListByDepartmentId("", userEntity.Departmentid)
  161. //var dictCustomer []svccustomer.Customer
  162. //customerSvc.GetEntitysByWhere("" + CustomerName, "", &dictCustomer)
  163. //dictList["EntrustCorp"] = &dictCustomer
  164. var datainfo DataInfo
  165. datainfo.Items = dictList
  166. this.Data["json"] = &datainfo
  167. this.ServeJSON()
  168. }
  169. // @Title 获取实体
  170. // @Description 获取实体
  171. // @Success 200 {object} contractEvaluationItems.OilContractEvaluationItems
  172. // @router /get/:id [get]
  173. func (this *OilContractEvaluationItemsController) GetEntity() {
  174. Id := this.Ctx.Input.Param(":id")
  175. var model contractEvaluationItems.OilContractEvaluationItems
  176. svc := contractEvaluationItems.GetOilContractEvaluationItemsService(utils.DBE)
  177. svc.GetEntityByIdBytbl(OilContractEvaluationItemsName, Id, &model)
  178. this.Data["json"] = &model
  179. this.ServeJSON()
  180. }
  181. // @Title 添加
  182. // @Description 新增
  183. // @Param body body contractEvaluationItems.OilContractEvaluationItems
  184. // @Success 200 {object} controllers.Request
  185. // @router /add [post]
  186. func (this *OilContractEvaluationItemsController) AddEntity() {
  187. var model contractEvaluationItems.OilContractEvaluationItems
  188. var jsonBlob = this.Ctx.Input.RequestBody
  189. svc := contractEvaluationItems.GetOilContractEvaluationItemsService(utils.DBE)
  190. json.Unmarshal(jsonBlob, &model)
  191. _, err := svc.InsertEntityBytbl(OilContractEvaluationItemsName, &model)
  192. var errinfo ErrorDataInfo
  193. if err == nil {
  194. //新增
  195. errinfo.Message = "添加成功!"
  196. errinfo.Code = 0
  197. errinfo.Item = model.Id
  198. this.Data["json"] = &errinfo
  199. this.ServeJSON()
  200. } else {
  201. errinfo.Message = "添加失败!" + utils.AlertProcess(err.Error())
  202. errinfo.Code = -1
  203. this.Data["json"] = &errinfo
  204. this.ServeJSON()
  205. }
  206. }
  207. // @Title 修改实体
  208. // @Description 修改实体
  209. // @Param body body contractEvaluationItems.OilContractEvaluationItems
  210. // @Success 200 {object} controllers.Request
  211. // @router /update/:id [post]
  212. func (this *OilContractEvaluationItemsController) UpdateEntity() {
  213. id := this.Ctx.Input.Param(":id")
  214. var errinfo ErrorInfo
  215. if id == "" {
  216. errinfo.Message = "操作失败!请求信息不完整"
  217. errinfo.Code = -2
  218. this.Data["json"] = &errinfo
  219. this.ServeJSON()
  220. return
  221. }
  222. var model contractEvaluationItems.OilContractEvaluationItems
  223. svc := contractEvaluationItems.GetOilContractEvaluationItemsService(utils.DBE)
  224. var jsonBlob = this.Ctx.Input.RequestBody
  225. json.Unmarshal(jsonBlob, &model)
  226. model.ModifiedOn = time.Now()
  227. model.ModifiedBy = this.User.Realname
  228. model.ModifiedUserId, _ = utils.StrTo(this.User.Id).Int()
  229. cols := []string{
  230. "Id",
  231. "ContractId",
  232. "ContractWorkId",
  233. "ParentId",
  234. "SequenceNo",
  235. "Content",
  236. "NormalScore",
  237. "Score",
  238. "LevelCode",
  239. "Remark",
  240. "ModifiedOn",
  241. "ModifiedUserId",
  242. "ModifiedBy",
  243. }
  244. err := svc.UpdateEntityBytbl(OilContractEvaluationItemsName, id, &model, cols)
  245. if err == nil {
  246. errinfo.Message = "修改成功!"
  247. errinfo.Code = 0
  248. this.Data["json"] = &errinfo
  249. this.ServeJSON()
  250. } else {
  251. errinfo.Message = "修改失败!" + utils.AlertProcess(err.Error())
  252. errinfo.Code = -1
  253. this.Data["json"] = &errinfo
  254. this.ServeJSON()
  255. }
  256. }
  257. // @Title 删除单条信息
  258. // @Description
  259. // @Success 200 {object} ErrorInfo
  260. // @Failure 403 :id 为空
  261. // @router /delete/:Id [delete]
  262. func (this *OilContractEvaluationItemsController) DeleteEntity() {
  263. Id := this.Ctx.Input.Param(":Id")
  264. var errinfo ErrorInfo
  265. if Id == "" {
  266. errinfo.Message = "操作失败!请求信息不完整"
  267. errinfo.Code = -2
  268. this.Data["json"] = &errinfo
  269. this.ServeJSON()
  270. return
  271. }
  272. var model contractEvaluationItems.OilContractEvaluationItems
  273. var entityempty contractEvaluationItems.OilContractEvaluationItems
  274. svc := contractEvaluationItems.GetOilContractEvaluationItemsService(utils.DBE)
  275. opdesc := "删除-" + Id
  276. err := svc.DeleteOperationAndWriteLogBytbl(OilContractEvaluationItemsName, BaseOperationLogName, Id, &model, &entityempty, utils.ToStr(this.User.Id), this.User.Username, opdesc, "", "钻井日报")
  277. if err == nil {
  278. errinfo.Message = "删除成功"
  279. errinfo.Code = 0
  280. this.Data["json"] = &errinfo
  281. this.ServeJSON()
  282. } else {
  283. errinfo.Message = "删除失败!" + utils.AlertProcess(err.Error())
  284. errinfo.Code = -1
  285. this.Data["json"] = &errinfo
  286. this.ServeJSON()
  287. }
  288. }