wangfei il y a 6 ans
Parent
révision
bc9e3703dc
4 fichiers modifiés avec 70 ajouts et 73 suppressions
  1. 1
    1
      models/luckdraw/luckdraw.go
  2. 1
    1
      service/card/card.go
  3. 1
    1
      service/coupon/coupon.go
  4. 67
    70
      service/customer/customer.go

+ 1
- 1
models/luckdraw/luckdraw.go Voir le fichier

@@ -514,7 +514,7 @@ func (m *LuckDrawDao) LuckDraw(id string, user *model.TaCustomer) (*model.TaLuck
514 514
 		prize, err = m.GetWinning(prizes)
515 515
 		if err != nil {
516 516
 			utils.LogError("获取奖项失败:", err)
517
-			return nil, nil, nil, errors.New("获取奖项失败!")
517
+			return nil, nil, nil, err
518 518
 		}
519 519
 	}
520 520
 

+ 1
- 1
service/card/card.go Voir le fichier

@@ -72,7 +72,7 @@ func (s *CardServ) GetCardList(caseID, sendtype, usetype string, pagenavi ...int
72 72
 		if usetype != "" {
73 73
 			switch usetype {
74 74
 			case models.COUPONCARD_USETYPE_LUCKDRAW:
75
-				filters = append(filters, "card_id not in (select resource_id from sys_activity_action where active_type='"+models.ActGiveCard+"') and used_count=0")
75
+				filters = append(filters, "card_id not in (select (case when resource_id is null then '' else resource_id end) from sys_activity_action where active_type='"+models.ActGiveCard+"') and used_count=0")
76 76
 				break
77 77
 			case models.COUPONCARD_USETYPE_SYS:
78 78
 				filters = append(filters, "card_id not in (select coupon_card_id from ta_luckdraw_record where coupon_card_type='"+models.PRIZE_TYPE_CARD+"') and used_count=0")

+ 1
- 1
service/coupon/coupon.go Voir le fichier

@@ -67,7 +67,7 @@ func (s *CouponServ) GetCouponList(caseID, sendtype, usetype string, pagenavi ..
67 67
 		if usetype != "" {
68 68
 			switch usetype {
69 69
 			case models.COUPONCARD_USETYPE_LUCKDRAW:
70
-				filters = append(filters, "coupon_id not in (select resource_id from sys_activity_action where active_type='"+models.ActGiveCoupon+"') and used_count=0")
70
+				filters = append(filters, "coupon_id not in (select (case when resource_id is null then '' else resource_id end) from sys_activity_action where active_type='"+models.ActGiveCoupon+"') and used_count=0")
71 71
 				break
72 72
 			case models.COUPONCARD_USETYPE_SYS:
73 73
 				filters = append(filters, "coupon_id not in (select coupon_card_id from ta_luckdraw_record where coupon_card_type='"+models.PRIZE_TYPE_COUPON+"') and used_count=0")

+ 67
- 70
service/customer/customer.go Voir le fichier

@@ -181,88 +181,85 @@ func (s *CustomerServ) BindWechatCust(userMap *model.TaUserMapping, phone, recom
181 181
 		utils.LogError(err.Error())
182 182
 		return nil, err
183 183
 	}
184
+	if cust != nil {
185
+		return nil, errors.New("当前手机号已被绑定或者注册")
186
+	}
184 187
 
185 188
 	// 用户不存在, 则新增
186
-	if cust == nil {
187
-		wxInfo := utils.WechatUser{}
188
-		if err := json.Unmarshal([]byte(userMap.AccountInfo), &wxInfo); err != nil {
189
-			utils.LogError("解析用户微信映射信息失败: " + err.Error())
190
-			return nil, errors.New("系统数据异常")
191
-		}
189
+	wxInfo := utils.WechatUser{}
190
+	if err := json.Unmarshal([]byte(userMap.AccountInfo), &wxInfo); err != nil {
191
+		utils.LogError("解析用户微信映射信息失败: " + err.Error())
192
+		return nil, errors.New("系统数据异常")
193
+	}
192 194
 
193
-		// 更新用户手机号码信息及userid信息
194
-		customer, err := s.dao.GetCustWithWXByOpenID(wxInfo.OpenID)
195
-		newCust := model.TaCustomer{
196
-			CustomerId:  customer.CustomerId,
197
-			Phone:       phone,
198
-			BindingDate: time.Now(),
199
-		}
200
-		// 校验案场信息
201
-		if recommendCode != "" {
202
-			user, err := s.dao.GetSalesByRecommendCode(recommendCode)
203
-			if err != nil {
204
-				utils.LogError(err.Error())
205
-				return nil, err
206
-			}
207
-			userCase, err := s.dao.GetSalesCaseById(user.UserId)
208
-			cs, err := s.casedao.GetCaseByID(userCase.CaseId)
209
-			if err != nil {
210
-				utils.LogError(err.Error())
211
-				return nil, err
212
-			}
213
-
214
-			if cs == nil || cs.Status == models.STATUS_DEL {
215
-				return nil, errors.New("系统无该推荐案场")
216
-			}
217
-
218
-			newCust.OrgId = cs.OrgId
219
-			newCust.RecommendCase = cs.CaseId
220
-
221
-			if user == nil || user.Status == models.STATUS_DEL {
222
-				return nil, errors.New("系统无该推荐人")
223
-			}
224
-
225
-			newCust.OrgId = user.OrgId
226
-			newCust.RecommendId = user.UserId
227
-			newCust.RecommendName = user.RealName
195
+	// 更新用户手机号码信息及userid信息
196
+	customer, err := s.dao.GetCustWithWXByOpenID(wxInfo.OpenID)
197
+	newCust := model.TaCustomer{
198
+		CustomerId:  customer.CustomerId,
199
+		Phone:       phone,
200
+		BindingDate: time.Now(),
201
+	}
202
+	// 校验案场信息
203
+	if recommendCode != "" {
204
+		user, err := s.dao.GetSalesByRecommendCode(recommendCode)
205
+		if err != nil {
206
+			utils.LogError(err.Error())
207
+			return nil, err
228 208
 		}
229
-
230
-		// 校验推荐人
231
-		// if userID != "" {
232
-		// 	ar, err := s.dao.GetUserByID(userID)
233
-		// 	if err != nil {
234
-		// 		utils.LogError(err.Error())
235
-		// 		return nil, err
236
-		// 	}
237
-
238
-		// 	if ar == nil || ar.Status == models.STATUS_DEL {
239
-		// 		return nil, errors.New("系统无该推荐人")
240
-		// 	}
241
-
242
-		// 	newCust.OrgId = ar.OrgId
243
-		// 	newCust.RecommendId = ar.UserId
244
-		// 	newCust.RecommendName = ar.RealName
245
-		// }
246
-
247
-		err = s.dao.UpdateCustomer(&newCust, []string{
248
-			"phone",
249
-			"recommend_id",
250
-			"recommend_case",
251
-			"recommend_name",
252
-			"binding_date",
253
-		})
209
+		userCase, err := s.dao.GetSalesCaseById(user.UserId)
210
+		cs, err := s.casedao.GetCaseByID(userCase.CaseId)
254 211
 		if err != nil {
255 212
 			utils.LogError(err.Error())
256 213
 			return nil, err
257 214
 		}
258 215
 
259
-		cust = &newCust
260
-	} else {
261
-		if cust.Status != models.STATUS_NORMAL {
262
-			return nil, errors.New("用户状态不正确")
216
+		if cs == nil || cs.Status == models.STATUS_DEL {
217
+			return nil, errors.New("系统无该推荐案场")
218
+		}
219
+
220
+		newCust.OrgId = cs.OrgId
221
+		newCust.RecommendCase = cs.CaseId
222
+
223
+		if user == nil || user.Status == models.STATUS_DEL {
224
+			return nil, errors.New("系统无该推荐人")
263 225
 		}
226
+
227
+		newCust.OrgId = user.OrgId
228
+		newCust.RecommendId = user.UserId
229
+		newCust.RecommendName = user.RealName
264 230
 	}
265 231
 
232
+	// 校验推荐人
233
+	// if userID != "" {
234
+	// 	ar, err := s.dao.GetUserByID(userID)
235
+	// 	if err != nil {
236
+	// 		utils.LogError(err.Error())
237
+	// 		return nil, err
238
+	// 	}
239
+
240
+	// 	if ar == nil || ar.Status == models.STATUS_DEL {
241
+	// 		return nil, errors.New("系统无该推荐人")
242
+	// 	}
243
+
244
+	// 	newCust.OrgId = ar.OrgId
245
+	// 	newCust.RecommendId = ar.UserId
246
+	// 	newCust.RecommendName = ar.RealName
247
+	// }
248
+
249
+	err = s.dao.UpdateCustomer(&newCust, []string{
250
+		"phone",
251
+		"recommend_id",
252
+		"recommend_case",
253
+		"recommend_name",
254
+		"binding_date",
255
+	})
256
+	if err != nil {
257
+		utils.LogError(err.Error())
258
+		return nil, err
259
+	}
260
+
261
+	cust = &newCust
262
+
266 263
 	// triggerRegiteEvent 触发注册事件
267 264
 	if cust.RecommendCase != "" {
268 265
 		evtEngID := utils.EngineIDBy(cust.OrgId, cust.RecommendCase)