新增报销模块
This commit is contained in:
parent
a92eeca5d9
commit
d706fafaaa
@ -16,6 +16,8 @@ namespace app\adminapi\logic\expense;
|
|||||||
|
|
||||||
|
|
||||||
use app\common\model\expense\ExpenseReimbursement;
|
use app\common\model\expense\ExpenseReimbursement;
|
||||||
|
use app\common\model\expense\ExpenseReimbursementDetailLogic;
|
||||||
|
use app\common\model\expense\ExpenseReimbursementInvoiceDetailLogic;
|
||||||
use app\common\logic\BaseLogic;
|
use app\common\logic\BaseLogic;
|
||||||
use think\facade\Db;
|
use think\facade\Db;
|
||||||
|
|
||||||
@ -40,7 +42,7 @@ class ExpenseReimbursementLogic extends BaseLogic
|
|||||||
{
|
{
|
||||||
Db::startTrans();
|
Db::startTrans();
|
||||||
try {
|
try {
|
||||||
ExpenseReimbursement::create([
|
$expenseReimbursement = ExpenseReimbursement::create([
|
||||||
'org_id' => $params['org_id'],
|
'org_id' => $params['org_id'],
|
||||||
'dept_id' => $params['dept_id'],
|
'dept_id' => $params['dept_id'],
|
||||||
'approve_id' => $params['approve_id'],
|
'approve_id' => $params['approve_id'],
|
||||||
@ -57,6 +59,32 @@ class ExpenseReimbursementLogic extends BaseLogic
|
|||||||
'annex' => $params['annex'],
|
'annex' => $params['annex'],
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
foreach ($params['detail'] ?? [] as $item)
|
||||||
|
{
|
||||||
|
ExpenseReimbursementDetailLogic::create([
|
||||||
|
'expense_id' => $expenseReimbursement->id,
|
||||||
|
'cost_subject_id' => $item['cost_subject_id'] ?? 0,
|
||||||
|
'use_to' => $item['use_to'] ?? '',
|
||||||
|
'amount' => $item['amount'] ?? 0,
|
||||||
|
'remark' => $item['remark'] ?? ''
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach ($params['invoice'] ?? [] as $item)
|
||||||
|
{
|
||||||
|
ExpenseReimbursementInvoiceDetailLogic::create([
|
||||||
|
'expense_id' => $expenseReimbursement->id,
|
||||||
|
'invoice_type' => $item['invoice_type'] ?? 0,
|
||||||
|
'invoice_sn' => $item['invoice_sn'] ?? '',
|
||||||
|
'tax_rate' => $item['tax_rate'] ?? 0,
|
||||||
|
'invoice_form' => $item['invoice_form'] ?? 0,
|
||||||
|
'amount' => $item['amount'] ?? 0,
|
||||||
|
'tax' => $item['tax'] ?? 0,
|
||||||
|
'annex' => $item['annex'] ?? '',
|
||||||
|
'remark' => $item['remark'] ?? ''
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
Db::commit();
|
Db::commit();
|
||||||
return true;
|
return true;
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
@ -94,6 +122,33 @@ class ExpenseReimbursementLogic extends BaseLogic
|
|||||||
'remark' => $params['remark'],
|
'remark' => $params['remark'],
|
||||||
'annex' => $params['annex'],
|
'annex' => $params['annex'],
|
||||||
]);
|
]);
|
||||||
|
ExpenseReimbursementDetailLogic::where('expense_id', $params['id'])->update(['delete_time' => time()]);
|
||||||
|
ExpenseReimbursementInvoiceDetailLogic::where('expense_id', $params['id'])->update(['delete_time' => time()]);
|
||||||
|
foreach ($params['detail'] ?? [] as $item)
|
||||||
|
{
|
||||||
|
ExpenseReimbursementDetailLogic::where('expense_id', $params['id'])->update([
|
||||||
|
'expense_id' => $expenseReimbursement->id,
|
||||||
|
'cost_subject_id' => $item['cost_subject_id'] ?? 0,
|
||||||
|
'use_to' => $item['use_to'] ?? '',
|
||||||
|
'amount' => $item['amount'] ?? 0,
|
||||||
|
'remark' => $item['remark'] ?? ''
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach ($params['invoice'] ?? [] as $item)
|
||||||
|
{
|
||||||
|
ExpenseReimbursementInvoiceDetailLogic::where('expense_id', $params['id'])->update([
|
||||||
|
'expense_id' => $expenseReimbursement->id,
|
||||||
|
'invoice_type' => $item['invoice_type'] ?? 0,
|
||||||
|
'invoice_sn' => $item['invoice_sn'] ?? '',
|
||||||
|
'tax_rate' => $item['tax_rate'] ?? 0,
|
||||||
|
'invoice_form' => $item['invoice_form'] ?? 0,
|
||||||
|
'amount' => $item['amount'] ?? 0,
|
||||||
|
'tax' => $item['tax'] ?? 0,
|
||||||
|
'annex' => $item['annex'] ?? '',
|
||||||
|
'remark' => $item['remark'] ?? ''
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
Db::commit();
|
Db::commit();
|
||||||
return true;
|
return true;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user