获取兑换码信息

This commit is contained in:
jysperm
2014-08-09 15:16:40 +08:00
parent 3669329313
commit 3632ce96e5
4 changed files with 53 additions and 2 deletions

View File

@@ -0,0 +1,27 @@
module.exports = exports = app.db.buildModel 'coupon_code'
sample =
code: 'PmlFH2hpziDmyqPX'
expired: new Date()
available_times: 2
type: 'amount'
meta:
amount: 10
log: [
account_id: new ObjectID()
created_at: new Date()
]
exports.type_meta =
amount:
message: (coupon_code) ->
return "账户余额:#{coupon_code.meta.amount} CNY"
exports.codeMessage = (coupon_code) ->
return exports.type_meta[coupon_code.type].message coupon_code
exports.getCode = (code, callback) ->
exports.findOne
code: code
, (err, coupon_code) ->
callback coupon_code

View File

@@ -4,6 +4,7 @@ utils = require './utils'
mAccount = require '../model/account'
mSecurityLog = require '../model/security_log'
mCouponCode = require '../model/coupon_code'
module.exports = exports = express.Router()
@@ -130,3 +131,12 @@ exports.post '/update_setting', requireAuthenticate, (req, res) ->
token: _.omit(token, 'updated_at')
, ->
res.json {}
exports.all '/coupon_info', requireAuthenticate, (req, res) ->
mCouponCode.getCode req.body.code, (coupon_code) ->
unless coupon_code
return res.error 'code_not_exist'
res.json
message: mCouponCode.codeMessage coupon_code

View File

@@ -28,3 +28,17 @@ $ ->
alert jqXHR.responseJSON?.error ? jqXHR.statusText
.success ->
alert 'Success!'
$('.action-use').click ->
$.post '/account/coupon_info/', JSON.stringify
code: $(':input[name=coupon_code]').val()
.fail (jqXHR) ->
alert jqXHR.responseJSON?.error ? jqXHR.statusText
.success (data) ->
if window.confirm data.message
$.post '/account/use_coupon/', JSON.stringify
code: $(':input[name=coupon_code]').val()
.fail (jqXHR) ->
alert jqXHR.responseJSON?.error ? jqXHR.statusText
.success ->
alert 'Success!'

View File

@@ -17,11 +17,11 @@ block main
.row
header 兑换代码
form.form-promo.form-horizontal
form.form-coupon.form-horizontal
.form-group
label.col-sm-2.col-md-offset-1.control-label 代码
.col-sm-5
input.form-control(type='text', name='promo_code', required)
input.form-control(type='text', name='coupon_code', required)
.form-group
.col-sm-offset-3
button.action-use.btn.btn-lg.btn-success(type='button') 使用