浏览代码

抽奖修改

wangfei 6 年前
父节点
当前提交
572e93f982

+ 0
- 177
controllers/bodycheck/wechat.go 查看文件

@@ -1,177 +0,0 @@
1
-package bodycheck
2
-
3
-import (
4
-	"bytes"
5
-	"encoding/json"
6
-	"errors"
7
-	"io/ioutil"
8
-	"net/http"
9
-	"strings"
10
-
11
-	"github.com/astaxie/beego"
12
-	"github.com/astaxie/beego/config"
13
-)
14
-
15
-// WechatInfo 微信接入
16
-func (c *BodyCheckController) WechatInfo() {
17
-	// signature := c.GetString("signature")
18
-	// timestamp := c.GetString("timestamp")
19
-	// nonce := c.GetString("nonce")
20
-	echostr := c.GetString("echostr")
21
-	c.ResponseRaw([]byte(echostr))
22
-}
23
-
24
-// GetQrcodeURL 获取二维码信息
25
-func (c *BodyCheckController) GetQrcodeURL() {
26
-	EquipmentID := c.GetString("EquipmentId")
27
-	qrcodePrefix := beego.AppConfig.String("qrcodePrefix")
28
-	qrcode, err := c.weixin.GetTempStrQRCode(qrcodePrefix + EquipmentID)
29
-	if err != nil {
30
-		c.ResponseJson(map[string]interface{}{
31
-			"Status":  false,
32
-			"Message": err.Error(),
33
-		})
34
-	}
35
-	c.ResponseJson(map[string]interface{}{
36
-		"Status":    true,
37
-		"Message":   "",
38
-		"QrcodeUrl": qrcode,
39
-	})
40
-}
41
-
42
-// WxReceive 微信消息接收
43
-func (c *BodyCheckController) WxReceive() {
44
-	r := c.Ctx.Request
45
-	defer r.Body.Close()
46
-	con, _ := ioutil.ReadAll(r.Body) //获取post的数据
47
-	val, err := c.weixin.TransformMessage(string(con))
48
-	if err != nil {
49
-		beego.Error(err.Error())
50
-		c.ResponseRaw([]byte(""))
51
-	}
52
-
53
-	if val["MsgType"] == "event" {
54
-		qrcodePrefix := beego.AppConfig.String("qrcodePrefix")
55
-		if (val["Event"] == "subscribe" && strings.Contains(val["EventKey"], "qrscene_"+qrcodePrefix)) || val["Event"] == "SCAN" {
56
-			EquipmentID := strings.Split(val["EventKey"], qrcodePrefix)[1]
57
-			messagetxt, err := c.scanDo(val, EquipmentID)
58
-			if err != nil {
59
-				beego.Error(err.Error())
60
-				c.ResponseRaw([]byte(""))
61
-			}
62
-			c.ResponseRaw(messagetxt)
63
-		}
64
-	}
65
-	c.ResponseRaw([]byte(""))
66
-}
67
-
68
-func (c *BodyCheckController) scanDo(val map[string]string, EquipmentID string) ([]byte, error) {
69
-	if val["FromUserName"] == "" {
70
-		return nil, errors.New("openid为空")
71
-	}
72
-
73
-	user, err := c.weixin.GetUserDetail(val["FromUserName"])
74
-	if err != nil {
75
-		return nil, err
76
-	}
77
-
78
-	// 判断用户是否存在
79
-	getUser, err := c.dao.GetUserByOpenID(user["openid"].(string))
80
-	if err != nil {
81
-		return nil, err
82
-	}
83
-	name := user["nickname"].(string)
84
-	name = UnicodeEmojiCode(name)
85
-	user["nickname"] = name
86
-	if getUser == nil || getUser.Id < 1 {
87
-		// 新增用户
88
-		var newUser = model.CustomerUser{}
89
-		newUser.Username = name
90
-		newUser.WcNickname = name
91
-		sex := int(user["sex"].(float64))
92
-		if sex == 2 {
93
-			sex = 1
94
-		} else {
95
-			sex = 0
96
-		}
97
-		newUser.Sex = sex
98
-		newUser.OpenId = user["openid"].(string)
99
-		newUser.Icon = user["headimgurl"].(string)
100
-		newUser.UserType = 4
101
-		newUser.ActualBalance = "0.00"
102
-		newUser.GiftBalance = "0.00"
103
-		_, err = c.dao.SaveUser(newUser)
104
-		if err != nil {
105
-			return nil, err
106
-		}
107
-	}
108
-
109
-	type WechatInfo struct {
110
-		EquipmentId    string
111
-		WXID           int
112
-		WechatUserInfo map[string]interface{}
113
-	}
114
-	wxconf, _ := config.NewConfig("ini", "conf/wechat.conf")
115
-	user["wechataccount"] = user["openid"].(string)
116
-	user["wechatofficial"] = wxconf.String("appid")
117
-	var userinfo = WechatInfo{}
118
-	userinfo.EquipmentId = EquipmentID
119
-	userinfo.WechatUserInfo = user
120
-	userinfo.WXID = 1
121
-
122
-	apiPrefix := beego.AppConfig.String("postwechatInfo")
123
-
124
-	b, err := json.Marshal(userinfo)
125
-	if err != nil {
126
-		return nil, err
127
-	}
128
-
129
-	body := bytes.NewBuffer([]byte(b))
130
-	beego.Error(body)
131
-	res, err := http.Post(apiPrefix, "application/json;charset=utf-8", body)
132
-	if err != nil {
133
-		beego.Error(err)
134
-		return nil, err
135
-	}
136
-	result, err := ioutil.ReadAll(res.Body)
137
-	res.Body.Close()
138
-	if err != nil {
139
-		beego.Error(err)
140
-		return nil, err
141
-	}
142
-	var postResult struct {
143
-		Status  bool
144
-		Message string
145
-	}
146
-	if err = json.Unmarshal(result, &postResult); err != nil {
147
-		beego.Error(err)
148
-		return nil, err
149
-	}
150
-
151
-	if !postResult.Status {
152
-		beego.Error(postResult.Message)
153
-		return nil, errors.New(postResult.Message)
154
-	}
155
-
156
-	messagetxt, err := c.weixin.ResponseMessageText(user["openid"].(string), beego.AppConfig.String("followText"))
157
-	if err != nil {
158
-		beego.Error(err)
159
-		return nil, err
160
-	}
161
-	return messagetxt, nil
162
-}
163
-
164
-// UnicodeEmojiCode 过滤表情
165
-func UnicodeEmojiCode(s string) string {
166
-	ret := ""
167
-	rs := []rune(s)
168
-	for i := 0; i < len(rs); i++ {
169
-		if len(string(rs[i])) == 4 {
170
-			// u := `[\u` + strconv.FormatInt(int64(rs[i]), 16) + `]`
171
-			ret += ""
172
-		} else {
173
-			ret += string(rs[i])
174
-		}
175
-	}
176
-	return ret
177
-}

+ 4
- 0
log/common.log 查看文件

@@ -342,3 +342,7 @@
342 342
 2018/09/16 22:33:10 [E] 用户没有设置默认案场
343 343
 2018/09/16 22:33:16 [E] 用户没有设置默认案场
344 344
 2018/09/16 22:33:58 [E] 用户没有设置默认案场
345
+2018/09/16 23:14:52 [E] 用户没有设置默认案场
346
+2018/09/16 23:15:52 [E] 用户没有设置默认案场
347
+2018/09/16 23:15:55 [E] 用户没有设置默认案场
348
+2018/09/16 23:15:55 [E] 用户没有设置默认案场

+ 93
- 130
models/luckdraw/luckdraw.go 查看文件

@@ -1,6 +1,7 @@
1 1
 package luckdraw
2 2
 
3 3
 import (
4
+	"errors"
4 5
 	"spaceofcheng/services/models"
5 6
 	"spaceofcheng/services/models/model"
6 7
 	"spaceofcheng/services/utils"
@@ -10,28 +11,20 @@ import (
10 11
 	"github.com/go-xorm/xorm"
11 12
 )
12 13
 
13
-const (
14
-	StatusNormal = 1
15
-)
16
-
17
-// DAO 当前数据库操作对象
18
-type DAO struct {
14
+// LuckDrawDao 当前数据库操作对象
15
+type LuckDrawDao struct {
19 16
 	ctx *utils.Context
20 17
 	db  *xorm.Session
21 18
 }
22 19
 
23 20
 // NewDAO 初始化DAO
24
-func NewDAO(ctx *utils.Context) *DAO {
25
-	return &DAO{
21
+func NewDAO(ctx *utils.Context) *LuckDrawDao {
22
+	return &LuckDrawDao{
26 23
 		ctx: ctx,
27 24
 		db:  ctx.DB,
28 25
 	}
29 26
 }
30 27
 
31
-const (
32
-	STATUS_NOWRITROFF = 0
33
-)
34
-
35 28
 // LuckDraw 抽奖记录
36 29
 type LuckDraw struct {
37 30
 	model.TaLuckdraw `xorm:"extends"`
@@ -39,101 +32,110 @@ type LuckDraw struct {
39 32
 }
40 33
 
41 34
 // GetLuckDraw 获取抽奖信息
42
-func (m *DAO) GetLuckDraw(id int) (*LuckDraw, error) {
43
-	if id == 0 {
44
-		return nil, utils.LogError("不存在抽奖信息!")
35
+func (m *LuckDrawDao) GetLuckDraw(id string) (*LuckDraw, error) {
36
+	if id == "" {
37
+		return nil, errors.New("不存在抽奖信息!")
45 38
 	}
46
-
47 39
 	luckdraw, err := m.GetLuckDrawByID(id)
48 40
 	if err != nil {
49
-		return nil, err
41
+		utils.LogError("获取抽奖信息失败:", err)
42
+		return nil, errors.New("获取抽奖信息失败")
50 43
 	}
51 44
 	prizes, err := m.GetPrizes(id)
52 45
 	if err != nil {
53
-		return nil, err
46
+		utils.LogError("获取奖品信息失败:", err)
47
+		return nil, errors.New("获取奖品信息失败")
54 48
 	}
55 49
 	luckdraw.Prizes = prizes
56 50
 	return luckdraw, nil
57 51
 }
58 52
 
59 53
 // LuckDraw 抽奖
60
-func (m *DAO) LuckDraw(id int, user *model.TaCustomer) (*model.TaLuckdrawPrize, *model.TaPrizeDetail, error) {
54
+func (m *LuckDrawDao) LuckDraw(id string, user *model.TaCustomer) (*model.TaLuckdrawPrize, *model.TaPrizeDetail, error) {
61 55
 	luckdraw, err := m.GetLuckDrawByID(id)
62 56
 	if err != nil {
63
-		return nil, nil, utils.LogError("获取抽奖信息失败!", err)
57
+		return nil, nil, errors.New("获取抽奖信息失败!")
64 58
 	}
65 59
 	if luckdraw.Status != models.STATUS_NORMAL {
66
-		return nil, nil, utils.LogError("当前抽奖活动状态异常!")
60
+		return nil, nil, errors.New("当前抽奖活动状态异常!")
67 61
 	}
68 62
 	if time.Now().Before(luckdraw.BeginDate) {
69
-		return nil, nil, utils.LogError("活动还未开始!")
63
+		return nil, nil, errors.New("活动还未开始!")
70 64
 	}
71 65
 	if time.Now().After(luckdraw.EndDate) {
72
-		return nil, nil, utils.LogError("活动已结束!")
66
+		return nil, nil, errors.New("活动已结束!")
73 67
 	}
74 68
 	if user.Phone != "" {
75 69
 		sysuser, err := m.GetUserByTel(user.Phone)
76 70
 		if err != nil {
77
-			return nil, nil, utils.LogError("获取信息失败!", err)
71
+			return nil, nil, errors.New("获取信息失败!")
78 72
 		}
79 73
 		if sysuser != nil {
80
-			return nil, nil, utils.LogError("内部人员不允许进行抽奖!")
74
+			return nil, nil, errors.New("内部人员不允许进行抽奖!")
81 75
 		}
82 76
 	}
83 77
 	userluckdraws, err := m.GetUserRecordByLuckDraw(user.CustomerId, id)
84 78
 	if err != nil {
85
-		return nil, nil, utils.LogError("获取用户抽奖信息失败!", err)
79
+		utils.LogError("获取用户抽奖信息失败:", err)
80
+		return nil, nil, errors.New("获取用户抽奖信息失败!")
86 81
 	}
87 82
 	if len(userluckdraws) > 0 {
88
-		return nil, nil, utils.LogError("您已参与过此次抽奖,不允许重复抽奖!")
83
+		return nil, nil, errors.New("您已参与过此次抽奖,不允许重复抽奖!")
89 84
 	}
90 85
 	prizes, err := m.GetPrizeStock(id)
91 86
 	if err != nil {
92
-		return nil, nil, utils.LogError("获取奖项失败!", err)
87
+		utils.LogError("获取奖项失败:", err)
88
+		return nil, nil, errors.New("获取奖项失败!")
93 89
 	}
94 90
 	if len(prizes) == 0 {
95 91
 		err = m.UpdateLuckDrawEndDate(luckdraw.Id)
96 92
 		if err != nil {
97
-			return nil, nil, utils.LogError("操作失败,请刷新后重试!", err)
93
+			utils.LogError("操作失败,请刷新后重试:", err)
94
+			return nil, nil, errors.New("操作失败,请刷新后重试!")
98 95
 		}
99
-		return nil, nil, utils.LogError("活动已结束!")
96
+		return nil, nil, errors.New("活动已结束!")
100 97
 	}
101 98
 	prize, err := m.GetWinning(prizes)
102 99
 	if err != nil {
103
-		return nil, nil, utils.LogError("获取奖项失败!", err)
100
+		utils.LogError("获取奖项失败:", err)
101
+		return nil, nil, errors.New("获取奖项失败!")
104 102
 	}
105 103
 
106
-	details, err := m.GetPrizeDetail(prize.Id)
107
-	if err != nil {
108
-		return nil, nil, utils.LogError("获取奖项详情失败!", err)
109
-	}
104
+	// details, err := m.GetPrizeDetail(prize.Id)
105
+	// if err != nil {
106
+	// 	utils.LogError("获取奖项详情失败:", err)
107
+	// 	return nil, nil, errors.New("获取奖项详情失败!")
108
+	// }
110 109
 
111 110
 	// 保存中奖记录
112 111
 	var record = model.TaLuckdrawRecord{}
112
+	record.Id = utils.GetGUID()
113 113
 	record.OrgId = luckdraw.OrgId
114 114
 	record.CaseId = luckdraw.CaseId
115 115
 	record.PrizeId = prize.Id
116 116
 	record.PrizeName = prize.PrizeName
117 117
 	record.UserId = user.CustomerId
118
-	record.UserName = user.Name
118
+	record.UserName = user.CustomerName
119 119
 	record.UserHeadImg = user.Headimgurl
120 120
 	record.LuckdrawId = luckdraw.Id
121
-	newrecord, err := m.SaveRecord(record)
122
-	var detail = model.TaPrizeDetail{}
123
-	if len(details) > 0 {
124
-		// 更新中奖纪录明细
125
-		details[0].ReceiveId = newrecord.Id
126
-		err = m.UpdatePrizeDetail(details[0])
127
-		if err != nil {
128
-			return nil, nil, utils.LogError("操作失败!", err)
129
-		}
130
-		detail = details[0]
131
-		// 奖项自动核销,走卡券核销流程
132
-		err = m.PrizeWriteOff(newrecord.Id, user.CustomerId)
133
-		if err != nil {
134
-			return nil, nil, utils.LogError("操作失败!", err)
135
-		}
136
-	}
121
+	_, err = m.SaveRecord(record)
122
+	// var detail = model.TaPrizeDetail{}
123
+	// if len(details) > 0 {
124
+	// 	// 更新中奖纪录明细
125
+	// 	details[0].ReceiveId = newrecord.Id
126
+	// 	err = m.UpdatePrizeDetail(details[0])
127
+	// 	if err != nil {
128
+	// 		utils.LogError("更新中奖纪录明细失败:", err)
129
+	// 		return nil, nil, errors.New("操作失败!")
130
+	// 	}
131
+	// 	detail = details[0]
132
+	// 	// 奖项自动核销,走卡券核销流程
133
+	// 	err = m.PrizeWriteOff(newrecord.Id, user.CustomerId)
134
+	// 	if err != nil {
135
+	// 		utils.LogError("卡券核销失败:", err)
136
+	// 		return nil, nil, errors.New("操作失败!")
137
+	// 	}
138
+	// }
137 139
 	// 更新库存
138 140
 	if prize.IsReality == 1 {
139 141
 		prize.Remainder = prize.Remainder - 1
@@ -143,7 +145,8 @@ func (m *DAO) LuckDraw(id int, user *model.TaCustomer) (*model.TaLuckdrawPrize,
143 145
 		}
144 146
 		stockprizes, err := m.GetPrizeStock(id)
145 147
 		if err != nil {
146
-			return nil, nil, utils.LogError("操作失败,请刷新后重试!", err)
148
+			utils.LogError("更新库存失败:", err)
149
+			return nil, nil, errors.New("操作失败,请刷新后重试!")
147 150
 		}
148 151
 		if len(stockprizes) == 0 {
149 152
 			// 更新活动截止时间
@@ -151,11 +154,11 @@ func (m *DAO) LuckDraw(id int, user *model.TaCustomer) (*model.TaLuckdrawPrize,
151 154
 		}
152 155
 	}
153 156
 
154
-	return prize, &detail, err
157
+	return prize, nil, err
155 158
 }
156 159
 
157 160
 // PrizeWriteOff 奖品核销
158
-func (m *DAO) PrizeWriteOff(recordid int, userid string) error {
161
+func (m *LuckDrawDao) PrizeWriteOff(recordid, userid string) error {
159 162
 	record, err := m.GetRecordByID(recordid)
160 163
 	if err != nil {
161 164
 		return err
@@ -175,7 +178,7 @@ func (m *DAO) PrizeWriteOff(recordid int, userid string) error {
175 178
 }
176 179
 
177 180
 // GetWinning 获取中奖信息
178
-func (m *DAO) GetWinning(prizes []model.TaLuckdrawPrize) (*model.TaLuckdrawPrize, error) {
181
+func (m *LuckDrawDao) GetWinning(prizes []model.TaLuckdrawPrize) (*model.TaLuckdrawPrize, error) {
179 182
 	pList := make([]map[string]interface{}, 0)
180 183
 	now := time.Now().Local()
181 184
 
@@ -192,7 +195,7 @@ func (m *DAO) GetWinning(prizes []model.TaLuckdrawPrize) (*model.TaLuckdrawPrize
192 195
 	}
193 196
 
194 197
 	if len(pList) == 0 {
195
-		return nil, utils.LogError("所有奖品已抽完")
198
+		return nil, errors.New("所有奖品已抽完")
196 199
 	}
197 200
 
198 201
 	thePrize := utils.LuckyDraw(pList).(model.TaLuckdrawPrize)
@@ -201,7 +204,7 @@ func (m *DAO) GetWinning(prizes []model.TaLuckdrawPrize) (*model.TaLuckdrawPrize
201 204
 }
202 205
 
203 206
 // GetLuckDrawByID 获取抽奖信息
204
-func (m *DAO) GetLuckDrawByID(id int) (*LuckDraw, error) {
207
+func (m *LuckDrawDao) GetLuckDrawByID(id string) (*LuckDraw, error) {
205 208
 	var luckdraws []LuckDraw
206 209
 	sql := `select * from ta_luckdraw where id= ?`
207 210
 	err := m.db.SQL(sql, id).Find(&luckdraws)
@@ -214,32 +217,8 @@ func (m *DAO) GetLuckDrawByID(id int) (*LuckDraw, error) {
214 217
 	return nil, nil
215 218
 }
216 219
 
217
-// GetCaseAddressByLuckDarw 获取案场地址
218
-func (m *DAO) GetCaseAddressByLuckDarw(luckdraw int) (string, error) {
219
-	sql := `
220
-		SELECT
221
-			t.address
222
-		FROM
223
-			sys_case t
224
-		INNER JOIN ta_luckdraw s ON t.case_id = s.case_id
225
-		WHERE
226
-			s.id = ?
227
-	`
228
-
229
-	res, err := m.db.Query(sql, luckdraw)
230
-	if err != nil {
231
-		return "", err
232
-	}
233
-
234
-	if res == nil || len(res) == 0 {
235
-		return "", nil
236
-	}
237
-
238
-	return string(res[0]["address"]), nil
239
-}
240
-
241 220
 // UpdateLuckDrawEndDate 更新活动结束时间
242
-func (m *DAO) UpdateLuckDrawEndDate(id int) error {
221
+func (m *LuckDrawDao) UpdateLuckDrawEndDate(id string) error {
243 222
 	var luckdraw = model.TaLuckdraw{
244 223
 		Id:      id,
245 224
 		EndDate: time.Now(),
@@ -252,14 +231,14 @@ func (m *DAO) UpdateLuckDrawEndDate(id int) error {
252 231
 }
253 232
 
254 233
 // GetPrizes 获取奖品信息
255
-func (m *DAO) GetPrizes(luckdrawid int) ([]model.TaLuckdrawPrize, error) {
234
+func (m *LuckDrawDao) GetPrizes(luckdrawid string) ([]model.TaLuckdrawPrize, error) {
256 235
 	var prizes []model.TaLuckdrawPrize
257 236
 	err := m.db.Where("luckdraw_id=?", luckdrawid).And("status=?", models.STATUS_NORMAL).Find(&prizes)
258 237
 	return prizes, err
259 238
 }
260 239
 
261 240
 // UpdateStock 修改库存
262
-func (m *DAO) UpdateStock(prize *model.TaLuckdrawPrize) error {
241
+func (m *LuckDrawDao) UpdateStock(prize *model.TaLuckdrawPrize) error {
263 242
 	cols := []string{
264 243
 		"remainder",
265 244
 	}
@@ -268,36 +247,44 @@ func (m *DAO) UpdateStock(prize *model.TaLuckdrawPrize) error {
268 247
 }
269 248
 
270 249
 // GetPrizeStock 判断奖项库存
271
-func (m *DAO) GetPrizeStock(luckdrawid int) ([]model.TaLuckdrawPrize, error) {
250
+func (m *LuckDrawDao) GetPrizeStock(luckdrawid string) ([]model.TaLuckdrawPrize, error) {
272 251
 	var prizes []model.TaLuckdrawPrize
273 252
 	err := m.db.Where("luckdraw_id=?", luckdrawid).And("status=?", models.STATUS_NORMAL).And("(remainder>0 or is_reality=0)").Find(&prizes)
274 253
 	return prizes, err
275 254
 }
276 255
 
277 256
 // GetPrizeByID 根据id获取奖品信息
278
-func (m *DAO) GetPrizeByID(id int) (model.TaLuckdrawPrize, error) {
257
+func (m *LuckDrawDao) GetPrizeByID(id int) (model.TaLuckdrawPrize, error) {
279 258
 	var prize = model.TaLuckdrawPrize{}
280 259
 	_, err := m.db.Where("id=?", id).Get(&prize)
281 260
 	return prize, err
282 261
 }
283 262
 
284 263
 // SaveRecord 保存抽奖记录
285
-func (m *DAO) SaveRecord(record model.TaLuckdrawRecord) (*model.TaLuckdrawRecord, error) {
264
+func (m *LuckDrawDao) SaveRecord(record model.TaLuckdrawRecord) (*model.TaLuckdrawRecord, error) {
286 265
 	record.CreateDate = time.Now()
287
-	record.Status = STATUS_NOWRITROFF
266
+	record.Status = models.STATUS_READY
267
+	record.Id = utils.GetGUID()
288 268
 	_, err := m.db.Insert(&record)
289 269
 	return &record, err
290 270
 }
291 271
 
272
+// GetUserByTel 根据电话获取用户信息
273
+func (m *LuckDrawDao) GetUserByTel(tel string) (*model.SysUser, error) {
274
+	var user = model.SysUser{}
275
+	_, err := m.db.Where("phone=?", tel).Get(&user)
276
+	return &user, err
277
+}
278
+
292 279
 // GetPrizeDetail 获取未领取的奖品详情
293
-func (m *DAO) GetPrizeDetail(prizeid int) ([]model.TaPrizeDetail, error) {
280
+func (m *LuckDrawDao) GetPrizeDetail(prizeid string) ([]model.TaPrizeDetail, error) {
294 281
 	var details []model.TaPrizeDetail
295
-	err := m.db.Where("prize_id=?", prizeid).And("status=?", STATUS_NOWRITROFF).Find(&details)
282
+	err := m.db.Where("prize_id=?", prizeid).And("status=?", models.STATUS_READY).Find(&details)
296 283
 	return details, err
297 284
 }
298 285
 
299 286
 // UpdatePrizeDetail 更新库存明细为已领取
300
-func (m *DAO) UpdatePrizeDetail(detail model.TaPrizeDetail) error {
287
+func (m *LuckDrawDao) UpdatePrizeDetail(detail model.TaPrizeDetail) error {
301 288
 	detail.Status = models.STATUS_NORMAL
302 289
 	detail.ReceiveDate = time.Now()
303 290
 	cols := []string{
@@ -310,7 +297,7 @@ func (m *DAO) UpdatePrizeDetail(detail model.TaPrizeDetail) error {
310 297
 }
311 298
 
312 299
 // UpdateRecord 核销更新抽奖记录表
313
-func (m *DAO) UpdateRecord(record *model.TaLuckdrawRecord) error {
300
+func (m *LuckDrawDao) UpdateRecord(record *model.TaLuckdrawRecord) error {
314 301
 	record.Status = models.STATUS_NORMAL
315 302
 	record.WriteoffDate = time.Now()
316 303
 	cols := []string{
@@ -322,22 +309,23 @@ func (m *DAO) UpdateRecord(record *model.TaLuckdrawRecord) error {
322 309
 }
323 310
 
324 311
 // SaveWirteOff 保存核销信息
325
-func (m *DAO) SaveWirteOff(writeoff model.TaLuckdrawWriteoff) (*model.TaLuckdrawWriteoff, error) {
312
+func (m *LuckDrawDao) SaveWirteOff(writeoff model.TaLuckdrawWriteoff) (*model.TaLuckdrawWriteoff, error) {
326 313
 	writeoff.Status = models.STATUS_NORMAL
314
+	writeoff.Id = utils.GetGUID()
327 315
 	writeoff.WriteoffDate = time.Now()
328 316
 	_, err := m.db.Insert(&writeoff)
329 317
 	return &writeoff, err
330 318
 }
331 319
 
332 320
 // GetUserRecordByLuckDraw 获取用户的抽奖信息
333
-func (m *DAO) GetUserRecordByLuckDraw(userid string, luckdrawid int) ([]model.TaLuckdrawRecord, error) {
321
+func (m *LuckDrawDao) GetUserRecordByLuckDraw(userid string, luckdrawid string) ([]model.TaLuckdrawRecord, error) {
334 322
 	var records []model.TaLuckdrawRecord
335 323
 	err := m.db.Where("user_id=?", userid).And("luckdraw_id=?", luckdrawid).And("status>" + strconv.Itoa(models.STATUS_DEL)).Find(&records)
336 324
 	return records, err
337 325
 }
338 326
 
339 327
 // GetUserLuckDrawByLuckDraw 获取用户的抽奖信息
340
-func (m *DAO) GetUserLuckDrawByLuckDraw(userid string, luckdrawid int) (*model.TaLuckdrawRecord, error) {
328
+func (m *LuckDrawDao) GetUserLuckDrawByLuckDraw(userid string, luckdrawid string) (*model.TaLuckdrawRecord, error) {
341 329
 	var records []model.TaLuckdrawRecord
342 330
 	err := m.db.Where("user_id=?", userid).And("luckdraw_id=?", luckdrawid).And("status>" + strconv.Itoa(models.STATUS_DEL)).Find(&records)
343 331
 	if err != nil {
@@ -350,7 +338,7 @@ func (m *DAO) GetUserLuckDrawByLuckDraw(userid string, luckdrawid int) (*model.T
350 338
 }
351 339
 
352 340
 // GetDetailByRecord 获取detail
353
-func (m *DAO) GetDetailByRecord(recordid int) (*model.TaPrizeDetail, error) {
341
+func (m *LuckDrawDao) GetDetailByRecord(recordid string) (*model.TaPrizeDetail, error) {
354 342
 	var details []model.TaPrizeDetail
355 343
 	err := m.db.Where("receive_id=?", recordid).And("status>" + strconv.Itoa(models.STATUS_DEL)).Find(&details)
356 344
 	if err != nil {
@@ -369,7 +357,7 @@ type UserRecord struct {
369 357
 }
370 358
 
371 359
 // GetUserLuckDraw 获取用户的抽奖信息
372
-func (m *DAO) GetUserLuckDraw(userid string) ([]UserRecord, error) {
360
+func (m *LuckDrawDao) GetUserLuckDraw(userid string) ([]UserRecord, error) {
373 361
 	var records []UserRecord
374 362
 	sql := `select a.*,b.url from ta_luckdraw_record a left join ta_prize_detail b on a.id=b.receive_id where a.user_id=? and a.status>` + strconv.Itoa(models.STATUS_DEL)
375 363
 	err := m.db.Sql(sql, userid).Find(&records)
@@ -377,49 +365,24 @@ func (m *DAO) GetUserLuckDraw(userid string) ([]UserRecord, error) {
377 365
 }
378 366
 
379 367
 // GetRecordByLuckDraw 抽奖记录
380
-func (m *DAO) GetRecordByLuckDraw(luckdrawid int) ([]model.TaLuckdrawRecord, error) {
368
+func (m *LuckDrawDao) GetRecordByLuckDraw(luckdrawid string) ([]model.TaLuckdrawRecord, error) {
381 369
 	var records []model.TaLuckdrawRecord
382 370
 	err := m.db.Where("luckdraw_id=?", luckdrawid).And("status>" + strconv.Itoa(models.STATUS_DEL)).Desc("create_date").Find(&records)
383 371
 	return records, err
384 372
 }
385 373
 
386 374
 // GetRecordByID 获取抽奖记录明细
387
-func (m *DAO) GetRecordByID(id int) (*model.TaLuckdrawRecord, error) {
375
+func (m *LuckDrawDao) GetRecordByID(id string) (*model.TaLuckdrawRecord, error) {
388 376
 	var record model.TaLuckdrawRecord
389 377
 	_, err := m.db.Where("id=?", id).Get(&record)
390 378
 	return &record, err
391 379
 }
392 380
 
393
-// GetUserByOpenID 根据 openid 获取用户人员信息
394
-func (m *DAO) GetUserByOpenID(openid string) (*model.SysUser, error) {
395
-	var users []model.SysUser
396
-	err := m.db.Where("open_id=?", openid).Find(&users)
397
-	if err != nil {
398
-		return nil, err
399
-	}
400
-	if len(users) > 0 {
401
-		return &users[0], nil
402
-	}
403
-	return nil, nil
404
-}
405
-
406
-// GetUserByTel 根据 Tel 获取用户人员信息
407
-func (m *DAO) GetUserByTel(tel string) (*model.SysUser, error) {
408
-	var users = model.SysUser{}
409
-	has, err := m.db.Where("phone=?", tel).Get(&users)
410
-	if err != nil {
411
-		return nil, err
412
-	}
413
-	if !has {
414
-		return nil, nil
415
-	}
416
-	return &users, nil
417
-}
418
-
419 381
 // SaveLuckDrawShareData 保存用户分享信息
420
-func (m *DAO) SaveLuckDrawShareData(dt *model.TaShareLuckyRecord) error {
382
+func (m *LuckDrawDao) SaveLuckDrawShareData(dt *model.TaShareLuckyRecord) error {
421 383
 	dt.CreateDate = time.Now().Local()
422
-	dt.Status = StatusNormal
384
+	dt.Status = models.STATUS_NORMAL
385
+	dt.Id = utils.GetGUID()
423 386
 
424 387
 	if _, err := m.db.Insert(dt); err != nil {
425 388
 		return err
@@ -429,14 +392,14 @@ func (m *DAO) SaveLuckDrawShareData(dt *model.TaShareLuckyRecord) error {
429 392
 }
430 393
 
431 394
 // GetLuckDrawShareData 获取用户分享内容
432
-func (m *DAO) GetLuckDrawShareData(luckID int, from, to, caseID string) ([]model.TaShareLuckyRecord, error) {
395
+func (m *LuckDrawDao) GetLuckDrawShareData(from, to, luckID, caseID int) ([]model.TaShareLuckyRecord, error) {
433 396
 	var dts []model.TaShareLuckyRecord
434 397
 
435 398
 	if err := m.db.Where("from_customer_id=?", from).
436 399
 		And("to_customer_id=?", to).
437 400
 		And("luckydraw_id=?", luckID).
438 401
 		And("case_id=?", caseID).
439
-		And("status=?", StatusNormal).
402
+		And("status=?", models.STATUS_NORMAL).
440 403
 		Find(&dts); err != nil {
441 404
 		return nil, err
442 405
 	}

+ 2
- 2
models/model/ta_luckdraw.go 查看文件

@@ -5,9 +5,9 @@ import (
5 5
 )
6 6
 
7 7
 type TaLuckdraw struct {
8
-	Id           int       `xorm:"not null pk autoincr INT(11)"`
8
+	Id           string    `xorm:"not null pk VARCHAR(64)"`
9 9
 	Name         string    `xorm:"VARCHAR(50)"`
10
-	ThemeId      int       `xorm:"INT(11)"`
10
+	ThemeId      string    `xorm:"VARCHAR(64)"`
11 11
 	LuckdrawRule string    `xorm:"TEXT"`
12 12
 	BeginDate    time.Time `xorm:"DATETIME"`
13 13
 	EndDate      time.Time `xorm:"DATETIME"`

+ 2
- 2
models/model/ta_luckdraw_prize.go 查看文件

@@ -5,8 +5,8 @@ import (
5 5
 )
6 6
 
7 7
 type TaLuckdrawPrize struct {
8
-	Id                int       `xorm:"not null pk autoincr INT(11)"`
9
-	LuckdrawId        int       `xorm:"INT(11)"`
8
+	Id                string    `xorm:"not null pk VARCHAR(64)"`
9
+	LuckdrawId        string    `xorm:"VARCHAR(64)"`
10 10
 	PrizeName         string    `xorm:"VARCHAR(50)"`
11 11
 	PrizeImg          string    `xorm:"TEXT"`
12 12
 	Stock             int       `xorm:"INT(11)"`

+ 3
- 3
models/model/ta_luckdraw_record.go 查看文件

@@ -5,9 +5,9 @@ import (
5 5
 )
6 6
 
7 7
 type TaLuckdrawRecord struct {
8
-	Id           int       `xorm:"not null pk autoincr INT(11)"`
9
-	LuckdrawId   int       `xorm:"INT(11)"`
10
-	PrizeId      int       `xorm:"INT(11)"`
8
+	Id           string    `xorm:"not null pk VARCHAR(64)"`
9
+	LuckdrawId   string    `xorm:"VARCHAR(64)"`
10
+	PrizeId      string    `xorm:"VARCHAR(64)"`
11 11
 	PrizeName    string    `xorm:"VARCHAR(50)"`
12 12
 	UserId       string    `xorm:"VARCHAR(64)"`
13 13
 	UserName     string    `xorm:"VARCHAR(50)"`

+ 3
- 3
models/model/ta_luckdraw_writeoff.go 查看文件

@@ -5,9 +5,9 @@ import (
5 5
 )
6 6
 
7 7
 type TaLuckdrawWriteoff struct {
8
-	Id           int       `xorm:"not null pk autoincr INT(11)"`
9
-	LuckdrawId   int       `xorm:"INT(11)"`
10
-	RecordId     int       `xorm:"INT(11)"`
8
+	Id           string    `xorm:"not null pk VARCHAR(64)"`
9
+	LuckdrawId   string    `xorm:"VARCHAR(64)"`
10
+	RecordId     string    `xorm:"VARCHAR(64)"`
11 11
 	WriteoffDate time.Time `xorm:"DATETIME"`
12 12
 	WriteoffUser string    `xorm:"VARCHAR(64)"`
13 13
 	Status       int       `xorm:"SMALLINT(6)"`

+ 3
- 3
models/model/ta_prize_detail.go 查看文件

@@ -5,10 +5,10 @@ import (
5 5
 )
6 6
 
7 7
 type TaPrizeDetail struct {
8
-	Id          int       `xorm:"not null pk autoincr INT(11)"`
9
-	PrizeId     int       `xorm:"INT(11)"`
8
+	Id          string    `xorm:"not null pk VARCHAR(64)"`
9
+	PrizeId     string    `xorm:"VARCHAR(64)"`
10 10
 	Url         string    `xorm:"TEXT"`
11 11
 	Status      int       `xorm:"SMALLINT(6)"`
12
-	ReceiveId   int       `xorm:"INT(11)"`
12
+	ReceiveId   string    `xorm:"VARCHAR(64)"`
13 13
 	ReceiveDate time.Time `xorm:"DATETIME"`
14 14
 }

+ 2
- 2
models/model/ta_share_lucky_record.go 查看文件

@@ -5,7 +5,7 @@ import (
5 5
 )
6 6
 
7 7
 type TaShareLuckyRecord struct {
8
-	Id                 int       `xorm:"not null pk autoincr INT(11)"`
8
+	Id                 string    `xorm:"not null pk VARCHAR(64)"`
9 9
 	FromCustomerId     string    `xorm:"VARCHAR(64)"`
10 10
 	FromCustomerName   string    `xorm:"VARCHAR(32)"`
11 11
 	FromCustomerWxname string    `xorm:"VARCHAR(64)"`
@@ -17,6 +17,6 @@ type TaShareLuckyRecord struct {
17 17
 	CreateDate         time.Time `xorm:"DATETIME"`
18 18
 	CaseId             string    `xorm:"VARCHAR(64)"`
19 19
 	Status             int       `xorm:"SMALLINT(6)"`
20
-	LuckydrawId        int       `xorm:"INT(11)"`
20
+	LuckydrawId        string    `xorm:"VARCHAR(64)"`
21 21
 	LuckydrawName      string    `xorm:"VARCHAR(128)"`
22 22
 }

+ 1
- 1
models/model/td_luckdraw_theme.go 查看文件

@@ -1,7 +1,7 @@
1 1
 package model
2 2
 
3 3
 type TdLuckdrawTheme struct {
4
-	Id        int    `xorm:"not null pk autoincr INT(11)"`
4
+	Id        string `xorm:"not null pk VARCHAR(64)"`
5 5
 	ThemeName string `xorm:"VARCHAR(50)"`
6 6
 	Status    int    `xorm:"SMALLINT(6)"`
7 7
 	OrgId     string `xorm:"VARCHAR(64)"`

+ 5
- 5
routers/common.go 查看文件

@@ -11,7 +11,6 @@ import (
11 11
 	"spaceofcheng/services/controllers/customer"
12 12
 	"spaceofcheng/services/controllers/goods"
13 13
 	"spaceofcheng/services/controllers/gymcard"
14
-	"spaceofcheng/services/controllers/luckdrawlist"
15 14
 	"spaceofcheng/services/controllers/marketing"
16 15
 	"spaceofcheng/services/controllers/message"
17 16
 	"spaceofcheng/services/controllers/statistics"
@@ -188,10 +187,11 @@ func getCommonRoutes() beego.LinkNamespace {
188 187
 		beego.NSRouter("/gymcard/:id/to/:users", &gymcard.GymcardController{}, "post:GiveGymToCustomer"),
189 188
 
190 189
 		// luckdrawlist 抽奖
191
-		beego.NSRouter("luckdrawlist", &luckdrawlist.LuckdrawlistController{}, "get:GetLuckdrawList"),
192
-		beego.NSRouter("luckdrawlist/:toPhone/:fromPhone", &luckdrawlist.LuckdrawlistController{}, "get:GetLuckShareList"),
193
-		beego.NSRouter("luckdrawlist/:luckdrawId", &luckdrawlist.LuckdrawlistController{}, "get:GetVerifyList"),
194
-		beego.NSRouter("luckdrawlist/:luckdrawId", &luckdrawlist.LuckdrawlistController{}, "put:VerifyLuckdraw"),
190
+		// beego.NSRouter("luckdrawlist", &luckdrawlist.LuckdrawlistController{}, "get:GetLuckdrawList"),
191
+		// beego.NSRouter("luckdrawlist/:toPhone/:fromPhone", &luckdrawlist.LuckdrawlistController{}, "get:GetLuckShareList"),
192
+		// beego.NSRouter("luckdrawlist/:luckdrawId", &luckdrawlist.LuckdrawlistController{}, "get:GetVerifyList"),
193
+		// beego.NSRouter("luckdrawlist/:luckdrawId", &luckdrawlist.LuckdrawlistController{}, "put:VerifyLuckdraw"),
194
+
195 195
 		// bodychecklist 体检列表
196 196
 		beego.NSRouter("bodychecklist", &bodychecklist.BodychecklistController{}, "get:GetBodyCheckList"),
197 197
 		// role 角色

+ 7
- 8
routers/wechat.go 查看文件

@@ -8,7 +8,6 @@ import (
8 8
 	"spaceofcheng/services/controllers/customer"
9 9
 	"spaceofcheng/services/controllers/goods"
10 10
 	"spaceofcheng/services/controllers/gymcard"
11
-	"spaceofcheng/services/controllers/luckdraw"
12 11
 	"spaceofcheng/services/controllers/user"
13 12
 
14 13
 	"github.com/astaxie/beego"
@@ -78,12 +77,12 @@ func getWechatRoutes() beego.LinkNamespace {
78 77
 		beego.NSRouter("/GetQrcodeURL", &bodycheck.BodyCheckController{}, "get:GetQrcodeURL"),
79 78
 
80 79
 		// 抽奖
81
-		beego.NSRouter("/user", &luckdraw.LuckDrawController{}, "get:GetUserByCode"),
82
-		beego.NSRouter("/luckdraw/:id", &luckdraw.LuckDrawController{}, "get:GetLuckDraw"),
83
-		beego.NSRouter("/luckdraw/:id", &luckdraw.LuckDrawController{}, "post:LuckDraw"),
84
-		beego.NSRouter("/luckdraw/:id/share", &luckdraw.LuckDrawController{}, "post:SaveShareRecord"),
85
-		beego.NSRouter("/record", &luckdraw.LuckDrawController{}, "get:GetRecordByLuckDraw"),
86
-		beego.NSRouter("/user/record", &luckdraw.LuckDrawController{}, "get:GetUserLuckDraw"),
87
-		beego.NSRouter("/user/record/:id", &luckdraw.LuckDrawController{}, "get:GetRecordByID"),
80
+		// beego.NSRouter("/user", &luckdraw.LuckDrawController{}, "get:GetUserByCode"),
81
+		// beego.NSRouter("/luckdraw/:id", &luckdraw.LuckDrawController{}, "get:GetLuckDraw"),
82
+		// beego.NSRouter("/luckdraw/:id", &luckdraw.LuckDrawController{}, "post:LuckDraw"),
83
+		// beego.NSRouter("/luckdraw/:id/share", &luckdraw.LuckDrawController{}, "post:SaveShareRecord"),
84
+		// beego.NSRouter("/record", &luckdraw.LuckDrawController{}, "get:GetRecordByLuckDraw"),
85
+		// beego.NSRouter("/user/record", &luckdraw.LuckDrawController{}, "get:GetUserLuckDraw"),
86
+		// beego.NSRouter("/user/record/:id", &luckdraw.LuckDrawController{}, "get:GetRecordByID"),
88 87
 	)
89 88
 }