1
This commit is contained in:
286
business/model/dao/lakala.go
Normal file
286
business/model/dao/lakala.go
Normal file
@@ -0,0 +1,286 @@
|
||||
package dao
|
||||
|
||||
import (
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
"time"
|
||||
)
|
||||
|
||||
// GetStoreInfoByMerchantID 门店进件/分账商户
|
||||
func GetStoreInfoByMerchantID(db *DaoDB, merchantNo string, storeId int, applyId, OrderID string) (*model.LakalaIncoming, error) {
|
||||
merchantObj := &model.LakalaIncoming{}
|
||||
param := []interface{}{}
|
||||
sql := ` SELECT * FROM lakala_incoming WHERE 1=1 `
|
||||
|
||||
if merchantNo != "" {
|
||||
sql += ` AND merchant_no = ?`
|
||||
param = append(param, merchantNo)
|
||||
}
|
||||
if storeId != model.NO {
|
||||
sql += ` AND store_id = ?`
|
||||
param = append(param, storeId)
|
||||
}
|
||||
if applyId != "" {
|
||||
sql += ` AND apply_id = ?`
|
||||
param = append(param, applyId)
|
||||
}
|
||||
if OrderID != "" {
|
||||
sql += ` AND order_id = ?`
|
||||
param = append(param, OrderID)
|
||||
}
|
||||
if err := GetRow(db, merchantObj, sql, param...); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return merchantObj, nil
|
||||
}
|
||||
|
||||
// GetRecipientByMerchantID 获取门店接受账户详细
|
||||
func GetRecipientByMerchantID(db *DaoDB, receiverNo string) (*model.LakalaRecipient, error) {
|
||||
receiverObj := &model.LakalaRecipient{}
|
||||
sql := ` SELECT * FROM lakala_recipient WHERE receiver_no = ?`
|
||||
|
||||
if err := GetRow(db, receiverObj, sql, []interface{}{receiverNo}...); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return receiverObj, nil
|
||||
}
|
||||
|
||||
// GetSeparateRecords 分账记录
|
||||
func GetSeparateRecords(db *DaoDB, merchantNo, separateNo, cmsType string) (*model.LakalaSeparateAmt, error) {
|
||||
records := &model.LakalaSeparateAmt{}
|
||||
sql := ` SELECT * FROM lakala_separate_amt WHERE 1=1 `
|
||||
param := []interface{}{}
|
||||
if merchantNo != "" {
|
||||
sql += ` AND merchant_no = ?`
|
||||
param = append(param, merchantNo)
|
||||
}
|
||||
switch cmsType {
|
||||
case model.CmdTypeSeparate:
|
||||
sql += ` AND separate_no1 = ?`
|
||||
case model.CmdTypeCancel:
|
||||
sql += ` AND separate_no2 = ?`
|
||||
case model.CmdTypeFallBack:
|
||||
sql += ` AND separate_no3 = ?`
|
||||
default:
|
||||
sql += ` AND separate_no1 = ?`
|
||||
}
|
||||
param = append(param, separateNo)
|
||||
|
||||
if err := GetRow(db, records, sql, param...); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return records, nil
|
||||
}
|
||||
|
||||
// GetEwalletWithDraw 提现记录
|
||||
func GetEwalletWithDraw(db *DaoDB, mercId, drawJnl string) (*model.LakalaWithdrawal, error) {
|
||||
receiverObj := &model.LakalaWithdrawal{}
|
||||
parama := []interface{}{}
|
||||
sql := ` SELECT * FROM lakala_withdrawal WHERE 1=1 `
|
||||
if mercId != "" {
|
||||
sql += ` AND merc_id = ?`
|
||||
parama = append(parama, mercId)
|
||||
}
|
||||
if drawJnl != "" {
|
||||
sql += ` AND draw_jnl = ? `
|
||||
parama = append(parama, drawJnl)
|
||||
}
|
||||
|
||||
if err := GetRow(db, receiverObj, sql, parama...); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return receiverObj, nil
|
||||
}
|
||||
|
||||
// GetIncoming 京西管理系统查询进件列表
|
||||
func GetIncoming(storeID int, merchantNo string, offset, pageSize int) (pagedInfo *model.PagedInfo, err error) {
|
||||
db := GetDB()
|
||||
txDB, _ := Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
Rollback(db, txDB)
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
|
||||
var incoming []*model.LakalaIncoming
|
||||
var param = []interface{}{}
|
||||
sql := ` SELECT SQL_CALC_FOUND_ROWS s.name,l.* FROM lakala_incoming l
|
||||
JOIN store s ON l.store_id = s.id
|
||||
WHERE 1=1 `
|
||||
if storeID != 0 {
|
||||
sql += ` AND s.store_id = ? `
|
||||
param = append(param, storeID)
|
||||
}
|
||||
if merchantNo != "" {
|
||||
sql += ` AND s.merchant_no = ?`
|
||||
param = append(param, merchantNo)
|
||||
}
|
||||
sql += `
|
||||
ORDER BY l.total_amt desc
|
||||
LIMIT ? OFFSET ?
|
||||
`
|
||||
param = append(param, pageSize, offset)
|
||||
|
||||
if err = GetRowsTx(txDB, &incoming, sql, param...); err == nil {
|
||||
pagedInfo = &model.PagedInfo{
|
||||
TotalCount: GetLastTotalRowCount2(db, txDB),
|
||||
Data: incoming,
|
||||
}
|
||||
}
|
||||
|
||||
return pagedInfo, nil
|
||||
}
|
||||
|
||||
// GetRecipientList 京西管理系统查询分账账户列表
|
||||
func GetRecipientList(orgCode, receiverNo, receiverName string, offset, pageSize int) (pagedInfo *model.PagedInfo, err error) {
|
||||
db := GetDB()
|
||||
txDB, _ := Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
Rollback(db, txDB)
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
|
||||
var recipient []*model.LakalaRecipient
|
||||
var param = []interface{}{}
|
||||
sql := ` SELECT SQL_CALC_FOUND_ROWS r.* FROM lakala_recipient r WHERE 1=1 `
|
||||
if orgCode != "" {
|
||||
sql += ` AND r.org_code = ? `
|
||||
param = append(param, orgCode)
|
||||
}
|
||||
if receiverNo != "" {
|
||||
sql += ` AND r.receiver_no = ?`
|
||||
param = append(param, receiverNo)
|
||||
}
|
||||
if receiverName != "" {
|
||||
sql += ` AND r.receiver_name like ?`
|
||||
param = append(param, "%"+receiverNo+"%")
|
||||
}
|
||||
sql += `
|
||||
ORDER BY r.id desc
|
||||
LIMIT ? OFFSET ?
|
||||
`
|
||||
param = append(param, pageSize, offset)
|
||||
|
||||
if err = GetRowsTx(txDB, &recipient, sql, param...); err == nil {
|
||||
pagedInfo = &model.PagedInfo{
|
||||
TotalCount: GetLastTotalRowCount2(db, txDB),
|
||||
Data: recipient,
|
||||
}
|
||||
}
|
||||
|
||||
return pagedInfo, nil
|
||||
}
|
||||
|
||||
// GetSeparateAmt 交易流水查询
|
||||
func GetSeparateAmt(merchantNo, cmdType, status, separateNo string, separateTimeStart, separateTimeEnd time.Time, offset, pageSize int) (pagedInfo *model.PagedInfo, err error) {
|
||||
db := GetDB()
|
||||
txDB, _ := Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
Rollback(db, txDB)
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
|
||||
var recipient []*model.LakalaSeparateAmt
|
||||
var param = []interface{}{}
|
||||
sql := ` SELECT SQL_CALC_FOUND_ROWS r.* FROM Lakala_separate_amt r WHERE 1=1 `
|
||||
if merchantNo != "" {
|
||||
sql += ` AND r.merchant_no = ? `
|
||||
param = append(param, merchantNo)
|
||||
}
|
||||
if cmdType != "" {
|
||||
sql += ` AND r.cmd_type = ?`
|
||||
param = append(param, cmdType)
|
||||
}
|
||||
if status != "" {
|
||||
sql += ` AND r.status = ?`
|
||||
param = append(param, status)
|
||||
}
|
||||
if separateNo != "" {
|
||||
sql += ` AND r.separate_no = ?`
|
||||
param = append(param, separateNo)
|
||||
}
|
||||
if !separateTimeStart.IsZero() {
|
||||
sql += ` AND r.log_date >= ?`
|
||||
param = append(param, separateTimeStart)
|
||||
}
|
||||
if !separateTimeEnd.IsZero() {
|
||||
sql += ` AND r.log_date <= ?`
|
||||
param = append(param, separateTimeEnd)
|
||||
}
|
||||
|
||||
sql += `
|
||||
ORDER BY r.id desc
|
||||
LIMIT ? OFFSET ?
|
||||
`
|
||||
param = append(param, pageSize, offset)
|
||||
|
||||
if err = GetRowsTx(txDB, &recipient, sql, param...); err == nil {
|
||||
pagedInfo = &model.PagedInfo{
|
||||
TotalCount: GetLastTotalRowCount2(db, txDB),
|
||||
Data: recipient,
|
||||
}
|
||||
}
|
||||
|
||||
return pagedInfo, nil
|
||||
}
|
||||
|
||||
// WithdrawalList 提现记录
|
||||
func WithdrawalList(merchantNo, drawJnl, acctName string, startTime, endTime time.Time, pageSize, offset int) (pagedInfo *model.PagedInfo, err error) {
|
||||
db := GetDB()
|
||||
txDB, _ := Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
Rollback(db, txDB)
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
|
||||
var recipient []*model.LakalaWithdrawal
|
||||
var param = []interface{}{}
|
||||
sql := ` SELECT SQL_CALC_FOUND_ROWS r.* FROM lakala_withdrawal r WHERE 1=1 `
|
||||
if merchantNo != "" {
|
||||
sql += ` AND r.merchant_no = ? `
|
||||
param = append(param, merchantNo)
|
||||
}
|
||||
if drawJnl != "" {
|
||||
sql += ` AND r.draw_jnl = ?`
|
||||
param = append(param, drawJnl)
|
||||
}
|
||||
if acctName != "" {
|
||||
sql += ` AND r.acct_name like ?`
|
||||
param = append(param, "%"+acctName+"%")
|
||||
}
|
||||
|
||||
if !startTime.IsZero() {
|
||||
sql += ` AND r.created_time >= ?`
|
||||
param = append(param, startTime)
|
||||
}
|
||||
if !endTime.IsZero() {
|
||||
sql += ` AND r.created_time <= ?`
|
||||
param = append(param, endTime)
|
||||
}
|
||||
|
||||
sql += `
|
||||
ORDER BY r.id desc
|
||||
LIMIT ? OFFSET ?
|
||||
`
|
||||
param = append(param, pageSize, offset)
|
||||
|
||||
if err = GetRowsTx(txDB, &recipient, sql, param...); err == nil {
|
||||
pagedInfo = &model.PagedInfo{
|
||||
TotalCount: GetLastTotalRowCount2(db, txDB),
|
||||
Data: recipient,
|
||||
}
|
||||
}
|
||||
|
||||
return pagedInfo, nil
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user