GAAS GFrame项目web后台
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.

274 lines
7.5 KiB

  1. package controllers
  2. import (
  3. "LAPP_GAAS_GFrame_BACKEND/utils"
  4. "LAPP_GAAS_GFrame_BACKEND/web/middleware/jwts"
  5. "LAPP_GAAS_GFrame_BACKEND/web/models"
  6. "LAPP_GAAS_GFrame_BACKEND/web/supports"
  7. "encoding/json"
  8. "github.com/kataras/iris/v12"
  9. "log"
  10. "time"
  11. )
  12. func GetAttributeList(ctx iris.Context) {
  13. user, ok := jwts.ParseToken(ctx)
  14. utils.TrimStruct(user, *user)
  15. if !ok {
  16. supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil)
  17. return
  18. }
  19. //日志
  20. logs := new(models.LeitServerLog)
  21. logs.File = "/controllers/me_attribute_controller.go"
  22. logs.Level = "info"
  23. logs.Function = "GetAttributeList"
  24. logs.Message = "查询属性主数据"
  25. logs.Operator = user.Userid
  26. logs.TimeStamp = utils.TimeFormat(time.Now(), "yyyyMMddHHmmss")
  27. logs.InsertRecord()
  28. var data models.PmAttribute
  29. var err error
  30. var pageSize = 10
  31. var pageIndex = 1
  32. if size := ctx.URLParam("pageSize"); size != "" {
  33. pageSize = utils.ValueToInt(size, 0)
  34. }
  35. if index := ctx.URLParam("pageIndex"); index != "" {
  36. pageIndex = utils.ValueToInt(index, 0)
  37. }
  38. descr := ctx.URLParamTrim("descr")
  39. data.Finr = user.Pid
  40. result, count, err := data.GetPage(descr, pageSize, pageIndex)
  41. if err != nil {
  42. supports.Error(ctx, iris.StatusBadRequest, "抱歉未找到相关信息", nil)
  43. return
  44. }
  45. res := make(map[string]interface{})
  46. res["data"] = result
  47. res["count"] = count
  48. res["pageIndex"] = pageIndex
  49. res["pageSize"] = pageSize
  50. supports.Ok(ctx, supports.OptionSuccess, res)
  51. }
  52. func GetAttribute(ctx iris.Context) {
  53. user, ok := jwts.ParseToken(ctx)
  54. utils.TrimStruct(user, *user)
  55. if !ok {
  56. supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil)
  57. return
  58. }
  59. var me models.PmAttribute
  60. me.Attrnr, _ = ctx.URLParamInt("attrnr")
  61. me.Finr = user.Pid
  62. result, err := me.SelectOne()
  63. if err != nil {
  64. supports.Error(ctx, iris.StatusBadRequest, "抱歉未找到相关信息", nil)
  65. return
  66. }
  67. supports.Ok(ctx, supports.OptionSuccess, result)
  68. }
  69. func InsertAttribute(ctx iris.Context) {
  70. user, ok := jwts.ParseToken(ctx)
  71. utils.TrimStruct(user, *user)
  72. if !ok {
  73. supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil)
  74. return
  75. }
  76. //日志
  77. logs := new(models.LeitServerLog)
  78. logs.File = "/controllers/me_attribute_controller.go"
  79. logs.Level = "info"
  80. logs.Function = "InsertAttribute"
  81. logs.Message = "添加属性主数据"
  82. logs.Operator = user.Userid
  83. logs.TimeStamp = utils.TimeFormat(time.Now(), "yyyyMMddHHmmss")
  84. logs.InsertRecord()
  85. data := new(models.PmAttribute)
  86. temdata := ctx.FormValue("data")
  87. err := json.Unmarshal([]byte(temdata), data)
  88. data.Finr = user.Pid
  89. if err != nil {
  90. supports.Error(ctx, iris.StatusBadRequest, "json解析错误", nil)
  91. return
  92. }
  93. file, info, err := ctx.FormFile("valpicture")
  94. if err == nil {
  95. defer file.Close()
  96. guid := utils.MakeOrderSn("Attr")
  97. filePath := "public/uploadfile/" + guid + ".jpg"
  98. savePath := "web/public/uploadfile/" + guid + ".jpg"
  99. // 上传文件至指定目录
  100. err = utils.SaveUploadedFile(info, savePath)
  101. if err != nil {
  102. log.Printf("上传图片错误:%v", err)
  103. supports.Error(ctx, iris.StatusBadRequest, "valpicture上传图片错误", nil)
  104. return
  105. }
  106. data.Valpicture = filePath
  107. }
  108. file1, pic1, err := ctx.FormFile("pic1")
  109. if err == nil {
  110. defer file1.Close()
  111. guid1 := utils.MakeOrderSn("Attr")
  112. pic1Path := "public/uploadfile/" + guid1 + ".jpg"
  113. save1Path := "web/public/uploadfile/" + guid1 + ".jpg"
  114. // 上传文件至指定目录
  115. err = utils.SaveUploadedFile(pic1, save1Path)
  116. if err != nil {
  117. log.Printf("上传图片错误:%v", err)
  118. supports.Error(ctx, iris.StatusBadRequest, "pic1上传图片错误", nil)
  119. return
  120. }
  121. data.Picture1 = pic1Path
  122. }
  123. file2, pic2, err := ctx.FormFile("pic2")
  124. if err == nil {
  125. defer file2.Close()
  126. guid2 := utils.MakeOrderSn("Attr")
  127. pic2Path := "public/uploadfile/" + guid2 + ".jpg"
  128. save2Path := "web/public/uploadfile/" + guid2 + ".jpg"
  129. // 上传文件至指定目录
  130. err = utils.SaveUploadedFile(pic2, save2Path)
  131. if err != nil {
  132. log.Printf("上传图片错误:%v", err)
  133. supports.Error(ctx, iris.StatusBadRequest, "pic2上传图片错误", nil)
  134. return
  135. }
  136. data.Picture2 = pic2Path
  137. }
  138. data.Lastuser = user.Userid
  139. data.Credatuz = utils.TimeFormat(time.Now(), "yyyyMMddHHmmss")
  140. data.Lastmodif = utils.TimeFormat(time.Now(), "yyyyMMddHHmmss")
  141. err = data.Add()
  142. if err != nil {
  143. log.Printf("错误信息:%v", err)
  144. supports.Error(ctx, iris.StatusBadRequest, "数据已经存在!", nil)
  145. return
  146. }
  147. supports.Ok(ctx, supports.OptionSuccess, data)
  148. }
  149. func UpdateAttribute(ctx iris.Context) {
  150. user, ok := jwts.ParseToken(ctx)
  151. utils.TrimStruct(user, *user)
  152. if !ok {
  153. supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil)
  154. return
  155. }
  156. //日志
  157. logs := new(models.LeitServerLog)
  158. logs.File = "/controllers/me_attribute_controller.go"
  159. logs.Level = "info"
  160. logs.Function = "UpdateAttribute"
  161. logs.Message = "更新属性主数据"
  162. logs.Operator = user.Userid
  163. logs.TimeStamp = utils.TimeFormat(time.Now(), "yyyyMMddHHmmss")
  164. logs.InsertRecord()
  165. data := new(models.PmAttribute)
  166. temdata := ctx.FormValue("data")
  167. err := json.Unmarshal([]byte(temdata), data)
  168. if err != nil {
  169. supports.Error(ctx, iris.StatusBadRequest, "json解析错误", nil)
  170. return
  171. }
  172. file, info, err := ctx.FormFile("valpicture")
  173. if err == nil {
  174. defer file.Close()
  175. guid := utils.MakeOrderSn("Attr")
  176. filePath := "public/uploadfile/" + guid + ".jpg"
  177. savePath := "web/public/uploadfile/" + guid + ".jpg"
  178. // 上传文件至指定目录
  179. err = utils.SaveUploadedFile(info, savePath)
  180. if err != nil {
  181. log.Printf("上传图片错误:%v", err)
  182. supports.Error(ctx, iris.StatusBadRequest, "valpicture上传图片错误", nil)
  183. return
  184. }
  185. data.Valpicture = filePath
  186. }
  187. file1, pic1, err := ctx.FormFile("pic1")
  188. if err == nil {
  189. defer file1.Close()
  190. guid1 := utils.MakeOrderSn("Attr")
  191. pic1Path := "public/uploadfile/" + guid1 + ".jpg"
  192. save1Path := "web/public/uploadfile/" + guid1 + ".jpg"
  193. // 上传文件至指定目录
  194. err = utils.SaveUploadedFile(pic1, save1Path)
  195. if err != nil {
  196. log.Printf("上传图片错误:%v", err)
  197. supports.Error(ctx, iris.StatusBadRequest, "pic1上传图片错误", nil)
  198. return
  199. }
  200. data.Picture1 = pic1Path
  201. }
  202. file2, pic2, err := ctx.FormFile("pic2")
  203. if err == nil {
  204. defer file2.Close()
  205. guid2 := utils.MakeOrderSn("Attr")
  206. pic2Path := "public/uploadfile/" + guid2 + ".jpg"
  207. save2Path := "web/public/uploadfile/" + guid2 + ".jpg"
  208. // 上传文件至指定目录
  209. err = utils.SaveUploadedFile(pic2, save2Path)
  210. if err != nil {
  211. log.Printf("上传图片错误:%v", err)
  212. supports.Error(ctx, iris.StatusBadRequest, "pic2上传图片错误", nil)
  213. return
  214. }
  215. data.Picture2 = pic2Path
  216. }
  217. data.Lastuser = user.Userid
  218. res := data.Update()
  219. if !res {
  220. supports.Error(ctx, iris.StatusBadRequest, "更新失败", nil)
  221. return
  222. }
  223. supports.Ok(ctx, "修改成功", "")
  224. }
  225. func DeleteAttribute(ctx iris.Context) {
  226. user, ok := jwts.ParseToken(ctx)
  227. utils.TrimStruct(user, *user)
  228. if !ok {
  229. supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil)
  230. return
  231. }
  232. //日志
  233. logs := new(models.LeitServerLog)
  234. logs.File = "/controllers/me_attribute_controller.go"
  235. logs.Level = "info"
  236. logs.Function = "DeleteAttribute"
  237. logs.Message = "删除属性主数据"
  238. logs.Operator = user.Userid
  239. logs.TimeStamp = utils.TimeFormat(time.Now(), "yyyyMMddHHmmss")
  240. logs.InsertRecord()
  241. me := new(models.PmAttribute)
  242. me.Attrnr, _ = ctx.URLParamInt("attrnr")
  243. me.Finr = user.Pid
  244. res := me.Del()
  245. if !res {
  246. supports.Error(ctx, iris.StatusBadRequest, "删除失败", nil)
  247. return
  248. }
  249. supports.Ok(ctx, "删除成功", "")
  250. }