wangfei 6 gadus atpakaļ
vecāks
revīzija
0aa44f45f9

+ 11
- 0
controllers/user/user.go Parādīt failu

@@ -297,3 +297,14 @@ func (c *UserController) GetCaseUserByType() {
297 297
 	}
298 298
 	c.ResponseJSON(users)
299 299
 }
300
+
301
+// GetCaseUserByID 根据id获取用户详情
302
+func (c *UserController) GetCaseUserByID() {
303
+	userid := c.GetString(":id")
304
+	userdetail, err := c.dao.GetCaseUserByUserID(userid)
305
+	if err != nil {
306
+		utils.LogError("获取人员信息失败: " + err.Error())
307
+		c.ResponseError(errors.New("获取人员信息失败"))
308
+	}
309
+	c.ResponseJSON(userdetail)
310
+}

+ 45
- 0
log/common.log Parādīt failu

@@ -0,0 +1,45 @@
1
+2018/09/13 16:16:14 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
2
+2018/09/13 16:16:15 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_t75mKBMe6kmrMYXXQrTSheSWuAj8XAN8wpjERPyoSOjvQSSVe7NcsQ0AQqE_X0VnNN9dzKKjULsOK8I7en1nqaeKnD4p76Dnxou2L0Iwo58VUlYugQ6h-KhPA_p1bACYJItDynXHmP3gaCnASSUgAJAFFH","expires_in":7200})
3
+2018/09/13 16:16:15 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[access_token:13_t75mKBMe6kmrMYXXQrTSheSWuAj8XAN8wpjERPyoSOjvQSSVe7NcsQ0AQqE_X0VnNN9dzKKjULsOK8I7en1nqaeKnD4p76Dnxou2L0Iwo58VUlYugQ6h-KhPA_p1bACYJItDynXHmP3gaCnASSUgAJAFFH expires_in:7200])
4
+2018/09/13 16:17:48 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
5
+2018/09/13 16:17:48 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_LReP4MllVdzfT3IR1lg7LOMBQUWZkpMdh44eZr42GkCbFuE19P_0WPmO4Ph3y2V_kWGd8MQ9Jieu5ZNneIBRvwYxjUVuqb5m1X1lZ80yBpFaJWLaM5xW0ucUoWPP6tT13Y67CDh1K91hpKp8VSXaACACZE","expires_in":7200})
6
+2018/09/13 16:17:48 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[access_token:13_LReP4MllVdzfT3IR1lg7LOMBQUWZkpMdh44eZr42GkCbFuE19P_0WPmO4Ph3y2V_kWGd8MQ9Jieu5ZNneIBRvwYxjUVuqb5m1X1lZ80yBpFaJWLaM5xW0ucUoWPP6tT13Y67CDh1K91hpKp8VSXaACACZE expires_in:7200])
7
+2018/09/13 16:19:04 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
8
+2018/09/13 16:19:04 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_kQzv1RZr6UI80uqFnorJZ1DGDHRYdWePSVkv4KYUFfwBRMb9ZmYopw7GTz3bRYYTTOP3bxT-SgL8sbFQQYogiiIZQSyO9exDIhriJznPahpxPwOWuhPORvDVYGvB8L7dqn3fhJJZkj_fcl3-TQXfAIAJGN","expires_in":7200})
9
+2018/09/13 16:19:04 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[access_token:13_kQzv1RZr6UI80uqFnorJZ1DGDHRYdWePSVkv4KYUFfwBRMb9ZmYopw7GTz3bRYYTTOP3bxT-SgL8sbFQQYogiiIZQSyO9exDIhriJznPahpxPwOWuhPORvDVYGvB8L7dqn3fhJJZkj_fcl3-TQXfAIAJGN expires_in:7200])
10
+2018/09/13 16:20:38 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
11
+2018/09/13 16:20:38 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_maYX9r_i2yTh_ZMzT3CBfOMdXv8RbHS_9jxpq9tfuvnWs0cFVlOSP61O2yIaokUHd1hkup6zyWix2jWUQ-HYq5F5Fqog5J1VFjdtKq7MBMYwivpZbfyoxvUbTp2gsJuhUEvBmo6kRwNhRxSFDSEcAHAVKW","expires_in":7200})
12
+2018/09/13 16:20:38 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[access_token:13_maYX9r_i2yTh_ZMzT3CBfOMdXv8RbHS_9jxpq9tfuvnWs0cFVlOSP61O2yIaokUHd1hkup6zyWix2jWUQ-HYq5F5Fqog5J1VFjdtKq7MBMYwivpZbfyoxvUbTp2gsJuhUEvBmo6kRwNhRxSFDSEcAHAVKW expires_in:7200])
13
+2018/09/13 16:24:00 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
14
+2018/09/13 16:24:01 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_LN5DDwhzg_YXVxoaMEnQHNxh1Po7akGhaKn5eG06ehRBtDQMT2iWCdhWJuwXGeTNfiMklk8YM0FX2TI-bYgWKhvWJDrLzPwvsqbRnp_7f6TDwCn1lg3tBRMSPuRX-Ee_yDZ6YPvRLNnSTZGnCDReADAYZN","expires_in":7200})
15
+2018/09/13 16:24:01 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[access_token:13_LN5DDwhzg_YXVxoaMEnQHNxh1Po7akGhaKn5eG06ehRBtDQMT2iWCdhWJuwXGeTNfiMklk8YM0FX2TI-bYgWKhvWJDrLzPwvsqbRnp_7f6TDwCn1lg3tBRMSPuRX-Ee_yDZ6YPvRLNnSTZGnCDReADAYZN expires_in:7200])
16
+2018/09/13 16:41:15 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
17
+2018/09/13 16:41:15 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_sM3eFKiF10Dc4_mrvH8fFbF4uxuLd_wX0frUbJm-0aQT0gIe5ARVYwDH3sOCMHsW6f1zXyI9WZyFGdF0m0b2aXGih7Uyxxd0d6ffPKi0iCiVUqR8XV4Mvbs1BXVDiclcxgGZN0kpEgM8_TzRBMKiAGAJUS","expires_in":7200})
18
+2018/09/13 16:41:15 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[access_token:13_sM3eFKiF10Dc4_mrvH8fFbF4uxuLd_wX0frUbJm-0aQT0gIe5ARVYwDH3sOCMHsW6f1zXyI9WZyFGdF0m0b2aXGih7Uyxxd0d6ffPKi0iCiVUqR8XV4Mvbs1BXVDiclcxgGZN0kpEgM8_TzRBMKiAGAJUS expires_in:7200])
19
+2018/09/13 16:41:41 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
20
+2018/09/13 16:41:41 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_K_bD0F7FF9TcHL_5g8p4_fIcALQ5Ql7VI34eu1JIQ2i75-u4-Gk2TL8a4bMMUKf35HzxFZZrweYAg7PL9YfAzz5K-MuHw58wjQp5UmICZdeUzgZY58BvDtDihJQhVgDzODlNymlZ9y4qdX0dPWOgACAJQI","expires_in":7200})
21
+2018/09/13 16:41:41 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[access_token:13_K_bD0F7FF9TcHL_5g8p4_fIcALQ5Ql7VI34eu1JIQ2i75-u4-Gk2TL8a4bMMUKf35HzxFZZrweYAg7PL9YfAzz5K-MuHw58wjQp5UmICZdeUzgZY58BvDtDihJQhVgDzODlNymlZ9y4qdX0dPWOgACAJQI expires_in:7200])
22
+2018/09/13 16:42:42 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
23
+2018/09/13 16:42:42 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_NXBnDyv6wtq181zln6Sm-liedNbNRUDD0lZuCcE44jgewGDYZ4frfF6qWC5oCqEYNcG_lnSqgStw1aGqn-T5aPtvqF3J0IaQac2b2fIT1C4sWLOq7XHWV1O5XEF3fhB1AF3wvFd2yq1HImsfQOXfAEATRA","expires_in":7200})
24
+2018/09/13 16:42:42 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[expires_in:7200 access_token:13_NXBnDyv6wtq181zln6Sm-liedNbNRUDD0lZuCcE44jgewGDYZ4frfF6qWC5oCqEYNcG_lnSqgStw1aGqn-T5aPtvqF3J0IaQac2b2fIT1C4sWLOq7XHWV1O5XEF3fhB1AF3wvFd2yq1HImsfQOXfAEATRA])
25
+2018/09/13 16:44:19 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
26
+2018/09/13 16:44:19 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_muDCgCmGeBItmi8FbRxCsoQiUV0j-zAfNmXR38X1alvEA2-mEr6zHNNm3WU3maoMUuHi__kxopZw9xnmCnRoUqEUjtow484r03YSkc6t0hgD7pVrvRp5o55B9ZgQZLhAHAFOA","expires_in":7200})
27
+2018/09/13 16:44:19 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[access_token:13_muDCgCmGeBItmi8FbRxCsoQiUV0j-zAfNmXR38X1alvEA2-mEr6zHNNm3WU3maoMUuHi__kxopZw9xnmCnRoUqEUjtow484r03YSkc6t0hgD7pVrvRp5o55B9ZgQZLhAHAFOA expires_in:7200])
28
+2018/09/13 16:51:54 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
29
+2018/09/13 16:51:54 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_RvPuvAWYerAzdMoI07TwgL0liULpmiKC2LVmEtK-hDEf7fITAzgOhkDTcb8bOf9HldbBd62Nw0jEnqbjCTjL0KkDlY_6oGuzO1-KbEBGAeygeR_2nmaOwWKGFEBCappxwKLxC_txoKYY5qe0JNZjADAWAM","expires_in":7200})
30
+2018/09/13 16:51:54 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[access_token:13_RvPuvAWYerAzdMoI07TwgL0liULpmiKC2LVmEtK-hDEf7fITAzgOhkDTcb8bOf9HldbBd62Nw0jEnqbjCTjL0KkDlY_6oGuzO1-KbEBGAeygeR_2nmaOwWKGFEBCappxwKLxC_txoKYY5qe0JNZjADAWAM expires_in:7200])
31
+2018/09/13 16:58:59 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
32
+2018/09/13 16:59:00 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_tEBDDK2PZ64AjP2fCynPzMk6KposI5qyWTWRhTZGxl5Sg-fJAmMesx_eXX6nKKSxql8ADj31ak4UVrgNvygy8UReA741GzQOB-S87QoMq9IDRd6BHnBBMmHggdag1A8UJabzUYha1yGu-7gYNFObAEASKT","expires_in":7200})
33
+2018/09/13 16:59:00 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[access_token:13_tEBDDK2PZ64AjP2fCynPzMk6KposI5qyWTWRhTZGxl5Sg-fJAmMesx_eXX6nKKSxql8ADj31ak4UVrgNvygy8UReA741GzQOB-S87QoMq9IDRd6BHnBBMmHggdag1A8UJabzUYha1yGu-7gYNFObAEASKT expires_in:7200])
34
+2018/09/13 17:11:14 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
35
+2018/09/13 17:11:14 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_vINCPh8vPhqM7Bi1eJGqZNcS6qNgg7xF5DV8W0e9sdRdwUhgL8GkIKuBcevjQAGzjx6pSTfDGdyNeKTf7p62UmczHgQ0pkTV-z1bTr3Qajsr3JQlKxwTi1PqzyRZXhbuy0u_RYxU2xovH_rjVZXeAHANRP","expires_in":7200})
36
+2018/09/13 17:11:14 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[expires_in:7200 access_token:13_vINCPh8vPhqM7Bi1eJGqZNcS6qNgg7xF5DV8W0e9sdRdwUhgL8GkIKuBcevjQAGzjx6pSTfDGdyNeKTf7p62UmczHgQ0pkTV-z1bTr3Qajsr3JQlKxwTi1PqzyRZXhbuy0u_RYxU2xovH_rjVZXeAHANRP])
37
+2018/09/13 17:13:06 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
38
+2018/09/13 17:13:06 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_gR9L77qQVeIfhpsWcIlzH2dMOQRu-NPQ0Pm92LcB5z7mYRujKJQ80-xDcZSWJZCFUaP49jidFBSeTmmEjAAWzrfY1I3qItWfIyAyyJIMcTiwwx8HU9Ead3ya-HN-nYNFDibC61cmjuPg_bc4ZINdAFAJSX","expires_in":7200})
39
+2018/09/13 17:13:06 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[access_token:13_gR9L77qQVeIfhpsWcIlzH2dMOQRu-NPQ0Pm92LcB5z7mYRujKJQ80-xDcZSWJZCFUaP49jidFBSeTmmEjAAWzrfY1I3qItWfIyAyyJIMcTiwwx8HU9Ead3ya-HN-nYNFDibC61cmjuPg_bc4ZINdAFAJSX expires_in:7200])
40
+2018/09/13 17:23:58 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
41
+2018/09/13 17:23:58 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_JAHqIzd8t7RjwVC99zRLjKz7qgb7MCnlyogvQShEpMyhVrHxIMWv3NqQLcMUK-EOMVMIv_1qA3iIko_YQr7jHzFIptl0oavzVQFsSdrzKteafX54tWnKGr2s2WvEkIfA7gZj3n1sqMSzq_emMCZhAIADTQ","expires_in":7200})
42
+2018/09/13 17:23:58 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[access_token:13_JAHqIzd8t7RjwVC99zRLjKz7qgb7MCnlyogvQShEpMyhVrHxIMWv3NqQLcMUK-EOMVMIv_1qA3iIko_YQr7jHzFIptl0oavzVQFsSdrzKteafX54tWnKGr2s2WvEkIfA7gZj3n1sqMSzq_emMCZhAIADTQ expires_in:7200])
43
+2018/09/13 17:29:28 [I] 请求远程接口: %!(EXTRA string=https://api.weixin.qq.com/cgi-bin/token?appid=wx7320287e057bbeee&grant_type=client_credential&secret=6e844dc2ade439545c47569ba1707673)
44
+2018/09/13 17:29:28 [I] 远程请求结果:%!(EXTRA string={"access_token":"13_-MyaEvs8zCN1AcbmsHBHbC-MFRohzD9yROKsAhqfXKYp7rvzxWPtCRmkBsjyjqmKdFrEkChzlZosmvUbYoAJhggHNj5p7tRtRkgWVy_1Z9-7DgkO8_UG0sqNlYAQTZmrYIHSUCe3_2-iP8g4TAOaADACJX","expires_in":7200})
45
+2018/09/13 17:29:28 [I] 接口返回结果: %!(EXTRA map[string]interface {}=map[access_token:13_-MyaEvs8zCN1AcbmsHBHbC-MFRohzD9yROKsAhqfXKYp7rvzxWPtCRmkBsjyjqmKdFrEkChzlZosmvUbYoAJhggHNj5p7tRtRkgWVy_1Z9-7DgkO8_UG0sqNlYAQTZmrYIHSUCe3_2-iP8g4TAOaADACJX expires_in:7200])

+ 7
- 0
models/card/card.go Parādīt failu

@@ -267,3 +267,10 @@ func (m *CardDAO) GetCustomerCardByCard(cardid string) ([]model.TaCustomerCard,
267 267
 	err := m.db.Where("card_id=?", cardid).And("status>?", models.STATUS_DEL).Find(&customerCards)
268 268
 	return customerCards, err
269 269
 }
270
+
271
+// GetCustomerCardByUser 根据用户获取发送的卡信息
272
+func (m *CardDAO) GetCustomerCardByUser(caseid, userid string) ([]model.TaCustomerCard, error) {
273
+	var customerCards []model.TaCustomerCard
274
+	err := m.db.Where("case_id=?", caseid).And("sales_id=?", userid).And("status>?", models.STATUS_DEL).Find(&customerCards)
275
+	return customerCards, err
276
+}

+ 63
- 0
models/coupon/coupon.go Parādīt failu

@@ -258,3 +258,66 @@ func (m *CouponDAO) GetCouponBySendType(caseids, sendtype string) ([]model.TaCou
258 258
 	err := m.db.Where("case_id in ('"+strings.Replace(caseids, ",", "','", -1)+"')").And("send_type=?", sendtype).And("status=?", models.STATUS_NORMAL).Find(&coupons)
259 259
 	return coupons, err
260 260
 }
261
+
262
+// CaseUsableCoupon 案场可用优惠券信息
263
+type CaseUsableCoupon struct {
264
+	model.TaCoupon `xorm:"extends"`
265
+	CustomerCoupon []model.TaCustomerCoupon
266
+}
267
+
268
+// GetCaseUsableCoupon 获取案场可用优惠券信息
269
+func (m *CouponDAO) GetCaseUsableCoupon(caseid, userid string, page, pageSize int) ([]CaseUsableCoupon, error) {
270
+	var Coupons []CaseUsableCoupon
271
+	sql := `select * from ta_coupon where case_id=? and status=? and end_date>now() order by create_date limit ` + strconv.Itoa((page-1)*pageSize) + `, ` + strconv.Itoa(pageSize)
272
+	err := m.db.Sql(sql, caseid, models.STATUS_NORMAL).Find(&Coupons)
273
+	if userid != "" {
274
+		for inx, Coupon := range Coupons {
275
+			cCoupons, err := m.GetCustomerCouponByCouponAndUser(Coupon.CouponId, userid)
276
+			if err != nil {
277
+				return nil, err
278
+			}
279
+			Coupons[inx].CustomerCoupon = cCoupons
280
+		}
281
+	}
282
+	return Coupons, err
283
+}
284
+
285
+// GetCustomerCouponByCouponAndUser 根据优惠券与用户获取领取的用户信息
286
+func (m *CouponDAO) GetCustomerCouponByCouponAndUser(couponid, userid string) ([]model.TaCustomerCoupon, error) {
287
+	var customerCoupons []model.TaCustomerCoupon
288
+	err := m.db.Where("coupon_id=?", couponid).And("sales_id=?", userid).And("status>?", models.STATUS_DEL).Find(&customerCoupons)
289
+	return customerCoupons, err
290
+}
291
+
292
+// GetCouponDetail 获取优惠券详情
293
+func (m *CouponDAO) GetCouponDetail(couponid string) (*CaseUsableCoupon, error) {
294
+	var coupon = new(CaseUsableCoupon)
295
+	sql := `select * from ta_coupon_Coupon where coupon_id=? and status>?`
296
+	_, err := m.db.Sql(sql, couponid, models.STATUS_DEL).Get(&coupon)
297
+	if err != nil {
298
+		return nil, err
299
+	}
300
+	if coupon == nil || coupon.CouponId == "" {
301
+		return nil, errors.New("无优惠券信息")
302
+	}
303
+	cCoupons, err := m.GetCustomerCouponByCoupon(couponid)
304
+	if err != nil {
305
+		return nil, err
306
+	}
307
+	coupon.CustomerCoupon = cCoupons
308
+	return coupon, nil
309
+}
310
+
311
+// GetCustomerCouponByCoupon 根据优惠券获取领取的用户信息
312
+func (m *CouponDAO) GetCustomerCouponByCoupon(couponid string) ([]model.TaCustomerCoupon, error) {
313
+	var customerCoupons []model.TaCustomerCoupon
314
+	err := m.db.Where("coupon_id=?", couponid).And("status>?", models.STATUS_DEL).Find(&customerCoupons)
315
+	return customerCoupons, err
316
+}
317
+
318
+// GetCustomerCouponByUser 根据用户获取领取的用户信息
319
+func (m *CouponDAO) GetCustomerCouponByUser(caseid, userid string) ([]model.TaCustomerCoupon, error) {
320
+	var customerCoupons []model.TaCustomerCoupon
321
+	err := m.db.Where("case_id=?", caseid).And("sales_id=?", userid).And("status>?", models.STATUS_DEL).Find(&customerCoupons)
322
+	return customerCoupons, err
323
+}

+ 12
- 0
models/goods/orders.go Parādīt failu

@@ -262,3 +262,15 @@ func (m *GoodsDAO) UpdateOrdersMake(orders model.TaGoodsOrders) error {
262 262
 	_, err := m.db.Cols(cols...).Where("orders_id=?", orders.OrdersId).Update(orders)
263 263
 	return err
264 264
 }
265
+
266
+// GetOrderDetailByUser 获取用户所有下单信息
267
+func (m *GoodsDAO) GetOrderDetailByUser(caseid, userid string) ([]model.TaGoodsOrdersDetail, error) {
268
+	var details []model.TaGoodsOrdersDetail
269
+	sql := `select a.* from ta_goods_orders_detail a inner join ta_goods_orders b on a.orders_id=b.orders_id
270
+		inner join ta_customer c on b.user_id = c.customer_id
271
+	where c.user_id=? and b.status>? and b.case_id=?`
272
+	if err := m.db.Sql(sql, userid, models.STATUS_DEL, caseid).Find(&details); err != nil {
273
+		return nil, err
274
+	}
275
+	return details, nil
276
+}

+ 10
- 1
models/system/user.go Parādīt failu

@@ -465,7 +465,7 @@ func (m *UserDAO) CheckUserName(userid, username, orgid string) (bool, error) {
465 465
 // GetForbidUsers 获取所有禁止人员信息
466 466
 func (m *UserDAO) GetForbidUsers(caseid string) ([]model.TaForbidUser, error) {
467 467
 	var forbiduser []model.TaForbidUser
468
-	err := m.db.Where("case_id=?", caseid).And("end_date > NOW()").And("status>" + strconv.Itoa(models.STATUS_DEL)).Find(&forbiduser)
468
+	err := m.db.Where("case_id=?", caseid).And("(end_date is null or end_date > NOW())").And("status>" + strconv.Itoa(models.STATUS_DEL)).Find(&forbiduser)
469 469
 	return forbiduser, err
470 470
 }
471 471
 
@@ -502,6 +502,7 @@ type UserWithCouponAndCard struct {
502 502
 	model.SysUser  `xorm:"extends"`
503 503
 	CustomerCoupon []model.TaCustomerCoupon
504 504
 	CustomerCard   []model.TaCustomerCard
505
+	OrdersDetail   []model.TaGoodsOrdersDetail
505 506
 }
506 507
 
507 508
 // GetCaseUserByType 获取案场所有销售信息
@@ -513,3 +514,11 @@ func (m *UserDAO) GetCaseUserByType(caseid, usertype string) ([]UserWithCouponAn
513 514
 	err := m.db.Sql(sql, models.STATUS_DEL, caseid, usertype).Find(&users)
514 515
 	return users, err
515 516
 }
517
+
518
+// GetUserDetailByID 根据id获取案场销售
519
+func (m *UserDAO) GetUserDetailByID(userid string) (*UserWithCouponAndCard, error) {
520
+	var user UserWithCouponAndCard
521
+	sql := `select * from sys_user where status>? and user_id=?`
522
+	_, err := m.db.Sql(sql, models.STATUS_DEL, userid).Get(&user)
523
+	return &user, err
524
+}

+ 1
- 0
routers/wechat.go Parādīt failu

@@ -44,5 +44,6 @@ func getWechatRoutes() beego.LinkNamespace {
44 44
 
45 45
 		// 用户
46 46
 		beego.NSRouter("/user/:type", &user.UserController{}, "get:GetCaseUserByType"),
47
+		beego.NSRouter("/user/detail/:id", &user.UserController{}, "get:GetCaseUserByID"),
47 48
 	)
48 49
 }

+ 67
- 5
service/user.go Parādīt failu

@@ -5,7 +5,9 @@ import (
5 5
 	"spaceofcheng/services/models"
6 6
 	"spaceofcheng/services/models/card"
7 7
 	"spaceofcheng/services/models/cases"
8
+	"spaceofcheng/services/models/coupon"
8 9
 	"spaceofcheng/services/models/customer"
10
+	"spaceofcheng/services/models/goods"
9 11
 	"spaceofcheng/services/models/model"
10 12
 	"spaceofcheng/services/models/system"
11 13
 	"spaceofcheng/services/utils"
@@ -21,6 +23,8 @@ type UserServ struct {
21 23
 	casedao     *cases.CaseDAO
22 24
 	customerdao *customer.CustomerDAO
23 25
 	carddao     *card.CardDAO
26
+	coupondao   *coupon.CouponDAO
27
+	ordersdao   *goods.GoodsDAO
24 28
 }
25 29
 
26 30
 // NewUserServ 初始化
@@ -31,6 +35,8 @@ func NewUserServ(ctx *utils.Context) *UserServ {
31 35
 		casedao:     cases.NewCaseDAO(ctx),
32 36
 		customerdao: customer.NewCustomerDAO(ctx),
33 37
 		carddao:     card.NewCardDAO(ctx),
38
+		coupondao:   coupon.NewCouponDAO(ctx),
39
+		ordersdao:   goods.NewGoodsDAO(ctx),
34 40
 	}
35 41
 }
36 42
 
@@ -528,19 +534,75 @@ func (s *UserServ) GetCaseUserByType(usertype string) ([]system.UserWithCouponAn
528 534
 	}
529 535
 	caseinfo, err := s.dao.GetUserBelongCase(customer.UserId)
530 536
 	if err != nil {
531
-		return nil, err
537
+		utils.LogError("获取人员归属案场失败: " + err.Error())
538
+		return nil, errors.New("获取人员信息失败")
532 539
 	}
533 540
 
534 541
 	users, err := s.dao.GetCaseUserByType(caseinfo.CaseId, usertype)
535 542
 	if err != nil {
536
-		return nil, err
543
+		utils.LogError("获取人员信息失败: " + err.Error())
544
+		return nil, errors.New("获取人员信息失败")
537 545
 	}
538 546
 	for inx, user := range users {
539
-		cards, err := s.carddao.GetCustomerCardByCardAndUser(caseinfo.CaseId, user.UserId)
547
+		err := s.GetUserWithDetail(caseinfo.CaseId, &user)
540 548
 		if err != nil {
541 549
 			return nil, err
542 550
 		}
543
-		users[inx].CustomerCard = cards
551
+		users[inx] = user
544 552
 	}
545
-	return users, err
553
+	return users, nil
554
+}
555
+
556
+// GetCaseUserByUserID 根据用户id获取人员信息
557
+func (s *UserServ) GetCaseUserByUserID(userid string) (*system.UserWithCouponAndCard, error) {
558
+	customer := s.ctx.Get("customer").(model.TaCustomer)
559
+	if customer.CustomerId == "" || customer.UserId == "" {
560
+		return nil, errors.New("当前用户没有权限查看用户信息")
561
+	}
562
+	caseinfo, err := s.dao.GetUserBelongCase(customer.UserId)
563
+	if err != nil {
564
+		utils.LogError("获取人员归属案场失败: " + err.Error())
565
+		return nil, errors.New("获取人员信息失败")
566
+	}
567
+	usercaseinfo, err := s.dao.GetUserBelongCase(userid)
568
+	if err != nil {
569
+		utils.LogError("获取人员归属案场失败: " + err.Error())
570
+		return nil, errors.New("获取人员信息失败")
571
+	}
572
+	if usercaseinfo.CaseId != caseinfo.CaseId {
573
+		return nil, errors.New("您没有权限查看此用户的数据!")
574
+	}
575
+	user, err := s.dao.GetUserDetailByID(userid)
576
+	if err != nil {
577
+		utils.LogError("获取人员信息失败: " + err.Error())
578
+		return nil, errors.New("获取人员信息失败")
579
+	}
580
+	err = s.GetUserWithDetail(usercaseinfo.CaseId, user)
581
+	if err != nil {
582
+		return nil, err
583
+	}
584
+	return user, nil
585
+}
586
+
587
+// GetUserWithDetail 获取用户详情
588
+func (s *UserServ) GetUserWithDetail(caseid string, user *system.UserWithCouponAndCard) error {
589
+	cards, err := s.carddao.GetCustomerCardByUser(caseid, user.UserId)
590
+	if err != nil {
591
+		utils.LogError("获取发送卡信息失败: " + err.Error())
592
+		return errors.New("获取人员信息失败")
593
+	}
594
+	user.CustomerCard = cards
595
+	coupons, err := s.coupondao.GetCustomerCouponByUser(caseid, user.UserId)
596
+	if err != nil {
597
+		utils.LogError("获取发送券信息失败: " + err.Error())
598
+		return errors.New("获取人员信息失败")
599
+	}
600
+	user.CustomerCoupon = coupons
601
+	details, err := s.ordersdao.GetOrderDetailByUser(caseid, user.UserId)
602
+	if err != nil {
603
+		utils.LogError("获取用户点单信息失败: " + err.Error())
604
+		return errors.New("获取人员信息失败")
605
+	}
606
+	user.OrdersDetail = details
607
+	return nil
546 608
 }