package customer import ( "spaceofcheng/services/models" "spaceofcheng/services/models/model" "time" ) // GetValidVIPCards 依据客户ID 获取 VIP 卡 // 按照过期时间升序, 即 将到期的在最上面 // VIP 卡可以跨案场使用 func (m *CustomerDAO) GetValidVIPCards(custID string) (vips []model.TaCustomerVip, err error) { now := time.Now().Local().Format("2006-01-02 15:04:05") err = m.db.Where("customer_id=?", custID). And("status=?", models.STATUS_NORMAL). And(`DATE_FORMAT(begin_date, "%Y-%m-%d %T")<=?`, now). And(`DATE_FORMAT(end_date, "%Y-%m-%d %T")>=?`, now). And("balance>0"). Asc("end_date"). Find(&vips) return } // UpdateCustVipCardAmount 更新VIP账户 func (m *CustomerDAO) UpdateCustVipCardAmount(vip *model.TaCustomerVip, change float64) error { sql := `UPDATE ta_customer_vip SET balance = balance - ?, pay_amount = pay_amount + ? WHERE customer_vip_id = ? ` _, err := m.db.Exec(sql, change, change, vip.CustomerVipId) return err }