更新付款计划
This commit is contained in:
parent
40ba795813
commit
55b50279e0
@ -18,7 +18,7 @@ namespace app\adminapi\lists\finance;
|
|||||||
use app\adminapi\lists\BaseAdminDataLists;
|
use app\adminapi\lists\BaseAdminDataLists;
|
||||||
use app\common\model\finance\FinancePaymentPlan;
|
use app\common\model\finance\FinancePaymentPlan;
|
||||||
use app\common\lists\ListsSearchInterface;
|
use app\common\lists\ListsSearchInterface;
|
||||||
|
use think\facade\Db;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* FinancePaymentPlan列表
|
* FinancePaymentPlan列表
|
||||||
@ -38,7 +38,7 @@ class FinancePaymentPlanLists extends BaseAdminDataLists implements ListsSearchI
|
|||||||
public function setSearch(): array
|
public function setSearch(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'=' => ['contract_id'],
|
'=' => ['fpp.contract_id'],
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -54,11 +54,19 @@ class FinancePaymentPlanLists extends BaseAdminDataLists implements ListsSearchI
|
|||||||
*/
|
*/
|
||||||
public function lists(): array
|
public function lists(): array
|
||||||
{
|
{
|
||||||
return FinancePaymentPlan::where($this->searchWhere)
|
return Db::name('FinancePaymentPlan')->alias('fpp')
|
||||||
->field(['id', 'supplier_id', 'contract_id', 'period', 'pay_date', 'amount', 'foreign_currency_remark', 'status', 'remark', 'annex'])
|
->where($this->searchWhere)
|
||||||
|
->leftJoin('procurement_contract pc','pc.id = fpp.contract_id')
|
||||||
|
->leftJoin('project p','p.id = pc.project_id')
|
||||||
|
->field('fpp.*, p.name, p.id as project_id, p.name as project_name, pc.contract_no')
|
||||||
->limit($this->limitOffset, $this->limitLength)
|
->limit($this->limitOffset, $this->limitLength)
|
||||||
->order(['id' => 'desc'])
|
->order(['fpp.id' => 'desc'])
|
||||||
->select()
|
->select()->each(function($item, $key){
|
||||||
|
//关联数据 供应商后续添加
|
||||||
|
$item['supplier_name'] = '供应商名称';
|
||||||
|
$item['contract_type'] = '1';
|
||||||
|
return $item;
|
||||||
|
})
|
||||||
->toArray();
|
->toArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@ namespace app\adminapi\logic\finance;
|
|||||||
|
|
||||||
|
|
||||||
use app\common\model\finance\FinancePaymentPlan;
|
use app\common\model\finance\FinancePaymentPlan;
|
||||||
|
use app\common\model\project\Project;
|
||||||
use app\common\logic\BaseLogic;
|
use app\common\logic\BaseLogic;
|
||||||
use think\facade\Db;
|
use think\facade\Db;
|
||||||
|
|
||||||
@ -41,15 +42,15 @@ class FinancePaymentPlanLogic extends BaseLogic
|
|||||||
Db::startTrans();
|
Db::startTrans();
|
||||||
try {
|
try {
|
||||||
FinancePaymentPlan::create([
|
FinancePaymentPlan::create([
|
||||||
'supplier_id' => $params['supplier_id'],
|
'supplier_id' => $params['supplier_id'] ?? 0,
|
||||||
'contract_id' => $params['contract_id'],
|
'contract_id' => $params['contract_id'] ?? 0,
|
||||||
'period' => $params['period'],
|
'period' => $params['period'] ?? 0,
|
||||||
'pay_date' => $params['pay_date'],
|
'pay_date' => $params['pay_date'] ?? '',
|
||||||
'amount' => $params['amount'],
|
'amount' => $params['amount'] ?? 0,
|
||||||
'foreign_currency_remark' => $params['foreign_currency_remark'],
|
'foreign_currency_remark' => $params['foreign_currency_remark'] ?? '',
|
||||||
'status' => $params['status'],
|
'status' => $params['status'] ?? 0,
|
||||||
'remark' => $params['remark'],
|
'remark' => $params['remark'] ?? '',
|
||||||
'annex' => $params['annex'],
|
'annex' => $params['annex'] ?? '',
|
||||||
]);
|
]);
|
||||||
|
|
||||||
Db::commit();
|
Db::commit();
|
||||||
@ -74,15 +75,15 @@ class FinancePaymentPlanLogic extends BaseLogic
|
|||||||
Db::startTrans();
|
Db::startTrans();
|
||||||
try {
|
try {
|
||||||
FinancePaymentPlan::where('id', $params['id'])->update([
|
FinancePaymentPlan::where('id', $params['id'])->update([
|
||||||
'supplier_id' => $params['supplier_id'],
|
'supplier_id' => $params['supplier_id'] ?? 0,
|
||||||
'contract_id' => $params['contract_id'],
|
'contract_id' => $params['contract_id'] ?? 0,
|
||||||
'period' => $params['period'],
|
'period' => $params['period'] ?? 0,
|
||||||
'pay_date' => $params['pay_date'],
|
'pay_date' => $params['pay_date'] ?? '',
|
||||||
'amount' => $params['amount'],
|
'amount' => $params['amount'] ?? 0,
|
||||||
'foreign_currency_remark' => $params['foreign_currency_remark'],
|
'foreign_currency_remark' => $params['foreign_currency_remark'] ?? '',
|
||||||
'status' => $params['status'],
|
'status' => $params['status'] ?? 0,
|
||||||
'remark' => $params['remark'],
|
'remark' => $params['remark'] ?? '',
|
||||||
'annex' => $params['annex'],
|
'annex' => $params['annex'] ?? '',
|
||||||
]);
|
]);
|
||||||
|
|
||||||
Db::commit();
|
Db::commit();
|
||||||
@ -117,6 +118,12 @@ class FinancePaymentPlanLogic extends BaseLogic
|
|||||||
*/
|
*/
|
||||||
public static function detail($params): array
|
public static function detail($params): array
|
||||||
{
|
{
|
||||||
return FinancePaymentPlan::findOrEmpty($params['id'])->toArray();
|
$financePaymentPlan = FinancePaymentPlan::findOrEmpty($params['id']);
|
||||||
|
$financePaymentPlan->contract;
|
||||||
|
$financePaymentPlan->project = null;
|
||||||
|
if (!empty($financePaymentPlan->contract->project_id)) {
|
||||||
|
$financePaymentPlan->project = Project::findOrEmpty($financePaymentPlan->contract->project_id);
|
||||||
|
}
|
||||||
|
return $financePaymentPlan->toArray();
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -30,5 +30,9 @@ class FinancePaymentPlan extends BaseModel
|
|||||||
protected $name = 'finance_payment_plan';
|
protected $name = 'finance_payment_plan';
|
||||||
protected $deleteTime = 'delete_time';
|
protected $deleteTime = 'delete_time';
|
||||||
|
|
||||||
|
public function contract()
|
||||||
|
{
|
||||||
|
return $this->belongsTo(\app\common\model\contract\ProcurementContract::class, 'contract_id');
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user