zhengyuxuan
2025-04-03 84f97d1b0b2cbf157dea598363e4cfcf8c15348a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
using LifePayment.Domain.Shared;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace LifePayment.Domain.Shared;
 
public class QueryUserWalletAccountOpenInput
{
    public WalletAccountTypeEnum? WalletAccountType { get; set; }
 
    public Guid? UserId { get; set; }
 
    public List<Guid> UserIds { get; set; }
}
 
public class AddSingleTransferWalletTransactionDetailInput
{
    public Guid? WalletMainId { get; set; }
 
    /// <summary>
    /// 账号
    /// </summary>
    public string AcctNo { get; set; }
 
    /// <summary>
    /// 货币类型
    /// </summary>
    public string CcyCode { get; set; }
 
    /// <summary>
    /// 主机记账日期
    /// </summary>
    public string AcctDate { get; set; }
 
    /// <summary>
    /// 交易时间
    /// </summary>
    public string TxTime { get; set; }
 
    public DateTime AccDateTime { get; set; }
 
    /// <summary>
    /// 主机流水号
    /// </summary>
    public string HostTrace { get; set; }
 
    /// <summary>
    /// 业务流水号
    /// </summary>
    public string BussSeqNo { get; set; }
 
    /// <summary>
    /// 明细序号
    /// </summary>
    public string DetailSerialNo { get; set; }
 
    /// <summary>
    /// 付款方网点号
    /// </summary>
    public string OutNode { get; set; }
 
    /// <summary>
    /// 付款方联行号
    /// </summary>
    public string OutBankNo { get; set; }
 
    /// <summary>
    /// 付款行名称
    /// </summary>
    public string OutBankName { get; set; }
 
    /// <summary>
    /// 付款方账号
    /// </summary>
    public string OutAcctNo { get; set; }
 
    /// <summary>
    /// 付款方户名
    /// </summary>
    public string OutAcctName { get; set; }
 
    /// <summary>
    /// 交易金额
    /// </summary>
    public decimal? TranAmount { get; set; }
 
    /// <summary>
    /// 收款方网点号
    /// </summary>
    public string InNode { get; set; }
 
    /// <summary>
    /// 收款方联行号
    /// </summary>
    public string InBankNo { get; set; }
 
    /// <summary>
    /// 收款方行名
    /// </summary>
    public string InBankName { get; set; }
 
    /// <summary>
    /// 收款方账号
    /// </summary>
    public string InAcctNo { get; set; }
 
    /// <summary>
    /// 收款方户名
    /// </summary>
    public string InAcctName { get; set; }
 
    /// <summary>
    /// 借贷标志
    /// </summary>
    public string DcFlag { get; set; }
 
    /// <summary>
    /// 凭证号
    /// </summary>
    public string VoucherNo { get; set; }
 
    /// <summary>
    /// 手续费
    /// </summary>
    public decimal? TranFee { get; set; }
 
    /// <summary>
    /// 邮电费
    /// </summary>
    public decimal? PostFee { get; set; }
 
    /// <summary>
    /// 账面余额
    /// </summary>
    public decimal? AcctBalance { get; set; }
 
    /// <summary>
    /// 用途,附言
    /// </summary>
    public string Purpose { get; set; }
 
    /// <summary>
    /// 摘要
    /// </summary>
    public string AbstractStr { get; set; }
 
    /// <summary>
    /// 代理人户名
    /// </summary>
    public string ProxyPayName { get; set; }
 
    /// <summary>
    /// 代理人账号
    /// </summary>
    public string ProxyPayAcc { get; set; }
 
    /// <summary>
    /// 代理人银行名称
    /// </summary>
    public string ProxyPayBankName { get; set; }
 
    /// <summary>
    /// 主机日期
    /// </summary>
    public string HostDate { get; set; }
 
    /// <summary>
    /// 交易流水号
    /// </summary>
    public string TranSeqNo { get; set; }
 
    /// <summary>
    /// 备注1
    /// </summary>
    public string Remark1 { get; set; }
 
    /// <summary>
    /// 备注2
    /// </summary>
    public string Remark2 { get; set; }
 
    /// <summary>
    /// 被冲正标志
    /// </summary>
    public string BeReverseFlag { get; set; }
 
    /// <summary>
    /// 时序时间
    /// </summary>
    public string SeqTime { get; set; }
 
    /// <summary>
    /// 费用代码
    /// </summary>
    public string FeeCode { get; set; }
 
    /// <summary>
    /// 电子回单
    /// </summary>
    public string ElecBillUrl { get; set; }
 
    /// <summary>
    /// 随机密码
    /// </summary>
    public string RandomPwd { get; set; }
 
    /// <summary>
    /// 文档Id
    /// </summary>
    public string DocID { get; set; }
 
    public WalletTransactionStatusEnum? Status { get; set; }
}
 
public class OperateWalletAmountBaseInput
{
 
 
    /// <summary>
    /// 业务流水号
    /// </summary>
    [DisplayName("业务流水号")]
    [MaxLength(20, ErrorMessage = "{0}最大长度为{1}")]
    public string BussSeqNo { get; set; }
 
    /// <summary>
    /// 付款人账户 扣款账户(止付状态的账户)
    /// </summary>
    [DisplayName("付款人账户")]
    [MaxLength(20, ErrorMessage = "{0}最大长度为{1}")]
    [Required]
    public string OutAcctNo { get; set; }
 
    /// <summary>
    /// 付款人名称 付款账户户名
    /// </summary>
    [DisplayName("付款人名称")]
    [MaxLength(60, ErrorMessage = "{0}最大长度为{1}")]
    [Required]
    public string OutAcctName { get; set; }
 
    /// <summary>
    /// 付款行名称
    /// </summary>
    public string OutBankName { get; set; }
 
    /// <summary>
    /// 操作类型
    /// </summary>
    [DisplayName("操作类型")]
    [EnumValidation(typeof(WalletAmountOperateTypeEnum), ErrorMessage = "{0}异常")]
    public WalletAmountOperateTypeEnum AmountOperateType { get; set; }
 
    /// <summary>
    /// 操作的金额类型
    /// </summary>
    [DisplayName("操作金额类型")]
    [EnumValidation(typeof(WalletOperateAmountTypeEnum), ErrorMessage = "{0}异常")]
    public WalletOperateAmountTypeEnum OperateAmountType { get; set; }
 
    /// <summary>
    /// 业务类型
    /// </summary>
    [DisplayName("业务类型")]
    [EnumValidation(typeof(WalletDetailBusinessTypeEnum), ErrorMessage = "{0}异常")]
    public WalletDetailBusinessTypeEnum BusinessType { get; set; }
 
    /// <summary>
    /// 收款方账户
    /// </summary>
    [DisplayName("目标账户")]
    [MaxLength(32, ErrorMessage = "{0}最大长度为{1}")]
    [Required]
    public string InAcctNo { get; set; }
 
    /// <summary>
    /// 收款方账户户名
    /// </summary>
    [DisplayName("目标账户户名")]
    [MaxLength(60, ErrorMessage = "{0}最大长度为{1}")]
    [Required]
    public string InAcctName { get; set; }
 
    /// <summary>
    /// 收入账户的账户类型
    /// </summary>
    public TransAccountTypeEnum InAccountType { get; set; }
 
    /// <summary>
    ///  收款方行名
    /// </summary>
 
    public string InBankName { get; set; }
 
    /// <summary>
    /// 转出金额 如为XML报文,则直接输入输出以元为单位的浮点数值,如2.50 (两元五角)
    /// </summary>
    [DisplayName("转出金额")]
    [Required]
    [Range(0.01, double.MaxValue, ErrorMessage = "金额异常")]
    public decimal TranAmount { get; set; }
 
    /// <summary>
    /// 资金用途 100个汉字,对方能否看到此用途视收款方银行的支持。
    /// </summary>
    [MaxLength(100, ErrorMessage = "{0}最大长度为{1}")]
    [DisplayName("资金用途")]
    public string UseEx { get; set; }
 
    /// <summary>
    /// 初始交易状态
    /// </summary>
    [DisplayName("初始交易状态")]
    [EnumValidation(typeof(WalletTransactionStatusEnum), ErrorMessage = "{0}异常")]
    public WalletTransactionStatusEnum Status { get; set; }
 
    /// <summary>
    /// 企业合同
    /// </summary>
    public string ContractUrl { get; set; }
}
 
public class OperateWalletAmountInput : OperateWalletAmountBaseInput
{
    /// <summary>
    /// 用户Id
    /// </summary>
    public Guid UserId { get; set; }
 
    /// <summary>
    /// 付款账户 选择支付宝与银行卡
    /// </summary>
    [DisplayName("付款账户")]
    [Required(ErrorMessage = "{0}不能为空")]
    public WalletAccountTypeEnum WalletAccountType { get; set; }
 
    public Guid WalletMainId { get; set; }
}
 
public class OperateBatchWalletAmountInput
{
    /// <summary>
    /// 用户Id
    /// </summary>
    public Guid UserId { get; set; }
 
    /// <summary>
    /// 付款账户 选择支付宝与银行卡
    /// </summary>
    [DisplayName("付款账户")]
    [Required(ErrorMessage = "{0}不能为空")]
    public WalletAccountTypeEnum WalletAccountType { get; set; }
 
    /// <summary>
    /// 操作明细
    /// </summary>
    public List<OperateWalletAmountBaseInput> OperateWalletAmountDetails { get; set; }
}
 
public class CalculationWalletPayFeeInput
{
    public decimal Amount { get; set; }
 
    /// <summary>
    /// 钱包类型
    /// </summary>
    public WalletAccountTypeEnum WalletAccountType { get; set; }
 
}