ソースを参照

Merge branch '2.1.0' of http://git.ycjcjy.com/SpaceOfCheng/services into 2.1.0

zjxpcyc 6 年 前
コミット
3ffc17e776
共有4 個のファイルを変更した24 個の追加14 個の削除を含む
  1. 1
    1
      controllers/statistics/cardcoupon.go
  2. 1
    1
      models/flashbuy/flashbuy.go
  3. 17
    7
      models/luckdraw/luckdraw.go
  4. 5
    5
      models/statistics/cardcoupon.go

+ 1
- 1
controllers/statistics/cardcoupon.go ファイルの表示

@@ -164,7 +164,7 @@ func (c *StatisticsController) CardCouponUsedStatisticsExcel() {
164 164
 		case "event":
165 165
 			receivetype = "系统"
166 166
 			break
167
-		case "case":
167
+		case "sales":
168 168
 			receivetype = "案场"
169 169
 			break
170 170
 		case "channel":

+ 1
- 1
models/flashbuy/flashbuy.go ファイルの表示

@@ -315,7 +315,7 @@ func (m *FlashbuyDAO) UpdateFlashBuyCustomer(customerId, flashBuyId string) erro
315 315
 	}
316 316
 	var cols = []string{
317 317
 		"is_new",
318
-		"si_attend",
318
+		"is_attend",
319 319
 	}
320 320
 	_, err := m.db.Cols(cols...).Where("customer_id = ?", customer.CustomerId).And("flash_buy_id =?", flashBuyId).Update(customer)
321 321
 	return err

+ 17
- 7
models/luckdraw/luckdraw.go ファイルの表示

@@ -280,9 +280,10 @@ func (m *LuckDrawDao) SaveLuckDrawPrizes(prizes []PrizeWithDefaults, luckdraw *m
280 280
 		if prize.Id == "" {
281 281
 			prizes[inx].LuckdrawId = luckdraw.Id
282 282
 			prizes[inx].Id = utils.GetGUID()
283
-			prizes[inx].Remainder = prize.Stock
284
-			prizes[inx].Status = models.STATUS_NORMAL
285 283
 		}
284
+		prizes[inx].Remainder = prize.Stock
285
+		prizes[inx].Status = models.STATUS_NORMAL
286
+
286 287
 		if prize.PrizeType == models.PRIZE_TYPE_COUPONCARD {
287 288
 			valid, err := m.SavePrizeDetail(prizes[inx].TaLuckdrawPrize)
288 289
 			if err != nil {
@@ -596,7 +597,7 @@ func (m *LuckDrawDao) LuckDraw(id string, user *model.TaCustomer) (*model.TaLuck
596 597
 	}
597 598
 	// 更新库存
598 599
 	if prize.IsReality == 1 {
599
-		prize.Remainder = prize.Remainder - 1
600
+		// prize.Remainder = prize.Remainder - 1
600 601
 		err = m.UpdateStock(prize)
601 602
 		if err != nil {
602 603
 			utils.LogError("更新库存失败:", err)
@@ -611,6 +612,13 @@ func (m *LuckDrawDao) LuckDraw(id string, user *model.TaCustomer) (*model.TaLuck
611 612
 			// 更新活动截止时间
612 613
 			err = m.UpdateLuckDrawEndDate(luckdraw.Id)
613 614
 		}
615
+	} else {
616
+		// 奖项自动核销,走卡券核销流程
617
+		err = m.PrizeWriteOff(record.Id, user.CustomerId)
618
+		if err != nil {
619
+			utils.LogError("卡券核销失败:", err)
620
+			return nil, nil, nil, errors.New("操作失败!")
621
+		}
614 622
 	}
615 623
 
616 624
 	return prize, &detail, record, err
@@ -821,10 +829,12 @@ func (m *LuckDrawDao) GetDefaultsByPrize(prizeid string) ([]model.TaPrizeDefault
821 829
 
822 830
 // UpdateStock 修改库存
823 831
 func (m *LuckDrawDao) UpdateStock(prize *model.TaLuckdrawPrize) error {
824
-	cols := []string{
825
-		"remainder",
826
-	}
827
-	_, err := m.db.Cols(cols...).Where("id=?", prize.Id).Update(prize)
832
+	sql := `update ta_luckdraw_prize set remainder = remainder - 1 where id=?`
833
+	_, err := m.db.Exec(sql, prize.Id)
834
+	// cols := []string{
835
+	// 	"remainder",
836
+	// }
837
+	// _, err := m.db.Cols(cols...).Where("id=?", prize.Id).Update(prize)
828 838
 	return err
829 839
 }
830 840
 

+ 5
- 5
models/statistics/cardcoupon.go ファイルの表示

@@ -225,8 +225,8 @@ func (m *StatisticsDAO) CardCouponUsedStatistics(caseids, tel, name, receivetype
225 225
 							a.start_date,
226 226
 							a.end_date,
227 227
 							a.receive_date,
228
-							a.receive_date as used_date,
229
-							'used' as verify_status
228
+							a.verify_date as used_date,
229
+							a.verify_status
230 230
 						FROM
231 231
 							ta_customer_card a
232 232
 						INNER JOIN ta_coupon_card_target b ON b.card_id = a.card_id
@@ -265,7 +265,7 @@ func (m *StatisticsDAO) CardCouponUsedStatistics(caseids, tel, name, receivetype
265 265
 									) as used_date,
266 266
 									(
267 267
 										CASE
268
-										WHEN NOW() > a.end_date THEN
268
+										WHEN use_date IS NULL and NOW() > a.end_date THEN
269 269
 											'expire'
270 270
 										WHEN use_date IS NULL THEN
271 271
 											'useable'
@@ -325,7 +325,7 @@ func (m *StatisticsDAO) CardCouponUsedCountStatistics(caseids, tel, name, receiv
325 325
 							a.start_date,
326 326
 							a.end_date,
327 327
 							a.receive_date,
328
-							a.receive_date as used_date,
328
+							a.verify_date as used_date,
329 329
 							a.verify_status
330 330
 						FROM
331 331
 							ta_customer_card a
@@ -365,7 +365,7 @@ func (m *StatisticsDAO) CardCouponUsedCountStatistics(caseids, tel, name, receiv
365 365
 									) as used_date,
366 366
 									(
367 367
 										CASE
368
-										WHEN NOW() > a.end_date THEN
368
+										WHEN use_date IS NULL and NOW() > a.end_date THEN
369 369
 											'expire'
370 370
 										WHEN use_date IS NULL THEN
371 371
 											'useable'