package model import "time" const ( ThingTypeSeparate = 1 // 商户分账 ThingTypeReceive = 2 // 分账接收方 OperateTypeCreate = "create" // 创建 OperateTypeUpdate = "update" // 修改 OperateTypeBind = "bind" // 绑定 OperateTypeUnBind = "unbind" // 解绑 OperateStatusReview = "review" // 审核中 OperateStatusSuccess = "success" // 审核通过 OperateStatusFail = "fail" // 审核失败 ReceiverStatusValid = "VALID" // 有效 ReceiverStatusInValid = "INVALID" // 无效 ) // 分账状态说明 const ( SeparateAmtAccepted = "ACCEPTED" // 已受理 SeparateAmtProcessing = "PROCESSING" // 处理中 SeparateAmtFail = "FAIL" // 失败 SeparateAmtSuccess = "SUCCESS" // 成功 SeparateAmtCanceling = "CANCELING" // 撤销中 SeparateAmtCanceled = "CANCELED" // 撤销成功 SeparateAmtCancelFail = "CANCEL_FAIL" // 撤销失败 SeparateAmtFallBacking = "FALLBACKING" // 回退中 SeparateAmtFallBackEnd = "FALLBACK_END" // 回退失败 ) // 分账指令类型 const ( CmdTypeSeparate = "SEPARATE" // 分账 CmdTypeCancel = "CANCEL" // 分账撤销 CmdTypeFallBack = "FALLBACK" // 分账退回 ) type LakalaContract struct { ModelIDCUL ContractId string `orm:"column(contract_id);size(32)" json:"contractId"` // 订单编号 ContractApplyId string `orm:"column(contract_apply_id);size(20)" json:"contractApplyId"` // 电子合同编号 ContractStatus string `orm:"column(contract_status);size(20)" json:"ContractStatus"` // 合同状态 StoreId int `orm:"column(store_id);size(16)" json:"storeId"` // 京西门店ID ApplyType string `orm:"column(apply_type);size(16)" json:"applyType"` // 申请类型 } func (o *LakalaContract) TableUnique() [][]string { return [][]string{ []string{"contract_id"}, } } // LakalaIncoming 进件账户状态,分账状态 type LakalaIncoming struct { ModelIDCUL StoreId int `orm:"column(store_id);size(16)" json:"storeId"` // 京西门店ID MerchantNo string `orm:"column(merchant_no);size(20)" json:"merchantNo"` // 拉卡拉进件商户号 MerchantNo2 string `orm:"column(merchant_no2);size(20)" json:"merchantNo2"` // 银联商户号 TermNo string `orm:"column(term_no);size(256)" json:"termNo"` // 终端号 M String(32) 拉卡拉分配的业务终端号 MerchantStatus string `orm:"column(merchant_status);size(80)" json:"merchantStatus"` // 拉卡拉进件状态 FeeId string `orm:"column(fee_id);size(80)" json:"feeId"` // 拉卡拉费率变更ID FeeStatus string `orm:"column(fee_status);size(80)" json:"feelStatus"` // 拉卡拉费率变更状态 SettleId string `orm:"column(settle_id);size(80)" json:"settleId"` // 结算变更id SettleStatus string `orm:"column(settle_status);size(80)" json:"settleStatus"` // 结算变更状态 BasicId string `orm:"column(basic_id);size(80)" json:"basicId"` // 基本信息变更ID BasicStatus string `orm:"column(basic_status);size(80)" json:"basicStatus"` // 基本信息变更状态 LicenseId string `orm:"column(license_id);size(80)" json:"licenseId"` // 营业执照变更ID LicenseStatus string `orm:"column(license_status);size(80)" json:"licenseStatus"` // 营业执照变更状态 // 分账 OrderID string `orm:"column(order_id);size(32)" json:"orderId"` // 当前事件ID ApplyID string `orm:"column(apply_id);size(32)" json:"applyId"` // 申请id ThingType int `orm:"column(thing_type);size(2)" json:"thingType"` // 事件类型[1-分账门店/2-分账接收方] Operate string `orm:"column(operate);size(16)" json:"operate"` // 操作类型[创建/修改/绑定/解绑] OperateStatus string `orm:"column(operate_status);size(16)" json:"operateStatus"` // 操作所处状态 TotalAmt string `orm:"column(total_amt);size(10)" json:"totalAmt"` // 总分账金额 CanAmt string `orm:"column(can_amt);size(10)" json:"canAmt"` // 可分账金额 BindAccount string `orm:"column(bind_account);type(text)" json:"bindAccount"` // 绑定的分账账户map["receiverNo"]"1" Remark string `orm:"column(remark);size(512)" json:"remark"` // 备注说明 } type BindAccountObj struct { ApplyId string `json:"applyId"` // 申请编号 Status string `json:"status"` // 审核状态 Remark string `json:"remark"` // 备注说明 } func (o *LakalaIncoming) TableUnique() [][]string { return [][]string{ []string{"MerchantNo"}, } } func (o *LakalaIncoming) TableIndex() [][]string { return [][]string{ []string{"ApplyID"}, []string{"StoreId"}, } } // LakalaRecipient 拉卡拉接收分账账户 type LakalaRecipient struct { ModelIDCUL OrgCode string `orm:"column(org_code);size(20)" json:"orgCode"` // 申请机构代码(回传) OrgID string `orm:"column(org_id);size(20)" json:"orgId"` // 接收方所属机构 ReceiverNo string `orm:"column(receiver_no);size(20)" json:"receiverNo"` // 接收方编号 ReceiverName string `orm:"column(receiver_name);size(20)" json:"receiverName"` // 接收方名称 Status string `orm:"column(status);size(16)" json:"status"` // 分账账户状态 有效:VALID 无效:INVALID Remark string `orm:"column(remark);size(512)" json:"remark"` // 备注说明 } func (o *LakalaRecipient) TableUnique() [][]string { return [][]string{ []string{"ReceiverNo"}, } } func (o *LakalaRecipient) TableIndex() [][]string { return [][]string{ []string{"CreatedAt"}, } } // LakalaSeparateAmt 分账记录 type LakalaSeparateAmt struct { ModelIDCUL MerchantNo string `orm:"column(merchant_no);size(20)" json:"merchantNo"` // 分账发起商户 CmdType string `orm:"column(cmd_type);size(32)" json:"cmdType"` // SEPARATE:分账 CANCEL:分账撤销FALLBACK:分账回退 SeparateNo string `orm:"column(separate_no);size(32)" json:"separateNo"` // 分账系统生成唯一流水 Status string `orm:"column(status);size(32)" json:"status1"` // 分账状态 //SeparateNo2 string `orm:"column(separate_no2);size(32)" json:"separateNo2"` // 分账撤销系统生成唯一流水 //Status2 string `orm:"column(status2);size(32)" json:"status2"` // 分账撤销状态 //SeparateNo3 string `orm:"column(separate_no3);size(32)" json:"separateNo3"` // 分账回退系统生成唯一流水 //Status3 string `orm:"column(status3);size(32)" json:"status3"` // 分账回退状态 OutSeparateNo string `orm:"column(out_separate_no);size(32)" json:"outSeparateNo"` // 商户分账指令流水号 LogDate time.Time `orm:"column(log_date);type(datetime)" json:"logDate"` // 交易日期 CalType string `orm:"column(cal_type);size(2)" json:"calType"` // 分账计算类型 FinishDate string `orm:"column(finish_date);size(20)" json:"finishDate"` // 完成日期 yyyyMMdd TotalAmt string `orm:"column(total_amt);size(15)" json:"totalAmt"` // 发生总金额 ActualSeparateAmt string `orm:"column(actual_separate_amt);size(15)" json:"actualSeparateAmt"` // 实分金额 TotalFeeAmt string `orm:"column(total_fee_amt);size(15)" json:"totalFeeAmt"` // 手续费金额 FinalStatus string `orm:"column(final_status);size(32)" json:"finalStatus"` // 处理状态 DetailData string `orm:"column(detail_data);type(text)" json:"detailData"` // 细节数据 Remark string `orm:"column(remark);size(256)" json:"remark"` // 备注说明记录订单流程变化 } func (o *LakalaSeparateAmt) TableUnique() [][]string { return [][]string{ []string{"MerchantNo"}, } } func (o *LakalaSeparateAmt) TableIndex() [][]string { return [][]string{ []string{"CreatedAt"}, } } // LakalaWithdrawal 拉卡拉提现记录 type LakalaWithdrawal struct { ModelIDCUL CreatedTime time.Time `orm:"column(created_time);type(datetime)" json:"createdTime"` // 创建时间 CompleteTime time.Time `orm:"column(complete_time);type(datetime)" json:"completeTime"` // 完成时间 MercId string `orm:"column(merc_id);size(32)" json:"mercId"` // 商户号 DrawJnl string `orm:"column(draw_jnl);size(32)" json:"drawJnl"` // 提款流水号 ReqDate string `orm:"column(req_date);size(32)" json:"reqDate"` // 请求日期 AcctName string `orm:"column(acct_name);size(32)" json:"acctName"` // 结算账户名 AcctNo string `orm:"column(acct_no);size(32)" json:"acctNo"` // 结算账户号 DrawAmt string `orm:"column(draw_amt);size(32)" json:"drawAmt"` // 提款金额(元):含手续费 DrawFee string `orm:"column(draw_fee);size(32)" json:"drawFee"` // 手续费(元) BatchAutoSettle string `orm:"column(batch_auto_settle);size(2)" json:"batchAutoSettle"` // 结算模式(01主动提款 02余额自动结算 03 交易自动结算) DrawState string `orm:"column(draw_state);size(16)" json:"drawState"` // 提款状态 DRAW.ACCEPTED 提款已受理 DRAW.FREEZE 提款冻结DRAW.PROCESSING 提款处理中DRAW.SUCCESS 提款成功DRAW.FAILED 提款失败 DrawMode string `orm:"column(draw_mode);size(4)" json:"drawMode"` // 提款模式(D0/D1) Memo string `orm:"column(memo);size(256)" json:"memo"` // 结果信息 } func (o *LakalaWithdrawal) TableUnique() [][]string { return [][]string{ []string{"MercId"}, []string{"DrawJnl"}, } } func (o *LakalaWithdrawal) TableIndex() [][]string { return [][]string{ []string{"CreatedTime"}, } }