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.

120 lines
3.4 KiB

  1. package controllers
  2. import (
  3. "LAPP_LF_MOM_BACKEND/utils"
  4. "LAPP_LF_MOM_BACKEND/web/middleware/jwts"
  5. "LAPP_LF_MOM_BACKEND/web/models"
  6. "LAPP_LF_MOM_BACKEND/web/supports"
  7. "encoding/json"
  8. "github.com/kataras/iris/v12"
  9. "log"
  10. "time"
  11. )
  12. func UpdatePmWoAttrlst(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/PmWoattrlst_controller.go"
  22. logs.Level = "info"
  23. logs.Function = "UpdatePmWoAttrlst"
  24. logs.Message = "更新维护工单服务属性"
  25. logs.Operator = user.Userid
  26. logs.TimeStamp = utils.TimeFormat(time.Now(), "yyyyMMddHHmmss")
  27. logs.InsertRecord()
  28. data := new(models.PmWoAttrlst)
  29. if err := ctx.ReadJSON(data); err != nil {
  30. supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil)
  31. return
  32. }
  33. original, err := data.SelectOne()
  34. if err != nil {
  35. supports.Error(ctx, iris.StatusBadRequest, "抱歉未找到原有信息:"+err.Error(), nil)
  36. return
  37. }
  38. data.Bitmap = original.Bitmap
  39. data.Lastuser = user.Userid
  40. data.Operatetime = utils.TimeFormat(time.Now(), "yyyyMMddHHmmss")
  41. data.Lastmodif = utils.TimeFormat(time.Now(), "yyyyMMddHHmmss")
  42. err = data.Update()
  43. if err != nil {
  44. supports.Error(ctx, iris.StatusBadRequest, "更新失败:"+err.Error(), nil)
  45. return
  46. }
  47. supports.Ok(ctx, "修改成功", "")
  48. }
  49. func UploadImgPmWoAttrlst(ctx iris.Context) {
  50. user, ok := jwts.ParseToken(ctx)
  51. utils.TrimStruct(user, *user)
  52. if !ok {
  53. supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil)
  54. return
  55. }
  56. //日志
  57. logs := new(models.LeitServerLog)
  58. logs.File = "/controllers/PmWoattrlst_controller.go"
  59. logs.Level = "info"
  60. logs.Function = "UpdatePmWoAttrlst"
  61. logs.Message = "更新维护工单服务属性"
  62. logs.Operator = user.Userid
  63. logs.TimeStamp = utils.TimeFormat(time.Now(), "yyyyMMddHHmmss")
  64. logs.InsertRecord()
  65. //获取通过iris.WithPostMaxMemory获取的最大上传值大小。
  66. maxSize := ctx.Application().ConfigurationReadOnly().GetPostMaxMemory()
  67. err := ctx.Request().ParseMultipartForm(maxSize)
  68. if err != nil {
  69. ctx.StatusCode(iris.StatusInternalServerError)
  70. ctx.WriteString(err.Error())
  71. return
  72. }
  73. form := ctx.Request().MultipartForm
  74. files := form.File["upload[]"]
  75. data := new(models.PmWoAttrlst)
  76. info := ctx.FormValue("data")
  77. err = json.Unmarshal([]byte(info), data)
  78. if err != nil {
  79. supports.Error(ctx, iris.StatusBadRequest, "json解析错误:"+err.Error(), nil)
  80. return
  81. }
  82. original, err := data.SelectOne()
  83. if err != nil {
  84. supports.Error(ctx, iris.StatusBadRequest, "抱歉未找到原有信息:"+err.Error(), nil)
  85. return
  86. }
  87. data.Bitmap = original.Bitmap
  88. for _, file := range files {
  89. if !utils.ValueIsEmpty(file.Filename) {
  90. guid := utils.MakeOrderSn(user.Userid)
  91. filPath := "public/uploadfile/" + guid + ".jpg"
  92. savePath := "web/public/uploadfile/" + guid + ".jpg"
  93. // 上传文件至指定目录
  94. err := utils.SaveUploadedFile(file, savePath)
  95. if err != nil {
  96. log.Printf("上传图片错误:%v", err)
  97. return
  98. }
  99. data.Bitmap = filPath
  100. }
  101. }
  102. data.Lastuser = user.Userid
  103. data.Operatetime = utils.TimeFormat(time.Now(), "yyyyMMddHHmmss")
  104. data.Lastmodif = utils.TimeFormat(time.Now(), "yyyyMMddHHmmss")
  105. err = data.Update()
  106. if err != nil {
  107. supports.Error(ctx, iris.StatusBadRequest, "更新失败", nil)
  108. return
  109. }
  110. supports.Ok(ctx, "修改成功", "")
  111. }