Commit 4bacb07d authored by wangp's avatar wangp

lakala

parent 13ef1742
......@@ -15,7 +15,8 @@ app:
database:
type: 'mysql'
#crmdb: "root:abc123456@tcp(39.96.85.45:3307)/dbc_crm_manage?charset=utf8"
shopdb: "root:abc123456@tcp(39.96.85.45:3307)/dbc_shop?charset=utf8"
#shopdb: "root:abc123456@tcp(39.96.85.45:3307)/dbc_shop?charset=utf8"
systemdb: "root:abc123456@tcp(39.96.85.45:3307)/sys_pay?charset=utf8"
#accountdb: 'dbc_saas:dbc_saas888888@tcp(rm-2zepcf8kag0aol0q48o.mysql.rds.aliyuncs.com:3306)/hos_database?charset=utf8'
#userdb: 'root_dbc:dbc_root888888@tcp(rm-2ze8jnj44l6ta299pro.mysql.rds.aliyuncs.com:3306)/mysql?charset=utf8'
#seconddb: 'root_dbc:dbc_root888888@tcp(rm-2ze095l91j14r251wno.mysql.rds.aliyuncs.com:3306)/mysql?charset=utf8'
......
......@@ -15,7 +15,8 @@ app:
database:
type: 'mysql'
#crmdb: "root_shop:DBC_shopqwe@tcp(rm-2zenl1z0v6209a4jrbo.mysql.rds.aliyuncs.com:3306)/dbc_crm_manage?charset=utf8"
shopdb: "root_shop:DBC_shopqwe@tcp(rm-2zenl1z0v6209a4jrbo.mysql.rds.aliyuncs.com:3306)/dbc_shop?charset=utf8"
# shopdb: "root_shop:DBC_shopqwe@tcp(rm-2zenl1z0v6209a4jrbo.mysql.rds.aliyuncs.com:3306)/dbc_shop?charset=utf8"
systemdb: "system_pay:Pay_123456@tcp(rm-2zenl1z0v6209a4jrbo.mysql.rds.aliyuncs.com:3306)/sys_pay?charset=utf8"
# accountdb: 'dbc_saas:dbc_saas888888@tcp(rm-2zepcf8kag0aol0q48o.mysql.rds.aliyuncs.com:3306)/hos_database?charset=utf8'
# userdb: 'root_dbc:dbc_root888888@tcp(rm-2ze8jnj44l6ta299pro.mysql.rds.aliyuncs.com:3306)/mysql?charset=utf8'
# seconddb: 'root_dbc:dbc_root888888@tcp(rm-2ze095l91j14r251wno.mysql.rds.aliyuncs.com:3306)/mysql?charset=utf8'
......
package mysql
import (
"database/sql"
_ "github.com/go-sql-driver/mysql"
"github.com/jmoiron/sqlx"
"system_pay/setting"
)
//var (
// shopDB *sqlx.DB
// //db *sqlx.DB
// // 0 ~ h
// //userDB *sqlx.DB
// // i ~ z
// //secondDB *sqlx.DB
// // PayDB 支付
// //payDB *sqlx.DB
// err error
//)
// NewShopConn is 连接谛宝多多库
//func NewShopConn() (*sqlx.DB, error) {
// if shopDB == nil {
// shopDB, err = sqlx.Connect("mysql", setting.Conf.DatabaseSetting.ShopDB)
// return shopDB, err
// }
// //shopDB.SetMaxOpenConns(setting.Conf.DatabaseSetting.MaxOpenConns)
// return shopDB, err
//}
//
//// ShopDBClose 关闭MySQL连接
//func ShopDBClose() {
// _ = shopDB.Close()
//}
var (
shopDB *sqlx.DB
//db *sqlx.DB
// 0 ~ h
//userDB *sqlx.DB
// i ~ z
//secondDB *sqlx.DB
// PayDB 支付
//payDB *sqlx.DB
err error
systemdb *sql.DB
err error
)
// NewShopConn is 连接谛宝多多库
func NewShopConn() (*sqlx.DB, error) {
if shopDB == nil {
shopDB, err = sqlx.Connect("mysql", setting.Conf.DatabaseSetting.ShopDB)
return shopDB, err
// NewPayConn is 连接支付库
func NewPayConn() (*sql.DB, error) {
if systemdb == nil {
//systemdb, err = sql.Open("mysql", beego.AppConfig.String("PayURL"))
systemdb, err = sql.Open("mysql", setting.Conf.DatabaseSetting.SystemDB)
//systemdb, err = sqlx.Connect("mysql", setting.Conf.DatabaseSetting.SystemDB)
return systemdb, err
}
//shopDB.SetMaxOpenConns(setting.Conf.DatabaseSetting.MaxOpenConns)
return shopDB, err
return systemdb, nil
}
// ShopDBClose 关闭MySQL连接
func ShopDBClose() {
_ = shopDB.Close()
// CloseTx is 有错误则关闭事务、没错则提交事务
func CloseTx(tx *sql.Tx, err error) {
if err != nil {
tx.Rollback()
}
tx.Commit()
}
// NewAccountConn is 连接医院用户库
//func NewAccountConn() (*sqlx.DB, error) {
// if db == nil {
......
......@@ -8,7 +8,6 @@ import (
"system_pay/controller/base"
"system_pay/models"
"system_pay/mysql"
"system_pay/utils"
)
// 拉卡拉微信支付回调 - AliPayNotice
......@@ -27,7 +26,7 @@ func WxNotice(input *models.WxNoticeInput) (*base.ResponseDataWxNotice, error) {
//}
// 插入数据库
db, err := utils.NewPayConn()
db, err := mysql.NewPayConn()
if err != nil {
return response, err
}
......@@ -37,14 +36,14 @@ func WxNotice(input *models.WxNoticeInput) (*base.ResponseDataWxNotice, error) {
return response, err
}
defer utils.CloseTx(tx, err)
defer mysql.CloseTx(tx, err)
fmt.Println("111")
//1.订单存在check
var billID int64
var attach, url string
err = db.QueryRow("select ifnull(id, 0), attach, notify_pay_url from pay_bill where payment_order_code = ?",
err = db.QueryRow("select ifnull(id, 0), attach, notify_pay_url from system_pay_bill where payment_order_code = ?",
input.OutOrderNo).Scan(&billID, &attach, &url)
if err != nil || billID == 0 || billID == 2 {
response.Code = "FAIL"
......@@ -118,17 +117,12 @@ func WxNotice(input *models.WxNoticeInput) (*base.ResponseDataWxNotice, error) {
// InsertPayBillDetailNoticeRequestBody is 插入支付订单详情表中的 下单参数字段 notice_request_body
func InsertPayBillDetailNoticeRequestBody(tx *sql.Tx, billID int64, noticeRequestBody interface{}) error {
db, err := mysql.NewShopConn()
if err != nil {
return err
}
body, err := json.Marshal(noticeRequestBody)
if err != nil {
return err
}
insertPayBillDetailSQL := `update pay_bill_detail set notice_request_body = ? where pay_bill_id = ?`
result, err := db.Exec(insertPayBillDetailSQL, string(body), billID)
insertPayBillDetailSQL := `update system_pay_bill_detail set notice_request_body = ? where pay_bill_id = ?`
result, err := tx.Exec(insertPayBillDetailSQL, string(body), billID)
if err != nil {
return err
}
......@@ -143,17 +137,12 @@ func InsertPayBillDetailNoticeRequestBody(tx *sql.Tx, billID int64, noticeReques
// InsertPayBillDetailNoticeResponseBody is 插入支付订单详情表中的 下单参数字段 notice_response_body
func InsertPayBillDetailNoticeResponseBody(tx *sql.Tx, billID int64, noticeResponseBody interface{}) error {
db, err := mysql.NewShopConn()
if err != nil {
return err
}
body, err := json.Marshal(noticeResponseBody)
if err != nil {
return err
}
insertPayBillDetailSQL := `update pay_bill_detail set notice_response_body = ? where pay_bill_id = ?`
result, err := db.Exec(insertPayBillDetailSQL, string(body), billID)
insertPayBillDetailSQL := `update system_pay_bill_detail set notice_response_body = ? where pay_bill_id = ?`
result, err := tx.Exec(insertPayBillDetailSQL, string(body), billID)
if err != nil {
return err
}
......
......@@ -19,7 +19,6 @@ import (
"strings"
"system_pay/models"
"system_pay/mysql"
"system_pay/utils"
"time"
)
......@@ -51,7 +50,7 @@ func UnifiedOrder(input *models.PlaceAnOrderParamInput) (interface{}, error) {
input.AttachInfo = string(attach)
// 插入数据库
db, err := utils.NewPayConn()
db, err := mysql.NewPayConn()
if err != nil {
return 0, err
}
......@@ -61,7 +60,7 @@ func UnifiedOrder(input *models.PlaceAnOrderParamInput) (interface{}, error) {
return nil, err
}
defer utils.CloseTx(tx, err)
defer mysql.CloseTx(tx, err)
billID, err := InsertPayBill(tx, input, orderID)
if err != nil {
......@@ -595,15 +594,10 @@ func GetNoticeURL(sourceCode uint8) string {
// BillPayStateSuccess is 微信回调后 把订单状态 置为结算成功
func BillPayStateSuccess(billID int64) error {
func BillPayStateSuccess(tx *sql.Tx, billID int64) error {
db, err := mysql.NewShopConn()
if err != nil {
return err
}
insertPayBillDetailSQL := `update pay_bill set result_code = 1 where id = ?`
result, err := db.Exec(insertPayBillDetailSQL, billID)
insertPayBillDetailSQL := `update system_pay_bill set result_code = 1 where id = ?`
result, err := tx.Exec(insertPayBillDetailSQL, billID)
if err != nil {
return err
}
......@@ -616,15 +610,10 @@ func BillPayStateSuccess(billID int64) error {
}
// BillPayStateFail is 微信回调后 把订单状态 置为结算失败
func BillPayStateFail(billID int64) error {
db, err := mysql.NewShopConn()
if err != nil {
return err
}
func BillPayStateFail(tx *sql.Tx, billID int64) error {
insertPayBillDetailSQL := `update pay_bill set result_code = 2 where id = ?`
result, err := db.Exec(insertPayBillDetailSQL, billID)
insertPayBillDetailSQL := `update system_pay_bill set result_code = 2 where id = ?`
result, err := tx.Exec(insertPayBillDetailSQL, billID)
if err != nil {
return err
}
......@@ -641,18 +630,13 @@ func BillPayStateFail(billID int64) error {
//InsertPayBill is 插入 支付订单表中
func InsertPayBill(tx *sql.Tx, p *models.PlaceAnOrderParamInput, orderID string) (int64, error) {
db, err := mysql.NewShopConn()
if err != nil {
return 0, err
}
var billID int64
insertSQL := `insert pay_bill set platform_type = ?, platform_info = ?,
insertSQL := `insert system_pay_bill set platform_type = ?, platform_info = ?,
source_code = ?, payment_order_code = ?, paymoney = ?*1000, commodity_describe = ?,
commodity_detail = ?, attach = ?, notify_pay_url = ?, pay_type = ?, is_serve = ?`
result, err := db.Exec(insertSQL, p.PlatformType, p.PlatformInfo, p.SourceCode,
result, err := tx.Exec(insertSQL, p.PlatformType, p.PlatformInfo, p.SourceCode,
orderID, p.GoodsPrice, p.GoodsDes, p.GoodsDetail, p.AttachInfo, p.NoticeURL, p.PayType, p.IsServe)
if err != nil {
return billID, err
......@@ -668,17 +652,12 @@ commodity_detail = ?, attach = ?, notify_pay_url = ?, pay_type = ?, is_serve = ?
// InsertPayBillDetailRequestBody is 插入支付订单详情表中的 下单参数字段 request_body
func InsertPayBillDetailRequestBody(tx *sql.Tx, billID int64, requestBody interface{}) error {
db, err := mysql.NewShopConn()
if err != nil {
return err
}
body, err := json.Marshal(requestBody)
if err != nil {
return err
}
insertPayBillDetailSQL := `insert pay_bill_detail set pay_bill_id = ?, request_body = ?`
result, err := db.Exec(insertPayBillDetailSQL, billID, string(body))
insertPayBillDetailSQL := `insert system_pay_bill_detail set pay_bill_id = ?, request_body = ?`
result, err := tx.Exec(insertPayBillDetailSQL, billID, string(body))
if err != nil {
return err
}
......@@ -693,17 +672,12 @@ func InsertPayBillDetailRequestBody(tx *sql.Tx, billID int64, requestBody interf
// InsertPayBillDetailResponseBody is 插入支付订单详情表中的 下单参数字段 response_body
func InsertPayBillDetailResponseBody(tx *sql.Tx, billID int64, responseBody interface{}) error {
db, err := mysql.NewShopConn()
if err != nil {
return err
}
body, err := json.Marshal(responseBody)
if err != nil {
return err
}
insertPayBillDetailSQL := `update pay_bill_detail set response_body = ? where pay_bill_id = ?`
result, err := db.Exec(insertPayBillDetailSQL, string(body), billID)
insertPayBillDetailSQL := `update system_pay_bill_detail set response_body = ? where pay_bill_id = ?`
result, err := tx.Exec(insertPayBillDetailSQL, string(body), billID)
if err != nil {
return err
}
......@@ -717,13 +691,8 @@ func InsertPayBillDetailResponseBody(tx *sql.Tx, billID int64, responseBody inte
func InsertPayBillDetailResponseBodyString(tx *sql.Tx, billID int64, responseBody string) error {
db, err := mysql.NewShopConn()
if err != nil {
return err
}
insertPayBillDetailSQL := `update pay_bill_detail set response_body = ? where pay_bill_id = ?`
result, err := db.Exec(insertPayBillDetailSQL, responseBody, billID)
insertPayBillDetailSQL := `update system_pay_bill_detail set response_body = ? where pay_bill_id = ?`
result, err := tx.Exec(insertPayBillDetailSQL, responseBody, billID)
if err != nil {
return err
}
......
......@@ -59,6 +59,7 @@ type Server struct {
type Database struct {
Type string `mapstructure:"type""`
ShopDB string `mapstructure:"shopdb"`
SystemDB string `mapstructure:"systemdb"`
UserDB string `mapstructure:"userdb"`
SecondDB string `mapstructure:"seconddb"`
AccountDB string `mapstructure:"accountdb"`
......
package utils
import (
"database/sql"
"github.com/astaxie/beego"
// import mysql
_ "github.com/go-sql-driver/mysql"
)
var (
db *sql.DB
err error
)
// NewPayConn is 连接支付库
func NewPayConn() (*sql.DB, error) {
if db == nil {
db, err = sql.Open("mysql", beego.AppConfig.String("PayURL"))
return db, err
}
return db, nil
}
//var (
// db *sql.DB
// err error
//)
//
//// NewPayConn is 连接支付库
//func NewPayConn() (*sql.DB, error) {
// if db == nil {
// db, err = sql.Open("mysql", beego.AppConfig.String("PayURL"))
// return db, err
// }
// return db, nil
//}
// GetResultRow is 获取返回值, 获取一条
//func GetResultRow(rows *sql.Rows) map[string]string {
......@@ -65,10 +62,10 @@ func NewPayConn() (*sql.DB, error) {
// return result
//}
// CloseTx is 有错误则关闭事务、没错则提交事务
func CloseTx(tx *sql.Tx, err error) {
if err != nil {
tx.Rollback()
}
tx.Commit()
}
//// CloseTx is 有错误则关闭事务、没错则提交事务
//func CloseTx(tx *sql.Tx, err error) {
// if err != nil {
// tx.Rollback()
// }
// tx.Commit()
//}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment