wangfei 6 vuotta sitten
vanhempi
commit
3fccb16a5b

+ 59
- 0
controllers/cases/caseuser.go Näytä tiedosto

@@ -0,0 +1,59 @@
1
+package cases
2
+
3
+import "spaceofcheng/services/models/model"
4
+
5
+// GetCaseUserByCase 根据案场获取用户信息
6
+func (c *CaseController) GetCaseUserByCase() {
7
+	caseid := c.GetString("caseid")
8
+
9
+	list, err := c.dao.GetCaseUserByCase(caseid)
10
+
11
+	if err != nil {
12
+		c.ResponseError(err)
13
+	}
14
+	c.ResponseJSON(list)
15
+}
16
+
17
+// GetCaseUserByType 根据类型获取用户信息
18
+func (c *CaseController) GetCaseUserByType() {
19
+	usertype := c.GetString("usertype")
20
+	caseid := c.GetString("caseid")
21
+	caseuser, err := c.dao.GetCaseUserByType(caseid, usertype)
22
+	if err != nil {
23
+		c.ResponseError(err)
24
+	}
25
+	c.ResponseJSON(caseuser)
26
+}
27
+
28
+// GetCaseUserByID 根据ID获取用户
29
+func (c *CaseController) GetCaseUserByID() {
30
+	userid := c.GetString(":userid")
31
+	info, err := c.dao.GetCaseUserByID(userid)
32
+	if err != nil {
33
+		c.ResponseError(err)
34
+	}
35
+	c.ResponseJSON(info)
36
+}
37
+
38
+// SaveCaseUser 保存标签
39
+func (c *CaseController) SaveCaseUser() {
40
+	user := model.SysCaseUser{}
41
+	if err := c.ParseForm(&user); err != nil {
42
+		c.ResponseError(err)
43
+	}
44
+	newUser, err := c.dao.SaveCaseUser(user)
45
+	if err != nil {
46
+		c.ResponseError(err)
47
+	}
48
+	c.ResponseJSON(newUser)
49
+}
50
+
51
+// DelCaseUser 删除标签
52
+func (c *CaseController) DelCaseUser() {
53
+	tagid := c.GetString(":userid")
54
+	err := c.dao.DelCaseUser(tagid)
55
+	if err != nil {
56
+		c.ResponseError(err)
57
+	}
58
+	c.ResponseJSON("删除成功!")
59
+}

+ 25
- 1
controllers/cases/tag.go Näytä tiedosto

@@ -23,5 +23,29 @@ func (c *CaseController) GetTagByID() {
23 23
 	if err != nil {
24 24
 		c.ResponseError(err)
25 25
 	}
26
-	c.ResponseJSON(list)
26
+	c.ResponseJSON(info)
27
+}
28
+
29
+// SaveCaseTag 保存标签
30
+func (c *CaseController) SaveCaseTag() {
31
+	tag := model.SysTag{}
32
+	if err := c.ParseForm(&tag); err != nil {
33
+		c.ResponseError(err)
34
+	}
35
+	caseids := c.GetString("caseids")
36
+	newTag, err := c.dao.SaveTag(tag, caseids)
37
+	if err != nil {
38
+		c.ResponseError(err)
39
+	}
40
+	c.ResponseJSON(newTag)
41
+}
42
+
43
+// DelCaseTag 删除标签
44
+func (c *CaseController) DelCaseTag() {
45
+	tagid := c.GetString(":tagid")
46
+	err := c.dao.DelTag(tagid)
47
+	if err != nil {
48
+		c.ResponseError(err)
49
+	}
50
+	c.ResponseJSON("删除成功!")
27 51
 }

+ 68
- 0
models/cases/caseuser.go Näytä tiedosto

@@ -0,0 +1,68 @@
1
+package cases
2
+
3
+import (
4
+	"spaceofcheng/services/models"
5
+	"spaceofcheng/services/models/model"
6
+	"spaceofcheng/services/utils"
7
+	"time"
8
+)
9
+
10
+// GetCaseUserByCase 根据案场id获取案场相关人员
11
+func (m *CaseDAO) GetCaseUserByCase(caseid string) ([]model.SysCaseUser, error) {
12
+	var caseusers []model.SysCaseUser
13
+	err := m.db.Where("case_id=?", caseid).And("status=?", models.STATUS_NORMAL).Find(&caseusers)
14
+	return caseusers, err
15
+}
16
+
17
+// GetCaseUserByID 根据id获取相关人员
18
+func (m *CaseDAO) GetCaseUserByID(userid string) (*model.SysCaseUser, error) {
19
+	var caseusers []model.SysCaseUser
20
+	err := m.db.Where("case_user_id=?", userid).And("status=?", models.STATUS_NORMAL).Find(&caseusers)
21
+	if err != nil {
22
+		return nil, err
23
+	}
24
+	if len(caseusers) > 0 {
25
+		return &caseusers[0], nil
26
+	}
27
+	return nil, nil
28
+}
29
+
30
+// GetCaseUserByUserType 根据用户类型获取相关人员
31
+func (m *CaseDAO) GetCaseUserByUserType(caseid, usertype string) ([]model.SysCaseUser, error) {
32
+	var caseusers []model.SysCaseUser
33
+	err := m.db.Where("case_id=?", caseid).And("user_type=?", usertype).And("status=?", models.STATUS_NORMAL).Find(&caseusers)
34
+	return caseusers, err
35
+}
36
+
37
+// AddCaseUser 新增案场相关人员
38
+func (m *CaseDAO) AddCaseUser(caseuser model.SysCaseUser) (*model.SysCaseUser, error) {
39
+	caseuser.CreateDate = time.Now()
40
+	caseuser.Status = models.STATUS_NORMAL
41
+	caseuser.CaseUserId = utils.GetGUID()
42
+	_, err := m.db.Insert(&caseuser)
43
+	return &caseuser, err
44
+}
45
+
46
+// UpdateCaseUser 修改案场相关人员
47
+func (m *CaseDAO) UpdateCaseUser(caseuser model.SysCaseUser) error {
48
+	var cols = []string{
49
+		"user_name",
50
+		"tel",
51
+		"user_type",
52
+	}
53
+	_, err := m.db.Cols(cols...).Where("case_user_id=?", caseuser.CaseUserId).Update(caseuser)
54
+	return err
55
+}
56
+
57
+// DelCaseUser 删除案场相关人员
58
+func (m *CaseDAO) DelCaseUser(caseuserid string) error {
59
+	var caseuser = model.SysCaseUser{
60
+		CaseUserId: caseuserid,
61
+		Status:     models.STATUS_DEL,
62
+	}
63
+	var cols = []string{
64
+		"status",
65
+	}
66
+	_, err := m.db.Cols(cols...).Where("case_user_id=?", caseuserid).Update(caseuser)
67
+	return err
68
+}

+ 47
- 0
models/cases/tag.go Näytä tiedosto

@@ -3,8 +3,10 @@ package cases
3 3
 import (
4 4
 	"jcjy/demo/models"
5 5
 	"spaceofcheng/services/models/model"
6
+	"spaceofcheng/services/utils"
6 7
 	"strconv"
7 8
 	"strings"
9
+	"time"
8 10
 )
9 11
 
10 12
 // GetTagCount 获取标签总数
@@ -58,3 +60,48 @@ func (m *CaseDAO) GetTagCaseByTagID(tagid string) ([]model.SysTagCase, error) {
58 60
 	err := m.db.Where("tag_id=?", tagid).Find(&tagcase)
59 61
 	return tagcase, err
60 62
 }
63
+
64
+// AddTag 新增标签
65
+func (m *CaseDAO) AddTag(tag model.SysTag) (*model.SysTag, error) {
66
+	tag.TagId = utils.GetGUID()
67
+	tag.Status = models.STATUS_NORMAL
68
+	tag.CreateDate = time.Now()
69
+	_, err := m.db.Insert(&tag)
70
+	return &tag, err
71
+}
72
+
73
+// UpdateTag 修改标签
74
+func (m *CaseDAO) UpdateTag(tag model.SysTag) error {
75
+	var cols = []string{
76
+		"tag_name",
77
+	}
78
+	_, err := m.db.Cols(cols...).Where("tag_id=?", tag.TagId).Update(tag)
79
+	return err
80
+}
81
+
82
+// DeleteTag 刪除标签
83
+func (m *CaseDAO) DeleteTag(tagid string) error {
84
+	var tag = model.SysTag{
85
+		TagId:  tagid,
86
+		Status: models.STATUS_DEL,
87
+	}
88
+	var cols = []string{
89
+		"status",
90
+	}
91
+	_, err := m.db.Cols(cols...).Where("tag_id=?", tag.TagId).Update(tag)
92
+	return err
93
+}
94
+
95
+// DelTagCase 删除标签对应的案场
96
+func (m *CaseDAO) DelTagCase(tagid string) error {
97
+	sql := "delete from sys_tag_case where tag_id='" + tagid + "'"
98
+	_, err := m.db.Exec(sql)
99
+	return err
100
+}
101
+
102
+// SaveTagCase 保存标签对应的案场
103
+func (m *CaseDAO) SaveTagCase(tagid, caseids string) error {
104
+	sql := `insert into sys_tag_case(tag_id,case_id) select '` + tagid + `', case_id from sys_case where case_id in ('` + strings.Replace(caseids, ",", "','", -1) + `') and status = ` + strconv.Itoa(models.STATUS_NORMAL)
105
+	_, err := m.db.Exec(sql)
106
+	return err
107
+}

+ 7
- 0
routers/common.go Näytä tiedosto

@@ -61,6 +61,13 @@ func getCommonRoutes() beego.LinkNamespace {
61 61
 		beego.NSRouter("/cmscase", &message.MessageController{}, "put:SaveCmsCase"),
62 62
 		beego.NSRouter("/cmscase/:cmscaseid", &message.MessageController{}, "delete:DelCmsCase"),
63 63
 
64
+		beego.NSRouter("/caseuser", &message.MessageController{}, "get:GetCaseUserByCase"),
65
+		beego.NSRouter("/caseuserbytype", &message.MessageController{}, "get:GetCaseUserByType"),
66
+		beego.NSRouter("/caseuser/:userid", &message.MessageController{}, "get:GetCaseUserByID"),
67
+		beego.NSRouter("/caseuser", &message.MessageController{}, "post:SaveCaseUser"),
68
+		beego.NSRouter("/caseuser", &message.MessageController{}, "put:SaveCaseUser"),
69
+		beego.NSRouter("/caseuser/:userid", &message.MessageController{}, "delete:DelCaseUser"),
70
+
64 71
 		beego.NSRouter("/file", &controllers.BaseController{}, "post:FileUpload"),
65 72
 	)
66 73
 }

+ 40
- 0
service/cases/caseuser.go Näytä tiedosto

@@ -0,0 +1,40 @@
1
+package cases
2
+
3
+import "spaceofcheng/services/models/model"
4
+
5
+// GetCaseUserByCase 根据案场id获取案场相关人员信息
6
+func (s *CaseServ) GetCaseUserByCase(caseid string) ([]model.SysCaseUser, error) {
7
+	caseusers, err := s.dao.GetCaseUserByCase(caseid)
8
+	return caseusers, err
9
+}
10
+
11
+// GetCaseUserByType 根据类型获取人员
12
+func (s *CaseServ) GetCaseUserByType(caseid, usertype string) ([]model.SysCaseUser, error) {
13
+	caseusers, err := s.dao.GetCaseUserByUserType(caseid, usertype)
14
+	return caseusers, err
15
+}
16
+
17
+// GetCaseUserByID 根据ID获取人员
18
+func (s *CaseServ) GetCaseUserByID(userid string) (*model.SysCaseUser, error) {
19
+	caseuser, err := s.dao.GetCaseUserByID(userid)
20
+	return caseuser, err
21
+}
22
+
23
+// SaveCaseUser 保存人员信息
24
+func (s *CaseServ) SaveCaseUser(caseuser model.SysCaseUser) (*model.SysCaseUser, error) {
25
+	var newInfo *model.SysCaseUser
26
+	var err error
27
+	if caseuser.CaseUserId == "" {
28
+		newInfo, err = s.dao.AddCaseUser(caseuser)
29
+	} else {
30
+		err = s.dao.UpdateCaseUser(caseuser)
31
+		newInfo = &caseuser
32
+	}
33
+	return newInfo, err
34
+}
35
+
36
+// DelCaseUser 删除人员信息
37
+func (s *CaseServ) DelCaseUser(userid string) error {
38
+	err := s.dao.DelCaseUser(userid)
39
+	return err
40
+}

+ 1
- 0
service/cases/equipment.go Näytä tiedosto

@@ -0,0 +1 @@
1
+package cases

+ 31
- 0
service/cases/tag.go Näytä tiedosto

@@ -2,6 +2,7 @@ package cases
2 2
 
3 3
 import (
4 4
 	"spaceofcheng/services/models/cases"
5
+	"spaceofcheng/services/models/model"
5 6
 	"spaceofcheng/services/service"
6 7
 )
7 8
 
@@ -42,3 +43,33 @@ func (s *CaseServ) GetTagByID(tagid string) (*cases.Tag, error) {
42 43
 	}
43 44
 	return tag, err
44 45
 }
46
+
47
+// SaveTag 保存标签
48
+func (s *CaseServ) SaveTag(tag model.SysTag, caseids string) (*model.SysTag, error) {
49
+	var newInfo *model.SysTag
50
+	var err error
51
+	if tag.TagId == "" {
52
+		newInfo, err = s.dao.AddTag(tag)
53
+	} else {
54
+		err = s.dao.UpdateTag(tag)
55
+		newInfo = &tag
56
+	}
57
+	if err != nil {
58
+		return nil, err
59
+	}
60
+	err = s.dao.DelTagCase(newInfo.TagId)
61
+	if err != nil {
62
+		return nil, err
63
+	}
64
+	err = s.dao.SaveTagCase(newInfo.TagId, caseids)
65
+	if err != nil {
66
+		return nil, err
67
+	}
68
+	return newInfo, err
69
+}
70
+
71
+// DelTag 删除标签
72
+func (s *CaseServ) DelTag(tagid string) error {
73
+	err := s.dao.DeleteTag(tagid)
74
+	return err
75
+}