wangfei hace 6 años
padre
commit
78ce78f195

+ 3
- 1
models/cases/area.go Ver fichero

@@ -34,7 +34,9 @@ type AreaInfo struct {
34 34
 // GetCaseAreaByCase 根据案场获取案场区域
35 35
 func (m *CaseDAO) GetCaseAreaByCase(caseid string) ([]AreaInfo, error) {
36 36
 	var areas []AreaInfo
37
-	err := m.db.Where("status>"+strconv.Itoa(models.STATUS_DEL)).And("case_id =?", caseid).Table("sys_case_area").Find(&areas)
37
+	sql := `select * from sys_case_area where status>` + strconv.Itoa(models.STATUS_DEL) + ` and case_id ='` + caseid + `'`
38
+	err := m.db.Sql(sql).Find(&sql)
39
+	// err := m.db.Where("status>"+strconv.Itoa(models.STATUS_DEL)).And("case_id =?", caseid).Table("sys_case_area").Find(&areas)
38 40
 	return areas, err
39 41
 }
40 42
 

+ 19
- 4
models/cases/key.go Ver fichero

@@ -5,6 +5,7 @@ import (
5 5
 	"spaceofcheng/services/models/model"
6 6
 	"spaceofcheng/services/utils"
7 7
 	"strconv"
8
+	"strings"
8 9
 	"time"
9 10
 )
10 11
 
@@ -39,16 +40,20 @@ func (m *CaseDAO) GetKeysByCase(caseid, num string, page, pageSize int) ([]CaseK
39 40
 	}
40 41
 
41 42
 	offset := (page - 1) * pageSize
42
-	query += " LIMIT " + strconv.Itoa(pageSize) + " OFFSET " + strconv.Itoa(offset)
43
+	query += " order by lock_num asc LIMIT " + strconv.Itoa(pageSize) + " OFFSET " + strconv.Itoa(offset)
43 44
 
44 45
 	err := m.db.SQL(query, models.STATUS_NORMAL, caseid, models.STATUS_DEL).Find(&keys)
45 46
 	return keys, err
46 47
 }
47 48
 
48 49
 // GetKeysCountByCase 根据案场获取钥匙数量
49
-func (m *CaseDAO) GetKeysCountByCase(caseid string) (int, error) {
50
+func (m *CaseDAO) GetKeysCountByCase(caseid, num string) (int, error) {
50 51
 	var keys []model.TaCaseKey
51
-	err := m.db.Where("case_id=?", caseid).And("status>" + strconv.Itoa(models.STATUS_DEL)).Find(&keys)
52
+	dao := m.db.Where("case_id=?", caseid).And("status>" + strconv.Itoa(models.STATUS_DEL))
53
+	if num != "" {
54
+		dao.And("num like '%" + num + "%'")
55
+	}
56
+	err := dao.Find(&keys)
52 57
 	return len(keys), err
53 58
 }
54 59
 
@@ -81,7 +86,7 @@ func (m *CaseDAO) GetKeyByID(keyid string) (*model.TaCaseKey, error) {
81 86
 // AddKey 新增单个钥匙信息
82 87
 func (m *CaseDAO) AddKey(key model.TaCaseKey) (*model.TaCaseKey, error) {
83 88
 	key.KeyId = utils.GetGUID()
84
-	key.Status = models.STATUS_NORMAL
89
+	key.Status = STATUS_UNLOCK
85 90
 	key.CreateDate = time.Now()
86 91
 	_, err := m.db.Insert(key)
87 92
 	return &key, err
@@ -106,3 +111,13 @@ func (m *CaseDAO) UnLockKey(keyid string) error {
106 111
 	_, err := m.db.Exec(sql)
107 112
 	return err
108 113
 }
114
+
115
+// GetKeyByNumRange 根据区间获取钥匙
116
+func (m *CaseDAO) GetKeyByNumRange(caseid, nums string) ([]model.TaCaseKey, error) {
117
+	var keys []model.TaCaseKey
118
+	sql := `select * from ta_case_key where status>` + strconv.Itoa(models.STATUS_DEL) + `
119
+	and case_id='` + caseid + `' and lock_num in ('` + strings.Replace(nums, ",", "','", -1) + `')`
120
+
121
+	err := m.db.Sql(sql).Find(keys)
122
+	return keys, err
123
+}

+ 2
- 1
models/cases/table.go Ver fichero

@@ -30,7 +30,8 @@ func (m *CaseDAO) GetCaseTable(caseids string, page int, pageSize int) ([]CaseTa
30 30
 	sql := `select a.*,b.area_name,c.case_name from sys_case_table a 
31 31
 	inner join sys_case_area b on a.area_id=b.area_id
32 32
 	inner join sys_case c on a.case_id=c.case_id
33
-	where status>` + strconv.Itoa(models.STATUS_DEL) + ` and a.case_id in ('` +
33
+	where a.status>` + strconv.Itoa(models.STATUS_DEL) + ` and b.status>` + strconv.Itoa(models.STATUS_DEL) +
34
+		` and c.status>` + strconv.Itoa(models.STATUS_DEL) + ` and a.case_id in ('` +
34 35
 		strings.Replace(caseids, ",", "','", -1) + `')`
35 36
 
36 37
 	err := m.db.Sql(sql).Find(&tables)

+ 16
- 6
models/cases/tag.go Ver fichero

@@ -7,31 +7,40 @@ import (
7 7
 	"strconv"
8 8
 	"strings"
9 9
 	"time"
10
+
11
+	"github.com/astaxie/beego"
10 12
 )
11 13
 
12 14
 // GetTagCount 获取标签总数
13 15
 func (m *CaseDAO) GetTagCount(caseids string) (int, error) {
14
-	var tags []model.SysTag
15
-	err := m.db.Where("status>" + strconv.Itoa(models.STATUS_DEL)).And("case_id in ('" + strings.Replace(caseids, ",", "','", -1) + "')").Find(&tags)
16
+	var tags []TagInfo
17
+	sql := `select tag.*,c.case_names from sys_tag tag inner join (
18
+	select b.tag_id,GROUP_CONCAT(a.case_name) case_names from sys_case a inner join sys_tag_case b on a.case_id=b.case_id and a.status > ` + strconv.Itoa(models.STATUS_DEL) + `
19
+	where b.case_id in ('` + strings.Replace(caseids, ",", "','", -1) + `') and b.tag_id not in (select tag_id from sys_tag_case where case_id not in ('` +
20
+		strings.Replace(caseids, ",", "','", -1) + `'))
21
+	group by b.tag_id ) c on tag.tag_id = c.tag_id where tag.status>` + strconv.Itoa(models.STATUS_DEL)
22
+	err := m.db.Sql(sql).Find(&tags)
23
+
16 24
 	return len(tags), err
17 25
 }
18 26
 
19 27
 // TagInfo 标签
20 28
 type TagInfo struct {
21
-	model.TaCmsCase `xorm:"extends"`
22
-	CaseNames       string
29
+	model.SysTag `xorm:"extends"`
30
+	CaseNames    string
23 31
 }
24 32
 
25 33
 // GetTagList 根据案场获取标签
26 34
 func (m *CaseDAO) GetTagList(caseids string, page int, pageSize int) ([]TagInfo, error) {
27 35
 	var tags []TagInfo
36
+	offset := (page - 1) * pageSize
28 37
 	sql := `select tag.*,c.case_names from sys_tag tag inner join (
29 38
 	select b.tag_id,GROUP_CONCAT(a.case_name) case_names from sys_case a inner join sys_tag_case b on a.case_id=b.case_id and a.status > ` + strconv.Itoa(models.STATUS_DEL) + `
30 39
 	where b.case_id in ('` + strings.Replace(caseids, ",", "','", -1) + `') and b.tag_id not in (select tag_id from sys_tag_case where case_id not in ('` +
31 40
 		strings.Replace(caseids, ",", "','", -1) + `'))
32
-	group by b.tag_id ) c on tag.tag_id = c.tag_id`
41
+	group by b.tag_id ) c on tag.tag_id = c.tag_id where tag.status>` + strconv.Itoa(models.STATUS_DEL) + ` LIMIT ` + strconv.Itoa(pageSize) + ` OFFSET ` + strconv.Itoa(offset)
33 42
 
34
-	err := m.db.Sql(sql).Find(tags)
43
+	err := m.db.Sql(sql).Find(&tags)
35 44
 	return tags, err
36 45
 }
37 46
 
@@ -81,6 +90,7 @@ func (m *CaseDAO) UpdateTag(tag model.SysTag) error {
81 90
 
82 91
 // DeleteTag 刪除标签
83 92
 func (m *CaseDAO) DeleteTag(tagid string) error {
93
+	beego.Error(tagid)
84 94
 	var tag = model.SysTag{
85 95
 		TagId:  tagid,
86 96
 		Status: models.STATUS_DEL,

+ 8
- 3
models/message/cmscase.go Ver fichero

@@ -8,6 +8,8 @@ import (
8 8
 	"strings"
9 9
 	"time"
10 10
 
11
+	"github.com/astaxie/beego"
12
+
11 13
 	"github.com/go-xorm/builder"
12 14
 )
13 15
 
@@ -21,10 +23,9 @@ type CmsCaseInfo struct {
21 23
 func (m *MessageDAO) GetCmsCaseList(name, caseids string, page int, pageSize int) ([]CmsCaseInfo, error) {
22 24
 	var cases []CmsCaseInfo
23 25
 	sql := `select a.*,b.case_name from ta_cms_case a inner join sys_case b on a.case_id = b.case_id 
24
-	where a.case_id in ('` + strings.Replace(caseids, ",", "','", -1) + `') and a.name like '%` + name + `%' and a.status > ` + strconv.Itoa(models.STATUS_DEL) + `
26
+	where a.org_id in ('` + strings.Replace(caseids, ",", "','", -1) + `') and a.name like '%` + name + `%' and a.status > ` + strconv.Itoa(models.STATUS_DEL) + `
25 27
 	and b.status > ` + strconv.Itoa(models.STATUS_DEL) + `
26 28
 	order by create_date desc limit ` + strconv.Itoa((page-1)*pageSize) + `, ` + strconv.Itoa((page+1)*pageSize)
27
-
28 29
 	err := m.db.Sql(sql).Find(&cases)
29 30
 	return cases, err
30 31
 }
@@ -33,6 +34,7 @@ func (m *MessageDAO) GetCmsCaseList(name, caseids string, page int, pageSize int
33 34
 func (m *MessageDAO) GetCmsCaseByOrg(orgid string) ([]model.TaCmsCase, error) {
34 35
 	var cases []model.TaCmsCase
35 36
 	err := m.db.Where("org_id=?", orgid).Find(&cases)
37
+	beego.Error(cases)
36 38
 	return cases, err
37 39
 }
38 40
 
@@ -60,8 +62,11 @@ type CmsCase struct {
60 62
 // GetCmsCaseByID 获取项目专题详情
61 63
 func (m *MessageDAO) GetCmsCaseByID(cmscaseid string) (*CmsCase, error) {
62 64
 	var cases []CmsCase
63
-	err := m.db.Table("ta_cms_case").Where("cms_case_id=?", cmscaseid).And("status>" + strconv.Itoa(models.STATUS_DEL)).Find(&cases)
65
+	sql := `select * from ta_cms_case where cms_case_id='` + cmscaseid + `' and status>` + strconv.Itoa(models.STATUS_DEL)
66
+	err := m.db.Sql(sql).Find(&cases)
67
+	// err := m.db.Table("ta_cms_case").Where("cms_case_id=?", cmscaseid).And("status>" + strconv.Itoa(models.STATUS_DEL)).Find(&cases)
64 68
 	if err != nil {
69
+		beego.Error(err)
65 70
 		return nil, err
66 71
 	}
67 72
 	if len(cases) > 0 {

+ 2
- 0
models/message/image.go Ver fichero

@@ -66,6 +66,8 @@ func (m *MessageDAO) UpdateCmsImg(img model.TaCmsImages) error {
66 66
 		"forward_resource_id",
67 67
 		"sort",
68 68
 		"title",
69
+		"location_id",
70
+		"status",
69 71
 	}
70 72
 	_, err := m.db.Cols(cols...).Where("image_id=?", img.ImageId).Update(img)
71 73
 	return err

+ 3
- 0
models/message/message.go Ver fichero

@@ -86,6 +86,9 @@ func (m *MessageDAO) AddCmsInfo(cmsinfo model.TaCmsInfo) (*model.TaCmsInfo, erro
86 86
 func (m *MessageDAO) UpdateCmsInfo(cmsinfo model.TaCmsInfo) error {
87 87
 	var cols = []string{
88 88
 		"info_name",
89
+		"info_url",
90
+		"location_id",
91
+		"case_id",
89 92
 	}
90 93
 	_, err := m.db.Cols(cols...).Where("info_id=?", cmsinfo.InfoId).Update(cmsinfo)
91 94
 	return err

+ 1
- 2
models/message/news.go Ver fichero

@@ -24,7 +24,7 @@ func (m *MessageDAO) GetNewsList(locationid, orgid string, page int, pageSize in
24 24
 	sql := `select * from ta_cms_news new left join (
25 25
 		select b.news_id,GROUP_CONCAT(a.location_name) location_names,GROUP_CONCAT(a.location_id) location_ids 
26 26
 		from td_cms_image_location a inner join ta_cms_location b on a.location_id=b.location_id and a.status>` + strconv.Itoa(models.STATUS_DEL) +
27
-		` and b.org_id='` + orgid + `' group by b.news_id
27
+		` and a.org_id='` + orgid + `' group by b.news_id
28 28
 		) c on new.news_id = c.news_id and new.status>` + strconv.Itoa(models.STATUS_DEL) + ` and new.org_id='` + orgid + `'`
29 29
 
30 30
 	if locationid != "" {
@@ -32,7 +32,6 @@ func (m *MessageDAO) GetNewsList(locationid, orgid string, page int, pageSize in
32 32
 	}
33 33
 
34 34
 	sql = sql + " order by new.create_date desc limit " + strconv.Itoa((page-1)*pageSize) + ", " + strconv.Itoa((page+1)*pageSize)
35
-
36 35
 	err := m.db.Sql(sql).Find(&news)
37 36
 	return news, err
38 37
 }

+ 7
- 0
routers/common.go Ver fichero

@@ -73,6 +73,13 @@ func getCommonRoutes() beego.LinkNamespace {
73 73
 		beego.NSRouter("/cms/case/:cmscaseid", &message.MessageController{}, "put:SaveCmsCase"),
74 74
 		beego.NSRouter("/cms/case/:cmscaseid", &message.MessageController{}, "delete:DelCmsCase"),
75 75
 
76
+		// tag 标签
77
+		beego.NSRouter("/case/tag", &cases.CaseController{}, "get:GetTagList"),
78
+		beego.NSRouter("/case/tag/:tagid", &cases.CaseController{}, "get:GetTagByID"),
79
+		beego.NSRouter("/case/tag", &cases.CaseController{}, "post:SaveCaseTag"),
80
+		beego.NSRouter("/case/tag", &cases.CaseController{}, "put:SaveCaseTag"),
81
+		beego.NSRouter("/case/tag/:tagid", &cases.CaseController{}, "delete:DelCaseTag"),
82
+
76 83
 		// caseuser 案场人员
77 84
 		beego.NSRouter("/case/user", &cases.CaseController{}, "get:GetCaseUserByCase"),
78 85
 		beego.NSRouter("/case/userbytype", &cases.CaseController{}, "get:GetCaseUserByType"),

+ 5
- 0
service/cases/area.go Ver fichero

@@ -4,6 +4,7 @@ import (
4 4
 	"spaceofcheng/services/models/cases"
5 5
 	"spaceofcheng/services/models/model"
6 6
 	"spaceofcheng/services/service"
7
+	"spaceofcheng/services/utils"
7 8
 
8 9
 	"github.com/astaxie/beego"
9 10
 )
@@ -44,6 +45,10 @@ func (s *CaseServ) GetCaseAreaByID(areaid string) (*model.SysCaseArea, error) {
44 45
 // SaveCaseArea 保存区域
45 46
 func (s *CaseServ) SaveCaseArea(area model.SysCaseArea) (*model.SysCaseArea, error) {
46 47
 	var err error
48
+	if area.AreaName == "" {
49
+		return nil, utils.LogError("区域名称不能为空!")
50
+	}
51
+
47 52
 	if area.AreaId == "" {
48 53
 		_, err = s.dao.AddCaseArea(&area)
49 54
 	} else {

+ 7
- 0
service/cases/cases.go Ver fichero

@@ -63,6 +63,13 @@ func (s *CaseServ) GetCaseByID(caseid string) (*model.SysCase, error) {
63 63
 func (s *CaseServ) SaveCase(caseinfo model.SysCase) (*model.SysCase, error) {
64 64
 	var newInfo *model.SysCase
65 65
 	var err error
66
+	if caseinfo.CaseName == "" {
67
+		return nil, utils.LogError("案场名称不能为空!")
68
+	}
69
+	if caseinfo.Coordinate == "" {
70
+		return nil, utils.LogError("案场经纬度不能为空!")
71
+	}
72
+
66 73
 	if caseinfo.CaseId == "" {
67 74
 		newInfo, err = s.dao.AddCase(caseinfo)
68 75
 		if err != nil {

+ 13
- 1
service/cases/caseuser.go Ver fichero

@@ -1,6 +1,9 @@
1 1
 package cases
2 2
 
3
-import "spaceofcheng/services/models/model"
3
+import (
4
+	"spaceofcheng/services/models/model"
5
+	"spaceofcheng/services/utils"
6
+)
4 7
 
5 8
 // GetCaseUserByCase 根据案场id获取案场相关人员信息
6 9
 func (s *CaseServ) GetCaseUserByCase(caseid string) ([]model.SysCaseUser, error) {
@@ -24,6 +27,15 @@ func (s *CaseServ) GetCaseUserByID(userid string) (*model.SysCaseUser, error) {
24 27
 func (s *CaseServ) SaveCaseUser(caseuser model.SysCaseUser) (*model.SysCaseUser, error) {
25 28
 	var newInfo *model.SysCaseUser
26 29
 	var err error
30
+	if caseuser.UserName == "" {
31
+		return nil, utils.LogError("人员名称不能为空!")
32
+	}
33
+	if caseuser.UserType == "" {
34
+		return nil, utils.LogError("人员类型不能为空!")
35
+	}
36
+	if caseuser.Tel == "" {
37
+		return nil, utils.LogError("人员电话不能为空!")
38
+	}
27 39
 	if caseuser.CaseUserId == "" {
28 40
 		newInfo, err = s.dao.AddCaseUser(caseuser)
29 41
 	} else {

+ 4
- 0
service/cases/equipment.go Ver fichero

@@ -3,6 +3,7 @@ package cases
3 3
 import (
4 4
 	"spaceofcheng/services/models/model"
5 5
 	"spaceofcheng/services/service"
6
+	"spaceofcheng/services/utils"
6 7
 
7 8
 	"github.com/astaxie/beego"
8 9
 )
@@ -43,6 +44,9 @@ func (s *CaseServ) GetCaseEquipmentByID(equipmentid string) (*model.SysCaseEquip
43 44
 // SaveCaseEquipment 保存体检设备
44 45
 func (s *CaseServ) SaveCaseEquipment(equipment model.SysCaseEquipment) (*model.SysCaseEquipment, error) {
45 46
 	var err error
47
+	if equipment.Name == "" {
48
+		return nil, utils.LogError("体检设备名称不能为空!")
49
+	}
46 50
 	if equipment.EquipmentId == "" {
47 51
 		_, err = s.dao.AddCaseEquipment(&equipment)
48 52
 	} else {

+ 14
- 6
service/cases/key.go Ver fichero

@@ -1,10 +1,12 @@
1 1
 package cases
2 2
 
3 3
 import (
4
+	"spaceofcheng/services/models/cases"
4 5
 	"spaceofcheng/services/models/model"
5 6
 	"spaceofcheng/services/service"
6 7
 	"spaceofcheng/services/utils"
7 8
 	"strconv"
9
+	"time"
8 10
 
9 11
 	"github.com/astaxie/beego"
10 12
 )
@@ -18,6 +20,7 @@ func (s *CaseServ) GetKeysByCase(caseid, num string, page, pageSize int) (map[st
18 20
 			isdict = true
19 21
 		}
20 22
 	}
23
+
21 24
 	if !isdict {
22 25
 		return nil, utils.LogError("您没有该案场的权限!")
23 26
 	}
@@ -32,7 +35,7 @@ func (s *CaseServ) GetKeysByCase(caseid, num string, page, pageSize int) (map[st
32 35
 		return nil, err
33 36
 	}
34 37
 
35
-	total, err := s.dao.GetCaseCount(caseid, num)
38
+	total, err := s.dao.GetKeysCountByCase(caseid, num)
36 39
 	if err != nil {
37 40
 		beego.Error(err)
38 41
 		return nil, err
@@ -44,8 +47,10 @@ func (s *CaseServ) GetKeysByCase(caseid, num string, page, pageSize int) (map[st
44 47
 			beego.Error(err)
45 48
 			return nil, err
46 49
 		}
47
-		keys[index].CustomerId = use.CustomerId
48
-		keys[index].CustomerName = use.CustomerName
50
+		if use != nil {
51
+			keys[index].CustomerId = use.CustomerId
52
+			keys[index].CustomerName = use.CustomerName
53
+		}
49 54
 	}
50 55
 
51 56
 	return map[string]interface{}{
@@ -64,9 +69,12 @@ func (s *CaseServ) AddKeys(orgid, caseid string, beginnum, endnum int) error {
64 69
 
65 70
 	for i := beginnum; i <= endnum; i++ {
66 71
 		key := model.TaCaseKey{
67
-			OrgId:   orgid,
68
-			CaseId:  caseid,
69
-			LockNum: strconv.Itoa(i),
72
+			OrgId:      orgid,
73
+			CaseId:     caseid,
74
+			LockNum:    strconv.Itoa(i),
75
+			KeyId:      utils.GetGUID(),
76
+			Status:     cases.STATUS_UNLOCK,
77
+			CreateDate: time.Now(),
70 78
 		}
71 79
 		_, err := s.dao.AddKey(key)
72 80
 		if err != nil {

+ 4
- 0
service/cases/table.go Ver fichero

@@ -3,6 +3,7 @@ package cases
3 3
 import (
4 4
 	"spaceofcheng/services/models/model"
5 5
 	"spaceofcheng/services/service"
6
+	"spaceofcheng/services/utils"
6 7
 
7 8
 	"github.com/astaxie/beego"
8 9
 )
@@ -43,6 +44,9 @@ func (s *CaseServ) GetCaseTableByID(tableid string) (*model.SysCaseTable, error)
43 44
 // SaveCaseTable 保存桌位
44 45
 func (s *CaseServ) SaveCaseTable(table model.SysCaseTable) (*model.SysCaseTable, error) {
45 46
 	var err error
47
+	if table.TableNo == "" {
48
+		return nil, utils.LogError("桌位名称不能为空")
49
+	}
46 50
 	if table.TableId == "" {
47 51
 		_, err = s.dao.AddCaseTable(&table)
48 52
 	} else {

+ 7
- 0
service/cases/tag.go Ver fichero

@@ -4,6 +4,7 @@ import (
4 4
 	"spaceofcheng/services/models/cases"
5 5
 	"spaceofcheng/services/models/model"
6 6
 	"spaceofcheng/services/service"
7
+	"spaceofcheng/services/utils"
7 8
 
8 9
 	"github.com/astaxie/beego"
9 10
 )
@@ -57,6 +58,12 @@ func (s *CaseServ) GetTagByID(tagid string) (*cases.Tag, error) {
57 58
 func (s *CaseServ) SaveTag(tag model.SysTag, caseids string) (*model.SysTag, error) {
58 59
 	var newInfo *model.SysTag
59 60
 	var err error
61
+	if tag.TagName == "" {
62
+		return nil, utils.LogError("标签名称不能为空!")
63
+	}
64
+	if caseids == "" {
65
+		return nil, utils.LogError("案场不能为空!")
66
+	}
60 67
 	if tag.TagId == "" {
61 68
 		newInfo, err = s.dao.AddTag(tag)
62 69
 	} else {

+ 9
- 0
service/message/cmscase.go Ver fichero

@@ -5,6 +5,7 @@ import (
5 5
 	"spaceofcheng/services/models/message"
6 6
 	"spaceofcheng/services/models/model"
7 7
 	"spaceofcheng/services/service"
8
+	"spaceofcheng/services/utils"
8 9
 	"strings"
9 10
 
10 11
 	"github.com/astaxie/beego"
@@ -77,6 +78,14 @@ func (s *MessageServ) GetCmsCasesByID(cmscaseid string) (*message.CmsCase, error
77 78
 func (s *MessageServ) SaveCmsCase(cmscase model.TaCmsCase, courseids, imgs, detailimgs string) (*model.TaCmsCase, error) {
78 79
 	var newInfo *model.TaCmsCase
79 80
 	var err error
81
+	if cmscase.Name == "" {
82
+		return nil, utils.LogError("项目名称不能为空!")
83
+	}
84
+
85
+	if cmscase.Title == "" {
86
+		return nil, utils.LogError("项目标题不能为空!")
87
+	}
88
+
80 89
 	if cmscase.CmsCaseId == "" {
81 90
 		newInfo, err = s.dao.AddCmsCase(cmscase)
82 91
 	} else {

+ 20
- 0
service/message/news.go Ver fichero

@@ -1,6 +1,7 @@
1 1
 package message
2 2
 
3 3
 import (
4
+	"errors"
4 5
 	"spaceofcheng/services/models/message"
5 6
 	"spaceofcheng/services/models/model"
6 7
 	"spaceofcheng/services/service"
@@ -61,6 +62,25 @@ func (s *MessageServ) GetNewsByID(newsid string) (*message.CmsNews, error) {
61 62
 func (s *MessageServ) SaveNews(news model.TaCmsNews, locationids string) (*model.TaCmsNews, error) {
62 63
 	var newInfo *model.TaCmsNews
63 64
 	var err error
65
+	if news.Title == "" {
66
+		return nil, errors.New("咨询标题不允许为空!")
67
+	}
68
+
69
+	if news.ImageUrl == "" {
70
+		return nil, errors.New("图片不允许为空!")
71
+	}
72
+
73
+	if news.ForwardType == "" {
74
+		return nil, errors.New("跳转类型不允许为空!")
75
+	}
76
+	if news.ForwardType == ForwardTypeUrl && news.ForwardUrl == "" {
77
+		return nil, errors.New("跳转地址不允许为空!")
78
+	}
79
+
80
+	if news.ForwardType == ForwardTypeCourse && news.CaseId == "" {
81
+		return nil, errors.New("跳转资源不允许为空!")
82
+	}
83
+
64 84
 	if news.NewsId == "" {
65 85
 		newInfo, err = s.dao.AddNews(news)
66 86
 	} else {