|
@@ -0,0 +1,72 @@
|
|
|
+package tools
|
|
|
+
|
|
|
+import (
|
|
|
+ "github.com/gin-gonic/gin"
|
|
|
+ "lims-extend/common"
|
|
|
+ "lims-extend/model"
|
|
|
+ "lims-extend/response"
|
|
|
+ "time"
|
|
|
+)
|
|
|
+
|
|
|
+type InfoVo struct {
|
|
|
+ SoftwareTitle string `json:"software_title"`
|
|
|
+ CreateTime string `json:"create_time"`
|
|
|
+ SendTime string `json:"send_time"`
|
|
|
+ By string `json:"by"`
|
|
|
+}
|
|
|
+
|
|
|
+func ModifyTime(c *gin.Context) {
|
|
|
+ var info InfoVo
|
|
|
+ c.ShouldBind(&info)
|
|
|
+ db := common.GetDB()
|
|
|
+ createTime, _ := time.ParseInLocation("2006-01-02 15:04:05", info.CreateTime, time.Local)
|
|
|
+ sendTime, _ := time.ParseInLocation("2006-01-02 15:04:05", info.SendTime, time.Local)
|
|
|
+ var software model.Software
|
|
|
+ if info.By == "name" {
|
|
|
+ if err := db.Model(&model.Software{}).Where("name = ? and software.delete <> 1", info.SoftwareTitle).First(&software).Error; err != nil {
|
|
|
+ response.Fail(c, nil, "该软件不存在xiaohezi")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ } else if info.By == "id" {
|
|
|
+ if err := db.Model(&model.Software{}).Where("id = ? and software.delete <> 1", info.SoftwareTitle).First(&software).Error; err != nil {
|
|
|
+ response.Fail(c, nil, "该软件不存在_xiaohezi")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ response.Fail(c, nil, "未选择查询方法")
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ var plan model.Plan
|
|
|
+ if err := db.Model(&model.Plan{}).Where("software_id = ? and plan.delete <> 1", software.ID).First(&plan).Error; err != nil {
|
|
|
+ response.Fail(c, nil, "计划不存在")
|
|
|
+ }
|
|
|
+ var tasks []model.Task
|
|
|
+ if err := db.Model(&model.Task{}).Where("plan_id = ?", plan.Id).Find(&tasks).Error; err != nil {
|
|
|
+ response.Fail(c, nil, "任务不存在")
|
|
|
+ }
|
|
|
+
|
|
|
+ var version model.Version
|
|
|
+ db.Model(&model.Version{}).Where("software_id = ?", software.ID).First(&version)
|
|
|
+ version.CreatedAt = model.Time(createTime)
|
|
|
+ version.UpdatedAt = model.Time(createTime)
|
|
|
+
|
|
|
+ software.CreatedAt = model.Time(createTime)
|
|
|
+ software.UpdatedAt = model.Time(createTime)
|
|
|
+ plan.CreatedAt = model.Time(createTime)
|
|
|
+ plan.UpdatedAt = model.Time(createTime)
|
|
|
+
|
|
|
+ db.Model(&model.Version{}).Where("id = ?", version.Id).Updates(&version)
|
|
|
+ db.Model(&model.Software{}).Where("id = ?", software.ID).Updates(&software)
|
|
|
+ db.Model(&model.Plan{}).Where("id = ?", plan.Id).Updates(&plan)
|
|
|
+
|
|
|
+ for i := 0; i < len(tasks); i++ {
|
|
|
+ tasks[i].CreatedAt = model.Time(sendTime)
|
|
|
+ tasks[i].UpdatedAt = model.Time(sendTime)
|
|
|
+ db.Model(&model.Task{}).Where("id = ?", tasks[i].ID).Updates(&tasks[i])
|
|
|
+ }
|
|
|
+ response.Success(c, gin.H{"software": software,
|
|
|
+ "plan": plan,
|
|
|
+ "tasks": tasks}, "done!")
|
|
|
+
|
|
|
+}
|