|
@@ -85,6 +85,10 @@ func (s *VipcardServ) AddVipCard(vipCard model.TaVipCard) (*model.TaVipCard, err
|
85
|
85
|
vipChild.VipCardId = vipcard.VipCardId
|
86
|
86
|
vipChild.VipCardChildCode = s.dao.GenerateChildCode()
|
87
|
87
|
vipChild.Amount = vipCard.CardAmount
|
|
88
|
+ vipChild.BeginDate = vipCard.BeginDate
|
|
89
|
+ vipChild.EndDate = vipCard.EndDate
|
|
90
|
+ vipChild.CaseId = vipCard.CaseId
|
|
91
|
+ vipChild.OrgId = vipCard.OrgId
|
88
|
92
|
_, err := s.dao.AddVipChildCard(vipChild)
|
89
|
93
|
if err != nil {
|
90
|
94
|
utils.LogError("创建VIP卡失败: " + err.Error())
|
|
@@ -103,6 +107,55 @@ func (s *VipcardServ) FindCustomerByTel(tel string) (*model.TaCustomer, error) {
|
103
|
107
|
return customer, err
|
104
|
108
|
}
|
105
|
109
|
|
|
110
|
+// SaveCustomerVip 保存用户vip
|
|
111
|
+func (s *VipcardServ) SaveCustomerVip(vipchild *model.TaVipCardChild, createUser model.SysUser) error {
|
|
112
|
+ customer, err := s.cdao.GetCustomerByPhone(vipchild.CustomerTel)
|
|
113
|
+ if err != nil {
|
|
114
|
+ utils.LogError("激活失败: " + err.Error())
|
|
115
|
+ return errors.New("激活失败")
|
|
116
|
+ }
|
|
117
|
+ var customerVip = model.TaCustomerVip{
|
|
118
|
+ CustomerId: customer.CustomerId,
|
|
119
|
+ VipCardId: vipchild.VipCardId,
|
|
120
|
+ VipCardChildId: vipchild.VipCardChildId,
|
|
121
|
+ CustomerTel: customer.Phone,
|
|
122
|
+ Amount: vipchild.Amount,
|
|
123
|
+ BeginDate: vipchild.BeginDate,
|
|
124
|
+ EndDate: vipchild.EndDate,
|
|
125
|
+ Balance: vipchild.Amount,
|
|
126
|
+ CaseId: vipchild.CaseId,
|
|
127
|
+ OrgId: vipchild.OrgId,
|
|
128
|
+ SalesId: vipchild.SalesId,
|
|
129
|
+ SalesName: vipchild.SalesName,
|
|
130
|
+ }
|
|
131
|
+ info, err := s.dao.AddCustomerVip(customerVip)
|
|
132
|
+ if err != nil {
|
|
133
|
+ utils.LogError("保存用户vip卡失败: " + err.Error())
|
|
134
|
+ return errors.New("激活失败")
|
|
135
|
+ }
|
|
136
|
+ // vip卡明细操作
|
|
137
|
+ var change = model.TaCustomerVipChange{
|
|
138
|
+ CustomerVipId: info.CustomerVipId,
|
|
139
|
+ CustomerId: info.CustomerId,
|
|
140
|
+ OrgId: info.OrgId,
|
|
141
|
+ CaseId: info.CaseId,
|
|
142
|
+ ChangeType: models.CONSUME_COINCHG,
|
|
143
|
+ ChangeSource: models.ACCSOURCE_RECHARGE,
|
|
144
|
+ SourceId: vipchild.VipCardChildId,
|
|
145
|
+ SourceName: vipchild.VipCardChildCode,
|
|
146
|
+ Amount: info.Amount,
|
|
147
|
+ FloatType: models.ACCOUNT_INCOME,
|
|
148
|
+ CreateUser: createUser.UserId,
|
|
149
|
+ }
|
|
150
|
+ err = s.dao.InsertCustomerVipChange(change)
|
|
151
|
+ if err != nil {
|
|
152
|
+ utils.LogError("保存用户vip卡明细信息失败: " + err.Error())
|
|
153
|
+ return errors.New("激活失败")
|
|
154
|
+ }
|
|
155
|
+
|
|
156
|
+ return err
|
|
157
|
+}
|
|
158
|
+
|
106
|
159
|
// CustomerCharge 给用户充值
|
107
|
160
|
func (s *VipcardServ) CustomerCharge(vipchild *model.TaVipCardChild, createUser model.SysUser) error {
|
108
|
161
|
customer, err := s.cdao.GetCustomerByPhone(vipchild.CustomerTel)
|
|
@@ -141,17 +194,26 @@ func (s *VipcardServ) CustomerCharge(vipchild *model.TaVipCardChild, createUser
|
141
|
194
|
return nil
|
142
|
195
|
}
|
143
|
196
|
|
144
|
|
-
|
145
|
197
|
// GetVipChildExcel 获取VIP卡列表
|
146
|
198
|
func (s *VipcardServ) GetVipChildExcel(caseids, cardNo, sellerName, userName string) ([]vipcard.VipChild, error) {
|
147
|
|
-
|
|
199
|
+
|
148
|
200
|
vipchild, err := s.dao.GetVipCardListExcel(caseids, cardNo, sellerName, userName)
|
149
|
201
|
if err != nil {
|
150
|
202
|
utils.LogError("获取VIP卡信息失败: " + err.Error())
|
151
|
203
|
return nil, errors.New("获取VIP卡信息失败")
|
152
|
204
|
}
|
153
|
|
-
|
|
205
|
+
|
154
|
206
|
return vipchild, err
|
155
|
207
|
}
|
156
|
208
|
|
|
209
|
+// GetCustomerVips 获取用户vip卡信息
|
|
210
|
+func (s *VipcardServ) GetCustomerVips() ([]vipcard.CustomerVipWithChange, error) {
|
|
211
|
+ customer := s.ctx.Get("customer").(model.TaCustomer)
|
|
212
|
+ vips, err := s.dao.GetCustomerVips(customer.CustomerId)
|
|
213
|
+ if err != nil {
|
|
214
|
+ utils.LogError("获取VIP卡信息失败: " + err.Error())
|
|
215
|
+ return nil, errors.New("获取VIP卡信息失败")
|
|
216
|
+ }
|
157
|
217
|
|
|
218
|
+ return vips, err
|
|
219
|
+}
|