Commit 9cc8437c by 赵庆

gsb

parent b84ec91e
......@@ -6,6 +6,24 @@ class LoadDao extends Dao {
super(Dao.getModelName(LoadDao));
}
async statCount(companyNames) {
var result = {};
if(!companyNames || companyNames.length == 0) {
return result;
}
var sql = "SELECT company_name, COUNT(1) AS num FROM `load_info` WHERE company_name IN (:companyNames) GROUP BY company_name";
let list = await this.customQuery(sql, {companyNames: companyNames});
if(list || list.length == 0) {
return result;
}
for (var item of list) {
result[item.company_name] = item.num || 0;
}
return result;
}
}
module.exports = LoadDao;
\ No newline at end of file
......@@ -6,6 +6,24 @@ class RecruitDao extends Dao {
super(Dao.getModelName(RecruitDao));
}
async statCount(companyNames) {
var result = {};
if(!companyNames || companyNames.length == 0) {
return result;
}
var sql = "SELECT company_name, COUNT(1) AS num FROM `recruit_info` WHERE company_name IN (:companyNames) GROUP BY company_name";
let list = await this.customQuery(sql, {companyNames: companyNames});
if(list || list.length == 0) {
return result;
}
for (var item of list) {
result[item.company_name] = item.num || 0;
}
return result;
}
}
module.exports = RecruitDao;
\ No newline at end of file
......@@ -5,7 +5,42 @@ class TaxinfoDao extends Dao {
constructor() {
super(Dao.getModelName(TaxinfoDao));
}
async statCount(companyNames) {
var result = {};
if(!companyNames || companyNames.length == 0) {
return result;
}
var sql = "SELECT company_name, COUNT(1) AS num FROM `tax_info` WHERE company_name IN (:companyNames) GROUP BY name";
let list = await this.customQuery(sql, {companyNames: companyNames});
if(list || list.length == 0) {
return result;
}
for (var item of list) {
result[item.company_name] = item.num || 0;
}
return result;
}
async statCounts(companyNames) {
var result = {};
if(!companyNames || companyNames.length == 0) {
return result;
}
var sql = "SELECT company_name, SUM(actual_amount) AS num FROM `tax_info` WHERE company_name IN (:companyNames) GROUP BY name";
let list = await this.customQuery(sql, {companyNames: companyNames});
if(list || list.length == 0) {
return result;
}
for (var item of list) {
result[item.company_name] = item.num || 0;
}
return result;
}
}
module.exports = TaxinfoDao;
\ No newline at end of file
......@@ -5,7 +5,44 @@ class TransactioninDao extends Dao {
constructor() {
super(Dao.getModelName(TransactioninDao));
}
async statCount(companyNames) {
var result = {};
if(!companyNames || companyNames.length == 0) {
return result;
}
var sql = "SELECT company_name, COUNT(1) AS num FROM `transaction_info` WHERE company_name IN (:companyNames) GROUP BY company_name";
let list = await this.customQuery(sql, {companyNames: companyNames});
if(list || list.length == 0) {
return result;
}
for (var item of list) {
result[item.company_name] = item.num || 0;
result[item.company_name] = item.amount || 0;
}
return result;
}
async statCounts(companyNames) {
var result = {};
if(!companyNames || companyNames.length == 0) {
return result;
}
var sql = "SELECT company_name, SUM(actual_amount) amount FROM `transaction_info` WHERE company_name IN (:companyNames) GROUP BY company_name";
let list = await this.customQuery(sql, {companyNames: companyNames});
if(list || list.length == 0) {
return result;
}
for (var item of list) {
result[item.company_name] = item.amount || 0;
}
return result;
}
}
module.exports = TransactioninDao;
\ No newline at end of file
......@@ -174,42 +174,48 @@ class MerchantService extends ServiceBase {
}
async commercialCount(params){
let page = await this.signPage(params);
let rows = page.rows;
if (!page || !page.rows || page.rows.length == 0) {
return page;
}
let companyNames = [];
for (var row of rows) {
companyNames.push(row.company_name);
}
// 电子签约数量 company_name --> num
let electronMap = await this.electroniccontractDao.statCount(companyNames);
// 招工需求
let recruitMap = {};
let recruitMap = await this.recruitDao.statCount(companyNames);
// 工作量确认单
let loadMap = {};
let loadMap = await this.loadDao.statCount(companyNames);
// 交易笔数、交易金额
let traMap = await this.transactioninDao.statCount(companyNames);
//交易金额
let traSUm = await this.transactioninDao.statCounts(companyNames);
// 完税人次
let taxMap = await this.taxinfoDao.statCount(companyNames);
// 完税金额
let taxSUm = await this.taxinfoDao.statCounts(companyNames);
for (var row of rows) {
row.signNum = electronMap[row.company_name] || 0;
row.xuqiushuliang = electronMap[row.company_name] || 0;
row.signNum = electronMap[row.company_name] || 0;
row.signNum = electronMap[row.company_name] || 0;
row.signNum = electronMap[row.company_name] || 0;
row.signNum = electronMap[row.company_name] || 0;
row.dzCount = electronMap[row.company_name] || 0;
row.zgCount = recruitMap[row.company_name] || 0;
row.gzCount = loadMap[row.company_name] || 0;
row.jyCOunt = traMap[row.company_name] || 0;
row.jySum = traSUm[row.company_name] || 0;
row.wsCOunt = taxMap[row.company_name] || 0;
row.wsSum = taxSUm[row.company_name] || 0;
}
page.rows= rows;
return page;
}
async commercialList(params){
......@@ -248,12 +254,9 @@ class MerchantService extends ServiceBase {
var charts = [[],[]];
var chart = await this.customQuery(sql);
for(let i=0;i< chart.length;i++){
charts[0].push(chart[i].days)
charts[0].push(chart[i].days);
charts[1].push(chart[i].COUNT)
}
page.charts = charts;
return page;
......
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