expend.go 1.36 KB
Newer Older
haoyanbin's avatar
1  
haoyanbin committed
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
package repository

import (
	"database/sql"
	"gin-vue-admin/models"
)

// QueryExpendCount 查询支出管理total
func QueryExpendCount(db *sql.DB, month string) (int64, error) {

	var total int64
	err := db.QueryRow(`select count(id) from c_outcharge where 
	delflag = 0 and DATE_FORMAT( happentime, '%Y-%m' ) = ?`, month).Scan(&total)
	return total, err
}

// QueryExpends 查询支出管理 数据列表
func QueryExpends(db *sql.DB, month string, page, pageSize int64) (interface{}, error) {

	rows, err := db.Query(`select id, DATE_FORMAT(happentime,'%Y/%m/%d'), _usage, ifnull(convert(money/1000,decimal(11,3)), 0) as money from c_outcharge where 
	delflag = 0 and DATE_FORMAT( happentime, '%Y-%m' ) = ?  order by id desc  limit ?,?`,
		month, page, pageSize)
	if err != nil {
		return nil, err
	}

	response := make([]models.Expend, 0)

	for rows.Next() {
		var t models.Expend
		err = rows.Scan(&t.ID, &t.HappenTime, &t.Usage, &t.Money)
		if err != nil {
			return nil, err
		}
		response = append(response, t)
	}

	return response, nil
}

func QueryExpendsSumMoney(db *sql.DB, month string) (interface{}, error) {

	var money float64
	err := db.QueryRow(`select ifnull(convert(sum(money)/1000,decimal(11,3)), 0) as money from c_outcharge where 
	delflag = 0 and DATE_FORMAT( happentime, '%Y-%m' ) = ?`, month).Scan(&money)
	if err != nil {
		return nil, err
	}

	return money, nil
}