Browse Source

1.文档整理, 2.表结构

liaoxxxx 2 years ago
parent
commit
64ca332175

+ 60 - 1
README.md

@@ -1,3 +1,62 @@
 # cross-border-payment
 
-跨境收款项目-20220413
+跨境收款项目-20220413
+
+## 代码结构层次
+
+
+```text
+ |----. internal
+ |    | 
+ |    | ---.app
+ |    |    | 
+ |    |    |---. moduleXXX       (应用模块)
+ |    |    |    |
+ |    |    |    |--- api         (控制器)
+ |    |    |    |
+ |    |    |    |--- payload     (请求载体) 
+ |    |    |    |
+ |    |    |    |--- service     (服务) 
+ |    |    |    |    
+ |    |    |    |--- exports     (输出数据载体)     
+ |    |    |
+ |    |    |
+ |    |    |---. moduleYYYY
+ |    |    |
+ |    |    |
+ |    |    |---. moduleZZZZ
+ |    |   
+ |    |      
+ |    | 
+ |    |--- middleware        (中间件)
+ |    | 
+ |    |--- entity           (模型实体)
+ |    |
+ |    |--- repository      (数据存储)
+ |   
+
+ |
+ |---. pkg
+ |   |
+ |   |--- enum           (枚举常量)
+ |   |
+ |   |--- util           (工具类)
+ | 
+ |
+ |---. router
+ |
+ |
+ |____________
+
+```
+
+
+
+
+
+## 文档
+
+##   [流程文档](./doc/process/README.md)
+
+
+

+ 27 - 0
doc/model/merchant_account_out.uml

@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Diagram>
+  <ID>DATABASE</ID>
+  <OriginalElement>026ac481-c6f6-42b9-bff4-be8d21e53f55.TABLE:crossbordercoll.merchant_account_out</OriginalElement>
+  <nodes>
+    <node x="66.5" y="601.0">026ac481-c6f6-42b9-bff4-be8d21e53f55.TABLE:crossbordercoll.merchant_account_out</node>
+    <node x="0.0" y="0.0">026ac481-c6f6-42b9-bff4-be8d21e53f55.TABLE:crossbordercoll.merchant</node>
+  </nodes>
+  <notes />
+  <edges>
+    <edge source="026ac481-c6f6-42b9-bff4-be8d21e53f55.TABLE:crossbordercoll.merchant_account_out" target="026ac481-c6f6-42b9-bff4-be8d21e53f55.TABLE:crossbordercoll.merchant" relationship="REFERENCES">
+      <point x="0.0" y="-142.5" />
+      <point x="0.0" y="234.5" />
+    </edge>
+  </edges>
+  <settings layout="Hierarchic" zoom="1.0" showDependencies="false" x="211.5" y="402.0" />
+  <SelectedNodes>
+    <node>026ac481-c6f6-42b9-bff4-be8d21e53f55.TABLE:crossbordercoll.merchant_account_out</node>
+  </SelectedNodes>
+  <Categories>
+    <Category>Columns</Category>
+    <Category>Comments</Category>
+    <Category>Key columns</Category>
+    <Category>Virtual foreign keys</Category>
+  </Categories>
+</Diagram>
+

+ 27 - 0
doc/model/merchant_account_out_rec.uml

@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Diagram>
+  <ID>DATABASE</ID>
+  <OriginalElement>026ac481-c6f6-42b9-bff4-be8d21e53f55.TABLE:crossbordercoll.merchant_account_out_rec</OriginalElement>
+  <nodes>
+    <node x="28.0" y="519.0">026ac481-c6f6-42b9-bff4-be8d21e53f55.TABLE:crossbordercoll.merchant_account_out_rec</node>
+    <node x="0.0" y="0.0">026ac481-c6f6-42b9-bff4-be8d21e53f55.TABLE:crossbordercoll.merchant</node>
+  </nodes>
+  <notes />
+  <edges>
+    <edge source="026ac481-c6f6-42b9-bff4-be8d21e53f55.TABLE:crossbordercoll.merchant_account_out_rec" target="026ac481-c6f6-42b9-bff4-be8d21e53f55.TABLE:crossbordercoll.merchant" relationship="REFERENCES">
+      <point x="0.0" y="-188.5" />
+      <point x="0.0" y="234.5" />
+    </edge>
+  </edges>
+  <settings layout="Hierarchic" zoom="0.5054585152838428" showDependencies="false" x="211.5" y="448.0" />
+  <SelectedNodes>
+    <node>026ac481-c6f6-42b9-bff4-be8d21e53f55.TABLE:crossbordercoll.merchant_account_out_rec</node>
+  </SelectedNodes>
+  <Categories>
+    <Category>Columns</Category>
+    <Category>Comments</Category>
+    <Category>Key columns</Category>
+    <Category>Virtual foreign keys</Category>
+  </Categories>
+</Diagram>
+

+ 18 - 0
doc/process/README.md

@@ -0,0 +1,18 @@
+# 流程图
+
+### `/doc/process/收款项目流程图.pos` 文件可以导入 https://www.processon.com/diagrams 后查阅
+
+
+### 主流程预览 https://www.processon.com/view/link/625e19321e085306fa72c9cf
+### ![](./收款项目流程图.jpg)
+
+
+
+### [商户登陆注册流程](./merchant/登陆注册.md)
+
+
+### [商户创建外部账户流程](./merchant/创建外部账户.md)
+
+### [商户创建系统账户流程](./merchant/创建系统账户.md)
+
+### [商户充值到外部账户](./merchant/充值到外部账户.md)

+ 29 - 0
doc/process/merchant/充值到外部账户.md

@@ -0,0 +1,29 @@
+## 商户注册入驻
+### 入驻
+### 1.商户发起充值  
+> 要素 :金额,币种,充值方式 ,指定外部钱包 
+
+<br>
+
+### 2.平台生成充值记录单
+
+
+
+
+
+<br>
+
+### 3.商户存入款项到平台
+
+> 充值方式 : 支付宝,微信,扫码、直接转帐 ,银行卡转帐
+
+<br>
+
+### 4.系统运营人员在管理后台 审核通过
+
+<br>
+
+### 5. 增加指定外部钱包的余额
+
+<br>
+

+ 24 - 0
doc/process/merchant/创建外部账户.md

@@ -0,0 +1,24 @@
+
+## 商户完善创建钱包
+
+### 1.商户 选择外部钱包模板,并提交开通的请求
+
+>  注意:外部钱包模板 是否由编辑创建,还是由系统人员创建
+
+>  注意:商户选择的外部钱包模板 是否可选,是否享有该钱包模板的开通权限 
+
+### 代码  
+```go
+ mid:=ctx.PostForm("merchant_id")  //商户id
+ outAccountTplID:=ctx.PostForm("out_account_tpl_id")  //外部钱包模板 id
+ 
+ tpl,err= repo.MerAccountOutTplDao.Find(outAccountTplID)  //找到模板
+ //包装处理
+ outAccount := &entity.Merchant{
+		MerchantID:mid
+		CurrencyID:tpl.CurrencyID // 币种
+		//  ......
+ }
+ accountID,err:=repo.MerAccountOutTplDao.Save(outAccount)  //保存 
+
+```

+ 24 - 0
doc/process/merchant/创建系统账户.md

@@ -0,0 +1,24 @@
+
+## 商户创建系统账户
+
+### 1.商户 选择外部钱包模板,并提交开通的请求
+
+>  注意:外部钱包模板 由运营人员编辑创建
+
+>  注意:商户选择的外部钱包模板 是否可选,是否享有该钱包模板的开通权限 
+
+### 代码  
+```go
+ mid:=ctx.FormValue("merchant_id")  //商户id
+ SysAccountTplID:=ctx.FormValue("sys_account_tpl_id")  //系统钱包模板 id
+ 
+ tpl,err= repo.MerAccountOutTplDao.Find(SysAccountTplID)  //找到模板
+ //包装处理
+ outAccount := &entity.Merchant{
+		MerchantID:mid
+		CurrencyID:tpl.CurrencyID // 币种
+		//  ......
+ }
+ accountID,err:=repo.MerAccountOutTplDao.Save(outAccount)  //保存 
+
+```

+ 40 - 0
doc/process/merchant/登陆注册.md

@@ -0,0 +1,40 @@
+## 商户注册入驻
+### 入驻
+### 1.在商户支付入驻款项到收款平台后,提供支付凭据
+
+<br>
+
+### 2.运营人员审核后建立商户,【1】完善商户的基本信息,【2】完善开户费   【3】.填入登陆账户和密码,
+
+##### 2.1 、2。2  2.3完善商户信息 `merchant`, 代码中逻辑需补齐以下商户的属性
+```go
+ validator.Merchant.Handle(requestBody,sence) //校验
+ merchantNew := &entity.Merchant{/***/ }
+ util.MapToStruct(requestBody, merchantNew) // 转换
+ mid,err:=repo.MerchanterDao.Save(merchantNew)  //保存 
+```
+
+
+<br>
+
+### 3.通过短信 || 邮件将登陆账户和密码下发给商户 
+
+> 代码中逻辑 如下
+```go
+    util.SmsTool.Send(phone ,content)  //发短信
+    util.EmailTool.Send(emailAddr ,content)  //发邮件  可选
+```
+
+
+
+<br>
+
+## 商户后台登陆
+
+### 1.在商户 凭 登陆账户和密码 输入验证码登陆 可选 谷歌动态口令
+
+### 代码  略
+
+
+
+

+ 11 - 0
doc/process/out_account_tpl.puml

@@ -0,0 +1,11 @@
+@startuml
+participant 商户_merchant
+participant 商户外部账户merchant_account_out
+participant 商户系统账户merchant_account_sys
+
+
+商户_merchant -> 商户外部账户merchant_account_out: 1. 发起支付请求
+商户_merchant -> 商户系统账户merchant_account_sys: 1. 发起支付请求
+
+
+@enduml

BIN
doc/process/收款项目流程图.jpg


File diff suppressed because it is too large
+ 1 - 0
doc/process/收款项目流程图.pos


+ 0 - 0
doc/sql/admin_u.sql


+ 0 - 0
doc/sql/channel.sql


+ 0 - 0
doc/sql/city.sql


+ 0 - 0
doc/sql/country.sql


+ 0 - 0
doc/sql/currency.sql


+ 0 - 0
doc/sql/merchant.sql


+ 0 - 0
doc/sql/merchant_account_out.sql


+ 0 - 0
doc/sql/merchant_account_out_log.sql


+ 0 - 0
doc/sql/merchant_account_out_tpl.sql


+ 0 - 0
doc/sql/merchant_account_sys.sql


+ 0 - 0
doc/sql/merchant_contperson.sql


+ 0 - 0
doc/sql/merchant_kyc.sql


+ 0 - 0
doc/sql/payment_order.sql


+ 0 - 0
doc/sql/payment_order_log.sql


+ 0 - 0
doc/sql/sys_account.sql


+ 0 - 0
doc/sql/table_template.sql