From ff1fe3a30ba3f96cfe96045b6b74645f057895f0 Mon Sep 17 00:00:00 2001 From: zmj <1493694146@qq.com> Date: Fri, 29 Mar 2024 15:18:24 +0800 Subject: [PATCH] add --- ...inancialExpenseReimbursementController.php | 108 ----- ...FinancialTravelReimbursementController.php | 108 ----- .../FinancialExpenseReimbursementLists.php | 78 ---- .../FinancialTravelReimbursementLists.php | 77 ---- .../FinancialExpenseReimbursementLogic.php | 124 ------ .../FinancialTravelReimbursementLogic.php | 124 ------ .../FinancialExpenseReimbursementValidate.php | 112 ----- .../FinancialTravelReimbursementValidate.php | 114 ----- .../FinancialExpenseReimbursement.php | 34 -- .../FinancialTravelReimbursement.php | 34 -- generate/sql/menu.sql | 13 - .../api/financial_expense_reimbursement.ts | 26 -- .../src/api/financial_travel_reimbursement.ts | 26 -- .../financial_expense_reimbursement/edit.vue | 185 -------- .../financial_expense_reimbursement/index.vue | 153 ------- src/api/build/build_report_detail.ts | 5 + src/api/financial_borrow_money.ts | 32 ++ src/api/financial_repayment.ts | 26 ++ src/api/financial_using_funds.ts | 35 ++ src/assets/images/CWGL.png | Bin 0 -> 3998 bytes src/assets/images/GCJL.png | Bin 0 -> 3356 bytes src/assets/images/SGGL.png | Bin 0 -> 2664 bytes src/assets/images/XMGL.png | Bin 0 -> 2458 bytes src/assets/images/XMZX.png | Bin 0 -> 3117 bytes src/assets/images/XT.png | Bin 0 -> 2556 bytes src/assets/images/ZJZX.png | Bin 0 -> 2261 bytes src/assets/images/mipmap-xxxhdpi/AS.png | Bin 0 -> 1531 bytes src/assets/images/mipmap-xxxhdpi/AS1.png | Bin 0 -> 1967 bytes src/assets/images/mipmap-xxxhdpi/AS2.png | Bin 0 -> 2386 bytes src/assets/images/mipmap-xxxhdpi/AS3.png | Bin 0 -> 2556 bytes src/assets/images/mipmap-xxxhdpi/AS4.png | Bin 0 -> 2240 bytes src/assets/images/mipmap-xxxhdpi/AS5.png | Bin 0 -> 3813 bytes src/components/build_plan/index.vue | 13 - .../dialogTable/dialogTableConfig.ts | 34 ++ src/components/formTable/index.vue | 17 +- .../default/components/header/menuLi.vue | 24 +- .../components/header/multiple-tabs.vue | 2 +- src/views/bidbbond/index.vue | 6 +- src/views/build_report/detail.js | 122 ++++++ src/views/build_report/edit.vue | 18 +- src/views/build_report/index.vue | 18 +- src/views/financial_borrow_money/detail.js | 46 ++ .../views/financial_borrow_money}/edit.vue | 106 +++-- .../views/financial_borrow_money}/index.vue | 105 +++-- src/views/financial_repayment/detail.js | 37 ++ src/views/financial_repayment/edit.vue | 196 +++++++++ src/views/financial_repayment/index.vue | 146 +++++++ .../financial_travel_reimbursement/edit.vue | 50 ++- src/views/financial_using_funds/detail.js | 119 +++++ src/views/financial_using_funds/edit.vue | 413 ++++++++++++++++++ src/views/financial_using_funds/index.vue | 174 ++++++++ src/views/project_commission/edit.vue | 9 +- .../project_travel_reimbursement/edit.vue | 8 +- src/views/task_allocation/edit.vue | 26 +- src/views/task_type/edit.vue | 9 +- 55 files changed, 1612 insertions(+), 1500 deletions(-) delete mode 100644 generate/php/app/adminapi/controller/financial/FinancialExpenseReimbursementController.php delete mode 100644 generate/php/app/adminapi/controller/financial/FinancialTravelReimbursementController.php delete mode 100644 generate/php/app/adminapi/lists/financial/FinancialExpenseReimbursementLists.php delete mode 100644 generate/php/app/adminapi/lists/financial/FinancialTravelReimbursementLists.php delete mode 100644 generate/php/app/adminapi/logic/financial/FinancialExpenseReimbursementLogic.php delete mode 100644 generate/php/app/adminapi/logic/financial/FinancialTravelReimbursementLogic.php delete mode 100644 generate/php/app/adminapi/validate/financial/FinancialExpenseReimbursementValidate.php delete mode 100644 generate/php/app/adminapi/validate/financial/FinancialTravelReimbursementValidate.php delete mode 100644 generate/php/app/common/model/financial/FinancialExpenseReimbursement.php delete mode 100644 generate/php/app/common/model/financial/FinancialTravelReimbursement.php delete mode 100644 generate/sql/menu.sql delete mode 100644 generate/vue/src/api/financial_expense_reimbursement.ts delete mode 100644 generate/vue/src/api/financial_travel_reimbursement.ts delete mode 100644 generate/vue/src/views/financial_expense_reimbursement/edit.vue delete mode 100644 generate/vue/src/views/financial_expense_reimbursement/index.vue create mode 100644 src/api/financial_borrow_money.ts create mode 100644 src/api/financial_repayment.ts create mode 100644 src/api/financial_using_funds.ts create mode 100644 src/assets/images/CWGL.png create mode 100644 src/assets/images/GCJL.png create mode 100644 src/assets/images/SGGL.png create mode 100644 src/assets/images/XMGL.png create mode 100644 src/assets/images/XMZX.png create mode 100644 src/assets/images/XT.png create mode 100644 src/assets/images/ZJZX.png create mode 100644 src/assets/images/mipmap-xxxhdpi/AS.png create mode 100644 src/assets/images/mipmap-xxxhdpi/AS1.png create mode 100644 src/assets/images/mipmap-xxxhdpi/AS2.png create mode 100644 src/assets/images/mipmap-xxxhdpi/AS3.png create mode 100644 src/assets/images/mipmap-xxxhdpi/AS4.png create mode 100644 src/assets/images/mipmap-xxxhdpi/AS5.png create mode 100644 src/views/build_report/detail.js create mode 100644 src/views/financial_borrow_money/detail.js rename {generate/vue/src/views/financial_travel_reimbursement => src/views/financial_borrow_money}/edit.vue (51%) rename {generate/vue/src/views/financial_travel_reimbursement => src/views/financial_borrow_money}/index.vue (51%) create mode 100644 src/views/financial_repayment/detail.js create mode 100644 src/views/financial_repayment/edit.vue create mode 100644 src/views/financial_repayment/index.vue create mode 100644 src/views/financial_using_funds/detail.js create mode 100644 src/views/financial_using_funds/edit.vue create mode 100644 src/views/financial_using_funds/index.vue diff --git a/generate/php/app/adminapi/controller/financial/FinancialExpenseReimbursementController.php b/generate/php/app/adminapi/controller/financial/FinancialExpenseReimbursementController.php deleted file mode 100644 index f5ca67b..0000000 --- a/generate/php/app/adminapi/controller/financial/FinancialExpenseReimbursementController.php +++ /dev/null @@ -1,108 +0,0 @@ -dataLists(new FinancialExpenseReimbursementLists()); - } - - - /** - * @notes 添加财务管理--费用报销单 - * @return \think\response\Json - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function add() - { - $params = (new FinancialExpenseReimbursementValidate())->post()->goCheck('add'); - $result = FinancialExpenseReimbursementLogic::add($params); - if (true === $result) { - return $this->success('添加成功', [], 1, 1); - } - return $this->fail(FinancialExpenseReimbursementLogic::getError()); - } - - - /** - * @notes 编辑财务管理--费用报销单 - * @return \think\response\Json - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function edit() - { - $params = (new FinancialExpenseReimbursementValidate())->post()->goCheck('edit'); - $result = FinancialExpenseReimbursementLogic::edit($params); - if (true === $result) { - return $this->success('编辑成功', [], 1, 1); - } - return $this->fail(FinancialExpenseReimbursementLogic::getError()); - } - - - /** - * @notes 删除财务管理--费用报销单 - * @return \think\response\Json - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function delete() - { - $params = (new FinancialExpenseReimbursementValidate())->post()->goCheck('delete'); - FinancialExpenseReimbursementLogic::delete($params); - return $this->success('删除成功', [], 1, 1); - } - - - /** - * @notes 获取财务管理--费用报销单详情 - * @return \think\response\Json - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function detail() - { - $params = (new FinancialExpenseReimbursementValidate())->goCheck('detail'); - $result = FinancialExpenseReimbursementLogic::detail($params); - return $this->data($result); - } - - -} \ No newline at end of file diff --git a/generate/php/app/adminapi/controller/financial/FinancialTravelReimbursementController.php b/generate/php/app/adminapi/controller/financial/FinancialTravelReimbursementController.php deleted file mode 100644 index e378058..0000000 --- a/generate/php/app/adminapi/controller/financial/FinancialTravelReimbursementController.php +++ /dev/null @@ -1,108 +0,0 @@ -dataLists(new FinancialTravelReimbursementLists()); - } - - - /** - * @notes 添加财务管理--差旅费报销单 - * @return \think\response\Json - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function add() - { - $params = (new FinancialTravelReimbursementValidate())->post()->goCheck('add'); - $result = FinancialTravelReimbursementLogic::add($params); - if (true === $result) { - return $this->success('添加成功', [], 1, 1); - } - return $this->fail(FinancialTravelReimbursementLogic::getError()); - } - - - /** - * @notes 编辑财务管理--差旅费报销单 - * @return \think\response\Json - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function edit() - { - $params = (new FinancialTravelReimbursementValidate())->post()->goCheck('edit'); - $result = FinancialTravelReimbursementLogic::edit($params); - if (true === $result) { - return $this->success('编辑成功', [], 1, 1); - } - return $this->fail(FinancialTravelReimbursementLogic::getError()); - } - - - /** - * @notes 删除财务管理--差旅费报销单 - * @return \think\response\Json - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function delete() - { - $params = (new FinancialTravelReimbursementValidate())->post()->goCheck('delete'); - FinancialTravelReimbursementLogic::delete($params); - return $this->success('删除成功', [], 1, 1); - } - - - /** - * @notes 获取财务管理--差旅费报销单详情 - * @return \think\response\Json - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function detail() - { - $params = (new FinancialTravelReimbursementValidate())->goCheck('detail'); - $result = FinancialTravelReimbursementLogic::detail($params); - return $this->data($result); - } - - -} \ No newline at end of file diff --git a/generate/php/app/adminapi/lists/financial/FinancialExpenseReimbursementLists.php b/generate/php/app/adminapi/lists/financial/FinancialExpenseReimbursementLists.php deleted file mode 100644 index 51fac3c..0000000 --- a/generate/php/app/adminapi/lists/financial/FinancialExpenseReimbursementLists.php +++ /dev/null @@ -1,78 +0,0 @@ - ['contract_id', 'fee_application_id', 'pay_type'], - '%like%' => ['theme', 'code', 'create_user'], - ]; - } - - - /** - * @notes 获取财务管理--费用报销单列表 - * @return array - * @throws \think\db\exception\DataNotFoundException - * @throws \think\db\exception\DbException - * @throws \think\db\exception\ModelNotFoundException - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function lists(): array - { - return FinancialExpenseReimbursement::where($this->searchWhere) - ->field(['id', 'contract_id', 'fee_application_id', 'theme', 'code', 'bill_num', 'pay_type', 'content', 'create_user', 'create_time']) - ->limit($this->limitOffset, $this->limitLength) - ->order(['id' => 'desc']) - ->select() - ->toArray(); - } - - - /** - * @notes 获取财务管理--费用报销单数量 - * @return int - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function count(): int - { - return FinancialExpenseReimbursement::where($this->searchWhere)->count(); - } - -} \ No newline at end of file diff --git a/generate/php/app/adminapi/lists/financial/FinancialTravelReimbursementLists.php b/generate/php/app/adminapi/lists/financial/FinancialTravelReimbursementLists.php deleted file mode 100644 index 6021314..0000000 --- a/generate/php/app/adminapi/lists/financial/FinancialTravelReimbursementLists.php +++ /dev/null @@ -1,77 +0,0 @@ - ['code', 'approve_dept', 'cost_type', 'pay_type', 'create_user'], - ]; - } - - - /** - * @notes 获取财务管理--差旅费报销单列表 - * @return array - * @throws \think\db\exception\DataNotFoundException - * @throws \think\db\exception\DbException - * @throws \think\db\exception\ModelNotFoundException - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function lists(): array - { - return FinancialTravelReimbursement::where($this->searchWhere) - ->field(['id', 'code', 'approve_dept', 'cost_type', 'pay_type', 'tax_deductible_amount', 'bill_num', 'fee_application_id', 'content', 'create_user', 'create_time']) - ->limit($this->limitOffset, $this->limitLength) - ->order(['id' => 'desc']) - ->select() - ->toArray(); - } - - - /** - * @notes 获取财务管理--差旅费报销单数量 - * @return int - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function count(): int - { - return FinancialTravelReimbursement::where($this->searchWhere)->count(); - } - -} \ No newline at end of file diff --git a/generate/php/app/adminapi/logic/financial/FinancialExpenseReimbursementLogic.php b/generate/php/app/adminapi/logic/financial/FinancialExpenseReimbursementLogic.php deleted file mode 100644 index 8d8accb..0000000 --- a/generate/php/app/adminapi/logic/financial/FinancialExpenseReimbursementLogic.php +++ /dev/null @@ -1,124 +0,0 @@ - $params['contract_id'], - 'fee_application_id' => $params['fee_application_id'], - 'theme' => $params['theme'], - 'code' => $params['code'], - 'bill_num' => $params['bill_num'], - 'pay_type' => $params['pay_type'], - 'content' => $params['content'], - 'annex' => $params['annex'], - 'create_user' => $params['create_user'], - 'create_time' => $params['create_time'] - ]); - - Db::commit(); - return true; - } catch (\Exception $e) { - Db::rollback(); - self::setError($e->getMessage()); - return false; - } - } - - - /** - * @notes 编辑财务管理--费用报销单 - * @param array $params - * @return bool - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public static function edit(array $params): bool - { - Db::startTrans(); - try { - FinancialExpenseReimbursement::where('id', $params['id'])->update([ - 'contract_id' => $params['contract_id'], - 'fee_application_id' => $params['fee_application_id'], - 'theme' => $params['theme'], - 'code' => $params['code'], - 'bill_num' => $params['bill_num'], - 'pay_type' => $params['pay_type'], - 'content' => $params['content'], - 'annex' => $params['annex'], - 'create_user' => $params['create_user'], - 'create_time' => $params['create_time'] - ]); - - Db::commit(); - return true; - } catch (\Exception $e) { - Db::rollback(); - self::setError($e->getMessage()); - return false; - } - } - - - /** - * @notes 删除财务管理--费用报销单 - * @param array $params - * @return bool - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public static function delete(array $params): bool - { - return FinancialExpenseReimbursement::destroy($params['id']); - } - - - /** - * @notes 获取财务管理--费用报销单详情 - * @param $params - * @return array - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public static function detail($params): array - { - return FinancialExpenseReimbursement::findOrEmpty($params['id'])->toArray(); - } -} \ No newline at end of file diff --git a/generate/php/app/adminapi/logic/financial/FinancialTravelReimbursementLogic.php b/generate/php/app/adminapi/logic/financial/FinancialTravelReimbursementLogic.php deleted file mode 100644 index ff63e0d..0000000 --- a/generate/php/app/adminapi/logic/financial/FinancialTravelReimbursementLogic.php +++ /dev/null @@ -1,124 +0,0 @@ - $params['code'], - 'approve_dept' => $params['approve_dept'], - 'cost_type' => $params['cost_type'], - 'pay_type' => $params['pay_type'], - 'tax_deductible_amount' => $params['tax_deductible_amount'], - 'bill_num' => $params['bill_num'], - 'fee_application_id' => $params['fee_application_id'], - 'content' => $params['content'], - 'create_user' => $params['create_user'], - 'create_time' => $params['create_time'] - ]); - - Db::commit(); - return true; - } catch (\Exception $e) { - Db::rollback(); - self::setError($e->getMessage()); - return false; - } - } - - - /** - * @notes 编辑财务管理--差旅费报销单 - * @param array $params - * @return bool - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public static function edit(array $params): bool - { - Db::startTrans(); - try { - FinancialTravelReimbursement::where('id', $params['id'])->update([ - 'code' => $params['code'], - 'approve_dept' => $params['approve_dept'], - 'cost_type' => $params['cost_type'], - 'pay_type' => $params['pay_type'], - 'tax_deductible_amount' => $params['tax_deductible_amount'], - 'bill_num' => $params['bill_num'], - 'fee_application_id' => $params['fee_application_id'], - 'content' => $params['content'], - 'create_user' => $params['create_user'], - 'create_time' => $params['create_time'] - ]); - - Db::commit(); - return true; - } catch (\Exception $e) { - Db::rollback(); - self::setError($e->getMessage()); - return false; - } - } - - - /** - * @notes 删除财务管理--差旅费报销单 - * @param array $params - * @return bool - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public static function delete(array $params): bool - { - return FinancialTravelReimbursement::destroy($params['id']); - } - - - /** - * @notes 获取财务管理--差旅费报销单详情 - * @param $params - * @return array - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public static function detail($params): array - { - return FinancialTravelReimbursement::findOrEmpty($params['id'])->toArray(); - } -} \ No newline at end of file diff --git a/generate/php/app/adminapi/validate/financial/FinancialExpenseReimbursementValidate.php b/generate/php/app/adminapi/validate/financial/FinancialExpenseReimbursementValidate.php deleted file mode 100644 index 836608d..0000000 --- a/generate/php/app/adminapi/validate/financial/FinancialExpenseReimbursementValidate.php +++ /dev/null @@ -1,112 +0,0 @@ - 'require', - 'contract_id' => 'require', - 'fee_application_id' => 'require', - 'theme' => 'require', - 'code' => 'require', - 'bill_num' => 'require', - 'pay_type' => 'require', - 'content' => 'require', - 'create_user' => 'require', - 'create_time' => 'require', - ]; - - - /** - * 参数描述 - * @var string[] - */ - protected $field = [ - 'id' => 'id', - 'contract_id' => '合同id', - 'fee_application_id' => '费用申请id', - 'theme' => '单据主题', - 'code' => '单据编号', - 'bill_num' => '单据张数', - 'pay_type' => '支付方式', - 'content' => '事由', - 'create_user' => '申请人员', - 'create_time' => '报销日期', - ]; - - - /** - * @notes 添加场景 - * @return FinancialExpenseReimbursementValidate - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function sceneAdd() - { - return $this->only(['contract_id','fee_application_id','theme','code','bill_num','pay_type','content','create_user','create_time']); - } - - - /** - * @notes 编辑场景 - * @return FinancialExpenseReimbursementValidate - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function sceneEdit() - { - return $this->only(['id','contract_id','fee_application_id','theme','code','bill_num','pay_type','content','create_user','create_time']); - } - - - /** - * @notes 删除场景 - * @return FinancialExpenseReimbursementValidate - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function sceneDelete() - { - return $this->only(['id']); - } - - - /** - * @notes 详情场景 - * @return FinancialExpenseReimbursementValidate - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function sceneDetail() - { - return $this->only(['id']); - } - -} \ No newline at end of file diff --git a/generate/php/app/adminapi/validate/financial/FinancialTravelReimbursementValidate.php b/generate/php/app/adminapi/validate/financial/FinancialTravelReimbursementValidate.php deleted file mode 100644 index ca4911d..0000000 --- a/generate/php/app/adminapi/validate/financial/FinancialTravelReimbursementValidate.php +++ /dev/null @@ -1,114 +0,0 @@ - 'require', - 'code' => 'require', - 'approve_dept' => 'require', - 'cost_type' => 'require', - 'pay_type' => 'require', - 'tax_deductible_amount' => 'require', - 'bill_num' => 'require', - 'fee_application_id' => 'require', - 'content' => 'require', - 'create_user' => 'require', - 'create_time' => 'require', - ]; - - - /** - * 参数描述 - * @var string[] - */ - protected $field = [ - 'id' => 'id', - 'code' => '单据编号', - 'approve_dept' => '审批部门', - 'cost_type' => '费用类别', - 'pay_type' => '支付方式', - 'tax_deductible_amount' => '可抵扣税额', - 'bill_num' => '附单据张数', - 'fee_application_id' => '关联费用申请', - 'content' => '事由', - 'create_user' => '申请人', - 'create_time' => '申请日期', - ]; - - - /** - * @notes 添加场景 - * @return FinancialTravelReimbursementValidate - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function sceneAdd() - { - return $this->only(['code','approve_dept','cost_type','pay_type','tax_deductible_amount','bill_num','fee_application_id','content','create_user','create_time']); - } - - - /** - * @notes 编辑场景 - * @return FinancialTravelReimbursementValidate - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function sceneEdit() - { - return $this->only(['id','code','approve_dept','cost_type','pay_type','tax_deductible_amount','bill_num','fee_application_id','content','create_user','create_time']); - } - - - /** - * @notes 删除场景 - * @return FinancialTravelReimbursementValidate - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function sceneDelete() - { - return $this->only(['id']); - } - - - /** - * @notes 详情场景 - * @return FinancialTravelReimbursementValidate - * @author likeadmin - * @date 2024/03/28 14:45 - */ - public function sceneDetail() - { - return $this->only(['id']); - } - -} \ No newline at end of file diff --git a/generate/php/app/common/model/financial/FinancialExpenseReimbursement.php b/generate/php/app/common/model/financial/FinancialExpenseReimbursement.php deleted file mode 100644 index 86659b3..0000000 --- a/generate/php/app/common/model/financial/FinancialExpenseReimbursement.php +++ /dev/null @@ -1,34 +0,0 @@ - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - diff --git a/generate/vue/src/views/financial_expense_reimbursement/index.vue b/generate/vue/src/views/financial_expense_reimbursement/index.vue deleted file mode 100644 index f14365e..0000000 --- a/generate/vue/src/views/financial_expense_reimbursement/index.vue +++ /dev/null @@ -1,153 +0,0 @@ - - - - diff --git a/src/api/build/build_report_detail.ts b/src/api/build/build_report_detail.ts index 99a90a5..ca1b11a 100644 --- a/src/api/build/build_report_detail.ts +++ b/src/api/build/build_report_detail.ts @@ -2,4 +2,9 @@ import request from '@/utils/request' // 人工明细列表 export function buildreportDetaillists(params: any) { return request.get({ url: '/build.build_report_detail/lists', params }) +} + +// 某个施工汇报下的人工明细列表 +export function apibuild_reportLists(params: any) { + return request.get({ url: '/build.build_report/personDetails', params }) } \ No newline at end of file diff --git a/src/api/financial_borrow_money.ts b/src/api/financial_borrow_money.ts new file mode 100644 index 0000000..f8ba0a2 --- /dev/null +++ b/src/api/financial_borrow_money.ts @@ -0,0 +1,32 @@ +import request from '@/utils/request' + +// 财务管理--借款单列表 +export function apiFinancialBorrowMoneyLists(params: any) { + return request.get({ url: '/financial.financial_borrow_money/lists', params }) +} + +// 添加财务管理--借款单 +export function apiFinancialBorrowMoneyAdd(params: any) { + return request.post({ url: '/financial.financial_borrow_money/add', params }) +} + +// 编辑财务管理--借款单 +export function apiFinancialBorrowMoneyEdit(params: any) { + return request.post({ url: '/financial.financial_borrow_money/edit', params }) +} + +// 删除财务管理--借款单 +export function apiFinancialBorrowMoneyDelete(params: any) { + return request.post({ url: '/financial.financial_borrow_money/delete', params }) +} + +// 财务管理--借款单详情 +export function apiFinancialBorrowMoneyDetail(params: any) { + return request.get({ url: '/financial.financial_borrow_money/detail', params }) +} + + +// 财务管理--借款单列表 +export function apiFinancialBorrowMoneySearch(params: any) { + return request.get({ url: '/financial.financial_borrow_money/datas', params }) +} \ No newline at end of file diff --git a/src/api/financial_repayment.ts b/src/api/financial_repayment.ts new file mode 100644 index 0000000..4e270fa --- /dev/null +++ b/src/api/financial_repayment.ts @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +// 财务管理--还款单列表 +export function apiFinancialRepaymentLists(params: any) { + return request.get({ url: '/financial.financial_repayment/lists', params }) +} + +// 添加财务管理--还款单 +export function apiFinancialRepaymentAdd(params: any) { + return request.post({ url: '/financial.financial_repayment/add', params }) +} + +// 编辑财务管理--还款单 +export function apiFinancialRepaymentEdit(params: any) { + return request.post({ url: '/financial.financial_repayment/edit', params }) +} + +// 删除财务管理--还款单 +export function apiFinancialRepaymentDelete(params: any) { + return request.post({ url: '/financial.financial_repayment/delete', params }) +} + +// 财务管理--还款单详情 +export function apiFinancialRepaymentDetail(params: any) { + return request.get({ url: '/financial.financial_repayment/detail', params }) +} \ No newline at end of file diff --git a/src/api/financial_using_funds.ts b/src/api/financial_using_funds.ts new file mode 100644 index 0000000..4cf474e --- /dev/null +++ b/src/api/financial_using_funds.ts @@ -0,0 +1,35 @@ +import request from '@/utils/request' + +// 财务管理--用款申请单列表 +export function apiFinancialUsingFundsLists(params: any) { + return request.get({ url: '/financial.financial_using_funds/lists', params }) +} + +// 添加财务管理--用款申请单 +export function apiFinancialUsingFundsAdd(params: any) { + return request.post({ url: '/financial.financial_using_funds/add', params }) +} + +// 编辑财务管理--用款申请单 +export function apiFinancialUsingFundsEdit(params: any) { + return request.post({ url: '/financial.financial_using_funds/edit', params }) +} + +// 删除财务管理--用款申请单 +export function apiFinancialUsingFundsDelete(params: any) { + return request.post({ url: '/financial.financial_using_funds/delete', params }) +} + +// 财务管理--用款申请单详情 +export function apiFinancialUsingFundsDetail(params: any) { + return request.get({ url: '/financial.financial_using_funds/detail', params }) +} + +// 财务管理--用款申请单列表 +export function apiFinancialUsingFundsDetailLists(params: any) { + return request.get({ url: '/financial.financial_using_funds_detail/lists', params }) +} +// 删除财务管理--用款申请单 +export function apiFinancialUsingFundsDetailDelete(params: any) { + return request.post({ url: '/financial.financial_using_funds_detail/delete', params }) +} diff --git a/src/assets/images/CWGL.png b/src/assets/images/CWGL.png new file mode 100644 index 0000000000000000000000000000000000000000..c13db8ebbdaa32a6c62c5e493234517ec485e919 GIT binary patch literal 3998 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/XT.png b/src/assets/images/XT.png new file mode 100644 index 0000000000000000000000000000000000000000..59b4a3660d7ab23117e3531f49beffcf39de60aa GIT binary patch literal 2556 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 literal 0 HcmV?d00001 diff --git a/src/assets/images/mipmap-xxxhdpi/AS.png b/src/assets/images/mipmap-xxxhdpi/AS.png new file mode 100644 index 0000000000000000000000000000000000000000..cd5575a63afa574eff2765a5384056ad4db7a511 GIT binary patch literal 1531 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 BoqYfR literal 0 HcmV?d00001 diff --git a/src/assets/images/mipmap-xxxhdpi/AS2.png b/src/assets/images/mipmap-xxxhdpi/AS2.png new file mode 100644 index 0000000000000000000000000000000000000000..e456d66106a71aadd74ba36d159a32143135ff40 GIT binary patch literal 2386 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 SX>*Px-dPzhH5CxO_ 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 - - - - diff --git a/src/components/dialogTable/dialogTableConfig.ts b/src/components/dialogTable/dialogTableConfig.ts index 95d285d..0c39e40 100644 --- a/src/components/dialogTable/dialogTableConfig.ts +++ b/src/components/dialogTable/dialogTableConfig.ts @@ -640,5 +640,39 @@ export const financial_fee_application: Iconfig = { ], }; +import { apiFinancialBorrowMoneyLists } from '@/api/financial_borrow_money' + +export const financial_borrow_money: Iconfig = { + fetchFn: apiFinancialBorrowMoneyLists, + dictData:"cost_type,financial_pay_type", + serchList: [ + { + label: "单据编号", + value: "code", + }, + { + label: "费用类别", + value: "cost_type", + select:'cost_type' + }, + { + label: "支付方式", + value: "pay_type", + select:'financial_pay_type' + + }, + ], + tableList: [ + { code: "单据编号" }, + { dept_name: "所在部门" }, + { cost_type_text: "费用类别" }, + { pay_type_text: "支付方式" }, + { amount: "金额" }, + { content: "事由" }, + { create_user: "申请人" }, + { create_time: "申请日期" }, + ], +}; + diff --git a/src/components/formTable/index.vue b/src/components/formTable/index.vue index c797dfe..a0bc3d5 100644 --- a/src/components/formTable/index.vue +++ b/src/components/formTable/index.vue @@ -10,9 +10,7 @@ - - - diff --git a/src/layout/default/components/header/menuLi.vue b/src/layout/default/components/header/menuLi.vue index c6999d5..860a7ee 100644 --- a/src/layout/default/components/header/menuLi.vue +++ b/src/layout/default/components/header/menuLi.vue @@ -1,13 +1,18 @@ - \ No newline at end of file diff --git a/src/layout/default/components/header/multiple-tabs.vue b/src/layout/default/components/header/multiple-tabs.vue index 6c539f9..43ef1c7 100644 --- a/src/layout/default/components/header/multiple-tabs.vue +++ b/src/layout/default/components/header/multiple-tabs.vue @@ -1,6 +1,6 @@ @@ -79,10 +80,11 @@ import { usePaging } from '@/hooks/usePaging' import { useDictData } from '@/hooks/useDictOptions' import { buildreportLists, buildreportDelete, buildreportDetail } from '@/api/build/build_report' import { timeFormat } from '@/utils/util' - import feedback from '@/utils/feedback' import EditPopup from './edit.vue' -import DetailPopup from './detail.vue' +import detailConfig from './detail' + +const showDetail = ref(false) const detailRef = shallowRef>() const editRef = shallowRef>() // 是否显示编辑框 @@ -150,14 +152,16 @@ const handleDelete = async (id: number | any[]) => { await buildreportDelete({ id }) getLists() } -const handledetail = async (data: any) => { - let res = await buildreportDetail({ id: data.id }) - showDtail.value = true +// 详情 +const handleDetail = async (id: any) => { + let res = await buildreportDetail({ id }) + showDetail.value = true await nextTick() detailRef.value?.open() detailRef.value?.setFormData(res) } + getLists() diff --git a/src/views/financial_borrow_money/detail.js b/src/views/financial_borrow_money/detail.js new file mode 100644 index 0000000..3cfdd81 --- /dev/null +++ b/src/views/financial_borrow_money/detail.js @@ -0,0 +1,46 @@ +const detailConfig = { + title: "财务管理--用款申请单", + config: [ + { + label: "单据编号", + value: "code" + }, + { + label: "所在部门", + value: "approve_dept_name" + }, + { + label: "费用类别", + value: "cost_type_text" + }, + { + label: "支付方式", + value: "pay_type_text" + }, + { + label: "金额", + value: "amount" + }, + { + label: "事由", + value: "content", + column: 1 + }, + { + label: "附件", + value: "annex", + column: 1 + }, + { + label: "申请人", + value: "create_user" + }, + { + label: "申请时间", + value: "create_time" + }, + ], + + +} +export default detailConfig; \ No newline at end of file diff --git a/generate/vue/src/views/financial_travel_reimbursement/edit.vue b/src/views/financial_borrow_money/edit.vue similarity index 51% rename from generate/vue/src/views/financial_travel_reimbursement/edit.vue rename to src/views/financial_borrow_money/edit.vue index 136f0d6..e8e0888 100644 --- a/generate/vue/src/views/financial_travel_reimbursement/edit.vue +++ b/src/views/financial_borrow_money/edit.vue @@ -1,55 +1,53 @@ - diff --git a/src/views/financial_repayment/detail.js b/src/views/financial_repayment/detail.js new file mode 100644 index 0000000..645beaa --- /dev/null +++ b/src/views/financial_repayment/detail.js @@ -0,0 +1,37 @@ +const detailConfig = { + title: "财务管理--用款申请单", + config: [ + { + label: "借款单编号", + value: "borrow_code" + }, + { + label: "单据编号", + value: "code" + }, + { + label: "还款人", + value: "payer_name" + }, + { + label: "还款金额", + value: "amount" + }, + { + label: "说明", + value: "desc", + + }, + { + label: "经办人", + value: "create_user" + }, + { + label: "还款日期", + value: "create_time" + }, + ], + + +} +export default detailConfig; \ No newline at end of file diff --git a/src/views/financial_repayment/edit.vue b/src/views/financial_repayment/edit.vue new file mode 100644 index 0000000..185fbad --- /dev/null +++ b/src/views/financial_repayment/edit.vue @@ -0,0 +1,196 @@ + + + diff --git a/src/views/financial_repayment/index.vue b/src/views/financial_repayment/index.vue new file mode 100644 index 0000000..46e7743 --- /dev/null +++ b/src/views/financial_repayment/index.vue @@ -0,0 +1,146 @@ + + + + diff --git a/src/views/financial_travel_reimbursement/edit.vue b/src/views/financial_travel_reimbursement/edit.vue index a592440..c99bdfc 100644 --- a/src/views/financial_travel_reimbursement/edit.vue +++ b/src/views/financial_travel_reimbursement/edit.vue @@ -58,7 +58,7 @@ - +