胡轶钦 6 years ago
parent
commit
aa908a4fb8

+ 63
- 0
controllers/cases/signin.go View File

@@ -4,6 +4,8 @@ import (
4 4
 	"spaceofcheng/services/controllers"
5 5
 	"spaceofcheng/services/models/model"
6 6
 	"spaceofcheng/services/service/cases"
7
+	"spaceofcheng/services/utils"
8
+	"errors"
7 9
 )
8 10
 
9 11
 // CaseController 信息
@@ -72,3 +74,64 @@ func (c *SigninController) AddSignin() {
72 74
 	c.ResponseJSON(res)
73 75
 }
74 76
 
77
+// GetSigninExcel 导出签到记录表
78
+func (c *SigninController) GetSigninExcel(){
79
+
80
+	selectType, err := c.GetInt("selectType")
81
+
82
+	// 案场
83
+	caseids := c.GetString("caseid")
84
+	if caseids == "" {
85
+		cases := c.Context.Get("cases").([]model.SysUserCase)
86
+		caseids = c.GetCaseIDs(cases)
87
+	}
88
+	
89
+	// 查询出数据
90
+	list,err := c.dao.GetSigninExcel(selectType,caseids)
91
+	if err != nil {
92
+		c.ResponseError(err)
93
+	}
94
+
95
+	excel, err := utils.NewTinyXLSXEngine()
96
+	if err != nil {
97
+		utils.LogError("初始化Excel服务失败: " + err.Error())
98
+		c.ResponseError(errors.New("初始化Excel服务失败"))
99
+	}
100
+
101
+	// 创建表头
102
+	excel.SetCell(excel.InsertRow(), []string{
103
+		"案场",
104
+		"签到时间",
105
+		"微信昵称",
106
+		"客户姓名",
107
+		"客户类型",
108
+		"手机号",
109
+	})
110
+
111
+	// 遍历数据
112
+	for _, item := range list {
113
+		row := excel.InsertRow()
114
+	
115
+		userTypeName := ""
116
+		if item.UserId == "" {
117
+			userTypeName = "前台用户"
118
+		}else {
119
+			userTypeName = "后台用户"
120
+		}
121
+
122
+		 dateToString := item.CreateDate.Format("2006-01-02 15:04:05")
123
+
124
+		excel.SetCell(row, []string{
125
+			item.CaseName,
126
+			dateToString,
127
+			item.CustomerName,
128
+			item.Name,
129
+			userTypeName,
130
+			item.Phone,
131
+		})
132
+	}
133
+	c.SaveToExcel("签到记录列表.xlsx", excel)
134
+
135
+}
136
+
137
+

+ 2
- 1
controllers/course/course.go View File

@@ -30,7 +30,8 @@ func (c *CourseController) GetCourseList() {
30 30
 	pageSize, _ := c.GetInt("pagesize")
31 31
 	name := c.GetString("name")
32 32
 	typeid := c.GetString("typeid")
33
-	courses, err := c.serv.GetCourseList(caseids, name, typeid, page, pageSize)
33
+	status := c.GetString("status")
34
+	courses, err := c.serv.GetCourseList(caseids, name, typeid, status, page, pageSize)
34 35
 	if err != nil {
35 36
 		c.ResponseError(err)
36 37
 	}

+ 15
- 25
controllers/marketing/marketing.go View File

@@ -1,12 +1,11 @@
1 1
 package marketing
2 2
 
3
-import(
3
+import (
4 4
 	"spaceofcheng/services/controllers"
5
-	"spaceofcheng/services/service/marketing"
6 5
 	"spaceofcheng/services/models/model"
6
+	"spaceofcheng/services/service/marketing"
7 7
 )
8 8
 
9
-
10 9
 // CourseController 商品
11 10
 type MarketingController struct {
12 11
 	serv *marketing.MarketingServ
@@ -21,11 +20,11 @@ func (c *MarketingController) Constructor() {
21 20
 }
22 21
 
23 22
 // 获取 营销活动列表
24
-func (c *MarketingController) GetMarketingList(){
23
+func (c *MarketingController) GetMarketingList() {
25 24
 	page, _ := c.GetInt("page")
26 25
 	pageSize, _ := c.GetInt("pageSize")
27 26
 
28
-	marketings, err := c.serv.GetMarketingList(page,pageSize)
27
+	marketings, err := c.serv.GetMarketingList(page, pageSize)
29 28
 	if err != nil {
30 29
 		c.ResponseError(err)
31 30
 	}
@@ -42,13 +41,12 @@ func (c *MarketingController) SaveMarketing() {
42 41
 	activityName := c.GetString("activityName")
43 42
 	activityType := c.GetString("activityType")
44 43
 	resourceDesc := c.GetString("resourceDesc") // 活动描述
45
-	caseId := c.GetString("CaseId")
46 44
 
47 45
 	// 赋值
48 46
 	marketing.ActivityName = activityName
49 47
 	marketing.ActivityType = activityType
50 48
 
51
-	newInfo,_, err := c.serv.SaveMarketing(marketing,resourceDesc,caseId)
49
+	newInfo, _, err := c.serv.SaveMarketing(marketing, resourceDesc)
52 50
 	if err != nil {
53 51
 		c.ResponseError(err)
54 52
 	}
@@ -56,13 +54,12 @@ func (c *MarketingController) SaveMarketing() {
56 54
 	c.ResponseJSON(newInfo)
57 55
 }
58 56
 
59
-
60 57
 // GetMarketingById 根据activityId查询
61
-func (c *MarketingController) GetMarketingById(){
62
-	 activityId := c.GetString("activityId")
58
+func (c *MarketingController) GetMarketingById() {
59
+	activityId := c.GetString("activityId")
63 60
 
64
-	 info,err :=	c.serv.GetMarketingById(activityId)
65
-	 if err != nil {
61
+	info, err := c.serv.GetMarketingById(activityId)
62
+	if err != nil {
66 63
 		c.ResponseError(err)
67 64
 	}
68 65
 
@@ -70,17 +67,17 @@ func (c *MarketingController) GetMarketingById(){
70 67
 }
71 68
 
72 69
 // UpdateMarketing 修改数据
73
-func (c *MarketingController) UpdateMarketing(){
70
+func (c *MarketingController) UpdateMarketing() {
74 71
 	activity := model.SysActivity{}
75 72
 
76 73
 	// 获取值
77 74
 	activityName := c.GetString("activityName")
78 75
 	activityType := c.GetString("activityType")
79
-	
76
+
80 77
 	// 赋值
81 78
 	activity.ActivityName = activityName
82 79
 	activity.ActivityType = activityType
83
-	
80
+
84 81
 	err := c.serv.UpdateMarketing(activity)
85 82
 	if err != nil {
86 83
 		c.ResponseError(err)
@@ -89,7 +86,7 @@ func (c *MarketingController) UpdateMarketing(){
89 86
 }
90 87
 
91 88
 // DelMarketing 删除
92
-func (c *MarketingController) DelMarketing(){
89
+func (c *MarketingController) DelMarketing() {
93 90
 	activityId := c.GetString(":activityId")
94 91
 	err := c.serv.DelMarketing(activityId)
95 92
 	if err != nil {
@@ -99,7 +96,7 @@ func (c *MarketingController) DelMarketing(){
99 96
 }
100 97
 
101 98
 // DelMarketing 正常
102
-func (c *MarketingController) DelMarketingNormal(){
99
+func (c *MarketingController) DelMarketingNormal() {
103 100
 	activityId := c.GetString(":activityId")
104 101
 	err := c.serv.DelMarketingNormal(activityId)
105 102
 	if err != nil {
@@ -109,7 +106,7 @@ func (c *MarketingController) DelMarketingNormal(){
109 106
 }
110 107
 
111 108
 // DelMarketing 停用
112
-func (c *MarketingController) DelMarketingDisable(){
109
+func (c *MarketingController) DelMarketingDisable() {
113 110
 	activityId := c.GetString(":activityId")
114 111
 	err := c.serv.DelMarketingDisable(activityId)
115 112
 	if err != nil {
@@ -117,10 +114,3 @@ func (c *MarketingController) DelMarketingDisable(){
117 114
 	}
118 115
 	c.ResponseJSON("操作成功!")
119 116
 }
120
-
121
-
122
-
123
-
124
-
125
-
126
-

+ 749
- 0
log/common.log View File

@@ -123,6 +123,7 @@
123 123
 2018/09/18 10:04:34 [E] 用户没有设置默认案场
124 124
 2018/09/18 10:04:34 [E] 用户没有设置默认案场
125 125
 2018/09/18 10:15:27 [E] 用户没有设置默认案场
126
+<<<<<<< HEAD
126 127
 2018/09/18 14:46:43.750 [E]  用户没有设置默认案场
127 128
 2018/09/18 14:46:47.015 [E]  用户没有设置默认案场
128 129
 2018/09/18 14:46:51.448 [E]  用户没有设置默认案场
@@ -507,3 +508,751 @@
507 508
 2018/09/18 20:43:03.684 [E]  用户没有设置默认案场
508 509
 2018/09/18 20:43:03.685 [E]  用户没有设置默认案场
509 510
 2018/09/18 20:43:03.917 [E]  用户没有设置默认案场
511
+=======
512
+2018/09/18 10:34:57 [E] 用户没有设置默认案场
513
+2018/09/18 10:35:06 [E] 用户没有设置默认案场
514
+2018/09/18 10:35:06 [E] 用户没有设置默认案场
515
+2018/09/18 10:35:07 [E] 用户没有设置默认案场
516
+2018/09/18 10:35:07 [E] 用户没有设置默认案场
517
+2018/09/18 10:35:07 [E] 用户没有设置默认案场
518
+2018/09/18 10:35:08 [E] 用户没有设置默认案场
519
+2018/09/18 10:35:08 [E] 用户没有设置默认案场
520
+2018/09/18 10:35:08 [E] 用户没有设置默认案场
521
+2018/09/18 10:35:08 [E] 用户没有设置默认案场
522
+2018/09/18 10:35:09 [E] 用户没有设置默认案场
523
+2018/09/18 10:36:28 [E] 用户没有设置默认案场
524
+2018/09/18 10:44:18 [E] 不存在课程信息!
525
+2018/09/18 10:58:38 [E] 用户没有设置默认案场
526
+2018/09/18 10:59:30 [E] 用户没有设置默认案场
527
+2018/09/18 10:59:30 [E] 用户没有设置默认案场
528
+2018/09/18 10:59:30 [E] 用户没有设置默认案场
529
+2018/09/18 10:59:33 [E] 用户没有设置默认案场
530
+2018/09/18 10:59:46 [E] 用户没有设置默认案场
531
+2018/09/18 10:59:46 [E] 用户没有设置默认案场
532
+2018/09/18 10:59:50 [E] 用户没有设置默认案场
533
+2018/09/18 10:59:50 [E] 用户没有设置默认案场
534
+2018/09/18 10:59:50 [E] 用户没有设置默认案场
535
+2018/09/18 10:59:52 [E] 用户没有设置默认案场
536
+2018/09/18 10:59:58 [E] 用户没有设置默认案场
537
+2018/09/18 10:59:59 [E] 用户没有设置默认案场
538
+2018/09/18 11:00:01 [E] 用户没有设置默认案场
539
+2018/09/18 11:00:01 [E] 用户没有设置默认案场
540
+2018/09/18 11:00:02 [E] 用户没有设置默认案场
541
+2018/09/18 11:00:03 [E] 用户没有设置默认案场
542
+2018/09/18 11:05:19 [E] 用户没有设置默认案场
543
+2018/09/18 11:05:28 [E] 用户没有设置默认案场
544
+2018/09/18 11:05:28 [E] 用户没有设置默认案场
545
+2018/09/18 11:05:37 [E] 用户没有设置默认案场
546
+2018/09/18 11:05:38 [E] 用户没有设置默认案场
547
+2018/09/18 11:05:38 [E] 用户没有设置默认案场
548
+2018/09/18 11:05:39 [E] 用户没有设置默认案场
549
+2018/09/18 11:05:40 [E] 用户没有设置默认案场
550
+2018/09/18 11:05:41 [E] 用户没有设置默认案场
551
+2018/09/18 11:05:41 [E] 用户没有设置默认案场
552
+2018/09/18 11:05:42 [E] 用户没有设置默认案场
553
+2018/09/18 11:05:42 [E] 用户没有设置默认案场
554
+2018/09/18 11:05:49 [E] 用户没有设置默认案场
555
+2018/09/18 11:05:49 [E] 用户没有设置默认案场
556
+2018/09/18 11:05:49 [E] 用户没有设置默认案场
557
+2018/09/18 11:06:29 [E] 用户没有设置默认案场
558
+2018/09/18 11:07:16 [E] 用户没有设置默认案场
559
+2018/09/18 11:07:16 [E] 用户没有设置默认案场
560
+2018/09/18 11:07:17 [E] 用户没有设置默认案场
561
+2018/09/18 11:07:17 [E] 用户没有设置默认案场
562
+2018/09/18 11:07:18 [E] 用户没有设置默认案场
563
+2018/09/18 11:07:18 [E] 用户没有设置默认案场
564
+2018/09/18 11:07:19 [E] 用户没有设置默认案场
565
+2018/09/18 11:07:20 [E] 用户没有设置默认案场
566
+2018/09/18 11:07:20 [E] 用户没有设置默认案场
567
+2018/09/18 11:07:20 [E] 用户没有设置默认案场
568
+2018/09/18 11:07:22 [E] 用户没有设置默认案场
569
+2018/09/18 11:07:22 [E] 用户没有设置默认案场
570
+2018/09/18 11:07:23 [E] 用户没有设置默认案场
571
+2018/09/18 11:07:23 [E] 用户没有设置默认案场
572
+2018/09/18 11:07:24 [E] 用户没有设置默认案场
573
+2018/09/18 11:07:24 [E] 用户没有设置默认案场
574
+2018/09/18 11:07:25 [E] 用户没有设置默认案场
575
+2018/09/18 11:07:25 [E] 用户没有设置默认案场
576
+2018/09/18 11:07:28 [E] 用户没有设置默认案场
577
+2018/09/18 11:07:28 [E] 用户没有设置默认案场
578
+2018/09/18 11:07:29 [E] 用户没有设置默认案场
579
+2018/09/18 11:07:29 [E] 用户没有设置默认案场
580
+2018/09/18 11:07:30 [E] 用户没有设置默认案场
581
+2018/09/18 11:07:31 [E] 用户没有设置默认案场
582
+2018/09/18 11:07:32 [E] 用户没有设置默认案场
583
+2018/09/18 11:07:32 [E] 用户没有设置默认案场
584
+2018/09/18 11:07:34 [E] 用户没有设置默认案场
585
+2018/09/18 11:07:34 [E] 用户没有设置默认案场
586
+2018/09/18 11:07:35 [E] 用户没有设置默认案场
587
+2018/09/18 11:07:35 [E] 用户没有设置默认案场
588
+2018/09/18 11:09:34 [E] 用户没有设置默认案场
589
+2018/09/18 11:09:42 [E] 用户没有设置默认案场
590
+2018/09/18 11:09:42 [E] 保存月记录失败: Error 1054: Unknown column 'create_user' in 'field list'
591
+2018/09/18 11:12:25 [E] 用户没有设置默认案场
592
+2018/09/18 11:12:25 [E] 用户没有设置默认案场
593
+2018/09/18 11:15:14 [E] 用户没有设置默认案场
594
+2018/09/18 11:15:15 [E] 用户没有设置默认案场
595
+2018/09/18 11:15:32 [E] 用户没有设置默认案场
596
+2018/09/18 11:15:32 [E] 用户没有设置默认案场
597
+2018/09/18 11:16:31 [E] 用户没有设置默认案场
598
+2018/09/18 11:19:06 [E] 用户没有设置默认案场
599
+2018/09/18 11:19:15 [E] 用户没有设置默认案场
600
+2018/09/18 11:19:42 [E] 用户没有设置默认案场
601
+2018/09/18 11:19:53 [E] 用户没有设置默认案场
602
+2018/09/18 11:19:53 [E] 用户没有设置默认案场
603
+2018/09/18 11:19:56 [E] 用户没有设置默认案场
604
+2018/09/18 11:30:32 [E] 用户没有设置默认案场
605
+2018/09/18 11:30:32 [E] 用户没有设置默认案场
606
+2018/09/18 11:30:34 [E] 用户没有设置默认案场
607
+2018/09/18 11:34:29 [E] 用户没有设置默认案场
608
+2018/09/18 11:34:35 [E] 用户没有设置默认案场
609
+2018/09/18 11:34:37 [E] 用户没有设置默认案场
610
+2018/09/18 11:37:22 [E] 用户没有设置默认案场
611
+2018/09/18 11:37:26 [E] 用户没有设置默认案场
612
+2018/09/18 11:37:29 [E] 用户没有设置默认案场
613
+2018/09/18 11:37:37 [E] 用户没有设置默认案场
614
+2018/09/18 11:37:39 [E] 用户没有设置默认案场
615
+2018/09/18 11:37:39 [E] 用户没有设置默认案场
616
+2018/09/18 11:37:45 [E] 用户没有设置默认案场
617
+2018/09/18 11:37:46 [E] 用户没有设置默认案场
618
+2018/09/18 11:37:48 [E] 用户没有设置默认案场
619
+2018/09/18 11:39:12 [E] 用户没有设置默认案场
620
+2018/09/18 11:39:33 [E] 用户没有设置默认案场
621
+2018/09/18 11:39:58 [E] 用户没有设置默认案场
622
+2018/09/18 11:39:59 [E] 用户没有设置默认案场
623
+2018/09/18 11:40:01 [E] 用户没有设置默认案场
624
+2018/09/18 11:44:00 [E] 用户没有设置默认案场
625
+2018/09/18 11:44:08 [E] 用户没有设置默认案场
626
+2018/09/18 13:46:26 [E] 用户没有设置默认案场
627
+2018/09/18 13:46:30 [E] 用户没有设置默认案场
628
+2018/09/18 13:48:46 [E] 用户没有设置默认案场
629
+2018/09/18 13:48:46 [E] 用户没有设置默认案场
630
+2018/09/18 13:48:47 [E] 用户没有设置默认案场
631
+2018/09/18 13:48:51 [E] 用户没有设置默认案场
632
+2018/09/18 13:51:53 [E] 用户没有设置默认案场
633
+2018/09/18 13:51:56 [E] 用户没有设置默认案场
634
+2018/09/18 13:52:00 [E] 用户没有设置默认案场
635
+2018/09/18 13:52:00 [E] 用户没有设置默认案场
636
+2018/09/18 13:52:05 [E] 用户没有设置默认案场
637
+2018/09/18 13:56:10 [E] 用户没有设置默认案场
638
+2018/09/18 13:56:13 [E] 用户没有设置默认案场
639
+2018/09/18 13:56:18 [E] 用户没有设置默认案场
640
+2018/09/18 13:56:18 [E] 用户没有设置默认案场
641
+2018/09/18 13:57:09 [E] 用户没有设置默认案场
642
+2018/09/18 13:57:09 [E] 用户没有设置默认案场
643
+2018/09/18 13:57:10 [E] 用户没有设置默认案场
644
+2018/09/18 13:58:42 [E] 用户没有设置默认案场
645
+2018/09/18 13:58:42 [E] 用户没有设置默认案场
646
+2018/09/18 13:58:43 [E] 用户没有设置默认案场
647
+2018/09/18 14:00:26 [E] 用户没有设置默认案场
648
+2018/09/18 14:00:26 [E] 用户没有设置默认案场
649
+2018/09/18 14:00:33 [E] 用户没有设置默认案场
650
+2018/09/18 14:00:36 [E] 用户没有设置默认案场
651
+2018/09/18 14:00:39 [E] 用户没有设置默认案场
652
+2018/09/18 14:00:42 [E] 用户没有设置默认案场
653
+2018/09/18 14:00:45 [E] 用户没有设置默认案场
654
+2018/09/18 14:00:47 [E] 用户没有设置默认案场
655
+2018/09/18 14:00:48 [E] 用户没有设置默认案场
656
+2018/09/18 14:00:49 [E] 用户没有设置默认案场
657
+2018/09/18 14:00:55 [E] 用户没有设置默认案场
658
+2018/09/18 14:00:56 [E] 用户没有设置默认案场
659
+2018/09/18 14:00:58 [E] 用户没有设置默认案场
660
+2018/09/18 14:01:09 [E] 用户没有设置默认案场
661
+2018/09/18 14:01:09 [E] 用户没有设置默认案场
662
+2018/09/18 14:01:51 [E] 用户没有设置默认案场
663
+2018/09/18 14:01:53 [E] 用户没有设置默认案场
664
+2018/09/18 14:04:50 [E] 用户没有设置默认案场
665
+2018/09/18 14:04:56 [E] 用户没有设置默认案场
666
+2018/09/18 14:05:20 [E] 用户没有设置默认案场
667
+2018/09/18 14:05:26 [E] 用户没有设置默认案场
668
+2018/09/18 14:05:43 [E] 用户没有设置默认案场
669
+2018/09/18 14:05:43 [E] 用户没有设置默认案场
670
+2018/09/18 14:06:02 [E] 用户没有设置默认案场
671
+2018/09/18 14:06:06 [E] 用户没有设置默认案场
672
+2018/09/18 14:06:54 [E] 用户没有设置默认案场
673
+2018/09/18 14:06:57 [E] 用户没有设置默认案场
674
+2018/09/18 14:07:57 [E] 用户没有设置默认案场
675
+2018/09/18 14:08:02 [E] 用户没有设置默认案场
676
+2018/09/18 14:08:02 [E] 用户没有设置默认案场
677
+2018/09/18 14:08:02 [E] 用户没有设置默认案场
678
+2018/09/18 14:12:34 [E] 用户没有设置默认案场
679
+2018/09/18 14:16:23 [E] 用户没有设置默认案场
680
+2018/09/18 14:16:37 [E] 用户没有设置默认案场
681
+2018/09/18 14:16:37 [E] 用户没有设置默认案场
682
+2018/09/18 14:16:49 [E] 用户没有设置默认案场
683
+2018/09/18 14:16:49 [E] 用户没有设置默认案场
684
+2018/09/18 14:16:50 [E] 用户没有设置默认案场
685
+2018/09/18 14:17:19 [E] 用户没有设置默认案场
686
+2018/09/18 14:17:23 [E] 用户没有设置默认案场
687
+2018/09/18 14:17:25 [E] 用户没有设置默认案场
688
+2018/09/18 14:17:25 [E] 用户没有设置默认案场
689
+2018/09/18 14:17:27 [E] 用户没有设置默认案场
690
+2018/09/18 14:17:28 [E] 用户没有设置默认案场
691
+2018/09/18 14:17:31 [E] 用户没有设置默认案场
692
+2018/09/18 14:17:36 [E] 用户没有设置默认案场
693
+2018/09/18 14:17:40 [E] 用户没有设置默认案场
694
+2018/09/18 14:18:52 [E] 用户没有设置默认案场
695
+2018/09/18 14:18:52 [E] 用户没有设置默认案场
696
+2018/09/18 14:18:52 [E] 用户没有设置默认案场
697
+2018/09/18 14:18:57 [E] 用户没有设置默认案场
698
+2018/09/18 14:18:58 [E] 用户没有设置默认案场
699
+2018/09/18 14:18:58 [E] 用户没有设置默认案场
700
+2018/09/18 14:18:59 [E] 用户没有设置默认案场
701
+2018/09/18 14:19:19 [E] 用户没有设置默认案场
702
+2018/09/18 14:19:21 [E] 用户没有设置默认案场
703
+2018/09/18 14:19:21 [E] 用户没有设置默认案场
704
+2018/09/18 14:19:24 [E] 用户没有设置默认案场
705
+2018/09/18 14:19:24 [E] 用户没有设置默认案场
706
+2018/09/18 14:19:24 [E] 用户没有设置默认案场
707
+2018/09/18 14:19:32 [E] 用户没有设置默认案场
708
+2018/09/18 14:19:38 [E] 用户没有设置默认案场
709
+2018/09/18 14:20:25 [E] 用户没有设置默认案场
710
+2018/09/18 14:20:25 [E] 用户没有设置默认案场
711
+2018/09/18 14:21:20 [E] 用户没有设置默认案场
712
+2018/09/18 14:21:20 [E] 用户没有设置默认案场
713
+2018/09/18 14:22:42 [E] 用户没有设置默认案场
714
+2018/09/18 14:22:42 [E] 用户没有设置默认案场
715
+2018/09/18 14:22:42 [E] 用户没有设置默认案场
716
+2018/09/18 14:22:43 [E] 用户没有设置默认案场
717
+2018/09/18 14:22:46 [E] 用户没有设置默认案场
718
+2018/09/18 14:25:10 [E] 用户没有设置默认案场
719
+2018/09/18 14:25:17 [E] 用户没有设置默认案场
720
+2018/09/18 14:25:17 [E] 体检设备名称不能为空!
721
+2018/09/18 14:25:17 [E] 用户没有设置默认案场
722
+2018/09/18 14:27:26 [E] 用户没有设置默认案场
723
+2018/09/18 14:28:03 [E] 用户没有设置默认案场
724
+2018/09/18 14:28:03 [E] 体检设备名称不能为空!
725
+2018/09/18 14:28:03 [E] 用户没有设置默认案场
726
+2018/09/18 14:28:03 [E] 体检设备名称不能为空!
727
+2018/09/18 14:28:04 [E] 用户没有设置默认案场
728
+2018/09/18 14:28:04 [E] 体检设备名称不能为空!
729
+2018/09/18 14:28:04 [E] 用户没有设置默认案场
730
+2018/09/18 14:28:04 [E] 体检设备名称不能为空!
731
+2018/09/18 14:28:16 [E] 用户没有设置默认案场
732
+2018/09/18 14:28:21 [E] 用户没有设置默认案场
733
+2018/09/18 14:28:42 [E] 用户没有设置默认案场
734
+2018/09/18 14:28:58 [E] 用户没有设置默认案场
735
+2018/09/18 14:29:03 [E] 用户没有设置默认案场
736
+2018/09/18 14:29:03 [E] 用户没有设置默认案场
737
+2018/09/18 14:29:15 [E] 用户没有设置默认案场
738
+2018/09/18 14:30:39 [E] 用户没有设置默认案场
739
+2018/09/18 14:30:40 [E] 用户没有设置默认案场
740
+2018/09/18 14:32:04 [E] 用户没有设置默认案场
741
+2018/09/18 14:32:06 [E] 用户没有设置默认案场
742
+2018/09/18 14:32:25 [E] 用户没有设置默认案场
743
+2018/09/18 14:32:30 [E] 用户没有设置默认案场
744
+2018/09/18 14:32:30 [E] 用户没有设置默认案场
745
+2018/09/18 14:33:20 [E] 用户没有设置默认案场
746
+2018/09/18 14:33:50 [E] 用户没有设置默认案场
747
+2018/09/18 14:33:57 [E] 用户没有设置默认案场
748
+2018/09/18 14:34:29 [E] 用户没有设置默认案场
749
+2018/09/18 14:34:29 [E] 用户没有设置默认案场
750
+2018/09/18 14:34:36 [E] 用户没有设置默认案场
751
+2018/09/18 14:34:46 [E] 用户没有设置默认案场
752
+2018/09/18 14:34:47 [E] 用户没有设置默认案场
753
+2018/09/18 14:34:51 [E] 用户没有设置默认案场
754
+2018/09/18 14:34:51 [E] 用户没有设置默认案场
755
+2018/09/18 14:34:51 [E] 用户没有设置默认案场
756
+2018/09/18 14:34:53 [E] 用户没有设置默认案场
757
+2018/09/18 14:34:54 [E] 用户没有设置默认案场
758
+2018/09/18 14:34:55 [E] 用户没有设置默认案场
759
+2018/09/18 14:34:56 [E] 用户没有设置默认案场
760
+2018/09/18 14:34:57 [E] 用户没有设置默认案场
761
+2018/09/18 14:34:57 [E] 用户没有设置默认案场
762
+2018/09/18 14:34:57 [E] 用户没有设置默认案场
763
+2018/09/18 14:34:57 [E] 用户没有设置默认案场
764
+2018/09/18 14:34:57 [E] 用户没有设置默认案场
765
+2018/09/18 14:34:58 [E] 用户没有设置默认案场
766
+2018/09/18 14:34:59 [E] 用户没有设置默认案场
767
+2018/09/18 14:35:25 [E] 用户没有设置默认案场
768
+2018/09/18 14:35:25 [E] 用户没有设置默认案场
769
+2018/09/18 14:36:14 [E] 用户没有设置默认案场
770
+2018/09/18 14:36:38 [E] 用户没有设置默认案场
771
+2018/09/18 14:36:38 [E] 用户没有设置默认案场
772
+2018/09/18 14:36:38 [E] 用户没有设置默认案场
773
+2018/09/18 14:36:42 [E] 用户没有设置默认案场
774
+2018/09/18 14:37:17 [E] 用户没有设置默认案场
775
+2018/09/18 14:37:20 [E] 用户没有设置默认案场
776
+2018/09/18 14:37:28 [E] 用户没有设置默认案场
777
+2018/09/18 14:37:28 [E] 锁柜编号存在重复!请检查后再试!
778
+2018/09/18 14:41:20 [E] 用户没有设置默认案场
779
+2018/09/18 14:41:45 [E] 用户没有设置默认案场
780
+2018/09/18 14:42:33 [E] 用户没有设置默认案场
781
+2018/09/18 14:43:19 [E] 用户没有设置默认案场
782
+2018/09/18 14:43:19 [E] 用户没有设置默认案场
783
+2018/09/18 14:43:27 [E] 用户没有设置默认案场
784
+2018/09/18 14:43:28 [E] 用户没有设置默认案场
785
+2018/09/18 14:43:41 [E] 用户没有设置默认案场
786
+2018/09/18 14:43:46 [E] 用户没有设置默认案场
787
+2018/09/18 14:44:39 [E] 用户没有设置默认案场
788
+2018/09/18 14:44:43 [E] 用户没有设置默认案场
789
+2018/09/18 14:45:03 [E] 用户没有设置默认案场
790
+2018/09/18 14:47:32 [E] 用户没有设置默认案场
791
+2018/09/18 14:50:31 [E] 用户没有设置默认案场
792
+2018/09/18 14:50:31 [E] 用户没有设置默认案场
793
+2018/09/18 14:53:34 [E] 用户没有设置默认案场
794
+2018/09/18 14:53:34 [E] 用户没有设置默认案场
795
+2018/09/18 14:54:00 [E] 用户没有设置默认案场
796
+2018/09/18 14:54:00 [E] 用户没有设置默认案场
797
+2018/09/18 14:54:06 [E] 用户没有设置默认案场
798
+2018/09/18 14:54:06 [E] 用户没有设置默认案场
799
+2018/09/18 15:13:52 [E] 用户没有设置默认案场
800
+2018/09/18 15:14:06 [E] 用户没有设置默认案场
801
+2018/09/18 15:14:07 [E] 用户没有设置默认案场
802
+2018/09/18 15:14:22 [E] 用户没有设置默认案场
803
+2018/09/18 15:14:28 [E] 用户没有设置默认案场
804
+2018/09/18 15:16:03 [E] 用户没有设置默认案场
805
+2018/09/18 15:17:42 [E] 用户没有设置默认案场
806
+2018/09/18 15:17:42 [E] 用户没有设置默认案场
807
+2018/09/18 15:17:50 [E] 用户没有设置默认案场
808
+2018/09/18 15:17:54 [E] 用户没有设置默认案场
809
+2018/09/18 15:39:32 [E] 图片不能为空
810
+2018/09/18 15:39:49 [E] 图片不能为空
811
+2018/09/18 15:53:09 [E] 用户没有设置默认案场
812
+2018/09/18 15:53:09 [E] 用户没有设置默认案场
813
+2018/09/18 15:53:19 [E] 图片不能为空
814
+2018/09/18 15:55:27 [E] 用户没有设置默认案场
815
+2018/09/18 15:55:44 [E] 图片不能为空
816
+2018/09/18 15:56:50 [E] 用户没有设置默认案场
817
+2018/09/18 15:57:03 [E] 用户没有设置默认案场
818
+2018/09/18 15:57:27 [E] 用户没有设置默认案场
819
+2018/09/18 15:57:27 [E] 用户没有设置默认案场
820
+2018/09/18 15:57:32 [E] 用户没有设置默认案场
821
+2018/09/18 15:57:36 [E] 用户没有设置默认案场
822
+2018/09/18 16:49:02 [E] 用户没有设置默认案场
823
+2018/09/18 16:49:02 [E] 用户没有设置默认案场
824
+2018/09/18 16:49:03 [E] 用户没有设置默认案场
825
+2018/09/18 16:49:06 [E] 用户没有设置默认案场
826
+2018/09/18 16:49:07 [E] 用户没有设置默认案场
827
+2018/09/18 16:49:25 [E] 用户没有设置默认案场
828
+2018/09/18 16:49:32 [E] 用户没有设置默认案场
829
+2018/09/18 16:49:32 [E] 接收优惠券信息失败: parsing time """" as ""2006-01-02T15:04:05Z07:00"": cannot parse """ as "2006"
830
+2018/09/18 16:53:28 [E] 用户没有设置默认案场
831
+2018/09/18 16:53:28 [E] 用户没有设置默认案场
832
+2018/09/18 16:53:30 [E] 用户没有设置默认案场
833
+2018/09/18 16:53:32 [E] 用户没有设置默认案场
834
+2018/09/18 16:53:45 [E] 用户没有设置默认案场
835
+2018/09/18 16:53:48 [E] 用户没有设置默认案场
836
+2018/09/18 16:53:50 [E] 用户没有设置默认案场
837
+2018/09/18 16:56:15 [E] 用户没有设置默认案场
838
+2018/09/18 16:56:15 [E] 用户没有设置默认案场
839
+2018/09/18 16:56:33 [E] 用户没有设置默认案场
840
+2018/09/18 16:56:39 [E] 用户没有设置默认案场
841
+2018/09/18 16:56:39 [E] 用户没有设置默认案场
842
+2018/09/18 16:57:53 [E] 用户没有设置默认案场
843
+2018/09/18 16:59:54 [E] 用户没有设置默认案场
844
+2018/09/18 17:02:14 [E] 用户没有设置默认案场
845
+2018/09/18 17:03:10 [E] 用户没有设置默认案场
846
+2018/09/18 17:03:20 [E] 用户没有设置默认案场
847
+2018/09/18 17:05:57 [E] 用户没有设置默认案场
848
+2018/09/18 17:06:08 [E] 用户没有设置默认案场
849
+2018/09/18 17:06:22 [E] 用户没有设置默认案场
850
+2018/09/18 17:06:35 [E] 用户没有设置默认案场
851
+2018/09/18 17:07:40 [E] 用户没有设置默认案场
852
+2018/09/18 17:08:53 [E] 课程截止时间必须大于开始时间!
853
+2018/09/18 17:10:38 [E] 课程名称不能为空!
854
+2018/09/18 17:10:41 [E] 课程名称不能为空!
855
+2018/09/18 17:12:06 [E] 用户没有设置默认案场
856
+2018/09/18 17:12:29 [E] 用户没有设置默认案场
857
+2018/09/18 17:12:31 [E] 用户没有设置默认案场
858
+2018/09/18 17:12:33 [E] 用户没有设置默认案场
859
+2018/09/18 17:12:34 [E] 用户没有设置默认案场
860
+2018/09/18 17:12:43 [E] 用户没有设置默认案场
861
+2018/09/18 17:13:07 [E] 用户没有设置默认案场
862
+2018/09/18 17:13:35 [E] 用户没有设置默认案场
863
+2018/09/18 17:13:36 [E] 用户没有设置默认案场
864
+2018/09/18 17:13:36 [E] 用户没有设置默认案场
865
+2018/09/18 17:21:37 [E] 用户没有设置默认案场
866
+2018/09/18 17:21:37 [E] 用户没有设置默认案场
867
+2018/09/18 17:21:45 [E] 用户没有设置默认案场
868
+2018/09/18 17:21:45 [E] 用户没有设置默认案场
869
+2018/09/18 17:21:46 [E] 用户没有设置默认案场
870
+2018/09/18 17:21:47 [E] 用户没有设置默认案场
871
+2018/09/18 17:21:50 [E] 用户没有设置默认案场
872
+2018/09/18 17:21:57 [E] 用户没有设置默认案场
873
+2018/09/18 17:21:58 [E] 用户没有设置默认案场
874
+2018/09/18 17:21:58 [E] 用户没有设置默认案场
875
+2018/09/18 17:33:02 [E] 用户没有设置默认案场
876
+2018/09/18 17:33:02 [E] 用户没有设置默认案场
877
+2018/09/18 17:34:07 [E] 用户没有设置默认案场
878
+2018/09/18 17:34:07 [E] 用户没有设置默认案场
879
+2018/09/18 17:34:07 [E] 创建VIP卡失败: Error 1054: Unknown column 'sales_id' in 'field list'
880
+2018/09/18 17:36:07 [E] 充值失败: 无法确定消费账户
881
+2018/09/18 17:36:15 [E] 充值失败: 无法确定消费账户
882
+2018/09/18 17:37:15 [E] 用户没有设置默认案场
883
+2018/09/18 17:37:16 [E] 用户没有设置默认案场
884
+2018/09/18 17:37:37 [E] 用户没有设置默认案场
885
+2018/09/18 17:37:38 [E] 用户没有设置默认案场
886
+2018/09/18 17:41:39 [E] 用户没有设置默认案场
887
+2018/09/18 17:50:42 [E] 用户没有设置默认案场
888
+2018/09/18 17:50:48 [E] 用户没有设置默认案场
889
+2018/09/18 17:50:48 [E] 用户没有设置默认案场
890
+2018/09/18 17:51:12 [E] 用户没有设置默认案场
891
+2018/09/18 17:57:01 [E] 用户没有设置默认案场
892
+2018/09/18 17:57:01 [E] 用户没有设置默认案场
893
+2018/09/18 17:57:01 [E] 用户没有设置默认案场
894
+2018/09/18 17:57:15 [E] 用户没有设置默认案场
895
+2018/09/18 17:59:12 [E] 用户没有设置默认案场
896
+2018/09/18 18:01:30 [E] 用户没有设置默认案场
897
+2018/09/18 18:01:33 [E] 用户没有设置默认案场
898
+2018/09/18 18:01:34 [E] 用户没有设置默认案场
899
+2018/09/18 18:01:34 [E] 用户没有设置默认案场
900
+2018/09/18 18:01:37 [E] 用户没有设置默认案场
901
+2018/09/18 18:01:44 [E] 用户没有设置默认案场
902
+2018/09/18 18:04:48 [E] 用户没有设置默认案场
903
+2018/09/18 18:04:49 [E] 用户没有设置默认案场
904
+2018/09/18 18:04:49 [E] 用户没有设置默认案场
905
+2018/09/18 18:04:50 [E] 用户没有设置默认案场
906
+2018/09/18 18:04:52 [E] 用户没有设置默认案场
907
+2018/09/18 18:06:02 [E] 用户没有设置默认案场
908
+2018/09/18 18:06:02 [E] 用户没有设置默认案场
909
+2018/09/18 18:06:03 [E] 用户没有设置默认案场
910
+2018/09/18 18:06:08 [E] 用户没有设置默认案场
911
+2018/09/18 18:07:15 [E] 用户没有设置默认案场
912
+2018/09/18 18:07:16 [E] 用户没有设置默认案场
913
+2018/09/18 18:07:16 [E] 用户没有设置默认案场
914
+2018/09/18 18:07:20 [E] 用户没有设置默认案场
915
+2018/09/18 18:08:22 [E] 用户没有设置默认案场
916
+2018/09/18 18:08:35 [E] 用户没有设置默认案场
917
+2018/09/18 18:09:09 [E] 用户没有设置默认案场
918
+2018/09/18 18:11:19 [E] 用户没有设置默认案场
919
+2018/09/18 18:11:19 [E] 用户没有设置默认案场
920
+2018/09/18 18:12:04 [E] 用户没有设置默认案场
921
+2018/09/18 18:12:04 [E] 用户没有设置默认案场
922
+2018/09/18 18:13:00 [E] 用户没有设置默认案场
923
+2018/09/18 18:13:00 [E] 用户没有设置默认案场
924
+2018/09/18 18:13:05 [E] 用户没有设置默认案场
925
+2018/09/18 18:13:05 [E] 用户没有设置默认案场
926
+2018/09/18 18:13:05 [E] 用户没有设置默认案场
927
+2018/09/18 18:14:05 [E] 用户没有设置默认案场
928
+2018/09/18 18:14:06 [E] 用户没有设置默认案场
929
+2018/09/18 18:15:49 [E] 用户没有设置默认案场
930
+2018/09/18 18:15:49 [E] 获取卡券统计数据失败: Error 1054: Unknown column 'a.receiving_type' in 'field list'
931
+2018/09/18 18:16:00 [E] 用户没有设置默认案场
932
+2018/09/18 18:16:00 [E] 用户没有设置默认案场
933
+2018/09/18 18:16:00 [E] 获取卡券统计数据失败: Error 1054: Unknown column 'a.receiving_type' in 'field list'
934
+2018/09/18 18:17:03 [E] 用户没有设置默认案场
935
+2018/09/18 18:17:03 [E] 用户没有设置默认案场
936
+2018/09/18 18:17:03 [E] 用户没有设置默认案场
937
+2018/09/18 18:17:14 [E] 用户没有设置默认案场
938
+2018/09/18 18:17:14 [E] 用户没有设置默认案场
939
+2018/09/18 18:17:14 [E] 用户没有设置默认案场
940
+2018/09/18 18:17:16 [E] 用户没有设置默认案场
941
+2018/09/18 18:17:17 [E] 用户没有设置默认案场
942
+2018/09/18 18:17:17 [E] 用户没有设置默认案场
943
+2018/09/18 18:17:18 [E] 用户没有设置默认案场
944
+2018/09/18 18:18:46 [E] 用户没有设置默认案场
945
+2018/09/18 18:18:46 [E] 用户没有设置默认案场
946
+2018/09/18 18:18:46 [E] 用户没有设置默认案场
947
+2018/09/18 18:18:48 [E] 用户没有设置默认案场
948
+2018/09/18 18:18:53 [E] 用户没有设置默认案场
949
+2018/09/18 18:20:07 [E] 用户没有设置默认案场
950
+2018/09/18 18:20:07 [E] 用户没有设置默认案场
951
+2018/09/18 18:20:08 [E] 用户没有设置默认案场
952
+2018/09/18 18:20:09 [E] 用户没有设置默认案场
953
+2018/09/18 18:20:15 [E] 用户没有设置默认案场
954
+2018/09/18 18:22:34 [E] 用户没有设置默认案场
955
+2018/09/18 18:22:34 [E] 用户没有设置默认案场
956
+2018/09/18 18:22:34 [E] 用户没有设置默认案场
957
+2018/09/18 18:22:36 [E] 用户没有设置默认案场
958
+2018/09/18 18:22:40 [E] 用户没有设置默认案场
959
+2018/09/18 18:25:32 [E] 用户没有设置默认案场
960
+2018/09/18 18:26:51 [E] 用户没有设置默认案场
961
+2018/09/18 18:26:57 [E] 用户没有设置默认案场
962
+2018/09/18 18:26:57 [E] 用户没有设置默认案场
963
+2018/09/18 18:27:09 [E] 用户没有设置默认案场
964
+2018/09/18 18:27:50 [E] 用户没有设置默认案场
965
+2018/09/18 18:28:44 [E] 用户没有设置默认案场
966
+2018/09/18 18:28:44 [E] 用户没有设置默认案场
967
+2018/09/18 18:30:15 [E] 用户没有设置默认案场
968
+2018/09/18 18:30:23 [E] 用户没有设置默认案场
969
+2018/09/18 18:30:23 [E] 用户没有设置默认案场
970
+2018/09/18 18:30:55 [E] 用户没有设置默认案场
971
+2018/09/18 18:30:55 [E] 用户没有设置默认案场
972
+2018/09/18 18:31:21 [E] 用户没有设置默认案场
973
+2018/09/18 18:31:21 [E] 用户没有设置默认案场
974
+2018/09/18 18:31:27 [E] 用户没有设置默认案场
975
+2018/09/18 18:31:50 [E] 用户没有设置默认案场
976
+2018/09/18 18:31:50 [E] 用户没有设置默认案场
977
+2018/09/18 18:31:58 [E] 用户没有设置默认案场
978
+2018/09/18 18:31:58 [E] 用户没有设置默认案场
979
+2018/09/18 18:31:58 [E] 用户没有设置默认案场
980
+2018/09/18 18:33:06 [E] 用户没有设置默认案场
981
+2018/09/18 18:33:06 [E] 用户没有设置默认案场
982
+2018/09/18 18:33:53 [E] 用户没有设置默认案场
983
+2018/09/18 18:33:54 [E] 用户没有设置默认案场
984
+2018/09/18 18:34:18 [E] 用户没有设置默认案场
985
+2018/09/18 18:34:18 [E] 用户没有设置默认案场
986
+2018/09/18 18:34:26 [E] 用户没有设置默认案场
987
+2018/09/18 18:34:53 [E] 用户没有设置默认案场
988
+2018/09/18 18:34:53 [E] 用户没有设置默认案场
989
+2018/09/18 18:34:57 [E] 用户没有设置默认案场
990
+2018/09/18 18:35:12 [E] 用户没有设置默认案场
991
+2018/09/18 18:35:12 [E] 用户没有设置默认案场
992
+2018/09/18 18:35:17 [E] 用户没有设置默认案场
993
+2018/09/18 18:35:17 [E] 用户没有设置默认案场
994
+2018/09/18 18:37:29 [E] 用户没有设置默认案场
995
+2018/09/18 18:37:48 [E] 用户没有设置默认案场
996
+2018/09/18 18:37:52 [E] 用户没有设置默认案场
997
+2018/09/18 18:37:52 [E] 用户没有设置默认案场
998
+2018/09/18 18:38:05 [E] 用户没有设置默认案场
999
+2018/09/18 18:39:00 [E] 用户没有设置默认案场
1000
+2018/09/18 18:39:00 [E] 用户没有设置默认案场
1001
+2018/09/18 18:39:06 [E] 用户没有设置默认案场
1002
+2018/09/18 18:39:54 [E] 用户没有设置默认案场
1003
+2018/09/18 18:39:55 [E] 用户没有设置默认案场
1004
+2018/09/18 18:39:58 [E] 用户没有设置默认案场
1005
+2018/09/18 18:39:58 [E] 用户没有设置默认案场
1006
+2018/09/18 18:42:28 [E] 用户没有设置默认案场
1007
+2018/09/18 18:42:29 [E] 用户没有设置默认案场
1008
+2018/09/18 18:42:55 [E] 用户没有设置默认案场
1009
+2018/09/18 18:42:56 [E] 用户没有设置默认案场
1010
+2018/09/18 18:46:26 [E] 用户没有设置默认案场
1011
+2018/09/18 18:46:27 [E] 用户没有设置默认案场
1012
+2018/09/18 18:52:17 [E] 用户没有设置默认案场
1013
+2018/09/18 18:52:17 [E] 用户没有设置默认案场
1014
+2018/09/18 18:52:25 [E] 用户没有设置默认案场
1015
+2018/09/18 18:52:25 [E] 用户没有设置默认案场
1016
+2018/09/18 18:54:37 [E] 用户没有设置默认案场
1017
+2018/09/18 18:54:37 [E] 用户没有设置默认案场
1018
+2018/09/18 18:54:57 [E] 用户没有设置默认案场
1019
+2018/09/18 18:54:57 [E] 用户没有设置默认案场
1020
+2018/09/18 18:55:14 [E] 用户没有设置默认案场
1021
+2018/09/18 18:55:14 [E] 用户没有设置默认案场
1022
+2018/09/18 18:55:14 [E] 用户没有设置默认案场
1023
+2018/09/18 18:55:52 [E] 用户没有设置默认案场
1024
+2018/09/18 18:55:52 [E] 用户没有设置默认案场
1025
+2018/09/18 18:55:52 [E] 用户没有设置默认案场
1026
+2018/09/18 18:55:57 [E] 用户没有设置默认案场
1027
+2018/09/18 18:55:57 [E] 用户没有设置默认案场
1028
+2018/09/18 18:56:22 [E] 用户没有设置默认案场
1029
+2018/09/18 18:56:22 [E] 用户没有设置默认案场
1030
+2018/09/18 18:56:36 [E] 用户没有设置默认案场
1031
+2018/09/18 18:56:36 [E] 用户没有设置默认案场
1032
+2018/09/18 18:56:47 [E] 用户没有设置默认案场
1033
+2018/09/18 18:56:47 [E] 用户没有设置默认案场
1034
+2018/09/18 18:56:59 [E] 用户没有设置默认案场
1035
+2018/09/18 18:56:59 [E] 用户没有设置默认案场
1036
+2018/09/18 18:57:08 [E] 用户没有设置默认案场
1037
+2018/09/18 18:57:18 [E] 用户没有设置默认案场
1038
+2018/09/18 18:57:19 [E] 用户没有设置默认案场
1039
+2018/09/18 18:58:51 [E] 用户没有设置默认案场
1040
+2018/09/18 19:00:59 [E] 用户没有设置默认案场
1041
+2018/09/18 19:00:59 [E] 用户没有设置默认案场
1042
+2018/09/18 19:01:01 [E] 用户没有设置默认案场
1043
+2018/09/18 19:01:01 [E] 用户没有设置默认案场
1044
+2018/09/18 19:03:29 [E] 用户没有设置默认案场
1045
+2018/09/18 19:03:29 [E] 用户没有设置默认案场
1046
+2018/09/18 19:03:29 [E] 用户没有设置默认案场
1047
+2018/09/18 19:03:34 [E] 用户没有设置默认案场
1048
+2018/09/18 19:03:34 [E] 用户没有设置默认案场
1049
+2018/09/18 19:03:34 [E] 用户没有设置默认案场
1050
+2018/09/18 19:06:55 [E] 用户没有设置默认案场
1051
+2018/09/18 19:06:55 [E] 用户没有设置默认案场
1052
+2018/09/18 19:06:55 [E] 用户没有设置默认案场
1053
+2018/09/18 19:07:25 [E] 用户没有设置默认案场
1054
+2018/09/18 19:07:25 [E] 用户没有设置默认案场
1055
+2018/09/18 19:08:50 [E] 用户没有设置默认案场
1056
+2018/09/18 19:08:51 [E] 用户没有设置默认案场
1057
+2018/09/18 19:10:05 [E] 用户没有设置默认案场
1058
+2018/09/18 19:10:05 [E] 用户没有设置默认案场
1059
+2018/09/18 19:10:05 [E] 用户没有设置默认案场
1060
+2018/09/18 19:10:06 [E] 用户没有设置默认案场
1061
+2018/09/18 19:10:07 [E] 用户没有设置默认案场
1062
+2018/09/18 19:10:07 [E] 用户没有设置默认案场
1063
+2018/09/18 19:10:09 [E] 用户没有设置默认案场
1064
+2018/09/18 19:10:09 [E] 用户没有设置默认案场
1065
+2018/09/18 19:10:09 [E] 用户没有设置默认案场
1066
+2018/09/18 19:10:10 [E] 用户没有设置默认案场
1067
+2018/09/18 19:10:10 [E] 用户没有设置默认案场
1068
+2018/09/18 19:10:10 [E] 用户没有设置默认案场
1069
+2018/09/18 19:10:12 [E] 用户没有设置默认案场
1070
+2018/09/18 19:10:12 [E] 用户没有设置默认案场
1071
+2018/09/18 19:10:12 [E] 用户没有设置默认案场
1072
+2018/09/18 19:10:40 [E] 用户没有设置默认案场
1073
+2018/09/18 19:10:59 [E] 用户没有设置默认案场
1074
+2018/09/18 19:10:59 [E] 用户没有设置默认案场
1075
+2018/09/18 19:11:00 [E] 用户没有设置默认案场
1076
+2018/09/18 19:12:56 [E] 用户没有设置默认案场
1077
+2018/09/18 19:12:57 [E] 用户没有设置默认案场
1078
+2018/09/18 19:12:57 [E] 用户没有设置默认案场
1079
+2018/09/18 19:13:30 [E] 用户没有设置默认案场
1080
+2018/09/18 19:13:31 [E] 用户没有设置默认案场
1081
+2018/09/18 19:13:31 [E] 用户没有设置默认案场
1082
+2018/09/18 19:13:48 [E] 用户没有设置默认案场
1083
+2018/09/18 19:13:48 [E] 用户没有设置默认案场
1084
+2018/09/18 19:13:48 [E] 用户没有设置默认案场
1085
+2018/09/18 19:15:11 [E] 用户没有设置默认案场
1086
+2018/09/18 19:15:11 [E] 用户没有设置默认案场
1087
+2018/09/18 19:15:11 [E] 用户没有设置默认案场
1088
+2018/09/18 19:15:11 [E] 用户没有设置默认案场
1089
+2018/09/18 19:15:12 [E] 用户没有设置默认案场
1090
+2018/09/18 19:15:59 [E] 用户没有设置默认案场
1091
+2018/09/18 19:15:59 [E] 用户没有设置默认案场
1092
+2018/09/18 19:15:59 [E] 用户没有设置默认案场
1093
+2018/09/18 19:17:23 [E] 用户没有设置默认案场
1094
+2018/09/18 19:17:24 [E] 用户没有设置默认案场
1095
+2018/09/18 19:17:31 [E] 用户没有设置默认案场
1096
+2018/09/18 19:17:31 [E] 用户没有设置默认案场
1097
+2018/09/18 19:17:53 [E] 用户没有设置默认案场
1098
+2018/09/18 19:17:53 [E] 用户没有设置默认案场
1099
+2018/09/18 19:19:37 [E] 用户没有设置默认案场
1100
+2018/09/18 19:19:40 [E] 用户没有设置默认案场
1101
+2018/09/18 19:20:38 [E] 用户没有设置默认案场
1102
+2018/09/18 19:20:38 [E] 用户没有设置默认案场
1103
+2018/09/18 19:20:38 [E] 用户没有设置默认案场
1104
+2018/09/18 19:21:41 [E] 用户没有设置默认案场
1105
+2018/09/18 19:21:41 [E] 用户没有设置默认案场
1106
+2018/09/18 19:21:41 [E] 用户没有设置默认案场
1107
+2018/09/18 19:22:13 [E] 用户没有设置默认案场
1108
+2018/09/18 19:22:14 [E] 用户没有设置默认案场
1109
+2018/09/18 19:22:14 [E] 用户没有设置默认案场
1110
+2018/09/18 19:22:21 [E] 用户没有设置默认案场
1111
+2018/09/18 19:22:21 [E] 用户没有设置默认案场
1112
+2018/09/18 19:22:21 [E] 用户没有设置默认案场
1113
+2018/09/18 19:23:25 [E] 用户没有设置默认案场
1114
+2018/09/18 19:23:25 [E] 营销状态异常
1115
+2018/09/18 19:23:32 [E] 用户没有设置默认案场
1116
+2018/09/18 19:24:50 [E] 用户没有设置默认案场
1117
+2018/09/18 19:25:18 [E] 用户没有设置默认案场
1118
+2018/09/18 19:25:18 [E] 用户没有设置默认案场
1119
+2018/09/18 19:25:19 [E] 用户没有设置默认案场
1120
+2018/09/18 19:25:44 [E] 用户没有设置默认案场
1121
+2018/09/18 19:25:47 [E] 用户没有设置默认案场
1122
+2018/09/18 19:25:49 [E] 用户没有设置默认案场
1123
+2018/09/18 19:25:57 [E] 用户没有设置默认案场
1124
+2018/09/18 19:25:57 [E] 用户没有设置默认案场
1125
+2018/09/18 19:26:12 [E] 用户没有设置默认案场
1126
+2018/09/18 19:26:16 [E] 用户没有设置默认案场
1127
+2018/09/18 19:26:16 [E] 用户没有设置默认案场
1128
+2018/09/18 19:26:17 [E] 用户没有设置默认案场
1129
+2018/09/18 19:26:25 [E] 用户没有设置默认案场
1130
+2018/09/18 19:26:27 [E] 用户没有设置默认案场
1131
+2018/09/18 19:26:30 [E] 用户没有设置默认案场
1132
+2018/09/18 19:26:30 [E] 用户没有设置默认案场
1133
+2018/09/18 19:26:32 [E] 用户没有设置默认案场
1134
+2018/09/18 19:26:33 [E] 用户没有设置默认案场
1135
+2018/09/18 19:26:34 [E] 用户没有设置默认案场
1136
+2018/09/18 19:26:34 [E] 用户没有设置默认案场
1137
+2018/09/18 19:26:34 [E] 用户没有设置默认案场
1138
+2018/09/18 19:26:35 [E] 用户没有设置默认案场
1139
+2018/09/18 19:26:36 [E] 用户没有设置默认案场
1140
+2018/09/18 19:30:33 [E] 用户没有设置默认案场
1141
+2018/09/18 19:30:37 [E] 用户没有设置默认案场
1142
+2018/09/18 19:30:40 [E] 用户没有设置默认案场
1143
+2018/09/18 19:30:41 [E] 用户没有设置默认案场
1144
+2018/09/18 19:30:41 [E] 用户没有设置默认案场
1145
+2018/09/18 19:31:00 [E] 用户没有设置默认案场
1146
+2018/09/18 19:31:00 [E] 用户没有设置默认案场
1147
+2018/09/18 19:31:02 [E] 用户没有设置默认案场
1148
+2018/09/18 19:31:11 [E] 用户没有设置默认案场
1149
+2018/09/18 19:31:11 [E] 用户没有设置默认案场
1150
+2018/09/18 19:31:15 [E] 用户没有设置默认案场
1151
+2018/09/18 19:31:22 [E] 用户没有设置默认案场
1152
+2018/09/18 19:31:22 [E] 用户没有设置默认案场
1153
+2018/09/18 19:32:10 [E] 用户没有设置默认案场
1154
+2018/09/18 19:32:11 [E] 用户没有设置默认案场
1155
+2018/09/18 19:32:12 [E] 用户没有设置默认案场
1156
+2018/09/18 19:33:18 [E] 用户没有设置默认案场
1157
+2018/09/18 19:33:18 [E] 用户没有设置默认案场
1158
+2018/09/18 19:33:54 [E] 用户没有设置默认案场
1159
+2018/09/18 19:33:54 [E] 用户没有设置默认案场
1160
+2018/09/18 19:35:31 [E] 用户没有设置默认案场
1161
+2018/09/18 19:35:31 [E] 用户没有设置默认案场
1162
+2018/09/18 19:36:27 [E] 用户没有设置默认案场
1163
+2018/09/18 19:36:27 [E] 用户没有设置默认案场
1164
+2018/09/18 19:36:31 [E] 用户没有设置默认案场
1165
+2018/09/18 19:36:33 [E] 用户没有设置默认案场
1166
+2018/09/18 19:36:34 [E] 用户没有设置默认案场
1167
+2018/09/18 19:36:37 [E] 用户没有设置默认案场
1168
+2018/09/18 19:36:42 [E] 用户没有设置默认案场
1169
+2018/09/18 19:36:43 [E] 用户没有设置默认案场
1170
+2018/09/18 19:39:12 [E] 用户没有设置默认案场
1171
+2018/09/18 19:39:14 [E] 用户没有设置默认案场
1172
+2018/09/18 19:39:22 [E] 用户没有设置默认案场
1173
+2018/09/18 19:39:27 [E] 用户没有设置默认案场
1174
+2018/09/18 19:39:28 [E] 用户没有设置默认案场
1175
+2018/09/18 19:39:42 [E] 用户没有设置默认案场
1176
+2018/09/18 19:39:43 [E] 用户没有设置默认案场
1177
+2018/09/18 19:39:49 [E] 用户没有设置默认案场
1178
+2018/09/18 19:39:49 [E] 用户没有设置默认案场
1179
+2018/09/18 19:41:49 [E] 用户没有设置默认案场
1180
+2018/09/18 19:41:49 [E] 用户没有设置默认案场
1181
+2018/09/18 19:41:53 [E] 用户没有设置默认案场
1182
+2018/09/18 19:41:58 [E] 用户没有设置默认案场
1183
+2018/09/18 19:41:58 [E] 用户没有设置默认案场
1184
+2018/09/18 19:43:40 [E] 用户没有设置默认案场
1185
+2018/09/18 19:43:41 [E] 用户没有设置默认案场
1186
+2018/09/18 19:44:21 [E] 用户没有设置默认案场
1187
+2018/09/18 19:44:21 [E] 用户没有设置默认案场
1188
+2018/09/18 19:47:07 [E] 用户没有设置默认案场
1189
+2018/09/18 19:47:08 [E] 用户没有设置默认案场
1190
+2018/09/18 19:47:08 [E] 用户没有设置默认案场
1191
+2018/09/18 19:52:22 [E] 用户没有设置默认案场
1192
+2018/09/18 19:52:22 [E] 用户没有设置默认案场
1193
+2018/09/18 19:53:12 [E] 用户没有设置默认案场
1194
+2018/09/18 19:53:12 [E] 用户没有设置默认案场
1195
+2018/09/18 19:54:21 [E] 用户没有设置默认案场
1196
+2018/09/18 19:57:23 [E] 用户没有设置默认案场
1197
+2018/09/18 19:57:23 [E] 用户没有设置默认案场
1198
+2018/09/18 19:57:30 [E] 用户没有设置默认案场
1199
+2018/09/18 19:57:30 [E] 获取卡券统计数据失败: Error 1054: Unknown column 'a.receiving_type' in 'field list'
1200
+2018/09/18 19:58:39 [E] 用户没有设置默认案场
1201
+2018/09/18 19:58:39 [E] 获取卡券统计数据失败: Error 1054: Unknown column 'a.receiving_type' in 'field list'
1202
+2018/09/18 19:58:42 [E] 用户没有设置默认案场
1203
+2018/09/18 19:58:42 [E] 获取卡券统计数据失败: Error 1054: Unknown column 'a.receiving_type' in 'field list'
1204
+2018/09/18 19:58:42 [E] 用户没有设置默认案场
1205
+2018/09/18 19:59:10 [E] 用户没有设置默认案场
1206
+2018/09/18 19:59:10 [E] 获取卡券统计数据失败: Error 1054: Unknown column 'd.course_name' in 'field list'
1207
+2018/09/18 20:00:03 [E] 用户没有设置默认案场
1208
+2018/09/18 20:00:03 [E] 获取卡券统计数据失败: Error 1054: Unknown column 'd.course_name' in 'field list'
1209
+2018/09/18 20:01:27 [E] 用户没有设置默认案场
1210
+2018/09/18 20:02:29 [E] 用户没有设置默认案场
1211
+2018/09/18 20:02:30 [E] 用户没有设置默认案场
1212
+2018/09/18 20:02:30 [E] 用户没有设置默认案场
1213
+2018/09/18 20:02:32 [E] 用户没有设置默认案场
1214
+2018/09/18 20:02:32 [E] 接收卡信息失败: parsing time """" as ""2006-01-02T15:04:05Z07:00"": cannot parse """ as "2006"
1215
+2018/09/18 20:04:38 [E] 用户没有设置默认案场
1216
+2018/09/18 20:04:40 [E] 用户没有设置默认案场
1217
+2018/09/18 20:04:40 [E] 用户没有设置默认案场
1218
+2018/09/18 20:04:41 [E] 用户没有设置默认案场
1219
+2018/09/18 20:04:46 [E] 用户没有设置默认案场
1220
+2018/09/18 20:04:48 [E] 用户没有设置默认案场
1221
+2018/09/18 20:04:48 [E] 用户没有设置默认案场
1222
+2018/09/18 20:04:48 [E] 用户没有设置默认案场
1223
+2018/09/18 20:05:44 [E] 用户没有设置默认案场
1224
+2018/09/18 20:06:37 [E] 用户没有设置默认案场
1225
+2018/09/18 20:06:37 [E] 用户没有设置默认案场
1226
+2018/09/18 20:07:04 [E] 用户没有设置默认案场
1227
+2018/09/18 20:07:04 [E] 用户没有设置默认案场
1228
+2018/09/18 20:07:04 [E] 用户没有设置默认案场
1229
+2018/09/18 20:09:18 [E] 用户没有设置默认案场
1230
+2018/09/18 20:09:18 [E] 用户没有设置默认案场
1231
+2018/09/18 20:09:18 [E] 用户没有设置默认案场
1232
+2018/09/18 20:10:22 [E] 用户没有设置默认案场
1233
+2018/09/18 20:10:22 [E] 用户没有设置默认案场
1234
+2018/09/18 20:10:22 [E] 用户没有设置默认案场
1235
+2018/09/18 20:10:26 [E] 用户没有设置默认案场
1236
+2018/09/18 20:10:26 [E] 用户没有设置默认案场
1237
+2018/09/18 20:10:27 [E] 用户没有设置默认案场
1238
+2018/09/18 20:12:31 [E] 用户没有设置默认案场
1239
+2018/09/18 20:12:31 [E] 用户没有设置默认案场
1240
+2018/09/18 20:12:32 [E] 用户没有设置默认案场
1241
+2018/09/18 20:12:32 [E] 用户没有设置默认案场
1242
+2018/09/18 20:12:40 [E] 用户没有设置默认案场
1243
+2018/09/18 20:12:44 [E] 用户没有设置默认案场
1244
+2018/09/18 20:26:47 [E] 用户没有设置默认案场
1245
+2018/09/18 20:26:49 [E] 用户没有设置默认案场
1246
+2018/09/18 20:27:40 [E] 用户没有设置默认案场
1247
+2018/09/18 20:29:01 [E] 用户没有设置默认案场
1248
+2018/09/18 20:29:08 [E] 用户没有设置默认案场
1249
+2018/09/18 20:43:58 [E] 用户没有设置默认案场
1250
+2018/09/18 20:43:58 [E] 用户没有设置默认案场
1251
+2018/09/18 20:43:59 [E] 用户没有设置默认案场
1252
+2018/09/18 20:44:22 [E] 用户没有设置默认案场
1253
+2018/09/18 20:44:22 [E] 用户没有设置默认案场
1254
+2018/09/18 20:44:22 [E] 用户没有设置默认案场
1255
+2018/09/18 20:48:13 [E] 用户没有设置默认案场
1256
+2018/09/18 20:48:13 [E] 用户没有设置默认案场
1257
+2018/09/18 20:48:13 [E] 用户没有设置默认案场
1258
+>>>>>>> e764b3b931d583be9d2c311ab12132dd234f3ae0

+ 5
- 1
models/card/card.go View File

@@ -320,13 +320,17 @@ func (m *CardDAO) GetCardWithCustomer(cardid string) (*CaseUsableCard, error) {
320 320
 // CustomerCardWithShare 我的卡券关联分享信息
321 321
 type CustomerCardWithShare struct {
322 322
 	model.TaCouponCard `xorm:"extends"`
323
+	CustomerCardId     string
324
+	CourseNum          int
325
+	JoinNum            int
326
+	CourseName         string
323 327
 	Share              *model.TaExperienceCardShare
324 328
 }
325 329
 
326 330
 // GetCardByCustomer 获取我的体验卡
327 331
 func (m *CardDAO) GetCardByCustomer(orgid, customerid string) ([]CustomerCardWithShare, error) {
328 332
 	var cards []CustomerCardWithShare
329
-	sql := `select * from ta_customer_card where status>? and customer_id=? and org_id=?`
333
+	sql := `select a.*,b.customer_course_id,b.course_num,b.join_num,b.course_name from ta_customer_card a left join ta_customer_course b on a.customer_card_id = b.source_id where a.status>? and a.customer_id=? and a.org_id=?`
330 334
 	err := m.db.Sql(sql, models.STATUS_DEL, customerid, orgid).Find(&cards)
331 335
 	if err != nil {
332 336
 		return nil, err

+ 2
- 1
models/cases/cases.go View File

@@ -74,7 +74,7 @@ func (m *CaseDAO) GetCaseByID(caseid string) (*model.SysCase, error) {
74 74
 func (m *CaseDAO) AddCase(caseinfo model.SysCase) (*model.SysCase, error) {
75 75
 	caseinfo.CaseId = utils.GetGUID()
76 76
 	caseinfo.CreateDate = time.Now()
77
-	caseinfo.Status = models.STATUS_NORMAL
77
+	// caseinfo.Status = models.STATUS_NORMAL
78 78
 	user := m.ctx.Get("user").(model.SysUser)
79 79
 	caseinfo.CreateUser = user.UserId
80 80
 	_, err := m.db.Insert(caseinfo)
@@ -90,6 +90,7 @@ func (m *CaseDAO) UpdateCase(caseinfo model.SysCase) error {
90 90
 		"case_address",
91 91
 		"case_tel",
92 92
 		"coordinate",
93
+		"status",
93 94
 	}
94 95
 	_, err := m.db.Cols(cols...).Where("case_id=?", caseinfo.CaseId).Update(caseinfo)
95 96
 	return err

+ 43
- 0
models/cases/signin.go View File

@@ -105,3 +105,46 @@ func (m *SigninDAO) AddSignin(signin model.TaCheckinRecord)(model.TaCheckinRecor
105 105
 	_,err := m.db.Insert(signin)
106 106
 	return signin,err
107 107
 }
108
+
109
+
110
+
111
+/**
112
+	 GetSigninExcel 根据条件查询签到记录
113
+			 条件:
114
+					 selectType: 今天,本周,本月,今年,全部
115
+					 caseid: 案场ID
116
+
117
+		ALL 				= -1 // 全部
118
+		TODAY 			= 0 // 今天
119
+		THIS_WEEK 	= 1 // 本周
120
+		THIS_MONTH 	= 2 // 本月
121
+		THIS_YEAR  	= 3 // 今年
122
+
123
+
124
+ **/
125
+ func (m *SigninDAO) GetSigninExcel(selectType int, caseid string) ([]SigninInfo, error) {
126
+	var signin []SigninInfo
127
+	var sql string
128
+	switch selectType {
129
+	case ALL:
130
+		sql = `select tcr.*,user_id from ta_checkin_record tcr LEFT JOIN ta_customer tc on tcr.customer_id = tc.customer_id where tcr.case_id in ('` +
131
+			strings.Replace(caseid, ",", "','", -1) + `') ORDER BY tcr.create_date DESC`
132
+	case TODAY:
133
+		sql = `select tcr.*,user_id from ta_checkin_record tcr LEFT JOIN ta_customer tc on tcr.customer_id = tc.customer_id where to_days(tcr.create_date) = to_days(now()) and tcr.case_id in ('` +
134
+			strings.Replace(caseid, ",", "','", -1) + `') ORDER BY tcr.create_date DESC`
135
+	case THIS_WEEK:
136
+		sql = `select tcr.*,user_id from ta_checkin_record tcr LEFT JOIN ta_customer tc on tcr.customer_id = tc.customer_id WHERE YEARWEEK(date_format(tcr.create_date,'%Y-%m-%d')) = YEARWEEK(now())  and tcr.case_id in ('` +
137
+			strings.Replace(caseid, ",", "','", -1) + `') ORDER BY tcr.create_date DESC`
138
+	case THIS_MONTH:
139
+		sql = `select tcr.*,user_id from ta_checkin_record tcr LEFT JOIN ta_customer tc on tcr.customer_id = tc.customer_id WHERE DATE_FORMAT(tcr.create_date,'%Y%m') = DATE_FORMAT(CURDATE(),'%Y%m') and tcr.case_id in ('` +
140
+			strings.Replace(caseid, ",", "','", -1) + `') ORDER BY tcr.create_date DESC`
141
+	case THIS_YEAR:
142
+		sql = `select tcr.*,user_id from ta_checkin_record tcr LEFT JOIN ta_customer tc on tcr.customer_id = tc.customer_id where YEAR(tcr.create_date)=YEAR(NOW()) and tcr.case_id in ('` +
143
+			strings.Replace(caseid, ",", "','", -1) + `') ORDER BY tcr.create_date DESC`
144
+	}
145
+
146
+	err := m.db.Sql(sql).Find(&signin)
147
+	return signin, err
148
+}
149
+
150
+

+ 96
- 96
models/cases/table.go View File

@@ -1,96 +1,96 @@
1
-package cases
2
-
3
-import (
4
-	"spaceofcheng/services/models"
5
-	"spaceofcheng/services/models/model"
6
-	"spaceofcheng/services/utils"
7
-	"strconv"
8
-	"strings"
9
-	"time"
10
-)
11
-
12
-// GetCaseTableCount 获取桌位总数
13
-func (m *CaseDAO) GetCaseTableCount(caseids string) (int, error) {
14
-	var tables []model.SysCaseTable
15
-	dao := m.db.Where("status>" + strconv.Itoa(models.STATUS_DEL)).And("case_id in ('" + strings.Replace(caseids, ",", "','", -1) + "')")
16
-	err := dao.Find(&tables)
17
-	return len(tables), err
18
-}
19
-
20
-// CaseTableInfo 案场桌位
21
-type CaseTableInfo struct {
22
-	model.SysCaseTable `xorm:"extends"`
23
-	AreaName           string
24
-	CaseName           string
25
-}
26
-
27
-// GetCaseTable 根据案场获取桌位
28
-func (m *CaseDAO) GetCaseTable(caseids string, page int, pageSize int) ([]CaseTableInfo, error) {
29
-	var tables []CaseTableInfo
30
-	sql := `select a.*,b.area_name,c.case_name from sys_case_table a 
31
-	inner join sys_case_area b on a.area_id=b.area_id
32
-	inner join sys_case c on a.case_id=c.case_id
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 ('` +
35
-		strings.Replace(caseids, ",", "','", -1) + `')`
36
-
37
-	err := m.db.Sql(sql).Find(&tables)
38
-	return tables, err
39
-}
40
-
41
-// GetCaseTableByAreaID 根据区域ID获取桌位信息
42
-func (m *CaseDAO) GetCaseTableByAreaID(areaid string) ([]model.SysCaseTable, error) {
43
-	var tables []model.SysCaseTable
44
-	err := m.db.Where("status>"+strconv.Itoa(models.STATUS_DEL)).And("area_id=?", areaid).Find(&tables)
45
-	return tables, err
46
-}
47
-
48
-// GetCaseTableByID 根据ID获取桌位
49
-func (m *CaseDAO) GetCaseTableByID(tableid string) (*model.SysCaseTable, error) {
50
-	var tables []model.SysCaseTable
51
-	err := m.db.Where("status>"+strconv.Itoa(models.STATUS_DEL)).And("table_id=?", tableid).Find(&tables)
52
-	if err != nil {
53
-		return nil, err
54
-	}
55
-	if len(tables) > 0 {
56
-		return &tables[0], nil
57
-	}
58
-	return nil, nil
59
-}
60
-
61
-// AddCaseTable 新增桌位
62
-func (m *CaseDAO) AddCaseTable(area *model.SysCaseTable) (*model.SysCaseTable, error) {
63
-	area.TableId = utils.GetGUID()
64
-	area.Status = models.STATUS_NORMAL
65
-	area.CreateDate = time.Now()
66
-	user := m.ctx.Get("user").(model.SysUser)
67
-	area.CreateUser = user.UserId
68
-	_, err := m.db.Insert(area)
69
-	return area, err
70
-}
71
-
72
-// UpdateCaseTable 修改桌位
73
-func (m *CaseDAO) UpdateCaseTable(area model.SysCaseTable) error {
74
-	var cols = []string{
75
-		"table_no",
76
-		"order",
77
-		"remark",
78
-		"case_id",
79
-		"area_id",
80
-	}
81
-	_, err := m.db.Cols(cols...).Where("table_id=?", area.TableId).Update(area)
82
-	return err
83
-}
84
-
85
-// DelCaseTable 刪除桌位
86
-func (m *CaseDAO) DelCaseTable(tableid string) error {
87
-	var area = model.SysCaseTable{
88
-		TableId: tableid,
89
-		Status:  models.STATUS_DEL,
90
-	}
91
-	var cols = []string{
92
-		"status",
93
-	}
94
-	_, err := m.db.Cols(cols...).Where("table_id=?", area.TableId).Update(area)
95
-	return err
96
-}
1
+package cases
2
+
3
+import (
4
+	"spaceofcheng/services/models"
5
+	"spaceofcheng/services/models/model"
6
+	"spaceofcheng/services/utils"
7
+	"strconv"
8
+	"strings"
9
+	"time"
10
+)
11
+
12
+// GetCaseTableCount 获取桌位总数
13
+func (m *CaseDAO) GetCaseTableCount(caseids string) (int, error) {
14
+	var tables []model.SysCaseTable
15
+	dao := m.db.Where("status>" + strconv.Itoa(models.STATUS_DEL)).And("case_id in ('" + strings.Replace(caseids, ",", "','", -1) + "')")
16
+	err := dao.Find(&tables)
17
+	return len(tables), err
18
+}
19
+
20
+// CaseTableInfo 案场桌位
21
+type CaseTableInfo struct {
22
+	model.SysCaseTable `xorm:"extends"`
23
+	AreaName           string
24
+	CaseName           string
25
+}
26
+
27
+// GetCaseTable 根据案场获取桌位
28
+func (m *CaseDAO) GetCaseTable(caseids string, page int, pageSize int) ([]CaseTableInfo, error) {
29
+	var tables []CaseTableInfo
30
+	sql := `select a.*,b.area_name,c.case_name from sys_case_table a 
31
+	inner join sys_case_area b on a.area_id=b.area_id
32
+	inner join sys_case c on a.case_id=c.case_id
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 ('` +
35
+		strings.Replace(caseids, ",", "','", -1) + `') limit ` + strconv.Itoa((page-1)*pageSize) + `, ` + strconv.Itoa(pageSize)
36
+
37
+	err := m.db.Sql(sql).Find(&tables)
38
+	return tables, err
39
+}
40
+
41
+// GetCaseTableByAreaID 根据区域ID获取桌位信息
42
+func (m *CaseDAO) GetCaseTableByAreaID(areaid string) ([]model.SysCaseTable, error) {
43
+	var tables []model.SysCaseTable
44
+	err := m.db.Where("status>"+strconv.Itoa(models.STATUS_DEL)).And("area_id=?", areaid).Find(&tables)
45
+	return tables, err
46
+}
47
+
48
+// GetCaseTableByID 根据ID获取桌位
49
+func (m *CaseDAO) GetCaseTableByID(tableid string) (*model.SysCaseTable, error) {
50
+	var tables []model.SysCaseTable
51
+	err := m.db.Where("status>"+strconv.Itoa(models.STATUS_DEL)).And("table_id=?", tableid).Find(&tables)
52
+	if err != nil {
53
+		return nil, err
54
+	}
55
+	if len(tables) > 0 {
56
+		return &tables[0], nil
57
+	}
58
+	return nil, nil
59
+}
60
+
61
+// AddCaseTable 新增桌位
62
+func (m *CaseDAO) AddCaseTable(area *model.SysCaseTable) (*model.SysCaseTable, error) {
63
+	area.TableId = utils.GetGUID()
64
+	area.Status = models.STATUS_NORMAL
65
+	area.CreateDate = time.Now()
66
+	user := m.ctx.Get("user").(model.SysUser)
67
+	area.CreateUser = user.UserId
68
+	_, err := m.db.Insert(area)
69
+	return area, err
70
+}
71
+
72
+// UpdateCaseTable 修改桌位
73
+func (m *CaseDAO) UpdateCaseTable(area model.SysCaseTable) error {
74
+	var cols = []string{
75
+		"table_no",
76
+		"order",
77
+		"remark",
78
+		"case_id",
79
+		"area_id",
80
+	}
81
+	_, err := m.db.Cols(cols...).Where("table_id=?", area.TableId).Update(area)
82
+	return err
83
+}
84
+
85
+// DelCaseTable 刪除桌位
86
+func (m *CaseDAO) DelCaseTable(tableid string) error {
87
+	var area = model.SysCaseTable{
88
+		TableId: tableid,
89
+		Status:  models.STATUS_DEL,
90
+	}
91
+	var cols = []string{
92
+		"status",
93
+	}
94
+	_, err := m.db.Cols(cols...).Where("table_id=?", area.TableId).Update(area)
95
+	return err
96
+}

+ 34
- 8
models/course/course.go View File

@@ -42,10 +42,10 @@ type CourseInfo struct {
42 42
 }
43 43
 
44 44
 // GetCourseList 获取课程列表
45
-func (m *CourseDAO) GetCourseList(caseids, name, typeid string, page, pageSize int) ([]CourseInfo, error) {
45
+func (m *CourseDAO) GetCourseList(caseids, name, typeid, status string, page, pageSize int) ([]CourseInfo, error) {
46 46
 	var courses []CourseInfo
47 47
 	sql := `select a.*,b.location_name from ta_course a left join td_cms_image_location b on a.location_id = b.location_id where a.case_id in ('` +
48
-		strings.Replace(caseids, ",", "','", -1) + `') and a.status>` + strconv.Itoa(models.STATUS_DEL)
48
+		strings.Replace(caseids, ",", "','", -1) + `')`
49 49
 
50 50
 	if name != "" {
51 51
 		sql += ` and a.course_name like '%` + name + `%'`
@@ -55,15 +55,24 @@ func (m *CourseDAO) GetCourseList(caseids, name, typeid string, page, pageSize i
55 55
 		sql += ` and a.location_id='` + typeid + `'`
56 56
 	}
57 57
 
58
+	if status != "" {
59
+		if status != "1" {
60
+			status = "0"
61
+		}
62
+		sql += ` and a.status=` + status
63
+	} else {
64
+		sql += ` and a.status>` + strconv.Itoa(models.STATUS_DEL)
65
+	}
66
+
58 67
 	sql += ` order by create_date desc limit ` + strconv.Itoa((page-1)*pageSize) + `, ` + strconv.Itoa(pageSize)
59 68
 	err := m.db.Sql(sql).Find(&courses)
60 69
 	return courses, err
61 70
 }
62 71
 
63 72
 // GetCourseCount 获取课程总数
64
-func (m *CourseDAO) GetCourseCount(caseids, name, typeid string) (int, error) {
73
+func (m *CourseDAO) GetCourseCount(caseids, name, typeid, status string) (int, error) {
65 74
 	var course []model.TaCourse
66
-	dao := m.db.Where("case_id in ('" + strings.Replace(caseids, ",", "','", -1) + "')").And("status>" + strconv.Itoa(models.STATUS_DEL))
75
+	dao := m.db.Where("case_id in ('" + strings.Replace(caseids, ",", "','", -1) + "')")
67 76
 
68 77
 	if name != "" {
69 78
 		dao.And("course_name like '%" + name + "%'")
@@ -72,6 +81,16 @@ func (m *CourseDAO) GetCourseCount(caseids, name, typeid string) (int, error) {
72 81
 	if typeid != "" {
73 82
 		dao.And("location_id=?", typeid)
74 83
 	}
84
+
85
+	if status != "" {
86
+		if status != "1" {
87
+			status = "0"
88
+		}
89
+		dao.And("status=?", status)
90
+	} else {
91
+		dao.And("status>" + strconv.Itoa(models.STATUS_DEL))
92
+	}
93
+
75 94
 	err := dao.Find(&course)
76 95
 	if err != nil {
77 96
 		return 0, err
@@ -334,8 +353,9 @@ func (m *CourseDAO) AddCourseDetail(detail model.TaCourseDetail) (*model.TaCours
334 353
 func (m *CourseDAO) UpdateCourseDetail(detail model.TaCourseDetail) error {
335 354
 	var cols = []string{
336 355
 		"detail_name",
337
-		"begin_date",
338
-		"end_date",
356
+		"detail_desc",
357
+		// "begin_date",
358
+		// "end_date",
339 359
 	}
340 360
 	_, err := m.db.Cols(cols...).Where("detail_id=?", detail.DetailId).Update(detail)
341 361
 	return err
@@ -415,7 +435,10 @@ func (m *CourseDAO) DeleteScheduleByCourse(courseid string) error {
415 435
 // GetSelectCourseList 获取精选课程
416 436
 func (m *CourseDAO) GetSelectCourseList(orgid string) ([]CourseDetail, error) {
417 437
 	var courses []CourseDetail
418
-	sql := `select * from ta_course where is_select=` + strconv.Itoa(IS_SELECT) + ` and status=` + strconv.Itoa(models.STATUS_NORMAL) + ` and org_id='` + orgid + `'`
438
+	sql := `select * from ta_course where is_select=` + strconv.Itoa(IS_SELECT) + ` and status=` + strconv.Itoa(models.STATUS_NORMAL) + ` and org_id='` + orgid + `'
439
+	and course_id NOT in (
440
+		select course_id from ta_course_detail where begin_date<=NOW()
441
+	)`
419 442
 	err := m.db.Sql(sql).Find(&courses)
420 443
 	return courses, err
421 444
 }
@@ -423,7 +446,10 @@ func (m *CourseDAO) GetSelectCourseList(orgid string) ([]CourseDetail, error) {
423 446
 // GetCourseByLocation 根据位置获取课程信息
424 447
 func (m *CourseDAO) GetCourseByLocation(orgid, locationid string) ([]CourseDetail, error) {
425 448
 	var courses []CourseDetail
426
-	sql := `select * from ta_course where status=` + strconv.Itoa(models.STATUS_NORMAL) + ` and org_id='` + orgid + `' and location_id ='` + locationid + `'`
449
+	sql := `select * from ta_course where status=` + strconv.Itoa(models.STATUS_NORMAL) + ` and org_id='` + orgid + `' and location_id ='` + locationid + `' 
450
+	and course_id NOT in (
451
+		select course_id from ta_course_detail where begin_date<=NOW()
452
+	)`
427 453
 	err := m.db.Sql(sql).Find(&courses)
428 454
 	return courses, err
429 455
 }

+ 4
- 4
models/goods/orders.go View File

@@ -248,16 +248,16 @@ func (m *GoodsDAO) GetCustomerOrdersCount(custID string) (int, error) {
248 248
 }
249 249
 
250 250
 // GetOrdersCountByCase 根据案场获取订单信息
251
-func (m *GoodsDAO) GetOrdersCountByCase(caseid string) (int64, error) {
251
+func (m *GoodsDAO) GetOrdersCountByCase(caseid, userid string) (int64, error) {
252 252
 	order := new(model.TaGoodsOrders)
253
-	total, err := m.db.Where("case_id = ?", caseid).And("status>"+strconv.Itoa(models.STATUS_DEL)).SumInt(order, "orders_num")
253
+	total, err := m.db.Where("case_id = ?", caseid).And("user_id=?", userid).And("status>"+strconv.Itoa(models.STATUS_DEL)).SumInt(order, "orders_num")
254 254
 	return total, err
255 255
 }
256 256
 
257 257
 // GetMonthOrdersCountByCase 获取案场本月的订单数量
258
-func (m *GoodsDAO) GetMonthOrdersCountByCase(caseid string) (int64, error) {
258
+func (m *GoodsDAO) GetMonthOrdersCountByCase(caseid, userid string) (int64, error) {
259 259
 	order := new(model.TaGoodsOrders)
260
-	total, err := m.db.Where("case_id = ?", caseid).And("status>"+strconv.Itoa(models.STATUS_DEL)).And("date_format(create_date,'%Y-%m')=date_format(NOW(),'%Y-%m')").SumInt(order, "orders_num")
260
+	total, err := m.db.Where("case_id = ?", caseid).And("user_id=?", userid).And("status>"+strconv.Itoa(models.STATUS_DEL)).And("date_format(create_date,'%Y-%m')=date_format(NOW(),'%Y-%m')").SumInt(order, "orders_num")
261 261
 	return total, err
262 262
 }
263 263
 

+ 27
- 45
models/marketing/marketing.go View File

@@ -1,10 +1,12 @@
1 1
 package marketing
2 2
 
3
-import(
3
+import (
4
+	"jcjy/demo/models"
4 5
 	"spaceofcheng/services/models/model"
5 6
 	"spaceofcheng/services/utils"
6 7
 	"strconv"
7 8
 	"time"
9
+
8 10
 	"github.com/go-xorm/xorm"
9 11
 )
10 12
 
@@ -14,17 +16,10 @@ const (
14 16
 
15 17
 )
16 18
 
17
-// 状态
18
-const (
19
-	DELETE = -1 // 删除
20
-	NORMAL = 0 // 正常
21
-	DISABLE = 1 // 停用
22
-)
23
-
24 19
 // 赠券卡券
25 20
 const (
26
-	drink = 1 // 饮品通用卷
27
-	course = 2 // 课程通用卷
21
+	drink          = 1 // 饮品通用卷
22
+	course         = 2 // 课程通用卷
28 23
 	petty_diplomat = 3 // 小小外交官通用卷
29 24
 )
30 25
 
@@ -42,23 +37,23 @@ func NewMarketingDAO(ctx *utils.Context) *MarketingDAO {
42 37
 	}
43 38
 }
44 39
 
45
-// MarketingInfo 
40
+// MarketingInfo
46 41
 type MarketingInfo struct {
47 42
 	model.SysActivity `xorm:"extends"`
48
-	CaseName		 string
49
-	ActionId     string
50
-	ActiveType  string
51
-	ResourceType string
52
-	ResourceDesc string
53
-	Actions []model.SysActivityAction
43
+	CaseName          string
44
+	ActionId          string
45
+	ActiveType        string
46
+	ResourceType      string
47
+	ResourceDesc      string
48
+	Actions           []model.SysActivityAction
54 49
 }
55 50
 
56 51
 // GetMarketingList 查询所有
57
-func (m *MarketingDAO) GetMarketingList(page int, pageSize int) ([]MarketingInfo ,error){
52
+func (m *MarketingDAO) GetMarketingList(page int, pageSize int) ([]MarketingInfo, error) {
58 53
 
59 54
 	var news []MarketingInfo
60 55
 	//sql := `select * from sys_activity new order by new.create_date desc limit ` + strconv.Itoa((page-1)*pageSize) + ", " + strconv.Itoa(pageSize)
61
-	sql :=`SELECT sc.case_name,sa.*,sas.action_id,sas.active_type,sas.resource_type,sas.resource_desc from sys_activity sa LEFT JOIN sys_activity_action sas on sa.activity_id = sas.activity_id LEFT JOIN sys_case sc on sa.case_id = sc.case_id where sa.status != -1 order by sa.create_date desc limit ` + strconv.Itoa((page-1)*pageSize) + ", " + strconv.Itoa(pageSize)
56
+	sql := `SELECT sc.case_name,sa.*,sas.action_id,sas.active_type,sas.resource_type,sas.resource_desc from sys_activity sa LEFT JOIN sys_activity_action sas on sa.activity_id = sas.activity_id LEFT JOIN sys_case sc on sa.case_id = sc.case_id where sa.status != -1 order by sa.create_date desc limit ` + strconv.Itoa((page-1)*pageSize) + ", " + strconv.Itoa(pageSize)
62 57
 
63 58
 	err := m.db.Sql(sql).Find(&news)
64 59
 	return news, err
@@ -66,60 +61,53 @@ func (m *MarketingDAO) GetMarketingList(page int, pageSize int) ([]MarketingInfo
66 61
 }
67 62
 
68 63
 // GetMarketingCount 获取总数
69
-func (m *MarketingDAO) GetMarketingCount()(int64, error){
64
+func (m *MarketingDAO) GetMarketingCount() (int64, error) {
70 65
 	var total []int64
71
-	sql := `select count(*) as total from sys_activity`
66
+	sql := `select count(*) as total from sys_activity where status>` + strconv.Itoa(models.STATUS_DEL)
72 67
 	err := m.db.Sql(sql).Cols("total").Find(&total)
73
-	if err!=nil{
68
+	if err != nil {
74 69
 
75 70
 	}
76 71
 	return total[0], err
77 72
 }
78 73
 
79
-
80 74
 // AddMarketing 添加
81
-func (m *MarketingDAO) AddMarketing(activity model.SysActivity, caseId string) (*model.SysActivity, error) {
75
+func (m *MarketingDAO) AddMarketing(activity model.SysActivity) (*model.SysActivity, error) {
82 76
 	activity.ActivityId = utils.GetGUID()
83 77
 	activity.CreateDate = time.Now()
84 78
 	//activity.Status = models.STATUS_NORMAL
85
-	activity.Status = NORMAL // 状态为正常
79
+	activity.Status = models.STATUS_NORMAL // 状态为正常
86 80
 	org := m.ctx.Get("org").(model.SysOrg)
87 81
 	activity.OrgId = org.OrgId
88
-	activity.CaseId = caseId
89
-
90 82
 	_, err := m.db.Insert(&activity)
91 83
 
92 84
 	return &activity, err
93 85
 }
94 86
 
95
-
96 87
 // GetMarketingById 根据ID查询活动营销
97
-func (m *MarketingDAO) GetMarketingById(activityId string) (*model.SysActivity,error){
88
+func (m *MarketingDAO) GetMarketingById(activityId string) (*model.SysActivity, error) {
98 89
 
99 90
 	var activity []model.SysActivity
100
-	err := m.db.Where("activity_id=?",activityId).Find(&activity)
91
+	err := m.db.Where("activity_id=?", activityId).Find(&activity)
101 92
 	if err != nil {
102 93
 		return nil, err
103 94
 	}
104
-	if len(activity) >0 {
105
-		return &activity[0],nil
95
+	if len(activity) > 0 {
96
+		return &activity[0], nil
106 97
 	}
107
-	return nil,nil
108
-	
98
+	return nil, nil
99
+
109 100
 }
110 101
 
111 102
 // DelMarketing 修改状态 营销活动(删除,启用,停用)
112 103
 /**
113
- *	DELETE = -1 // 删除
114
-		NORMAL = 0 // 正常
115
-		DISABLE = 1 // 停用
116 104
  **/
117
-func (m *MarketingDAO) DelMarketing(activityId string,status int) error {
105
+func (m *MarketingDAO) DelMarketing(activityId string, status int) error {
118 106
 
119 107
 	var info = model.SysActivity{
120 108
 		ActivityId: activityId,
121 109
 		// Status:   models.STATUS_DEL,
122
-		Status:   status,
110
+		Status: status,
123 111
 	}
124 112
 	var cols = []string{
125 113
 		"status",
@@ -128,7 +116,6 @@ func (m *MarketingDAO) DelMarketing(activityId string,status int) error {
128 116
 	return err
129 117
 }
130 118
 
131
-
132 119
 // UpdateMarketing 修改 营销活动
133 120
 func (m *MarketingDAO) UpdateMarketing(activity model.SysActivity) error {
134 121
 	// var cols = []string{
@@ -146,8 +133,3 @@ func (m *MarketingDAO) UpdateMarketing(activity model.SysActivity) error {
146 133
 	_, err := m.db.Cols(cols...).Where("action_id=?", activity.ActivityId).Update(activity)
147 134
 	return err
148 135
 }
149
-
150
-
151
-
152
-
153
-

+ 1
- 0
models/message/cmscase.go View File

@@ -122,6 +122,7 @@ func (m *MessageDAO) UpdateCmsCase(cmscase model.TaCmsCase) error {
122 122
 		"is_all_course",
123 123
 		"status",
124 124
 		"sort",
125
+		"case_id",
125 126
 	}
126 127
 	_, err := m.db.Cols(col...).Where("cms_case_id=?", cmscase.CmsCaseId).Update(cmscase)
127 128
 	return err

+ 1
- 1
models/message/image.go View File

@@ -28,7 +28,7 @@ func (m *MessageDAO) GetImgListCount(orgid string) (int, error) {
28 28
 // GetImgByLocation 根据位置获取轮播图信息
29 29
 func (m *MessageDAO) GetImgByLocation(locationid, orgid string) ([]model.TaCmsImages, error) {
30 30
 	var imgs []model.TaCmsImages
31
-	err := m.db.Where("status>"+strconv.Itoa(models.STATUS_DEL)).And("org_id=?", orgid).And("location_id=?", locationid).Asc("sort").Find(&imgs)
31
+	err := m.db.Where("status="+strconv.Itoa(models.STATUS_NORMAL)).And("org_id=?", orgid).And("location_id=?", locationid).Asc("sort").Find(&imgs)
32 32
 	return imgs, err
33 33
 }
34 34
 

+ 1
- 1
models/statistics/cardcoupon.go View File

@@ -225,7 +225,7 @@ func (m *StatisticsDAO) CardCouponUsedStatistics(caseids, tel, name, receivetype
225 225
 							a.end_date,
226 226
 							a.receive_date,
227 227
 							a.receive_date as used_date,
228
-							a.verify_status
228
+							'used' as verify_status
229 229
 						FROM
230 230
 							ta_customer_card a
231 231
 						INNER JOIN ta_coupon_card_target b ON b.card_id = a.card_id

+ 5
- 5
models/system/user.go View File

@@ -231,7 +231,7 @@ func (m *UserDAO) DelUserMenu(userid string) error {
231 231
 
232 232
 // SaveUserMenu 保存用户对应的菜单信息
233 233
 func (m *UserDAO) SaveUserMenu(userid string) error {
234
-	sql := `insert into sys_user_menu(user_id,menu_id) select '` + userid + `', a.menu_id from sys_role_menu a inner join sys_user_role b on a.role_id = b.role_id inner join sys_menu c on c.menu_id = a.menu_id where b.user_id = '` + userid + `' and c.status>` + strconv.Itoa(models.STATUS_DEL)
234
+	sql := `insert into sys_user_menu(user_id,menu_id) select DISTINCT '` + userid + `', a.menu_id from sys_role_menu a inner join sys_user_role b on a.role_id = b.role_id inner join sys_menu c on c.menu_id = a.menu_id where b.user_id = '` + userid + `' and c.status>` + strconv.Itoa(models.STATUS_DEL)
235 235
 	_, err := m.db.Exec(sql)
236 236
 	return err
237 237
 }
@@ -282,12 +282,12 @@ func (m *UserDAO) SaveUserCase(usercase model.SysUserCase) error {
282 282
 // SaveUserCaseByUserTag 根据用户标签保存用户对应案场
283 283
 func (m *UserDAO) SaveUserCaseByUserTag(userid string) error {
284 284
 	sql := `insert into sys_user_case(user_id, case_id, case_name, is_belong, status, create_date) 
285
-	select c.user_id, a.case_id,a.case_name, 0,?,now() from sys_case a 
285
+	select DISTINCT c.user_id, a.case_id,a.case_name, 0,?,now() from sys_case a 
286 286
 	inner join sys_tag_case b on a.case_id = b.case_id
287 287
 	inner join sys_user_tag c on b.tag_id = c.tag_id
288 288
 	where c.user_id = ? and a.status > ` + strconv.Itoa(models.STATUS_DEL)
289 289
 
290
-	_, err := m.db.Exec(sql, userid, models.STATUS_DEL)
290
+	_, err := m.db.Exec(sql, models.STATUS_NORMAL, userid)
291 291
 	return err
292 292
 }
293 293
 
@@ -379,7 +379,7 @@ func (m *UserDAO) GetUserByName(userName string) (*model.SysUser, error) {
379 379
 func (m *UserDAO) GetUserByPhone(phone string) (*model.SysUser, error) {
380 380
 	user := model.SysUser{}
381 381
 
382
-	has, err := m.db.Where("phone=?", phone).Get(&user)
382
+	has, err := m.db.Where("phone=?", phone).And("status>?", models.STATUS_DEL).Get(&user)
383 383
 	if err != nil {
384 384
 		return nil, err
385 385
 	}
@@ -432,7 +432,7 @@ func (m *UserDAO) GetUserWithTypeByID(userID string) ([]UserWithType, error) {
432 432
 // CheckUserPhone 用户电话重复校验
433 433
 func (m *UserDAO) CheckUserPhone(userid, phone, orgid string) (bool, error) {
434 434
 	var users []model.SysUser
435
-	dao := m.db.Where("phone=?", phone).And("org_id=?", orgid)
435
+	dao := m.db.Where("phone=?", phone).And("org_id=?", orgid).And("status>?", models.STATUS_DEL)
436 436
 	if userid != "" {
437 437
 		dao.And("user_id <> '" + userid + "'")
438 438
 	}

+ 1
- 0
routers/common.go View File

@@ -280,6 +280,7 @@ func getCommonRoutes() beego.LinkNamespace {
280 280
 		// 签到
281 281
 		beego.NSRouter("/case/signin", &cases.SigninController{}, "get:GetSigninWhere"),
282 282
 		beego.NSRouter("/case/signin", &cases.SigninController{}, "post:AddSignin"),
283
+		beego.NSRouter("/case/excelSignin", &cases.SigninController{}, "get:GetSigninExcel"),
283 284
 
284 285
 		// websocket
285 286
 		beego.NSRouter("/websocket/:grps/:id", &controllers.BaseController{}, "get:Ws"),

+ 13
- 0
service/cases/signin.go View File

@@ -112,3 +112,16 @@ func (s *SigninServ) AddSignin(signin model.TaCheckinRecord, caseId string, acti
112 112
 
113 113
 	return &info, err
114 114
 }
115
+
116
+// GetSigninExcel 根据条件查询出签到记录
117
+func (s *SigninServ) GetSigninExcel(selectType int, caseids string) ([]cases.SigninInfo, error) {
118
+
119
+	info,err := s.dao.GetSigninExcel(selectType,caseids)
120
+	if err != nil {
121
+		beego.Error(err)
122
+		return nil, err
123
+	}
124
+
125
+	return info,err
126
+}
127
+

+ 3
- 3
service/course/course.go View File

@@ -37,19 +37,19 @@ func NewCourseServ(ctx *utils.Context) *CourseServ {
37 37
 }
38 38
 
39 39
 // GetCourseList 获取课程列表
40
-func (s *CourseServ) GetCourseList(caseids, name, typeid string, page, pageSize int) (map[string]interface{}, error) {
40
+func (s *CourseServ) GetCourseList(caseids, name, typeid, status string, page, pageSize int) (map[string]interface{}, error) {
41 41
 	if pageSize == 0 {
42 42
 		pageSize = service.PAGENUM
43 43
 	}
44 44
 	if page == 0 {
45 45
 		page = 1
46 46
 	}
47
-	list, err := s.dao.GetCourseList(caseids, name, typeid, page, pageSize)
47
+	list, err := s.dao.GetCourseList(caseids, name, typeid, status, page, pageSize)
48 48
 	if err != nil {
49 49
 		utils.LogError("获取课程信息失败: " + err.Error())
50 50
 		return nil, errors.New("获取课程信息失败")
51 51
 	}
52
-	total, err := s.dao.GetCourseCount(caseids, name, typeid)
52
+	total, err := s.dao.GetCourseCount(caseids, name, status, typeid)
53 53
 	if err != nil {
54 54
 		utils.LogError("获取课程信息失败: " + err.Error())
55 55
 		return nil, errors.New("获取课程信息失败")

+ 3
- 1
service/customer/customer.go View File

@@ -14,6 +14,8 @@ import (
14 14
 	"spaceofcheng/services/utils"
15 15
 	"strconv"
16 16
 	"time"
17
+
18
+	"github.com/astaxie/beego"
17 19
 )
18 20
 
19 21
 // CustomerServ 系统处理
@@ -130,7 +132,7 @@ func (s *CustomerServ) BindWechatUser(userMap *model.TaUserMapping, phone string
130 132
 
131 133
 		// 更新用户手机号码信息及userid信息
132 134
 		customer, err := s.dao.GetCustWithWXByOpenID(wxInfo.OpenID)
133
-
135
+		beego.Error(customer)
134 136
 		newCust := model.TaCustomer{
135 137
 			CustomerId: customer.CustomerId,
136 138
 			Phone:      user.Phone,

+ 6
- 2
service/goods/orders.go View File

@@ -500,12 +500,16 @@ func (s *GoodsServ) GetCustomerOrders(page, pageSize int) (map[string]interface{
500 500
 
501 501
 // GetCaseOrdersNum 获取案场订单数量
502 502
 func (s *GoodsServ) GetCaseOrdersNum(caseid string) (map[string]interface{}, error) {
503
-	total, err := s.dao.GetOrdersCountByCase(caseid)
503
+	customer := s.ctx.Get("customer").(model.TaCustomer)
504
+	if customer.UserId == "" {
505
+		return nil, errors.New("您没有权限查看此数据!")
506
+	}
507
+	total, err := s.dao.GetOrdersCountByCase(caseid, customer.UserId)
504 508
 	if err != nil {
505 509
 		utils.LogError("获取案场订单数量失败: " + err.Error())
506 510
 		return nil, errors.New("获取案场信息失败")
507 511
 	}
508
-	monthtotal, err := s.dao.GetMonthOrdersCountByCase(caseid)
512
+	monthtotal, err := s.dao.GetMonthOrdersCountByCase(caseid, customer.UserId)
509 513
 	if err != nil {
510 514
 		utils.LogError("获取月案场订单数量失败: " + err.Error())
511 515
 		return nil, errors.New("获取案场信息失败")

+ 26
- 16
service/marketing/marketing.go View File

@@ -1,8 +1,10 @@
1 1
 package marketing
2 2
 
3 3
 import (
4
+	"jcjy/demo/models"
4 5
 	"spaceofcheng/services/models/marketing"
5 6
 	"spaceofcheng/services/models/model"
7
+	"spaceofcheng/services/models/system"
6 8
 	"spaceofcheng/services/service"
7 9
 	"spaceofcheng/services/utils"
8 10
 
@@ -11,17 +13,19 @@ import (
11 13
 
12 14
 // MarketingServ 系统处理
13 15
 type MarketingServ struct {
14
-	ctx  *utils.Context
15
-	dao  *marketing.MarketingDAO
16
-	wdao *marketing.WorkDAO
16
+	ctx     *utils.Context
17
+	dao     *marketing.MarketingDAO
18
+	wdao    *marketing.WorkDAO
19
+	userdao *system.UserDAO
17 20
 }
18 21
 
19 22
 // NewMarketingServ 初始化
20 23
 func NewMarketingServ(ctx *utils.Context) *MarketingServ {
21 24
 	return &MarketingServ{
22
-		ctx: ctx,
23
-		dao: marketing.NewMarketingDAO(ctx),
24
-		wdao: marketing.NewWorkDAO(ctx),
25
+		ctx:     ctx,
26
+		dao:     marketing.NewMarketingDAO(ctx),
27
+		wdao:    marketing.NewWorkDAO(ctx),
28
+		userdao: system.NewUserDAO(ctx),
25 29
 	}
26 30
 }
27 31
 
@@ -55,14 +59,20 @@ func (s *MarketingServ) GetMarketingList(page int, pageSize int) (map[string]int
55 59
 /**
56 60
 * resource_desc 活动描述
57 61
  */
58
-func (s *MarketingServ) SaveMarketing(activity model.SysActivity, resourceDesc string, caseId string) (*model.SysActivity, *model.SysActivityAction, error) {
62
+func (s *MarketingServ) SaveMarketing(activity model.SysActivity, resourceDesc string) (*model.SysActivity, *model.SysActivityAction, error) {
59 63
 
60 64
 	var newInfo *model.SysActivity
61 65
 	var newWoke *model.SysActivityAction
62 66
 
63
-	var err error
67
+	user := s.ctx.Get("user").(model.SysUser)
68
+
69
+	caseinfo, err := s.userdao.GetUserBelongCase(user.UserId)
70
+	if err != nil {
71
+		return nil, nil, err
72
+	}
73
+	activity.CaseId = caseinfo.CaseId
64 74
 	// 存储 营销活动
65
-	newInfo, err = s.dao.AddMarketing(activity,caseId)
75
+	newInfo, err = s.dao.AddMarketing(activity)
66 76
 	if err != nil {
67 77
 		return nil, nil, err
68 78
 	}
@@ -97,7 +107,7 @@ func (s *MarketingServ) GetMarketingById(activityId string) (*model.SysActivity,
97 107
 	if info == nil {
98 108
 		return nil, utils.LogError("不存在营销信息!")
99 109
 	}
100
-	if info.Status == marketing.DELETE {
110
+	if info.Status == models.STATUS_DEL {
101 111
 		return nil, utils.LogError("营销信息已被删除!")
102 112
 	}
103 113
 
@@ -117,10 +127,10 @@ func (s *MarketingServ) DelMarketing(activityId string) error {
117 127
 		return err
118 128
 	}
119 129
 	// 判断状态是否被删除
120
-	if info.Status == marketing.DELETE {
130
+	if info.Status == models.STATUS_DEL {
121 131
 		return utils.LogError("营销状态异常")
122 132
 	}
123
-	err = s.dao.DelMarketing(activityId, marketing.DELETE)
133
+	err = s.dao.DelMarketing(activityId, models.STATUS_DEL)
124 134
 	return err
125 135
 
126 136
 }
@@ -137,10 +147,10 @@ func (s *MarketingServ) DelMarketingNormal(activityId string) error {
137 147
 		return err
138 148
 	}
139 149
 	// 判断状态是否已经是正常
140
-	if info.Status == marketing.NORMAL {
150
+	if info.Status == models.STATUS_NORMAL {
141 151
 		return utils.LogError("营销状态异常")
142 152
 	}
143
-	err = s.dao.DelMarketing(activityId, marketing.NORMAL)
153
+	err = s.dao.DelMarketing(activityId, models.STATUS_NORMAL)
144 154
 	return err
145 155
 
146 156
 }
@@ -157,10 +167,10 @@ func (s *MarketingServ) DelMarketingDisable(activityId string) error {
157 167
 		return err
158 168
 	}
159 169
 	// 判断状态是否已经是停用
160
-	if info.Status == marketing.DISABLE {
170
+	if info.Status == models.STATUS_READY {
161 171
 		return utils.LogError("营销状态异常")
162 172
 	}
163
-	err = s.dao.DelMarketing(activityId, marketing.DISABLE)
173
+	err = s.dao.DelMarketing(activityId, models.STATUS_READY)
164 174
 	return err
165 175
 
166 176
 }

+ 7
- 0
service/message/image.go View File

@@ -71,11 +71,18 @@ func (s *MessageServ) SaveImg(imginfo model.TaCmsImages) (*model.TaCmsImages, er
71 71
 	if imginfo.ForwardType == ForwardTypeUrl && imginfo.ForwardUrl == "" {
72 72
 		return nil, errors.New("跳转地址不允许为空!")
73 73
 	}
74
+<<<<<<< HEAD
74 75
 	if imginfo.ForwardType == ForwardTypeCourse && imginfo.CaseId == "" {
76
+=======
77
+
78
+	if imginfo.ForwardType == ForwardTypeCourse && imginfo.ForwardResourceId == "" {
79
+>>>>>>> e764b3b931d583be9d2c311ab12132dd234f3ae0
75 80
 		return nil, errors.New("跳转资源不允许为空!")
76 81
 	}
77 82
 
78 83
 	if imginfo.ImageId == "" {
84
+		org := s.ctx.Get("org").(model.SysOrg)
85
+		imginfo.OrgId = org.OrgId
79 86
 		newinfo, err := s.dao.AddCmsImg(imginfo)
80 87
 		if err != nil {
81 88
 			utils.LogError("保存图片信息失败: " + err.Error())

+ 29
- 13
service/user.go View File

@@ -74,18 +74,18 @@ func (s *UserServ) GetCurrentEnvVars() (map[string]interface{}, error) {
74 74
 	user.Pwd = ""
75 75
 	// 当前用户案场
76 76
 	sessionCase := s.ctx.Get("cases").([]model.SysUserCase)
77
-	caseIDs := ""
78
-	for _, value := range sessionCase {
79
-		if caseIDs != "" {
80
-			caseIDs = caseIDs + ","
81
-		}
82
-		caseIDs = caseIDs + value.CaseId
83
-	}
84
-	cases, err := s.casedao.GetCaseByIDs(caseIDs)
85
-	if err != nil {
86
-		beego.Error(err)
87
-		return nil, err
88
-	}
77
+	// caseIDs := ""
78
+	// for _, value := range sessionCase {
79
+	// 	if caseIDs != "" {
80
+	// 		caseIDs = caseIDs + ","
81
+	// 	}
82
+	// 	caseIDs = caseIDs + value.CaseId
83
+	// }
84
+	// cases, err := s.casedao.GetCaseByIDs(caseIDs)
85
+	// if err != nil {
86
+	// 	beego.Error(err)
87
+	// 	return nil, err
88
+	// }
89 89
 	// 当前用户角色
90 90
 	roles, err := s.dao.GetUserRole(user.UserId)
91 91
 	if err != nil {
@@ -101,7 +101,7 @@ func (s *UserServ) GetCurrentEnvVars() (map[string]interface{}, error) {
101 101
 
102 102
 	rtn := map[string]interface{}{
103 103
 		"user":      user,
104
-		"cases":     cases,
104
+		"cases":     sessionCase,
105 105
 		"roles":     roles,
106 106
 		"menus":     menus,
107 107
 		"clienturl": beego.AppConfig.String("clienturl"),
@@ -173,6 +173,15 @@ func (s *UserServ) SaveUser(user system.SysUserForm) (*model.SysUser, error) {
173 173
 	var err error
174 174
 	var newUSer *model.SysUser
175 175
 
176
+	if user.UserName == "" {
177
+		return nil, errors.New("用户名不允许为空!")
178
+	}
179
+	if user.RealName == "" {
180
+		return nil, errors.New("用户真实姓名不允许为空!")
181
+	}
182
+	if user.Phone == "" {
183
+		return nil, errors.New("用户手机号不能为空!")
184
+	}
176 185
 	// 手机号码与用户名校验
177 186
 	var isok bool
178 187
 	isok, err = s.dao.CheckUserName(user.UserId, user.UserName, user.OrgId)
@@ -251,6 +260,13 @@ func (s *UserServ) SaveUser(user system.SysUserForm) (*model.SysUser, error) {
251 260
 		beego.Error(err)
252 261
 		return nil, err
253 262
 	}
263
+
264
+	// 保存用户标签案场信息
265
+	err = s.dao.SaveUserCaseByUserTag(newUSer.UserId)
266
+	if err != nil {
267
+		beego.Error(err)
268
+		return nil, err
269
+	}
254 270
 	newUSer.Pwd = ""
255 271
 
256 272
 	// 保存用户后判断用户是否在客户表中,如果存在,更新

+ 4
- 0
service/verify/verify.go View File

@@ -78,7 +78,11 @@ func (s *VerifyServ) GetCustomerCourseDetailByTel(tel, caseids string, page, pag
78 78
 		return nil, errors.New("获取课程列表失败")
79 79
 	}
80 80
 	if len(customerDetail) == 0 {
81
+<<<<<<< HEAD
81 82
 		return nil, errors.New("今日无可核销课程")
83
+=======
84
+		return nil, nil
85
+>>>>>>> e764b3b931d583be9d2c311ab12132dd234f3ae0
82 86
 	}
83 87
 	customerID := customerDetail[0].CustomerId
84 88
 	total, err := s.dao.GetCustomerCourseListByTelCount(tel, caseids)