项目开票收款汇总表
This commit is contained in:
parent
810d014222
commit
f72cd218ea
@ -3,6 +3,7 @@
|
||||
namespace app\adminapi\controller;
|
||||
|
||||
use app\common\model\cost_project\CostApprovedProject;
|
||||
use app\common\model\cost_project\CostProject;
|
||||
use app\common\model\DataReception;
|
||||
use app\common\model\dept\Dept;
|
||||
use app\common\model\task\TaskAllocation;
|
||||
@ -24,17 +25,17 @@ class CostConsultationReportController extends BaseAdminController
|
||||
$part_a = $params['part_a'] ?? '';
|
||||
$query = Db::name('cost_approved_project')->where(function ($query) use ($contract_name, $contract_num, $part_a) {
|
||||
if ($contract_name) {
|
||||
$query->where('contract_name', 'like', '%'.$contract_name.'%');
|
||||
$query->where('contract_name', 'like', '%' . $contract_name . '%');
|
||||
}
|
||||
if ($contract_num) {
|
||||
$query->where('contract_num', '=', $contract_num);
|
||||
}
|
||||
if ($part_a) {
|
||||
$query->where('part_a', 'like', '%'.$part_a.'%');
|
||||
$query->where('part_a', 'like', '%' . $part_a . '%');
|
||||
}
|
||||
});
|
||||
$count = $query->count();
|
||||
$lists = $query->page($page_no, $page_size)->select()->each(function($item){
|
||||
$lists = $query->page($page_no, $page_size)->select()->each(function ($item) {
|
||||
$item['start_date'] = date('Y-m-d', $item['start_date']);
|
||||
$item['end_date'] = date('Y-m-d', $item['end_date']);
|
||||
$item['due_time'] = date('Y-m-d', $item['due_time']);
|
||||
@ -57,22 +58,22 @@ class CostConsultationReportController extends BaseAdminController
|
||||
|
||||
$query = Db::name('cost_project')->alias('p')->leftJoin('cost_approved_project c', 'p.contract_id=c.id')->where(function ($query) use ($project_name, $project_num, $contract_name, $aunit) {
|
||||
if ($contract_name) {
|
||||
$query->where('c.contract_name', 'like', '%'.$contract_name.'%');
|
||||
$query->where('c.contract_name', 'like', '%' . $contract_name . '%');
|
||||
}
|
||||
if ($project_num) {
|
||||
$query->where('p.project_num', '=', $project_num);
|
||||
}
|
||||
if ($project_name) {
|
||||
$query->where('p.project_name', 'like', '%'.$project_name.'%');
|
||||
$query->where('p.project_name', 'like', '%' . $project_name . '%');
|
||||
}
|
||||
if ($aunit) {
|
||||
$query->where('p.aunit', 'like', '%'.$aunit.'%');
|
||||
$query->where('p.aunit', 'like', '%' . $aunit . '%');
|
||||
}
|
||||
});
|
||||
$count = $query->count();
|
||||
$lists = $query->append(['dept'])->withAttr('dept', function ($value, $data){
|
||||
$lists = $query->append(['dept'])->withAttr('dept', function ($value, $data) {
|
||||
return Dept::where('id', $data['depar'])->findOrEmpty()->toArray();
|
||||
})->page($page_no, $page_size)->select()->each(function($item){
|
||||
})->page($page_no, $page_size)->select()->each(function ($item) {
|
||||
$item['start_date'] = date('Y-m-d', $item['start_date']);
|
||||
$item['end_date'] = date('Y-m-d', $item['end_date']);
|
||||
return $item;
|
||||
@ -92,29 +93,65 @@ class CostConsultationReportController extends BaseAdminController
|
||||
|
||||
$query = Db::name('cost_project')->alias('p')->leftJoin('cost_approved_project c', 'p.contract_id=c.id')->where(function ($query) use ($project_name, $project_num, $contract_name) {
|
||||
if ($contract_name) {
|
||||
$query->where('c.contract_name', 'like', '%'.$contract_name.'%');
|
||||
$query->where('c.contract_name', 'like', '%' . $contract_name . '%');
|
||||
}
|
||||
if ($project_num) {
|
||||
$query->where('p.project_num', '=', $project_num);
|
||||
}
|
||||
if ($project_name) {
|
||||
$query->where('p.project_name', 'like', '%'.$project_name.'%');
|
||||
$query->where('p.project_name', 'like', '%' . $project_name . '%');
|
||||
}
|
||||
})->append(['task_allocation_status', 'task_handling_three_level_review_status', 'data_reception_status'])
|
||||
->withAttr('task_allocation_status', function ($data, $value){
|
||||
->withAttr('task_allocation_status', function ($data, $value) {
|
||||
$count = TaskAllocation::where('cost_project_id', $value['id'])->count();
|
||||
return $count > 0 ? 1: 0;
|
||||
})->withAttr('task_handling_three_level_review_status', function ($data, $value){
|
||||
return $count > 0 ? 1 : 0;
|
||||
})->withAttr('task_handling_three_level_review_status', function ($data, $value) {
|
||||
$count = TaskHandlingThreeLevelReview::where('project_id', $value['id'])->count();
|
||||
return $count > 0 ? 1: 0;
|
||||
})->withAttr('data_reception_status', function ($data, $value){
|
||||
return $count > 0 ? 1 : 0;
|
||||
})->withAttr('data_reception_status', function ($data, $value) {
|
||||
$count = DataReception::where('project_id', $value['id'])->count();
|
||||
return $count > 0 ? 1: 0;
|
||||
return $count > 0 ? 1 : 0;
|
||||
});
|
||||
$count = $query->count();
|
||||
$lists = $query->append(['dept'])->withAttr('dept', function ($value, $data){
|
||||
$lists = $query->append(['dept'])->withAttr('dept', function ($value, $data) {
|
||||
return Dept::where('id', $data['depar'])->findOrEmpty()->toArray();
|
||||
})->page($page_no, $page_size)->select();
|
||||
return $this->success('成功', compact('count', 'lists', 'page_no', 'page_size'));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 项目开票收款汇总表
|
||||
*/
|
||||
public function project_invoice_receipt()
|
||||
{
|
||||
$page_no = $this->request->param('page_no', 1);
|
||||
$page_size = $this->request->param('page_size', 15);
|
||||
$project_name = $params['project_name'] ?? '';
|
||||
$depar_id = $params['depar_id'] ?? 0;
|
||||
$query = (new CostProject)->with(['cost_project_contract']);
|
||||
$field='id,project_num,project_name,depar,principal,contract_id';
|
||||
if ($project_name) {
|
||||
$query->where('project_name', 'like', '%' . $project_name . '%');
|
||||
}
|
||||
if ($depar_id) {
|
||||
$query->where('depar',$depar_id);
|
||||
}
|
||||
|
||||
$count = $query->count();
|
||||
$lists = $query->field($field)->page($page_no, $page_size)->select()->each(function ($item) {
|
||||
$item['start_date'] = date('Y-m-d', $item['start_date']);
|
||||
$item['end_date'] = date('Y-m-d', $item['end_date']);
|
||||
if($item['depar']>0){
|
||||
$item['depar'] =Dept::where('id', $item['depar'])->value('name');
|
||||
}
|
||||
if($item['principal']>0){
|
||||
$item['principal'] =Dept::where('id', $item['principal'])->value('name');
|
||||
}
|
||||
$item['has_invoice_amount']=0;
|
||||
$item['amount_Collected']=0;
|
||||
return $item;
|
||||
});
|
||||
return $this->success('成功', compact('count', 'lists', 'page_no', 'page_size'));
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -34,4 +34,9 @@ class CostProject extends BaseModel
|
||||
{
|
||||
return $this->hasOne(CostApprovedProject::class, 'id','contract_id');
|
||||
}
|
||||
|
||||
public function CostProjectContract()
|
||||
{
|
||||
return $this->hasOne(CostProjectContract::class, 'id','contract_id');
|
||||
}
|
||||
}
|
33
app/common/model/cost_project/CostProjectContract.php
Normal file
33
app/common/model/cost_project/CostProjectContract.php
Normal file
@ -0,0 +1,33 @@
|
||||
<?php
|
||||
// +----------------------------------------------------------------------
|
||||
// | likeadmin快速开发前后端分离管理后台(PHP版)
|
||||
// +----------------------------------------------------------------------
|
||||
// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
|
||||
// | 开源版本可自由商用,可去除界面版权logo
|
||||
// | gitee下载:https://gitee.com/likeshop_gitee/likeadmin
|
||||
// | github下载:https://github.com/likeshop-github/likeadmin
|
||||
// | 访问官网:https://www.likeadmin.cn
|
||||
// | likeadmin团队 版权所有 拥有最终解释权
|
||||
// +----------------------------------------------------------------------
|
||||
// | author: likeadminTeam
|
||||
// +----------------------------------------------------------------------
|
||||
|
||||
namespace app\common\model\cost_project;
|
||||
|
||||
|
||||
use app\common\model\BaseModel;
|
||||
use think\model\concern\SoftDelete;
|
||||
|
||||
/**
|
||||
* 造价咨询--造价主合同信息
|
||||
* Class CostProjectContract
|
||||
* @package app\common\model
|
||||
*/
|
||||
class CostProjectContract extends BaseModel
|
||||
{
|
||||
|
||||
protected $name = 'cost_project_contract';
|
||||
|
||||
|
||||
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user