497
|
509
|
if user_coupon.has_used:
|
|
498
|
510
|
return response(CouponStatusCode.COUPON_HAS_USED)
|
|
499
|
|
- elif user_coupon.is_coupon_admin_writeoff:
|
|
|
511
|
+ elif user_coupon.is_coupon_admin_writeoff and not is_maintenance:
|
|
500
|
512
|
return response(CouponStatusCode.COUPON_PERMISSION_DENIED)
|
|
501
|
|
- elif not user_coupon.has_expired:
|
|
|
513
|
+ elif user_coupon.has_expired:
|
|
|
514
|
+ return response(CouponStatusCode.COUPON_EXPIRED)
|
|
|
515
|
+ except UserCouponInfo.DoesNotExist:
|
|
|
516
|
+ return response(CouponStatusCode.COUPON_NOT_FOUND)
|
|
|
517
|
+
|
|
|
518
|
+ user_coupon.has_used = True
|
|
|
519
|
+ user_coupon.used_at = tc.utc_datetime()
|
|
|
520
|
+
|
|
|
521
|
+ if is_maintenance:
|
|
|
522
|
+ try:
|
|
|
523
|
+ maintenance = MaintenancemanInfo.objects.get(brand_id=brand.brand_id, user_id=user.user_id, status=True)
|
|
|
524
|
+ user_coupon.admin_id = maintenance.maintenance_id
|
|
|
525
|
+ user_coupon.admin_name = maintenance.maintenance_name
|
|
|
526
|
+ user_coupon.save()
|
|
|
527
|
+ except:
|
|
|
528
|
+ return response(400001, 'MaintenancemanInfo Not Found', u'维修员不存在')
|
|
|
529
|
+ else:
|
|
|
530
|
+ try:
|
|
|
531
|
+ clerk = SaleclerkInfo.objects.get(brand_id=brand.brand_id, unionid=user.unionid, status=True)
|
|
502
|
532
|
user_coupon.clerk_id = clerk.clerk_id
|
|
503
|
533
|
user_coupon.clerk_name = clerk.clerk_name
|
|
504
|
534
|
user_coupon.distributor_id = clerk.distributor_id
|
|
505
|
535
|
user_coupon.distributor_name = clerk.distributor_name
|
|
506
|
|
- user_coupon.has_used = True
|
|
507
|
|
- user_coupon.used_at = tc.utc_datetime()
|
|
508
|
536
|
user_coupon.save()
|
|
509
|
|
- else:
|
|
510
|
|
- return response(CouponStatusCode.COUPON_EXPIRED)
|
|
511
|
|
- except UserCouponInfo.DoesNotExist:
|
|
512
|
|
- return response(CouponStatusCode.COUPON_NOT_FOUND)
|
|
|
537
|
+ except SaleclerkInfo.DoesNotExist:
|
|
|
538
|
+ return response(SaleclerkStatusCode.CLERK_NOT_FOUND)
|
|
513
|
539
|
|
|
514
|
540
|
return response(200, 'Write Off Coupon Success', u'劵核销成功')
|
|
515
|
541
|
|