aadiffupdatetest.go 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. package api
  2. import (
  3. "box-cost/db/model"
  4. "box-cost/db/repo"
  5. "box-cost/log"
  6. "errors"
  7. "fmt"
  8. "time"
  9. "github.com/gin-gonic/gin"
  10. )
  11. // 更新生产计划
  12. func DiffUpdatePlanTest(c *gin.Context, apictx *ApiSession) (interface{}, error) {
  13. var plan model.ProductPlan
  14. err := c.ShouldBindJSON(&plan)
  15. if err != nil {
  16. fmt.Println(err)
  17. log.Error(err)
  18. return nil, errors.New("参数错误")
  19. }
  20. if plan.Id.Hex() == "" {
  21. return nil, errors.New("id的为空")
  22. }
  23. plan.UpdateTime = time.Now()
  24. // repo.RepoSeachDoc(apictx.CreateRepoCtx(), &repo.DocSearchOptions{
  25. // CollectName: "product-plan_copy1",
  26. // Query: repo.Map{"_id": plan.Id.Hex()},
  27. // }, &plan)
  28. // return plan, nil
  29. // ========================记录更新日志 查询更新前数据============================
  30. // planModel1 := &model.ProductPlan{}
  31. // oldPlan := getDataById(apictx, plan.Id.Hex(), planModel1, "product-plan_copy1")
  32. // // ============================================================================
  33. result, err1 := repo.RepoUpdateSetDoc1(apictx.CreateRepoCtx(), "product-plan_copy1", plan.Id.Hex(), &plan, &repo.RecordLogReq{
  34. Path: c.Request.URL.Path,
  35. TargetId: plan.Id.Hex(),
  36. })
  37. // ========================记录更新日志 查询更新后数据============================
  38. // planModel2 := &model.ProductPlan{}
  39. // newPlan := getDataById(apictx, plan.Id.Hex(), planModel2, "product-plan_copy1")
  40. // // ============================================================================
  41. // // ============================记录更新前后差异================================
  42. // diffStr, err := diffUpdateData(oldPlan, newPlan)
  43. // if err != nil {
  44. // fmt.Println(err)
  45. // }
  46. // // 记录到数据库中
  47. // changeLogs := &model.Logs{
  48. // Path: c.Request.URL.Path,
  49. // UserId: apictx.User.ID,
  50. // TargetId: plan.Id.Hex(),
  51. // Diff: diffStr,
  52. // CreateTime: time.Now(),
  53. // UpdateTime: time.Now(),
  54. // }
  55. // repo.RepoAddDoc(apictx.CreateRepoCtx(), repo.CollectionLogs, changeLogs)
  56. // ==========================================================================
  57. return result, err1
  58. }
  59. // 更新生产计划
  60. func DiffUpdateProduceTest(c *gin.Context, apictx *ApiSession) (interface{}, error) {
  61. var produce model.ProduceBill
  62. err := c.ShouldBindJSON(&produce)
  63. if err != nil {
  64. fmt.Println(err)
  65. log.Error(err)
  66. return nil, errors.New("参数错误")
  67. }
  68. if produce.Id.Hex() == "" {
  69. return nil, errors.New("id的为空")
  70. }
  71. produce.UpdateTime = time.Now()
  72. result, err1 := repo.RepoUpdateSetDoc1(apictx.CreateRepoCtx(), "bill-produce_copy1", produce.Id.Hex(), &produce, &repo.RecordLogReq{
  73. Path: c.Request.URL.Path,
  74. TargetId: produce.Id.Hex(),
  75. })
  76. // ========================记录更新日志 查询更新后数据============================
  77. // planModel2 := &model.ProductPlan{}
  78. // newPlan := getDataById(apictx, plan.Id.Hex(), planModel2, "product-plan_copy1")
  79. // // ============================================================================
  80. // // ============================记录更新前后差异================================
  81. // diffStr, err := diffUpdateData(oldPlan, newPlan)
  82. // if err != nil {
  83. // fmt.Println(err)
  84. // }
  85. // // 记录到数据库中
  86. // changeLogs := &model.Logs{
  87. // Path: c.Request.URL.Path,
  88. // UserId: apictx.User.ID,
  89. // TargetId: plan.Id.Hex(),
  90. // Diff: diffStr,
  91. // CreateTime: time.Now(),
  92. // UpdateTime: time.Now(),
  93. // }
  94. // repo.RepoAddDoc(apictx.CreateRepoCtx(), repo.CollectionLogs, changeLogs)
  95. // ==========================================================================
  96. return result, err1
  97. }