魏超 5 lat temu
rodzic
commit
7bbfc937fc

+ 25
- 0
src/main/java/com/huiju/estateagents/common/CommConstant.java Wyświetl plik

832
      * 审核通过
832
      * 审核通过
833
      */
833
      */
834
     public static final Integer STATUS_VERIFY_PASS = 4;
834
     public static final Integer STATUS_VERIFY_PASS = 4;
835
+
836
+    /**
837
+     * 充值操作
838
+     */
839
+    public static final String RECHARGE = "CZ";
840
+
841
+    /**
842
+     * 退款操作
843
+     */
844
+    public static final String REFUND = "TK";
845
+
846
+    /**
847
+     * 明细类型--充值
848
+     */
849
+    public static final String ITEM_TYPE_RECHARGE = "recharge";
850
+
851
+    /**
852
+     * 明细类型--退费
853
+     */
854
+    public static final String ITEM_TYPE_REFUND = "refund";
855
+
856
+    /**
857
+     * 明细类型--红包
858
+     */
859
+    public static final String ITEM_TYPE_REDPACKAGE = "redPackage";
835
 }
860
 }

+ 9
- 0
src/main/java/com/huiju/estateagents/common/CommonUtils.java Wyświetl plik

1
 package com.huiju.estateagents.common;
1
 package com.huiju.estateagents.common;
2
 
2
 
3
+import java.text.SimpleDateFormat;
4
+import java.util.Date;
5
+import java.util.Random;
3
 import java.util.regex.Matcher;
6
 import java.util.regex.Matcher;
4
 import java.util.regex.Pattern;
7
 import java.util.regex.Pattern;
5
 
8
 
19
             return true;
22
             return true;
20
         }
23
         }
21
     }
24
     }
25
+
26
+    public static String generateTradeNo(String tradeType){
27
+        String sdf = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date());
28
+        int randNum = (int) (new Random().nextDouble() * (9999 - 1000 + 1)) + 1000;// 获取5位随机数
29
+        return tradeType+sdf+randNum;
30
+    }
22
 }
31
 }

+ 32
- 7
src/main/java/com/huiju/estateagents/redpack/controller/TaOrgAccountController.java Wyświetl plik

1
 package com.huiju.estateagents.redpack.controller;
1
 package com.huiju.estateagents.redpack.controller;
2
 
2
 
3
+import javax.servlet.http.HttpServletRequest;
4
+
3
 import org.slf4j.Logger;
5
 import org.slf4j.Logger;
4
 import org.slf4j.LoggerFactory;
6
 import org.slf4j.LoggerFactory;
5
 import org.springframework.beans.factory.annotation.Autowired;
7
 import org.springframework.beans.factory.annotation.Autowired;
16
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
18
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
17
 import com.huiju.estateagents.base.BaseController;
19
 import com.huiju.estateagents.base.BaseController;
18
 import com.huiju.estateagents.base.ResponseBean;
20
 import com.huiju.estateagents.base.ResponseBean;
21
+import com.huiju.estateagents.common.StringUtils;
19
 import com.huiju.estateagents.redpack.entity.TaOrgAccount;
22
 import com.huiju.estateagents.redpack.entity.TaOrgAccount;
20
 import com.huiju.estateagents.redpack.service.ITaOrgAccountService;
23
 import com.huiju.estateagents.redpack.service.ITaOrgAccountService;
21
 
24
 
28
  * @since 2020-06-03
31
  * @since 2020-06-03
29
  */
32
  */
30
 @RestController
33
 @RestController
31
-@RequestMapping("/")
34
+@RequestMapping("/channel")
32
 public class TaOrgAccountController extends BaseController {
35
 public class TaOrgAccountController extends BaseController {
33
 
36
 
34
     private final Logger logger = LoggerFactory.getLogger(TaOrgAccountController.class);
37
     private final Logger logger = LoggerFactory.getLogger(TaOrgAccountController.class);
43
      * @param pageSize
46
      * @param pageSize
44
      * @return
47
      * @return
45
      */
48
      */
46
-    @RequestMapping(value="/taOrgAccount",method= RequestMethod.GET)
49
+    @RequestMapping(value="/api/taOrgAccount",method= RequestMethod.GET)
47
     public ResponseBean taOrgAccountList(@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
50
     public ResponseBean taOrgAccountList(@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
48
-                                         @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize){
51
+                                         @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
52
+                                         @RequestParam(value ="miniAppName", required = false) String miniAppName){
49
         ResponseBean responseBean = new ResponseBean();
53
         ResponseBean responseBean = new ResponseBean();
50
         try {
54
         try {
51
             //使用分页插件
55
             //使用分页插件
52
 		    IPage<TaOrgAccount> pg = new Page<>(pageNum, pageSize);
56
 		    IPage<TaOrgAccount> pg = new Page<>(pageNum, pageSize);
53
             QueryWrapper<TaOrgAccount> queryWrapper = new QueryWrapper<>();
57
             QueryWrapper<TaOrgAccount> queryWrapper = new QueryWrapper<>();
58
+            queryWrapper.eq(!StringUtils.isEmpty(miniAppName), "miniapp_name", miniAppName);
54
             queryWrapper.orderByDesc("create_date");
59
             queryWrapper.orderByDesc("create_date");
55
 
60
 
56
             IPage<TaOrgAccount> result = iTaOrgAccountService.page(pg, queryWrapper);
61
             IPage<TaOrgAccount> result = iTaOrgAccountService.page(pg, queryWrapper);
68
      * @param taOrgAccount 实体对象
73
      * @param taOrgAccount 实体对象
69
      * @return
74
      * @return
70
      */
75
      */
71
-    @RequestMapping(value="/taOrgAccount",method= RequestMethod.POST)
76
+    @RequestMapping(value="/api/taOrgAccount",method= RequestMethod.POST)
72
     public ResponseBean taOrgAccountAdd(@RequestBody TaOrgAccount taOrgAccount){
77
     public ResponseBean taOrgAccountAdd(@RequestBody TaOrgAccount taOrgAccount){
73
         ResponseBean responseBean = new ResponseBean();
78
         ResponseBean responseBean = new ResponseBean();
74
         try {
79
         try {
90
      * @param id  实体ID
95
      * @param id  实体ID
91
      */
96
      */
92
     @ResponseBody
97
     @ResponseBody
93
-    @RequestMapping(value="/taOrgAccount/{id}", method= RequestMethod.DELETE)
98
+    @RequestMapping(value="/api/taOrgAccount/{id}", method= RequestMethod.DELETE)
94
     public ResponseBean taOrgAccountDelete(@PathVariable Integer id){
99
     public ResponseBean taOrgAccountDelete(@PathVariable Integer id){
95
         ResponseBean responseBean = new ResponseBean();
100
         ResponseBean responseBean = new ResponseBean();
96
         try {
101
         try {
113
      * @param taOrgAccount 实体对象
118
      * @param taOrgAccount 实体对象
114
      * @return
119
      * @return
115
      */
120
      */
116
-    @RequestMapping(value="/taOrgAccount/{id}",method= RequestMethod.PUT)
121
+    @RequestMapping(value="/api/taOrgAccount/{id}",method= RequestMethod.PUT)
117
     public ResponseBean taOrgAccountUpdate(@PathVariable Integer id,
122
     public ResponseBean taOrgAccountUpdate(@PathVariable Integer id,
118
                                         @RequestBody TaOrgAccount taOrgAccount){
123
                                         @RequestBody TaOrgAccount taOrgAccount){
119
         ResponseBean responseBean = new ResponseBean();
124
         ResponseBean responseBean = new ResponseBean();
135
      * 根据id查询对象
140
      * 根据id查询对象
136
      * @param id  实体ID
141
      * @param id  实体ID
137
      */
142
      */
138
-    @RequestMapping(value="/taOrgAccount/{id}",method= RequestMethod.GET)
143
+    @RequestMapping(value="/api/taOrgAccount/{id}",method= RequestMethod.GET)
139
     public ResponseBean taOrgAccountGet(@PathVariable Integer id){
144
     public ResponseBean taOrgAccountGet(@PathVariable Integer id){
140
         ResponseBean responseBean = new ResponseBean();
145
         ResponseBean responseBean = new ResponseBean();
141
         try {
146
         try {
147
         }
152
         }
148
         return responseBean;
153
         return responseBean;
149
     }
154
     }
155
+
156
+    /**
157
+     * 系统账户充值
158
+     * @param id  实体ID
159
+     */
160
+    @RequestMapping(value="/taOrgAccount/recharge/{id}",method= RequestMethod.PUT)
161
+    public ResponseBean taOrgAccountDetailedListGet(@PathVariable String id, @RequestBody TaOrgAccount taOrgAccount,
162
+                                                    HttpServletRequest request){
163
+        ResponseBean responseBean = new ResponseBean();
164
+        try {
165
+            Integer orgId = getOrgId(request);
166
+            Integer userId = getUserId(request);
167
+            iTaOrgAccountService.rechargeAccount(id, taOrgAccount, 26, 2149);
168
+        }catch (Exception e){
169
+            e.printStackTrace();
170
+            logger.error("taOrgAccountDetailedListDelete -=- {}",e.toString());
171
+            responseBean.addError(e.getMessage());
172
+        }
173
+        return responseBean;
174
+    }
150
 }
175
 }

+ 13
- 0
src/main/java/com/huiju/estateagents/redpack/entity/TaOrgAccount.java Wyświetl plik

2
 
2
 
3
 import java.time.LocalDateTime;
3
 import java.time.LocalDateTime;
4
 import java.io.Serializable;
4
 import java.io.Serializable;
5
+import java.util.List;
5
 
6
 
6
 import com.baomidou.mybatisplus.annotation.IdType;
7
 import com.baomidou.mybatisplus.annotation.IdType;
8
+import com.baomidou.mybatisplus.annotation.TableField;
7
 import com.baomidou.mybatisplus.annotation.TableId;
9
 import com.baomidou.mybatisplus.annotation.TableId;
8
 
10
 
9
 import lombok.Data;
11
 import lombok.Data;
77
     private String miniappName;
79
     private String miniappName;
78
 
80
 
79
 
81
 
82
+    /**
83
+     * 充值凭证
84
+     */
85
+    @TableField(exist = false)
86
+    private List<String> certificateList;
87
+
88
+    /**
89
+     * 充值金额
90
+     */
91
+    @TableField(exist = false)
92
+    private Integer rechargeAmount;
80
 }
93
 }

+ 1
- 1
src/main/java/com/huiju/estateagents/redpack/entity/TaOrgAccountCertificate.java Wyświetl plik

57
     /**
57
     /**
58
      * 凭证说明
58
      * 凭证说明
59
      */
59
      */
60
-    private String desc;
60
+    private String remark;
61
 
61
 
62
     /**
62
     /**
63
      * 凭证地址
63
      * 凭证地址

+ 1
- 1
src/main/java/com/huiju/estateagents/redpack/entity/TaOrgAccountDetailedList.java Wyświetl plik

57
     /**
57
     /**
58
      * 说明
58
      * 说明
59
      */
59
      */
60
-    private String desc;
60
+    private String remark;
61
 
61
 
62
     /**
62
     /**
63
      * 消费时间
63
      * 消费时间

+ 9
- 1
src/main/java/com/huiju/estateagents/redpack/service/ITaOrgAccountService.java Wyświetl plik

1
 package com.huiju.estateagents.redpack.service;
1
 package com.huiju.estateagents.redpack.service;
2
 
2
 
3
 import com.baomidou.mybatisplus.extension.service.IService;
3
 import com.baomidou.mybatisplus.extension.service.IService;
4
+import com.huiju.estateagents.base.ResponseBean;
4
 import com.huiju.estateagents.redpack.entity.TaOrgAccount;
5
 import com.huiju.estateagents.redpack.entity.TaOrgAccount;
5
 
6
 
6
 /**
7
 /**
12
  * @since 2020-06-03
13
  * @since 2020-06-03
13
  */
14
  */
14
 public interface ITaOrgAccountService extends IService<TaOrgAccount> {
15
 public interface ITaOrgAccountService extends IService<TaOrgAccount> {
15
-
16
+    /**
17
+     * 账户充值接口
18
+     * @param accountId
19
+     * @param taOrgAccount
20
+     * @param orgId
21
+     * @return
22
+     */
23
+    ResponseBean rechargeAccount(String accountId, TaOrgAccount taOrgAccount, Integer orgId, Integer userId);
16
 }
24
 }

+ 200
- 0
src/main/java/com/huiju/estateagents/redpack/service/impl/TaOrgAccountServiceImpl.java Wyświetl plik

1
 package com.huiju.estateagents.redpack.service.impl;
1
 package com.huiju.estateagents.redpack.service.impl;
2
 
2
 
3
+import java.time.LocalDateTime;
4
+import java.util.ArrayList;
5
+import java.util.Collections;
6
+import java.util.List;
7
+
8
+import org.apache.commons.collections.CollectionUtils;
9
+import org.springframework.beans.factory.annotation.Autowired;
3
 import org.springframework.stereotype.Service;
10
 import org.springframework.stereotype.Service;
11
+import org.springframework.transaction.annotation.Transactional;
4
 
12
 
13
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
5
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
14
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
15
+import com.huiju.estateagents.base.ResponseBean;
16
+import com.huiju.estateagents.center.taUser.entity.TaUser;
17
+import com.huiju.estateagents.center.taUser.mapper.TaUserMapper;
18
+import com.huiju.estateagents.common.CommConstant;
19
+import com.huiju.estateagents.common.CommonUtils;
6
 import com.huiju.estateagents.redpack.entity.TaOrgAccount;
20
 import com.huiju.estateagents.redpack.entity.TaOrgAccount;
21
+import com.huiju.estateagents.redpack.entity.TaOrgAccountCertificate;
22
+import com.huiju.estateagents.redpack.entity.TaOrgAccountDetailedList;
23
+import com.huiju.estateagents.redpack.entity.TaOrgOrder;
24
+import com.huiju.estateagents.redpack.entity.TaOrgOrderDetail;
25
+import com.huiju.estateagents.redpack.mapper.TaOrgAccountCertificateMapper;
26
+import com.huiju.estateagents.redpack.mapper.TaOrgAccountDetailedListMapper;
7
 import com.huiju.estateagents.redpack.mapper.TaOrgAccountMapper;
27
 import com.huiju.estateagents.redpack.mapper.TaOrgAccountMapper;
28
+import com.huiju.estateagents.redpack.mapper.TaOrgOrderDetailMapper;
29
+import com.huiju.estateagents.redpack.mapper.TaOrgOrderMapper;
8
 import com.huiju.estateagents.redpack.service.ITaOrgAccountService;
30
 import com.huiju.estateagents.redpack.service.ITaOrgAccountService;
9
 
31
 
32
+import io.swagger.models.auth.In;
33
+
10
 /**
34
 /**
11
  * <p>
35
  * <p>
12
  * 系统账户表  服务实现类
36
  * 系统账户表  服务实现类
18
 @Service
42
 @Service
19
 public class TaOrgAccountServiceImpl extends ServiceImpl<TaOrgAccountMapper, TaOrgAccount> implements ITaOrgAccountService {
43
 public class TaOrgAccountServiceImpl extends ServiceImpl<TaOrgAccountMapper, TaOrgAccount> implements ITaOrgAccountService {
20
 
44
 
45
+    @Autowired
46
+    private TaOrgAccountMapper taOrgAccountMapper;
47
+
48
+    @Autowired
49
+    private TaOrgOrderMapper taOrgOrderMapper;
50
+
51
+    @Autowired
52
+    private TaOrgOrderDetailMapper taOrgOrderDetailMapper;
53
+
54
+    @Autowired
55
+    private TaOrgAccountCertificateMapper taOrgAccountCertificateMapper;
56
+
57
+    @Autowired
58
+    private TaOrgAccountDetailedListMapper taOrgAccountDetailedListMapper;
59
+
60
+    @Autowired
61
+    private TaUserMapper taUserMapper;
62
+
63
+    @Override
64
+    @Transactional(rollbackFor = {RuntimeException.class})
65
+    public ResponseBean rechargeAccount(String accountId, TaOrgAccount taOrgAccount, Integer orgId, Integer userId) {
66
+        ResponseBean responseBean = new ResponseBean();
67
+
68
+        //更新系统账户充值金额
69
+        TaOrgAccount rechargeAccount = assembleRechargeAccount(accountId, taOrgAccount);
70
+        int rechargeAccountInsertResult = taOrgAccountMapper.updateById(rechargeAccount);
71
+
72
+        //新增订单记录
73
+        TaOrgOrder taOrgOrder = assembleTaOrgOrder(orgId, taOrgAccount.getRechargeAmount(), userId);
74
+        int taOrgOrderInsertResult = taOrgOrderMapper.insert(taOrgOrder);
75
+
76
+        //新增关联订单明细
77
+        TaOrgOrderDetail taOrgOrderDetail = assembleTaOrgOrderDetail(taOrgOrder.getOrderId(), orgId, taOrgAccount.getRechargeAmount());
78
+        int taOrgOrderDetailInsertResult = taOrgOrderDetailMapper.insert(taOrgOrderDetail);
79
+
80
+        //新增账户消费流水记录
81
+        TaOrgAccountDetailedList taOrgAccountDetailedList = assembleAccountDetailList(orgId, taOrgAccount, taOrgOrder.getOrderId(), userId);
82
+        int taOrgAccountDetailedListInsertResult = taOrgAccountDetailedListMapper.insert(taOrgAccountDetailedList);
83
+
84
+        //插入凭证记录
85
+        if (CollectionUtils.isNotEmpty(taOrgAccount.getCertificateList())){
86
+            List<TaOrgAccountCertificate> taOrgAccountCertificateList = assembleAccountCertificate(orgId, taOrgAccount, taOrgAccountDetailedList.getSerialNo(), taOrgOrder.getOrderId(), userId);
87
+            taOrgAccountCertificateList.forEach(e -> {
88
+                taOrgAccountCertificateMapper.insert(e);
89
+            });
90
+        }
91
+
92
+        if (rechargeAccountInsertResult < 1 ||
93
+                taOrgOrderInsertResult < 1 ||
94
+                taOrgOrderDetailInsertResult < 1 ||
95
+                taOrgAccountDetailedListInsertResult < 1){
96
+            responseBean.addError("充值失败");
97
+            return responseBean;
98
+        }
99
+
100
+        return responseBean;
101
+    }
102
+
103
+    /**
104
+     * 构造充值账户
105
+     * @param accountId
106
+     * @param taOrgAccount
107
+     * @return
108
+     */
109
+    private TaOrgAccount assembleRechargeAccount(String accountId, TaOrgAccount taOrgAccount){
110
+        QueryWrapper<TaOrgAccount> selectOneQuery = new QueryWrapper<>();
111
+        selectOneQuery.eq("account_id", accountId);
112
+        TaOrgAccount selectOneAccount = taOrgAccountMapper.selectOne(selectOneQuery);
113
+
114
+        TaOrgAccount rechargeAccount = new TaOrgAccount();
115
+        rechargeAccount.setAccountId(accountId);
116
+        if (selectOneAccount.getAvailableBalance() == 0){
117
+            rechargeAccount.setAvailableBalance(taOrgAccount.getRechargeAmount());
118
+        }else{
119
+            rechargeAccount.setAvailableBalance(selectOneAccount.getAvailableBalance() + taOrgAccount.getRechargeAmount());
120
+        }
121
+
122
+        if (selectOneAccount.getRealBalance() == 0){
123
+            rechargeAccount.setRealBalance(taOrgAccount.getRechargeAmount());
124
+        }else{
125
+            rechargeAccount.setRealBalance(selectOneAccount.getRealBalance() + taOrgAccount.getRechargeAmount());
126
+        }
127
+        rechargeAccount.setModifyDate(LocalDateTime.now());
128
+
129
+        return rechargeAccount;
130
+    }
131
+
132
+    public List<TaOrgAccountCertificate> assembleAccountCertificate(Integer orgId, TaOrgAccount taOrgAccount, Integer accountSerialNo, String orderId, Integer userId){
133
+        TaUser taUser = selectUserById(userId);
134
+        List<TaOrgAccountCertificate> taOrgAccountCertificateList = new ArrayList<>();
135
+
136
+        taOrgAccount.getCertificateList().forEach(e -> {
137
+            TaOrgAccountCertificate taOrgAccountCertificate = new TaOrgAccountCertificate();
138
+            taOrgAccountCertificate.setOrgId(orgId);
139
+            taOrgAccountCertificate.setAccountId(taOrgAccount.getAccountId());
140
+            taOrgAccountCertificate.setAccountSerialNo(accountSerialNo);
141
+            taOrgAccountCertificate.setOrderId(orderId);
142
+            taOrgAccountCertificate.setConsumptionType(CommConstant.ITEM_TYPE_RECHARGE);
143
+            taOrgAccountCertificate.setRemark("线下充值缴费");
144
+            taOrgAccountCertificate.setUrl(e);
145
+            taOrgAccountCertificate.setCreateDate(LocalDateTime.now());
146
+            taOrgAccountCertificate.setUserId(userId);
147
+            taOrgAccountCertificate.setUserName(taUser.getUserName());
148
+            taOrgAccountCertificateList.add(taOrgAccountCertificate);
149
+        });
150
+
151
+        return taOrgAccountCertificateList;
152
+    }
153
+    /**
154
+     * 构造订单
155
+     * @param orgId
156
+     * @param amount
157
+     * @param userId
158
+     * @return
159
+     */
160
+    private TaOrgOrder assembleTaOrgOrder(Integer orgId, Integer amount, Integer userId){
161
+
162
+        TaUser taUser = selectUserById(userId);
163
+        TaOrgOrder taOrgOrder = new TaOrgOrder();
164
+        taOrgOrder.setOrgId(orgId);
165
+        taOrgOrder.setTradeNo(CommonUtils.generateTradeNo(CommConstant.RECHARGE));
166
+        taOrgOrder.setAmount(amount);
167
+        taOrgOrder.setCreateDate(LocalDateTime.now());
168
+        taOrgOrder.setExpiryDate(LocalDateTime.now());
169
+        taOrgOrder.setRemark("线下充值缴费");
170
+        taOrgOrder.setTradingStatus(String.valueOf(CommConstant.STATUS_NORMAL));
171
+        taOrgOrder.setIsOffline(true);
172
+        taOrgOrder.setUserId(userId);
173
+        taOrgOrder.setUserName(taUser.getUserName());
174
+
175
+        return taOrgOrder;
176
+    }
177
+
178
+    private TaOrgOrderDetail assembleTaOrgOrderDetail(String orderId, Integer orgId, Integer amount){
179
+        TaOrgOrderDetail taOrgOrderDetail = new TaOrgOrderDetail();
180
+
181
+        taOrgOrderDetail.setOrderId(orderId);
182
+        taOrgOrderDetail.setOrgId(orgId);
183
+        taOrgOrderDetail.setItemType(CommConstant.ITEM_TYPE_RECHARGE);
184
+        taOrgOrderDetail.setAmount(amount);
185
+
186
+        return taOrgOrderDetail;
187
+    }
188
+
189
+    /**
190
+     * 构造消费流水记录
191
+     * @param orgId
192
+     * @param taOrgAccount
193
+     * @param orderId
194
+     * @param userId
195
+     * @return
196
+     */
197
+    private TaOrgAccountDetailedList assembleAccountDetailList(Integer orgId, TaOrgAccount taOrgAccount, String orderId, Integer userId){
198
+
199
+        TaUser taUser = selectUserById(userId);
200
+        TaOrgAccountDetailedList taOrgAccountDetailed = new TaOrgAccountDetailedList();
201
+        taOrgAccountDetailed.setAccountId(taOrgAccount.getAccountId());
202
+        taOrgAccountDetailed.setOrgId(orgId);
203
+        taOrgAccountDetailed.setAmount(taOrgAccount.getRechargeAmount());
204
+        //1收入,-1支出
205
+        taOrgAccountDetailed.setSignType(CommConstant.STATUS_NORMAL);
206
+        taOrgAccountDetailed.setRemark("线下充值缴费");
207
+        taOrgAccountDetailed.setOrderId(orderId);
208
+        taOrgAccountDetailed.setUserId(userId);
209
+        taOrgAccountDetailed.setUserName(taUser.getUserName());
210
+
211
+        return taOrgAccountDetailed;
212
+    }
213
+
214
+    public TaUser selectUserById(Integer userId){
215
+        //获取操作人
216
+        QueryWrapper<TaUser> taUserQueryWrapper = new QueryWrapper<>();
217
+        taUserQueryWrapper.eq("user_id", userId);
218
+        TaUser taUser = taUserMapper.selectOne(taUserQueryWrapper);
219
+        return taUser;
220
+    }
21
 }
221
 }