|
|
@@ -3,16 +3,22 @@
|
|
|
*/
|
|
|
package com.jeeplus.modules.moneymanager.service;
|
|
|
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
+import java.util.*;
|
|
|
|
|
|
+import com.jeeplus.common.utils.StringUtils;
|
|
|
import com.jeeplus.modules.api.moneymanager.entity.MpMoneyDetailAPI;
|
|
|
+import com.jeeplus.modules.mporder.entity.MpMemberOrder;
|
|
|
+import com.jeeplus.modules.mporder.service.MpMemberOrderService;
|
|
|
import com.jeeplus.modules.sys.entity.HpMember;
|
|
|
+import com.jeeplus.modules.sys.entity.HpUser;
|
|
|
+import com.jeeplus.modules.sys.service.HpMemberService;
|
|
|
+import com.jeeplus.modules.sys.service.HpUserService;
|
|
|
import com.jeeplus.modules.sys.utils.DictUtils;
|
|
|
import com.jeeplus.modules.sys.wxUtils.TokenUtil;
|
|
|
+import com.jeeplus.modules.vipmanager.entity.MpMemberAccount;
|
|
|
+import com.jeeplus.modules.vipmanager.mapper.MpMemberAccountMapper;
|
|
|
import org.apache.commons.lang3.StringEscapeUtils;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
@@ -26,88 +32,130 @@ import javax.servlet.http.HttpServletResponse;
|
|
|
|
|
|
/**
|
|
|
* 会员钱明细Service
|
|
|
+ *
|
|
|
* @author lifei
|
|
|
* @version 2019-09-10
|
|
|
*/
|
|
|
@Service
|
|
|
@Transactional(readOnly = true)
|
|
|
public class MpMoneyDetailService extends CrudService<MpMoneyDetailMapper, MpMoneyDetail> {
|
|
|
+ @Autowired
|
|
|
+ private MpMemberOrderService mpMemberOrderService;
|
|
|
+ @Autowired
|
|
|
+ private MpMemberAccountMapper mpMemberAccountMapper;
|
|
|
+ @Autowired
|
|
|
+ private HpMemberService hpMemberService;
|
|
|
+ @Autowired
|
|
|
+ private HpUserService hpUserService;
|
|
|
|
|
|
- public MpMoneyDetail get(String id) {
|
|
|
- return super.get(id);
|
|
|
- }
|
|
|
-
|
|
|
- public List<MpMoneyDetail> findList(MpMoneyDetail mpMoneyDetail) {
|
|
|
- return super.findList(mpMoneyDetail);
|
|
|
- }
|
|
|
-
|
|
|
- public Page<MpMoneyDetail> findPage(Page<MpMoneyDetail> page, MpMoneyDetail mpMoneyDetail) {
|
|
|
- return super.findPage(page, mpMoneyDetail);
|
|
|
- }
|
|
|
-
|
|
|
- @Transactional(readOnly = false)
|
|
|
- public void save(MpMoneyDetail mpMoneyDetail) {
|
|
|
- super.save(mpMoneyDetail);
|
|
|
- }
|
|
|
-
|
|
|
- @Transactional(readOnly = false)
|
|
|
- public void delete(MpMoneyDetail mpMoneyDetail) {
|
|
|
- super.delete(mpMoneyDetail);
|
|
|
- }
|
|
|
+ public MpMoneyDetail get(String id) {
|
|
|
+ return super.get(id);
|
|
|
+ }
|
|
|
|
|
|
- /**
|
|
|
- * 查询收支明细
|
|
|
- * @param requestMap
|
|
|
- * @param request
|
|
|
- * @param response
|
|
|
- * @return
|
|
|
- */
|
|
|
- public Map<String,Object> getMoneyDetail(Map<String,String> requestMap, HttpServletRequest request, HttpServletResponse response) {
|
|
|
- Map<String, Object> returnMap = new HashMap<String, Object>();
|
|
|
- String userId = requestMap.get("user_id");
|
|
|
- String userToken = requestMap.get("user_token");
|
|
|
- String memberId = requestMap.get("member_id");
|
|
|
- String pageNo = requestMap.get("pageNo");
|
|
|
- //验证用户是否处于登录态
|
|
|
- if (TokenUtil.validateLogin(memberId, userId)) {
|
|
|
- //验证用户合法性
|
|
|
- if (TokenUtil.validateToken(userId, userToken)) {
|
|
|
- MpMoneyDetailAPI mpMoneyDetailAPI=new MpMoneyDetailAPI();
|
|
|
- HpMember hpMember=new HpMember();
|
|
|
- hpMember.setId(memberId);
|
|
|
- mpMoneyDetailAPI.setHpMember(hpMember);
|
|
|
- Page<MpMoneyDetailAPI> page = findMpMoneyDetailAPIPage(new Page<MpMoneyDetailAPI>(request, response), mpMoneyDetailAPI);
|
|
|
- if (Integer.parseInt(pageNo) > page.getLast()) {
|
|
|
- List<MpMoneyDetailAPI> list = new ArrayList<MpMoneyDetailAPI>();
|
|
|
- returnMap.put("mpMoneyDetailAPIList", list);
|
|
|
- } else {
|
|
|
- List<MpMoneyDetailAPI> list1 = page.getList();
|
|
|
- if (list1 != null && !list1.isEmpty()) {
|
|
|
- returnMap.put("mpMoneyDetailAPIList", list1);
|
|
|
- returnMap.put("pageNo", page.getPageNo());
|
|
|
- } else {
|
|
|
- returnMap.put("mpMoneyDetailAPIList", list1);
|
|
|
- }
|
|
|
- //提示前端是否为最后一页
|
|
|
- if (Integer.parseInt(pageNo) == page.getLast()) {
|
|
|
- returnMap.put("isLast", true);
|
|
|
- } else {
|
|
|
- returnMap.put("isLast", false);
|
|
|
- }
|
|
|
- }
|
|
|
- } else {
|
|
|
- returnMap.put("success", "1004");
|
|
|
- }
|
|
|
- } else {
|
|
|
- returnMap.put("success", "2010");
|
|
|
- }
|
|
|
- return returnMap;
|
|
|
- }
|
|
|
+ public List<MpMoneyDetail> findList(MpMoneyDetail mpMoneyDetail) {
|
|
|
+ return super.findList(mpMoneyDetail);
|
|
|
+ }
|
|
|
|
|
|
+ public Page<MpMoneyDetail> findPage(Page<MpMoneyDetail> page, MpMoneyDetail mpMoneyDetail) {
|
|
|
+ return super.findPage(page, mpMoneyDetail);
|
|
|
+ }
|
|
|
|
|
|
- private Page<MpMoneyDetailAPI> findMpMoneyDetailAPIPage(Page<MpMoneyDetailAPI> page, MpMoneyDetailAPI mpMoneyDetailAPI) {
|
|
|
- mpMoneyDetailAPI.setPage(page);
|
|
|
- page.setList(mapper.findMpMoneyDetailListByMemberId(mpMoneyDetailAPI));
|
|
|
- return page;
|
|
|
- }
|
|
|
+ @Transactional(readOnly = false)
|
|
|
+ public void save(MpMoneyDetail mpMoneyDetail) {
|
|
|
+ super.save(mpMoneyDetail);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Transactional(readOnly = false)
|
|
|
+ public void delete(MpMoneyDetail mpMoneyDetail) {
|
|
|
+ super.delete(mpMoneyDetail);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查询收支明细
|
|
|
+ *
|
|
|
+ * @param requestMap
|
|
|
+ * @param request
|
|
|
+ * @param response
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public Map<String, Object> getMoneyDetail(Map<String, String> requestMap, HttpServletRequest request, HttpServletResponse response) {
|
|
|
+ Map<String, Object> returnMap = new HashMap<String, Object>();
|
|
|
+ String userId = requestMap.get("user_id");
|
|
|
+ String userToken = requestMap.get("user_token");
|
|
|
+ String memberId = requestMap.get("member_id");
|
|
|
+ String pageNo = requestMap.get("pageNo");
|
|
|
+ //验证用户是否处于登录态
|
|
|
+ if (TokenUtil.validateLogin(memberId, userId)) {
|
|
|
+ //验证用户合法性
|
|
|
+ if (TokenUtil.validateToken(userId, userToken)) {
|
|
|
+ MpMoneyDetailAPI mpMoneyDetailAPI = new MpMoneyDetailAPI();
|
|
|
+ HpMember hpMember = new HpMember();
|
|
|
+ hpMember.setId(memberId);
|
|
|
+ mpMoneyDetailAPI.setHpMember(hpMember);
|
|
|
+ Page<MpMoneyDetailAPI> page = findMpMoneyDetailAPIPage(new Page<MpMoneyDetailAPI>(request, response), mpMoneyDetailAPI);
|
|
|
+ if (Integer.parseInt(pageNo) > page.getLast()) {
|
|
|
+ List<MpMoneyDetailAPI> list = new ArrayList<MpMoneyDetailAPI>();
|
|
|
+ returnMap.put("mpMoneyDetailAPIList", list);
|
|
|
+ } else {
|
|
|
+ List<MpMoneyDetailAPI> list1 = page.getList();
|
|
|
+ if (list1 != null && !list1.isEmpty()) {
|
|
|
+ returnMap.put("mpMoneyDetailAPIList", list1);
|
|
|
+ returnMap.put("pageNo", page.getPageNo());
|
|
|
+ } else {
|
|
|
+ returnMap.put("mpMoneyDetailAPIList", list1);
|
|
|
+ }
|
|
|
+ //提示前端是否为最后一页
|
|
|
+ if (Integer.parseInt(pageNo) == page.getLast()) {
|
|
|
+ returnMap.put("isLast", true);
|
|
|
+ } else {
|
|
|
+ returnMap.put("isLast", false);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ returnMap.put("success", "1004");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ returnMap.put("success", "2010");
|
|
|
+ }
|
|
|
+ return returnMap;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ private Page<MpMoneyDetailAPI> findMpMoneyDetailAPIPage(Page<MpMoneyDetailAPI> page, MpMoneyDetailAPI mpMoneyDetailAPI) {
|
|
|
+ mpMoneyDetailAPI.setPage(page);
|
|
|
+ page.setList(mapper.findMpMoneyDetailListByMemberId(mpMoneyDetailAPI));
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * APP/小程序付款成功处理
|
|
|
+ *
|
|
|
+ * @param orderNumber
|
|
|
+ * @param userId
|
|
|
+ * @param total_fee
|
|
|
+ */
|
|
|
+ @Transactional(readOnly = false)
|
|
|
+ public void paySuccess(String orderNumber, String userId, String total_fee) {
|
|
|
+ MpMemberOrder mpMemberOrder = mpMemberOrderService.getByOrderNumber(orderNumber);
|
|
|
+ mpMemberOrder.setOrderStatus(3);
|
|
|
+ mpMemberOrder.setPayTime(new Date());
|
|
|
+ mpMemberOrderService.save(mpMemberOrder);
|
|
|
+ /**
|
|
|
+ * 更新会员账户和明细
|
|
|
+ */
|
|
|
+ HpUser hpUser = hpUserService.get(userId);
|
|
|
+ HpMember hpMember = hpMemberService.getByUserId(hpUser.getId());
|
|
|
+ MpMemberAccount mpMemberAccount = mpMemberAccountMapper.getByMemberId(hpMember.getId());
|
|
|
+ if (StringUtils.isNotBlank(total_fee)) {
|
|
|
+ mpMemberAccount.setMoneyBalance(Double.parseDouble(total_fee));
|
|
|
+ mpMemberAccount.setMoneyDeposit(Double.parseDouble(total_fee));
|
|
|
+ mpMemberAccountMapper.update(mpMemberAccount);
|
|
|
+ }
|
|
|
+ MpMoneyDetail mpMoneyDetail = new MpMoneyDetail();
|
|
|
+ mpMoneyDetail.setHpMember(hpMember);
|
|
|
+ mpMoneyDetail.setMoney(Double.parseDouble(total_fee));
|
|
|
+ mpMoneyDetail.setMoneyType(1);
|
|
|
+ mpMoneyDetail.setDepositType(1);
|
|
|
+ save(mpMoneyDetail);
|
|
|
+ }
|
|
|
}
|