From 1f940dd8faebef7d4ccefab91da8582618288f9c Mon Sep 17 00:00:00 2001 From: weiz <736250432@qq.com> Date: Mon, 19 Feb 2024 16:49:09 +0800 Subject: [PATCH] update --- .../finance/FinanceInvoiceApplyController.php | 20 ++++++++++ .../finance/FinancePaymentApplyController.php | 20 ++++++++++ .../finance/FinancePaymentPlanController.php | 20 ++++++++++ .../FinanceReceiptRecordController.php | 20 ++++++++++ .../finance/FinanceRefundApplyController.php | 21 +++++++++- .../finance/FinanceRefundRecordController.php | 20 ++++++++++ .../FinanceReturnedMoneyController.php | 20 ++++++++++ .../FinanceReturnedRecordController.php | 20 ++++++++++ .../finance/FinanceInvoiceApplyLogic.php | 37 ++++++++++++++++-- .../finance/FinancePaymentApplyLogic.php | 37 ++++++++++++++++-- .../logic/finance/FinancePaymentPlanLogic.php | 39 ++++++++++++++++--- .../finance/FinanceReceiptRecordLogic.php | 39 ++++++++++++++++--- .../logic/finance/FinanceRefundApplyLogic.php | 39 ++++++++++++++++--- .../finance/FinanceRefundRecordLogic.php | 39 ++++++++++++++++--- .../finance/FinanceReturnedMoneyLogic.php | 39 ++++++++++++++++--- .../finance/FinanceReturnedRecordLogic.php | 39 ++++++++++++++++--- .../finance/FinanceInvoiceApplyValidate.php | 25 ++++++++++-- .../finance/FinancePaymentApplyValidate.php | 25 ++++++++++-- .../finance/FinancePaymentPlanValidate.php | 25 ++++++++++-- .../finance/FinanceReceiptRecordValidate.php | 25 ++++++++++-- .../finance/FinanceRefundApplyValidate.php | 25 ++++++++++-- .../finance/FinanceRefundRecordValidate.php | 25 ++++++++++-- .../finance/FinanceReturnedMoneyValidate.php | 23 ++++++++++- .../finance/FinanceReturnedRecordValidate.php | 25 ++++++++++-- 24 files changed, 605 insertions(+), 62 deletions(-) diff --git a/app/adminapi/controller/finance/FinanceInvoiceApplyController.php b/app/adminapi/controller/finance/FinanceInvoiceApplyController.php index 9c4ce6746..09f7c81b8 100644 --- a/app/adminapi/controller/finance/FinanceInvoiceApplyController.php +++ b/app/adminapi/controller/finance/FinanceInvoiceApplyController.php @@ -20,6 +20,8 @@ use app\adminapi\controller\BaseAdminController; use app\adminapi\lists\finance\FinanceInvoiceApplyLists; use app\adminapi\logic\finance\FinanceInvoiceApplyLogic; use app\adminapi\validate\finance\FinanceInvoiceApplyValidate; +use app\common\model\oa\Flow; +use app\common\model\oa\FlowType; /** @@ -103,6 +105,24 @@ class FinanceInvoiceApplyController extends BaseAdminController $result = FinanceInvoiceApplyLogic::detail($params); return $this->data($result); } + + public function flows(): \think\response\Json + { + $flow_type = FlowType::where('type',3)->where('name','kpsq')->findOrEmpty(); + $data = Flow::field('id,name')->where('flow_cate',$flow_type['id'])->where('status',2)->select(); + return $this->success('请求成功',$data->toArray()); + } + + //添加审批 + public function approve(): \think\response\Json + { + $params = (new FinanceInvoiceApplyValidate())->post()->goCheck('approve'); + $result = FinanceInvoiceApplyLogic::approve($params,$this->adminId); + if (true === $result) { + return $this->success('提交审核信息成功', [], 1, 1); + } + return $this->fail(FinanceInvoiceApplyLogic::getError()); + } } \ No newline at end of file diff --git a/app/adminapi/controller/finance/FinancePaymentApplyController.php b/app/adminapi/controller/finance/FinancePaymentApplyController.php index cd8263d47..4d3f5a8c6 100644 --- a/app/adminapi/controller/finance/FinancePaymentApplyController.php +++ b/app/adminapi/controller/finance/FinancePaymentApplyController.php @@ -20,6 +20,8 @@ use app\adminapi\controller\BaseAdminController; use app\adminapi\lists\finance\FinancePaymentApplyLists; use app\adminapi\logic\finance\FinancePaymentApplyLogic; use app\adminapi\validate\finance\FinancePaymentApplyValidate; +use app\common\model\oa\Flow; +use app\common\model\oa\FlowType; /** @@ -103,6 +105,24 @@ class FinancePaymentApplyController extends BaseAdminController $result = FinancePaymentApplyLogic::detail($params); return $this->data($result); } + + public function flows(): \think\response\Json + { + $flow_type = FlowType::where('type',3)->where('name','fksq')->findOrEmpty(); + $data = Flow::field('id,name')->where('flow_cate',$flow_type['id'])->where('status',2)->select(); + return $this->success('请求成功',$data->toArray()); + } + + //添加审批 + public function approve(): \think\response\Json + { + $params = (new FinancePaymentApplyValidate())->post()->goCheck('approve'); + $result = FinancePaymentApplyLogic::approve($params,$this->adminId); + if (true === $result) { + return $this->success('提交审核信息成功', [], 1, 1); + } + return $this->fail(FinancePaymentApplyLogic::getError()); + } } \ No newline at end of file diff --git a/app/adminapi/controller/finance/FinancePaymentPlanController.php b/app/adminapi/controller/finance/FinancePaymentPlanController.php index cfb768b4a..91a794d3d 100644 --- a/app/adminapi/controller/finance/FinancePaymentPlanController.php +++ b/app/adminapi/controller/finance/FinancePaymentPlanController.php @@ -20,6 +20,8 @@ use app\adminapi\controller\BaseAdminController; use app\adminapi\lists\finance\FinancePaymentPlanLists; use app\adminapi\logic\finance\FinancePaymentPlanLogic; use app\adminapi\validate\finance\FinancePaymentPlanValidate; +use app\common\model\oa\Flow; +use app\common\model\oa\FlowType; /** @@ -103,6 +105,24 @@ class FinancePaymentPlanController extends BaseAdminController $result = FinancePaymentPlanLogic::detail($params); return $this->data($result); } + + public function flows(): \think\response\Json + { + $flow_type = FlowType::where('type',3)->where('name','fkjh')->findOrEmpty(); + $data = Flow::field('id,name')->where('flow_cate',$flow_type['id'])->where('status',2)->select(); + return $this->success('请求成功',$data->toArray()); + } + + //添加审批 + public function approve(): \think\response\Json + { + $params = (new FinancePaymentPlanValidate())->post()->goCheck('approve'); + $result = FinancePaymentPlanLogic::approve($params,$this->adminId); + if (true === $result) { + return $this->success('提交审核信息成功', [], 1, 1); + } + return $this->fail(FinancePaymentPlanLogic::getError()); + } } \ No newline at end of file diff --git a/app/adminapi/controller/finance/FinanceReceiptRecordController.php b/app/adminapi/controller/finance/FinanceReceiptRecordController.php index 051c554ed..d00e89d53 100644 --- a/app/adminapi/controller/finance/FinanceReceiptRecordController.php +++ b/app/adminapi/controller/finance/FinanceReceiptRecordController.php @@ -20,6 +20,8 @@ use app\adminapi\controller\BaseAdminController; use app\adminapi\lists\finance\FinanceReceiptRecordLists; use app\adminapi\logic\finance\FinanceReceiptRecordLogic; use app\adminapi\validate\finance\FinanceReceiptRecordValidate; +use app\common\model\oa\Flow; +use app\common\model\oa\FlowType; /** @@ -103,6 +105,24 @@ class FinanceReceiptRecordController extends BaseAdminController $result = FinanceReceiptRecordLogic::detail($params); return $this->data($result); } + + public function flows(): \think\response\Json + { + $flow_type = FlowType::where('type',3)->where('name','spjl')->findOrEmpty(); + $data = Flow::field('id,name')->where('flow_cate',$flow_type['id'])->where('status',2)->select(); + return $this->success('请求成功',$data->toArray()); + } + + //添加审批 + public function approve(): \think\response\Json + { + $params = (new FinanceReceiptRecordValidate())->post()->goCheck('approve'); + $result = FinanceReceiptRecordLogic::approve($params,$this->adminId); + if (true === $result) { + return $this->success('提交审核信息成功', [], 1, 1); + } + return $this->fail(FinanceReceiptRecordLogic::getError()); + } } \ No newline at end of file diff --git a/app/adminapi/controller/finance/FinanceRefundApplyController.php b/app/adminapi/controller/finance/FinanceRefundApplyController.php index 4d2918b85..c16803490 100644 --- a/app/adminapi/controller/finance/FinanceRefundApplyController.php +++ b/app/adminapi/controller/finance/FinanceRefundApplyController.php @@ -20,6 +20,8 @@ use app\adminapi\controller\BaseAdminController; use app\adminapi\lists\finance\FinanceRefundApplyLists; use app\adminapi\logic\finance\FinanceRefundApplyLogic; use app\adminapi\validate\finance\FinanceRefundApplyValidate; +use app\common\model\oa\Flow; +use app\common\model\oa\FlowType; /** @@ -103,6 +105,23 @@ class FinanceRefundApplyController extends BaseAdminController $result = FinanceRefundApplyLogic::detail($params); return $this->data($result); } - + + public function flows(): \think\response\Json + { + $flow_type = FlowType::where('type',3)->where('name','tksq')->findOrEmpty(); + $data = Flow::field('id,name')->where('flow_cate',$flow_type['id'])->where('status',2)->select(); + return $this->success('请求成功',$data->toArray()); + } + + //添加审批 + public function approve(): \think\response\Json + { + $params = (new FinanceRefundApplyValidate())->post()->goCheck('approve'); + $result = FinanceRefundApplyLogic::approve($params,$this->adminId); + if (true === $result) { + return $this->success('提交审核信息成功', [], 1, 1); + } + return $this->fail(FinanceRefundApplyLogic::getError()); + } } \ No newline at end of file diff --git a/app/adminapi/controller/finance/FinanceRefundRecordController.php b/app/adminapi/controller/finance/FinanceRefundRecordController.php index a8adbd02b..8c809c91b 100644 --- a/app/adminapi/controller/finance/FinanceRefundRecordController.php +++ b/app/adminapi/controller/finance/FinanceRefundRecordController.php @@ -20,6 +20,8 @@ use app\adminapi\controller\BaseAdminController; use app\adminapi\lists\finance\FinanceRefundRecordLists; use app\adminapi\logic\finance\FinanceRefundRecordLogic; use app\adminapi\validate\finance\FinanceRefundRecordValidate; +use app\common\model\oa\Flow; +use app\common\model\oa\FlowType; /** @@ -103,6 +105,24 @@ class FinanceRefundRecordController extends BaseAdminController $result = FinanceRefundRecordLogic::detail($params); return $this->data($result); } + + public function flows(): \think\response\Json + { + $flow_type = FlowType::where('type',3)->where('name','tkjl')->findOrEmpty(); + $data = Flow::field('id,name')->where('flow_cate',$flow_type['id'])->where('status',2)->select(); + return $this->success('请求成功',$data->toArray()); + } + + //添加审批 + public function approve(): \think\response\Json + { + $params = (new FinanceRefundRecordValidate())->post()->goCheck('approve'); + $result = FinanceRefundRecordLogic::approve($params,$this->adminId); + if (true === $result) { + return $this->success('提交审核信息成功', [], 1, 1); + } + return $this->fail(FinanceRefundRecordLogic::getError()); + } } \ No newline at end of file diff --git a/app/adminapi/controller/finance/FinanceReturnedMoneyController.php b/app/adminapi/controller/finance/FinanceReturnedMoneyController.php index 661e4e299..101f3c217 100644 --- a/app/adminapi/controller/finance/FinanceReturnedMoneyController.php +++ b/app/adminapi/controller/finance/FinanceReturnedMoneyController.php @@ -20,6 +20,8 @@ use app\adminapi\controller\BaseAdminController; use app\adminapi\lists\finance\FinanceReturnedMoneyLists; use app\adminapi\logic\finance\FinanceReturnedMoneyLogic; use app\adminapi\validate\finance\FinanceReturnedMoneyValidate; +use app\common\model\oa\Flow; +use app\common\model\oa\FlowType; /** @@ -103,6 +105,24 @@ class FinanceReturnedMoneyController extends BaseAdminController $result = FinanceReturnedMoneyLogic::detail($params); return $this->data($result); } + + public function flows(): \think\response\Json + { + $flow_type = FlowType::where('type',3)->where('name','hkjh')->findOrEmpty(); + $data = Flow::field('id,name')->where('flow_cate',$flow_type['id'])->where('status',2)->select(); + return $this->success('请求成功',$data->toArray()); + } + + //添加审批 + public function approve(): \think\response\Json + { + $params = (new FinanceReturnedMoneyValidate())->post()->goCheck('approve'); + $result = FinanceReturnedMoneyLogic::approve($params,$this->adminId); + if (true === $result) { + return $this->success('提交审核信息成功', [], 1, 1); + } + return $this->fail(FinanceReturnedMoneyLogic::getError()); + } } \ No newline at end of file diff --git a/app/adminapi/controller/finance/FinanceReturnedRecordController.php b/app/adminapi/controller/finance/FinanceReturnedRecordController.php index 8dfb10b9c..9fcfbe4bd 100644 --- a/app/adminapi/controller/finance/FinanceReturnedRecordController.php +++ b/app/adminapi/controller/finance/FinanceReturnedRecordController.php @@ -20,6 +20,8 @@ use app\adminapi\controller\BaseAdminController; use app\adminapi\lists\finance\FinanceReturnedRecordLists; use app\adminapi\logic\finance\FinanceReturnedRecordLogic; use app\adminapi\validate\finance\FinanceReturnedRecordValidate; +use app\common\model\oa\Flow; +use app\common\model\oa\FlowType; /** @@ -103,6 +105,24 @@ class FinanceReturnedRecordController extends BaseAdminController $result = FinanceReturnedRecordLogic::detail($params); return $this->data($result); } + + public function flows(): \think\response\Json + { + $flow_type = FlowType::where('type',3)->where('name','hkjl')->findOrEmpty(); + $data = Flow::field('id,name')->where('flow_cate',$flow_type['id'])->where('status',2)->select(); + return $this->success('请求成功',$data->toArray()); + } + + //添加审批 + public function approve(): \think\response\Json + { + $params = (new FinanceReturnedRecordValidate())->post()->goCheck('approve'); + $result = FinanceReturnedRecordLogic::approve($params,$this->adminId); + if (true === $result) { + return $this->success('提交审核信息成功', [], 1, 1); + } + return $this->fail(FinanceReturnedRecordLogic::getError()); + } } \ No newline at end of file diff --git a/app/adminapi/logic/finance/FinanceInvoiceApplyLogic.php b/app/adminapi/logic/finance/FinanceInvoiceApplyLogic.php index af87de9fe..ed1259c5c 100644 --- a/app/adminapi/logic/finance/FinanceInvoiceApplyLogic.php +++ b/app/adminapi/logic/finance/FinanceInvoiceApplyLogic.php @@ -178,10 +178,39 @@ class FinanceInvoiceApplyLogic extends BaseLogic $data['period_text'] = $data->period_text; $data['tax_rate_text'] = $data->tax_rate_text; $data['invoice_type_text'] = $data->invoice_type_text; - $approve_info = FlowApprove::field('id')->where('content_id',$params['id']) - ->where('content_model','app\common\model\finance\FinanceInvoiceApply') - ->where('content_logic','app\adminapi\logic\finance\FinanceInvoiceApplyLogic')->findOrEmpty(); - $data['approve_id'] = $approve_info['id']; + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + $data['approve_check_status'] = $approve_data['check_status']; return $data->toArray(); } + + public static function approve($params,$admin_id): bool{ + $data = FinanceInvoiceApply::where('id',$params['id'])->findOrEmpty(); + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + if(!empty($data['approve_id']) && $approve_data['check_status'] != 3){ + self::setError('当前内容存在审核信息,请勿重复提交'); + return false; + } + Db::startTrans(); + try { + $res = addApprove( + '开票申请', + $params['id'], + 'app\common\model\finance\FinanceInvoiceApply', + $params['path'], + $params['flow_id'], + $admin_id + ); + if($res){ + FinanceInvoiceApply::where('id',$params['id'])->update([ + 'approve_id' => $res, + ]); + } + Db::commit(); + return true; + } catch (\Exception $e) { + Db::rollback(); + self::setError($e->getMessage()); + return false; + } + } } \ No newline at end of file diff --git a/app/adminapi/logic/finance/FinancePaymentApplyLogic.php b/app/adminapi/logic/finance/FinancePaymentApplyLogic.php index 51570c0bd..3f7d5e75e 100644 --- a/app/adminapi/logic/finance/FinancePaymentApplyLogic.php +++ b/app/adminapi/logic/finance/FinancePaymentApplyLogic.php @@ -181,10 +181,39 @@ class FinancePaymentApplyLogic extends BaseLogic $data['contract_name'] = $contract['contract_name']; $data['period'] = $finance_payment_plan->period_text; $data['bank_account_info'] = BankAccount::field('account_sn,deposit_bank,account_name,account')->where('id',$data['bank_account_id'])->findOrEmpty(); - $approve_info = FlowApprove::field('id')->where('content_id',$params['id']) - ->where('content_model','app\common\model\finance\FinancePaymentApply') - ->where('content_logic','app\adminapi\logic\finance\FinancePaymentApplyLogic')->findOrEmpty(); - $data['approve_id'] = $approve_info['id']; + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + $data['approve_check_status'] = $approve_data['check_status']; return $data->toArray(); } + + public static function approve($params,$admin_id): bool{ + $data = FinancePaymentApply::where('id',$params['id'])->findOrEmpty(); + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + if(!empty($data['approve_id']) && $approve_data['check_status'] != 3){ + self::setError('当前内容存在审核信息,请勿重复提交'); + return false; + } + Db::startTrans(); + try { + $res = addApprove( + '付款申请', + $params['id'], + 'app\common\model\finance\FinancePaymentApply', + $params['path'], + $params['flow_id'], + $admin_id + ); + if($res){ + FinancePaymentApply::where('id',$params['id'])->update([ + 'approve_id' => $res, + ]); + } + Db::commit(); + return true; + } catch (\Exception $e) { + Db::rollback(); + self::setError($e->getMessage()); + return false; + } + } } \ No newline at end of file diff --git a/app/adminapi/logic/finance/FinancePaymentPlanLogic.php b/app/adminapi/logic/finance/FinancePaymentPlanLogic.php index c8f97a415..ccb368afa 100644 --- a/app/adminapi/logic/finance/FinancePaymentPlanLogic.php +++ b/app/adminapi/logic/finance/FinancePaymentPlanLogic.php @@ -140,7 +140,7 @@ class FinancePaymentPlanLogic extends BaseLogic */ public static function detail($params): array { - $data = FinancePaymentPlan::field('id,supplier_id,project_id,contract_id,contract_type,period,pay_date,amount,foreign_currency_remark,status,remark,annex') + $data = FinancePaymentPlan::field('id,supplier_id,project_id,contract_id,contract_type,period,pay_date,amount,foreign_currency_remark,status,remark,annex,approve_id') ->findOrEmpty($params['id']); $data['period_text'] = $data->period_text; $data['status_text'] = $data->status_text; @@ -158,10 +158,39 @@ class FinancePaymentPlanLogic extends BaseLogic } $data['contract_no'] = $contract['contract_no']; $data['contract_name'] = $contract['contract_name']; - $approve_info = FlowApprove::field('id')->where('content_id',$params['id']) - ->where('content_model','app\common\model\finance\FinancePaymentPlan') - ->where('content_logic','app\adminapi\logic\finance\FinancePaymentPlanLogic')->findOrEmpty(); - $data['approve_id'] = $approve_info['id']; + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + $data['approve_check_status'] = $approve_data['check_status']; return $data->toArray(); } + + public static function approve($params,$admin_id): bool{ + $data = FinancePaymentPlan::where('id',$params['id'])->findOrEmpty(); + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + if(!empty($data['approve_id']) && $approve_data['check_status'] != 3){ + self::setError('当前内容存在审核信息,请勿重复提交'); + return false; + } + Db::startTrans(); + try { + $res = addApprove( + '付款计划', + $params['id'], + 'app\common\model\finance\FinancePaymentPlan', + $params['path'], + $params['flow_id'], + $admin_id + ); + if($res){ + FinancePaymentPlan::where('id',$params['id'])->update([ + 'approve_id' => $res, + ]); + } + Db::commit(); + return true; + } catch (\Exception $e) { + Db::rollback(); + self::setError($e->getMessage()); + return false; + } + } } \ No newline at end of file diff --git a/app/adminapi/logic/finance/FinanceReceiptRecordLogic.php b/app/adminapi/logic/finance/FinanceReceiptRecordLogic.php index 5f08db574..19291d027 100644 --- a/app/adminapi/logic/finance/FinanceReceiptRecordLogic.php +++ b/app/adminapi/logic/finance/FinanceReceiptRecordLogic.php @@ -151,7 +151,7 @@ class FinanceReceiptRecordLogic extends BaseLogic */ public static function detail($params): array { - $data = FinanceReceiptRecord::field('id,supplier_id,project_id,contract_id,contract_type,invoicing_date,commitor,invoice_type,invoice_no,invoice_amount,invoice_tax_rate,tax_amount,amount_excluding_tax,receipt_date,remark,annex') + $data = FinanceReceiptRecord::field('id,supplier_id,project_id,contract_id,contract_type,invoicing_date,commitor,invoice_type,invoice_no,invoice_amount,invoice_tax_rate,tax_amount,amount_excluding_tax,receipt_date,remark,annex,approve_id') ->findOrEmpty($params['id']); $data['invoice_type_text'] = $data->invoice_type_text; $data['invoice_tax_rate_text'] = $data->invoice_tax_rate_text; @@ -170,10 +170,39 @@ class FinanceReceiptRecordLogic extends BaseLogic $data['contract_no'] = $contract['contract_no']; $data['contract_name'] = $contract['contract_name']; $data['contract_cate'] = $data['contract_type']; - $approve_info = FlowApprove::field('id')->where('content_id',$params['id']) - ->where('content_model','app\common\model\finance\FinanceReceiptRecord') - ->where('content_logic','app\adminapi\logic\finance\FinanceReceiptRecordLogic')->findOrEmpty(); - $data['approve_id'] = $approve_info['id']; + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + $data['approve_check_status'] = $approve_data['check_status']; return $data->toArray(); } + + public static function approve($params,$admin_id): bool{ + $data = FinanceReceiptRecord::where('id',$params['id'])->findOrEmpty(); + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + if(!empty($data['approve_id']) && $approve_data['check_status'] != 3){ + self::setError('当前内容存在审核信息,请勿重复提交'); + return false; + } + Db::startTrans(); + try { + $res = addApprove( + '收票记录', + $params['id'], + 'app\common\model\finance\FinanceReceiptRecord', + $params['path'], + $params['flow_id'], + $admin_id + ); + if($res){ + FinanceReceiptRecord::where('id',$params['id'])->update([ + 'approve_id' => $res, + ]); + } + Db::commit(); + return true; + } catch (\Exception $e) { + Db::rollback(); + self::setError($e->getMessage()); + return false; + } + } } \ No newline at end of file diff --git a/app/adminapi/logic/finance/FinanceRefundApplyLogic.php b/app/adminapi/logic/finance/FinanceRefundApplyLogic.php index 8b4ceb401..016405c51 100644 --- a/app/adminapi/logic/finance/FinanceRefundApplyLogic.php +++ b/app/adminapi/logic/finance/FinanceRefundApplyLogic.php @@ -130,7 +130,7 @@ class FinanceRefundApplyLogic extends BaseLogic */ public static function detail($params): array { - $data = FinanceRefundApply::field('id,refund_code,project_id,contract_id,refund_date,reason,amount,refund_type,refund_user,remark,annex,collection_bank,collection_account,bank_account_id') + $data = FinanceRefundApply::field('id,refund_code,project_id,contract_id,refund_date,reason,amount,refund_type,refund_user,remark,annex,collection_bank,collection_account,bank_account_id,approve_id') ->findOrEmpty($params['id']); $project = Project::field('custom_id,name,project_code')->where('id',$data['project_id'])->findOrEmpty(); $custom = Custom::field('name')->where('id',$project['custom_id'])->findOrEmpty(); @@ -142,10 +142,39 @@ class FinanceRefundApplyLogic extends BaseLogic $data['contract_code'] = $contract['contract_code']; $data['refund_type_text'] = $data->refund_type_text; $data['bank_account_info'] = BankAccount::field('account_sn,deposit_bank,account_name,account')->where('id',$data['bank_account_id'])->findOrEmpty(); - $approve_info = FlowApprove::field('id')->where('content_id',$params['id']) - ->where('content_model','app\common\model\finance\FinanceRefundApply') - ->where('content_logic','app\adminapi\logic\finance\FinanceRefundApplyLogic')->findOrEmpty(); - $data['approve_id'] = $approve_info['id']; + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + $data['approve_check_status'] = $approve_data['check_status']; return $data->toArray(); } + + public static function approve($params,$admin_id): bool{ + $data = FinanceRefundApply::where('id',$params['id'])->findOrEmpty(); + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + if(!empty($data['approve_id']) && $approve_data['check_status'] != 3){ + self::setError('当前内容存在审核信息,请勿重复提交'); + return false; + } + Db::startTrans(); + try { + $res = addApprove( + '退款申请', + $params['id'], + 'app\common\model\finance\FinanceRefundApply', + $params['path'], + $params['flow_id'], + $admin_id + ); + if($res){ + FinanceRefundApply::where('id',$params['id'])->update([ + 'approve_id' => $res, + ]); + } + Db::commit(); + return true; + } catch (\Exception $e) { + Db::rollback(); + self::setError($e->getMessage()); + return false; + } + } } \ No newline at end of file diff --git a/app/adminapi/logic/finance/FinanceRefundRecordLogic.php b/app/adminapi/logic/finance/FinanceRefundRecordLogic.php index 4c06fab31..d55aee18a 100644 --- a/app/adminapi/logic/finance/FinanceRefundRecordLogic.php +++ b/app/adminapi/logic/finance/FinanceRefundRecordLogic.php @@ -142,7 +142,7 @@ class FinanceRefundRecordLogic extends BaseLogic */ public static function detail($params): array { - $data = FinanceRefundRecord::field('id,supplier_id,project_id,contract_type,contract_id,refund_amount,refund_date,refund_type,reason,remark,annex,bank_account_id') + $data = FinanceRefundRecord::field('id,supplier_id,project_id,contract_type,contract_id,refund_amount,refund_date,refund_type,reason,remark,annex,bank_account_id,approve_id') ->findOrEmpty($params['id']); $supplier = Supplier::field('supplier_name,supplier_code')->where('id',$data['supplier_id'])->findOrEmpty(); $project = Project::field('name,project_code')->where('id',$data['project_id'])->findOrEmpty(); @@ -161,10 +161,39 @@ class FinanceRefundRecordLogic extends BaseLogic $data['contract_type_text'] = $data->contract_type_text; $data['refund_type_text'] = $data->refund_type_text; $data['bank_account_info'] = BankAccount::field('account_sn,deposit_bank,account_name,account')->where('id',$data['bank_account_id'])->findOrEmpty(); - $approve_info = FlowApprove::field('id')->where('content_id',$params['id']) - ->where('content_model','app\common\model\finance\FinanceRefundRecord') - ->where('content_logic','app\adminapi\logic\finance\FinanceRefundRecordLogic')->findOrEmpty(); - $data['approve_id'] = $approve_info['id']; + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + $data['approve_check_status'] = $approve_data['check_status']; return $data->toArray(); } + + public static function approve($params,$admin_id): bool{ + $data = FinanceRefundRecord::where('id',$params['id'])->findOrEmpty(); + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + if(!empty($data['approve_id']) && $approve_data['check_status'] != 3){ + self::setError('当前内容存在审核信息,请勿重复提交'); + return false; + } + Db::startTrans(); + try { + $res = addApprove( + '退款记录', + $params['id'], + 'app\common\model\finance\FinanceRefundRecord', + $params['path'], + $params['flow_id'], + $admin_id + ); + if($res){ + FinanceRefundRecord::where('id',$params['id'])->update([ + 'approve_id' => $res, + ]); + } + Db::commit(); + return true; + } catch (\Exception $e) { + Db::rollback(); + self::setError($e->getMessage()); + return false; + } + } } \ No newline at end of file diff --git a/app/adminapi/logic/finance/FinanceReturnedMoneyLogic.php b/app/adminapi/logic/finance/FinanceReturnedMoneyLogic.php index 4cc2445a4..732597962 100644 --- a/app/adminapi/logic/finance/FinanceReturnedMoneyLogic.php +++ b/app/adminapi/logic/finance/FinanceReturnedMoneyLogic.php @@ -122,7 +122,7 @@ class FinanceReturnedMoneyLogic extends BaseLogic */ public static function detail($params): array { - $data = FinanceReturnedMoney::field('id,project_id,contract_id,return_date,period,amount,return_status,return_duty_id,remark,annex')->findOrEmpty($params['id']); + $data = FinanceReturnedMoney::field('id,project_id,contract_id,return_date,period,amount,return_status,return_duty_id,remark,annex,approve_id')->findOrEmpty($params['id']); $project = Project::field('custom_id,name,project_code')->where('id',$data['project_id'])->findOrEmpty(); $custom = Custom::field('name')->where('id',$project['custom_id'])->findOrEmpty(); $contract = Contract::field('contract_name,contract_code')->where('id',$data['contract_id'])->findOrEmpty(); @@ -135,10 +135,39 @@ class FinanceReturnedMoneyLogic extends BaseLogic $data['period_text'] = $data->period_text; $data['return_status_text'] = $data->return_status_text; $data['return_duty'] = $return_duty['name']; - $approve_info = FlowApprove::field('id')->where('content_id',$params['id']) - ->where('content_model','app\common\model\finance\FinanceReturnedMoney') - ->where('content_logic','app\adminapi\logic\finance\FinanceReturnedMoneyLogic')->findOrEmpty(); - $data['approve_id'] = $approve_info['id']; + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + $data['approve_check_status'] = $approve_data['check_status']; return $data->toArray(); } + + public static function approve($params,$admin_id): bool{ + $data = FinanceReturnedMoney::where('id',$params['id'])->findOrEmpty(); + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + if(!empty($data['approve_id']) && $approve_data['check_status'] != 3){ + self::setError('当前内容存在审核信息,请勿重复提交'); + return false; + } + Db::startTrans(); + try { + $res = addApprove( + '回款计划', + $params['id'], + 'app\common\model\finance\FinanceReturnedMoney', + $params['path'], + $params['flow_id'], + $admin_id + ); + if($res){ + FinanceReturnedMoney::where('id',$params['id'])->update([ + 'approve_id' => $res, + ]); + } + Db::commit(); + return true; + } catch (\Exception $e) { + Db::rollback(); + self::setError($e->getMessage()); + return false; + } + } } \ No newline at end of file diff --git a/app/adminapi/logic/finance/FinanceReturnedRecordLogic.php b/app/adminapi/logic/finance/FinanceReturnedRecordLogic.php index 7a4839292..25ffd6cec 100644 --- a/app/adminapi/logic/finance/FinanceReturnedRecordLogic.php +++ b/app/adminapi/logic/finance/FinanceReturnedRecordLogic.php @@ -132,7 +132,7 @@ class FinanceReturnedRecordLogic extends BaseLogic */ public static function detail($params): array { - $data = FinanceReturnedRecord::field('id,project_id,contract_id,finance_returned_money_id,return_date,amount,collection_type,invoice_status,pay_type,return_desc,receiver,remark,annex,bank_account_id') + $data = FinanceReturnedRecord::field('id,project_id,contract_id,finance_returned_money_id,return_date,amount,collection_type,invoice_status,pay_type,return_desc,receiver,remark,annex,bank_account_id,approve_id') ->findOrEmpty($params['id']); $project = Project::field('custom_id,name,project_code')->where('id',$data['project_id'])->findOrEmpty(); $custom = Custom::field('name')->where('id',$project['custom_id'])->findOrEmpty(); @@ -148,10 +148,39 @@ class FinanceReturnedRecordLogic extends BaseLogic $data['invoice_status_text'] = $data->invoice_status_text; $data['pay_type_text'] = $data->pay_type_text; $data['bank_account_info'] = BankAccount::field('account_sn,deposit_bank,account_name,account')->where('id',$data['bank_account_id'])->findOrEmpty(); - $approve_info = FlowApprove::field('id')->where('content_id',$params['id']) - ->where('content_model','app\common\model\finance\FinanceReturnedRecord') - ->where('content_logic','app\adminapi\logic\finance\FinanceReturnedRecordLogic')->findOrEmpty(); - $data['approve_id'] = $approve_info['id']; + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + $data['approve_check_status'] = $approve_data['check_status']; return $data->toArray(); } + + public static function approve($params,$admin_id): bool{ + $data = FinanceReturnedRecord::where('id',$params['id'])->findOrEmpty(); + $approve_data = FlowApprove::where('id',$data['approve_id'])->findOrEmpty(); + if(!empty($data['approve_id']) && $approve_data['check_status'] != 3){ + self::setError('当前内容存在审核信息,请勿重复提交'); + return false; + } + Db::startTrans(); + try { + $res = addApprove( + '开票申请', + $params['id'], + 'app\common\model\finance\FinanceReturnedRecord', + $params['path'], + $params['flow_id'], + $admin_id + ); + if($res){ + FinanceReturnedRecord::where('id',$params['id'])->update([ + 'approve_id' => $res, + ]); + } + Db::commit(); + return true; + } catch (\Exception $e) { + Db::rollback(); + self::setError($e->getMessage()); + return false; + } + } } \ No newline at end of file diff --git a/app/adminapi/validate/finance/FinanceInvoiceApplyValidate.php b/app/adminapi/validate/finance/FinanceInvoiceApplyValidate.php index c97f3c913..3e72f1d7f 100644 --- a/app/adminapi/validate/finance/FinanceInvoiceApplyValidate.php +++ b/app/adminapi/validate/finance/FinanceInvoiceApplyValidate.php @@ -17,6 +17,7 @@ namespace app\adminapi\validate\finance; use app\common\model\contract\Contract; use app\common\model\dict\DictData; +use app\common\model\finance\FinanceInvoiceApply; use app\common\validate\BaseValidate; @@ -33,7 +34,7 @@ class FinanceInvoiceApplyValidate extends BaseValidate * @var string[] */ protected $rule = [ - 'id' => 'require', + 'id' => 'require|checkData', 'contract_id' => 'require|checkContract', 'invoicing_date' => 'require|dateFormat:Y-m-d', 'invoice_no' => 'require', @@ -42,6 +43,8 @@ class FinanceInvoiceApplyValidate extends BaseValidate 'invoice_type' => 'require|checkInvoiceType', 'invoicing_amount' => 'require|float|gt:0', 'annex' => 'checkAnnex', + 'flow_id' => 'require|checkFlow', + 'path' => 'require', ]; @@ -69,7 +72,7 @@ class FinanceInvoiceApplyValidate extends BaseValidate */ public function sceneAdd() { - return $this->remove('id', true)->remove('invoice_no',true); + return $this->remove('id', true)->remove('invoice_no',true)->remove('flow_id',true)->remove('path',true); } @@ -80,7 +83,9 @@ class FinanceInvoiceApplyValidate extends BaseValidate * @date 2023/12/13 15:01 */ public function sceneEdit() - {} + { + return $this->remove('flow_id',true)->remove('path',true); + } /** @@ -106,6 +111,20 @@ class FinanceInvoiceApplyValidate extends BaseValidate return $this->only(['id']); } + public function sceneApprove() + { + return $this->only(['id','flow_id','path']); + } + + public function checkData($value): bool|string + { + $data = FinanceInvoiceApply::where('id',$value)->findOrEmpty(); + if($data->isEmpty()){ + return '数据不存在'; + } + return true; + } + public function checkContract($value): bool|string { $data = Contract::where('id',$value)->findOrEmpty(); diff --git a/app/adminapi/validate/finance/FinancePaymentApplyValidate.php b/app/adminapi/validate/finance/FinancePaymentApplyValidate.php index c91c28b54..38d2cc8d8 100644 --- a/app/adminapi/validate/finance/FinancePaymentApplyValidate.php +++ b/app/adminapi/validate/finance/FinancePaymentApplyValidate.php @@ -19,6 +19,7 @@ use app\common\model\bank\BankAccount; use app\common\model\contract\ProcurementContract; use app\common\model\contract\SubcontractingContract; use app\common\model\dict\DictData; +use app\common\model\finance\FinancePaymentApply; use app\common\model\finance\FinancePaymentPlan; use app\common\model\supplier\Supplier; use app\common\validate\BaseValidate; @@ -37,7 +38,7 @@ class FinancePaymentApplyValidate extends BaseValidate * @var string[] */ protected $rule = [ - 'id' => 'require', + 'id' => 'require|checkData', 'supplier_id' => 'require|checkSupplier', 'contract_cate' => 'require|in:1,2', 'contract_id' => 'require|checkContract', @@ -52,6 +53,8 @@ class FinancePaymentApplyValidate extends BaseValidate 'payee_account_name' => 'require', 'payee_account' => 'require', 'bank_account_id' => 'require|checkBankAccount', + 'flow_id' => 'require|checkFlow', + 'path' => 'require', ]; @@ -85,7 +88,7 @@ class FinancePaymentApplyValidate extends BaseValidate */ public function sceneAdd() { - return $this->remove('id',true); + return $this->remove('id',true)->remove('flow_id',true)->remove('path',true); } @@ -96,7 +99,9 @@ class FinancePaymentApplyValidate extends BaseValidate * @date 2023/12/15 13:47 */ public function sceneEdit() - {} + { + return $this->remove('flow_id',true)->remove('path',true); + } /** @@ -122,6 +127,20 @@ class FinancePaymentApplyValidate extends BaseValidate return $this->only(['id']); } + public function sceneApprove() + { + return $this->only(['id','flow_id','path']); + } + + public function checkData($value): bool|string + { + $data = FinancePaymentApply::where('id',$value)->findOrEmpty(); + if($data->isEmpty()){ + return '数据不存在'; + } + return true; + } + public function checkSupplier($value): bool|string { $supplier = Supplier::where('id',$value)->findOrEmpty(); diff --git a/app/adminapi/validate/finance/FinancePaymentPlanValidate.php b/app/adminapi/validate/finance/FinancePaymentPlanValidate.php index 781556bc0..9f80eea47 100644 --- a/app/adminapi/validate/finance/FinancePaymentPlanValidate.php +++ b/app/adminapi/validate/finance/FinancePaymentPlanValidate.php @@ -18,6 +18,7 @@ namespace app\adminapi\validate\finance; use app\common\model\contract\ProcurementContract; use app\common\model\contract\SubcontractingContract; use app\common\model\dict\DictData; +use app\common\model\finance\FinancePaymentPlan; use app\common\model\supplier\Supplier; use app\common\validate\BaseValidate; @@ -35,7 +36,7 @@ class FinancePaymentPlanValidate extends BaseValidate * @var string[] */ protected $rule = [ - 'id' => 'require', + 'id' => 'require|checkData', 'supplier_id' => 'require|checkSupplier', 'contract_cate' => 'require|in:1,2', 'contract_id' => 'require|checkContract', @@ -44,6 +45,8 @@ class FinancePaymentPlanValidate extends BaseValidate 'amount' => 'require|float|gt:0', 'status' => 'require|checkStatus', 'annex' => 'checkAnnex', + 'flow_id' => 'require|checkFlow', + 'path' => 'require', ]; @@ -71,7 +74,7 @@ class FinancePaymentPlanValidate extends BaseValidate */ public function sceneAdd() { - return $this->remove('id', true); + return $this->remove('id', true)->remove('flow_id',true)->remove('path',true); } @@ -82,7 +85,9 @@ class FinancePaymentPlanValidate extends BaseValidate * @date 2023/12/15 11:14 */ public function sceneEdit() - {} + { + return $this->remove('flow_id',true)->remove('path',true); + } /** @@ -108,6 +113,20 @@ class FinancePaymentPlanValidate extends BaseValidate return $this->only(['id']); } + public function sceneApprove() + { + return $this->only(['id','flow_id','path']); + } + + public function checkData($value): bool|string + { + $data = FinancePaymentPlan::where('id',$value)->findOrEmpty(); + if($data->isEmpty()){ + return '数据不存在'; + } + return true; + } + public function checkSupplier($value): bool|string { $supplier = Supplier::where('id',$value)->findOrEmpty(); diff --git a/app/adminapi/validate/finance/FinanceReceiptRecordValidate.php b/app/adminapi/validate/finance/FinanceReceiptRecordValidate.php index c9fb4e46c..d8a856759 100644 --- a/app/adminapi/validate/finance/FinanceReceiptRecordValidate.php +++ b/app/adminapi/validate/finance/FinanceReceiptRecordValidate.php @@ -17,6 +17,7 @@ namespace app\adminapi\validate\finance; use app\common\model\contract\ProcurementContract; use app\common\model\contract\SubcontractingContract; use app\common\model\dict\DictData; +use app\common\model\finance\FinanceReceiptRecord; use app\common\model\supplier\Supplier; use app\common\validate\BaseValidate; @@ -34,7 +35,7 @@ class FinanceReceiptRecordValidate extends BaseValidate * @var string[] */ protected $rule = [ - 'id' => 'require', + 'id' => 'require|checkData', 'supplier_id' => 'require|checkSupplier', 'contract_cate' => 'require|in:1,2', 'contract_id' => 'require|checkContract', @@ -44,6 +45,8 @@ class FinanceReceiptRecordValidate extends BaseValidate 'invoice_tax_rate' => 'require|checkInvoiceTaxRate', 'receipt_date' => 'require|dateFormat:Y-m-d', 'annex' => 'checkAnnex', + 'flow_id' => 'require|checkFlow', + 'path' => 'require', ]; @@ -72,7 +75,7 @@ class FinanceReceiptRecordValidate extends BaseValidate */ public function sceneAdd() { - return $this->remove('id', true); + return $this->remove('id', true)->remove('flow_id',true)->remove('path',true); } @@ -83,7 +86,9 @@ class FinanceReceiptRecordValidate extends BaseValidate * @date 2023/12/15 10:20 */ public function sceneEdit() - {} + { + return $this->remove('flow_id',true)->remove('path',true); + } /** @@ -109,6 +114,20 @@ class FinanceReceiptRecordValidate extends BaseValidate return $this->only(['id']); } + public function sceneApprove() + { + return $this->only(['id','flow_id','path']); + } + + public function checkData($value): bool|string + { + $data = FinanceReceiptRecord::where('id',$value)->findOrEmpty(); + if($data->isEmpty()){ + return '数据不存在'; + } + return true; + } + public function checkSupplier($value): bool|string { $supplier = Supplier::where('id',$value)->findOrEmpty(); diff --git a/app/adminapi/validate/finance/FinanceRefundApplyValidate.php b/app/adminapi/validate/finance/FinanceRefundApplyValidate.php index ade66e0fa..2421f0cbe 100644 --- a/app/adminapi/validate/finance/FinanceRefundApplyValidate.php +++ b/app/adminapi/validate/finance/FinanceRefundApplyValidate.php @@ -18,6 +18,7 @@ namespace app\adminapi\validate\finance; use app\common\model\bank\BankAccount; use app\common\model\contract\Contract; use app\common\model\dict\DictData; +use app\common\model\finance\FinanceRefundApply; use app\common\validate\BaseValidate; @@ -34,7 +35,7 @@ class FinanceRefundApplyValidate extends BaseValidate * @var string[] */ protected $rule = [ - 'id' => 'require', + 'id' => 'require|checkData', 'contract_id' => 'require|checkContract', 'refund_date' => 'require|dateFormat:Y-m-d', 'reason' => 'require', @@ -44,6 +45,8 @@ class FinanceRefundApplyValidate extends BaseValidate 'collection_bank' => 'require', 'collection_account' => 'require', 'bank_account_id' => 'require|checkBankAccount', + 'flow_id' => 'require|checkFlow', + 'path' => 'require', ]; @@ -72,7 +75,7 @@ class FinanceRefundApplyValidate extends BaseValidate */ public function sceneAdd() { - return $this->remove('id', true); + return $this->remove('id', true)->remove('flow_id',true)->remove('path',true); } @@ -83,7 +86,9 @@ class FinanceRefundApplyValidate extends BaseValidate * @date 2023/12/14 16:58 */ public function sceneEdit() - {} + { + return $this->remove('flow_id',true)->remove('path',true); + } /** @@ -109,6 +114,20 @@ class FinanceRefundApplyValidate extends BaseValidate return $this->only(['id']); } + public function sceneApprove() + { + return $this->only(['id','flow_id','path']); + } + + public function checkData($value): bool|string + { + $data = FinanceRefundApply::where('id',$value)->findOrEmpty(); + if($data->isEmpty()){ + return '数据不存在'; + } + return true; + } + public function checkContract($value): bool|string { $data = Contract::where('id',$value)->findOrEmpty(); diff --git a/app/adminapi/validate/finance/FinanceRefundRecordValidate.php b/app/adminapi/validate/finance/FinanceRefundRecordValidate.php index 936b3059a..16273a0b4 100644 --- a/app/adminapi/validate/finance/FinanceRefundRecordValidate.php +++ b/app/adminapi/validate/finance/FinanceRefundRecordValidate.php @@ -19,6 +19,7 @@ use app\common\model\bank\BankAccount; use app\common\model\contract\ProcurementContract; use app\common\model\contract\SubcontractingContract; use app\common\model\dict\DictData; +use app\common\model\finance\FinanceRefundRecord; use app\common\model\supplier\Supplier; use app\common\validate\BaseValidate; @@ -36,7 +37,7 @@ class FinanceRefundRecordValidate extends BaseValidate * @var string[] */ protected $rule = [ - 'id' => 'require', + 'id' => 'require|checkData', 'supplier_id' => 'require|checkSupplier', 'contract_cate' => 'require|in:1,2', 'contract_id' => 'require|checkContract', @@ -45,6 +46,8 @@ class FinanceRefundRecordValidate extends BaseValidate 'refund_type' => 'require|checkRefundType', 'annex' => 'checkAnnex', 'bank_account_id' => 'require|checkBankAccount', + 'flow_id' => 'require|checkFlow', + 'path' => 'require', ]; @@ -72,7 +75,7 @@ class FinanceRefundRecordValidate extends BaseValidate */ public function sceneAdd() { - return $this->remove('id',true); + return $this->remove('id',true)->remove('flow_id',true)->remove('path',true); } @@ -83,7 +86,9 @@ class FinanceRefundRecordValidate extends BaseValidate * @date 2023/12/15 14:41 */ public function sceneEdit() - {} + { + return $this->remove('flow_id',true)->remove('path',true); + } /** @@ -109,6 +114,20 @@ class FinanceRefundRecordValidate extends BaseValidate return $this->only(['id']); } + public function sceneApprove() + { + return $this->only(['id','flow_id','path']); + } + + public function checkData($value): bool|string + { + $data = FinanceRefundRecord::where('id',$value)->findOrEmpty(); + if($data->isEmpty()){ + return '数据不存在'; + } + return true; + } + public function checkSupplier($value): bool|string { $supplier = Supplier::where('id',$value)->findOrEmpty(); diff --git a/app/adminapi/validate/finance/FinanceReturnedMoneyValidate.php b/app/adminapi/validate/finance/FinanceReturnedMoneyValidate.php index f4841fdd8..7171c3479 100644 --- a/app/adminapi/validate/finance/FinanceReturnedMoneyValidate.php +++ b/app/adminapi/validate/finance/FinanceReturnedMoneyValidate.php @@ -18,6 +18,7 @@ namespace app\adminapi\validate\finance; use app\common\model\auth\Admin; use app\common\model\contract\Contract; use app\common\model\dict\DictData; +use app\common\model\finance\FinanceReturnedMoney; use app\common\validate\BaseValidate; @@ -42,6 +43,8 @@ class FinanceReturnedMoneyValidate extends BaseValidate 'return_status' => 'require|checkReturnStatus', 'return_duty_id' => 'require|checkReturnDuty', 'annex' => 'checkAnnex', + 'flow_id' => 'require|checkFlow', + 'path' => 'require', ]; @@ -68,7 +71,7 @@ class FinanceReturnedMoneyValidate extends BaseValidate */ public function sceneAdd() { - return $this->remove('id', true); + return $this->remove('id', true)->remove('flow_id',true)->remove('path',true); } @@ -79,7 +82,9 @@ class FinanceReturnedMoneyValidate extends BaseValidate * @date 2023/12/13 15:38 */ public function sceneEdit() - {} + { + return $this->remove('flow_id',true)->remove('path',true); + } /** @@ -105,6 +110,20 @@ class FinanceReturnedMoneyValidate extends BaseValidate return $this->only(['id']); } + public function sceneApprove() + { + return $this->only(['id','flow_id','path']); + } + + public function checkData($value): bool|string + { + $data = FinanceReturnedMoney::where('id',$value)->findOrEmpty(); + if($data->isEmpty()){ + return '数据不存在'; + } + return true; + } + public function checkContract($value): bool|string { $data = Contract::where('id',$value)->findOrEmpty(); diff --git a/app/adminapi/validate/finance/FinanceReturnedRecordValidate.php b/app/adminapi/validate/finance/FinanceReturnedRecordValidate.php index b7dd2781c..d690b0ed8 100644 --- a/app/adminapi/validate/finance/FinanceReturnedRecordValidate.php +++ b/app/adminapi/validate/finance/FinanceReturnedRecordValidate.php @@ -19,6 +19,7 @@ use app\common\model\bank\BankAccount; use app\common\model\contract\Contract; use app\common\model\dict\DictData; use app\common\model\finance\FinanceReturnedMoney; +use app\common\model\finance\FinanceReturnedRecord; use app\common\validate\BaseValidate; @@ -35,7 +36,7 @@ class FinanceReturnedRecordValidate extends BaseValidate * @var string[] */ protected $rule = [ - 'id' => 'require', + 'id' => 'require|checkData', 'contract_id' => 'require|checkContract', 'finance_returned_money_id' => 'require|checkReturnedMoney', 'return_date' => 'require|dateFormat:Y-m-d', @@ -45,6 +46,8 @@ class FinanceReturnedRecordValidate extends BaseValidate 'pay_type' => 'require|checkPayType', 'annex' => 'checkAnnex', 'bank_account_id' => 'require|checkBankAccount', + 'flow_id' => 'require|checkFlow', + 'path' => 'require', ]; @@ -73,7 +76,7 @@ class FinanceReturnedRecordValidate extends BaseValidate */ public function sceneAdd() { - return $this->remove('id', true); + return $this->remove('id', true)->remove('flow_id',true)->remove('path',true); } @@ -84,7 +87,9 @@ class FinanceReturnedRecordValidate extends BaseValidate * @date 2023/12/13 16:28 */ public function sceneEdit() - {} + { + return $this->remove('flow_id',true)->remove('path',true); + } /** @@ -110,6 +115,20 @@ class FinanceReturnedRecordValidate extends BaseValidate return $this->only(['id']); } + public function sceneApprove() + { + return $this->only(['id','flow_id','path']); + } + + public function checkData($value): bool|string + { + $data = FinanceReturnedRecord::where('id',$value)->findOrEmpty(); + if($data->isEmpty()){ + return '数据不存在'; + } + return true; + } + public function checkContract($value): bool|string { $data = Contract::where('id',$value)->findOrEmpty();