From 1d61b3946fd02a583776b24aa9791c65c9968abd Mon Sep 17 00:00:00 2001
From: liuhaohui <liuhaohui@seaskysh.com>
Date: Tue, 12 Mar 2024 11:03:43 +0800
Subject: [PATCH] =?UTF-8?q?=E9=A1=B5=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 PublicPCWeb/package-lock.json                 |   5 +
 PublicPCWeb/package.json                      |   1 +
 PublicPCWeb/src/api/InquiryChildcare.js       |  58 ++
 PublicPCWeb/src/api/company.js                |  24 -
 PublicPCWeb/src/api/instance-manage.js        |  61 --
 .../src/components/MoneyInput/index.vue       | 212 ++++++
 PublicPCWeb/src/main.js                       |   6 +-
 PublicPCWeb/src/router/index.js               |  15 +-
 .../src/views/Inquiry-childcare/index.vue     | 212 ++++--
 .../views/application-form-query/index.vue    | 391 +++++++++--
 .../src/views/batch-generation/index.vue      | 329 ++++++++--
 PublicPCWeb/src/views/company/index.vue       | 239 -------
 .../instance-manage/components/Detail.vue     | 322 ----------
 .../views/instance-manage/components/List.vue | 458 -------------
 .../src/views/instance-manage/index.vue       |  46 --
 PublicPCWeb/src/views/reimbursement/index.vue | 605 ++++++++++++++++++
 PublicPCWeb/vue.config.js                     |  10 +-
 17 files changed, 1665 insertions(+), 1329 deletions(-)
 create mode 100644 PublicPCWeb/src/api/InquiryChildcare.js
 delete mode 100644 PublicPCWeb/src/api/company.js
 delete mode 100644 PublicPCWeb/src/api/instance-manage.js
 create mode 100644 PublicPCWeb/src/components/MoneyInput/index.vue
 delete mode 100644 PublicPCWeb/src/views/company/index.vue
 delete mode 100644 PublicPCWeb/src/views/instance-manage/components/Detail.vue
 delete mode 100644 PublicPCWeb/src/views/instance-manage/components/List.vue
 delete mode 100644 PublicPCWeb/src/views/instance-manage/index.vue
 create mode 100644 PublicPCWeb/src/views/reimbursement/index.vue

diff --git a/PublicPCWeb/package-lock.json b/PublicPCWeb/package-lock.json
index 68cdb3b..d9e9bdc 100644
--- a/PublicPCWeb/package-lock.json
+++ b/PublicPCWeb/package-lock.json
@@ -8111,6 +8111,11 @@
         "minimist": "^1.2.6"
       }
     },
+    "moment": {
+      "version": "2.30.1",
+      "resolved": "https://registry.npmmirror.com/moment/-/moment-2.30.1.tgz",
+      "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how=="
+    },
     "move-concurrently": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz",
diff --git a/PublicPCWeb/package.json b/PublicPCWeb/package.json
index 3b96f0d..46005c2 100644
--- a/PublicPCWeb/package.json
+++ b/PublicPCWeb/package.json
@@ -9,6 +9,7 @@
   },
   "dependencies": {
     "core-js": "^3.6.5",
+    "moment": "^2.30.1",
     "vue": "^3.0.0",
     "vue-router": "^4.0.0-0",
     "vuex": "^4.0.0-0"
diff --git a/PublicPCWeb/src/api/InquiryChildcare.js b/PublicPCWeb/src/api/InquiryChildcare.js
new file mode 100644
index 0000000..4c669e1
--- /dev/null
+++ b/PublicPCWeb/src/api/InquiryChildcare.js
@@ -0,0 +1,58 @@
+import request from '@/core/base/request';
+
+class InquiryChildcare {
+  //鎵樺辜璐瑰彂鏀炬煡璇�
+  static statisticsPageList(data) {
+    return request.post('/queryStatistics/pc/v1/statisticsPageList', data);
+  }
+  //鍙戞斁鎵规鏌ヨ
+  static pageList(data) {
+    return request.post('/grant/pc/v1/pageList', data);
+  }
+  //鍏佽鍙戞斁鐨勬暟鎹�
+  static pageCanGrantList(data) {
+    return request.post('/grant/pc/v1/pageCanGrantList', data);
+  }
+  //鐢熸垚鍙戞斁
+  static createGrant(data) {
+    return request.post('/grant/pc/v1/createGrant', data);
+  }
+  //鍙戞斁鏄庣粏鏍规嵁鍙戞斁id
+  static pageGrantDetailList(data) {
+    return request.post('/grant/pc/v1/pageGrantDetailList', data);
+  }
+  //鐢熸垚钖祫鐢虫姤鍗�
+  static createSalaryDeclare(id) {
+    return request.post('/grant/pc/v1/createSalaryDeclare/' + id);
+  }
+  //鎾ら攢钖祫鐢虫姤鍗�
+  static cancelSalaryDeclare(id) {
+    return request.post('/grant/pc/v1/cancelSalaryDeclare/' + id);
+  }
+  //鎾ら攢鍙戞斁
+  static cancelGrant(id) {
+    return request.post('/grant/pc/v1/cancelGrant/' + id);
+  }
+  //瀹℃牳鐣岄潰鐢宠璁板綍鏌ヨ
+  static pageLists(data) {
+    return request.post('/childcarefeeapply/pc/v1/pageList', data);
+  }
+  //鍙戞斁鏄庣粏-鍒嗛〉
+  static pageListsa(data) {
+    return request.post('/childcarefeedetail/pc/v1/pageList', data);
+  }
+  //浣滃簾
+  static cancel(id) {
+    return request.post('/childcarefeedetail/pc/v1/cancel/' + id);
+  }
+  //鍚敤
+  static enable(id) {
+    return request.post('/childcarefeedetail/pc/v1/enable/' + id);
+  }
+  //鍙戞斁鏍囧噯
+  static grantStandard() {
+    return request.post('/childCareFeeConfig/pc/v1/grantStandard');
+  }
+}
+
+export default InquiryChildcare;
diff --git a/PublicPCWeb/src/api/company.js b/PublicPCWeb/src/api/company.js
deleted file mode 100644
index 9e4d00f..0000000
--- a/PublicPCWeb/src/api/company.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import request from '@/core/base/request';
-
-class company {
-  //鑾峰彇浼佷笟鍒楄〃
-  static list(data) {
-    return request.post('/company/pc/v1/list', data);
-  }
-  //鏂板浼佷笟鍒楄〃
-  static add(data) {
-    return request.post('/company/pc/v1/add', data);
-  }
-   //淇敼浼佷笟鍒楄〃
-   static update(data) {
-    return request.post('/company/pc/v1/update', data);
-  }
-  //鍒犻櫎浼佷笟
-  static logicDelete(data) {
-    return request.post('/company/pc/v1/logicDelete', data);
-  }
-  
-  
-}
-
-export default company;
diff --git a/PublicPCWeb/src/api/instance-manage.js b/PublicPCWeb/src/api/instance-manage.js
deleted file mode 100644
index b36b6be..0000000
--- a/PublicPCWeb/src/api/instance-manage.js
+++ /dev/null
@@ -1,61 +0,0 @@
-import request from '@/core/base/request';
-
-class instancemanage {
-  //鑾峰彇瀹炰緥鍒楄〃
-  static listInstance(data) {
-    return request.post('/instancemanage/pc/v1/listInstance', data);
-  }
-  //鍋滅敤瀹炰緥
-  static disableInstance(id) {
-    return request.post(`/instancemanage/pc/v1/disableInstance?id=${id}`);
-  }
-  //鍚敤瀹炰緥
-  static enableInstance(id) {
-    return request.post(`/instancemanage/pc/v1/enableInstance?id=${id}`);
-  }
-  //鍚敤瀹炰緥閾炬帴
-  static enableLink(data) {
-    return request.post('/instancemanage/pc/v1/enableLink',data);
-  }
-   //鍋滅敤瀹炰緥閾炬帴
-   static disableLink(data) {
-    return request.post('/instancemanage/pc/v1/disableLink',data);
-  }
-   //娉ㄥ唽瀹炰緥閾炬帴
-   static registerLink(data) {
-    return request.post('/instancemanage/pc/v1/registerLink',data);
-  }
-   //淇敼瀹炰緥閾炬帴
-   static changeLinkKey(data) {
-    return request.post('/instancemanage/pc/v1/changeLinkKey',data);
-  }
-  //鍒锋柊瀵嗛挜
-  static refreshInstanceKey(id) {
-    return request.post(`/instancemanage/pc/v1/refreshInstanceKey?id=${id}`);
-  }
-  //鑾峰彇鍗曚綅鍒楄〃
-  static list(data) {
-    return request.post('/company/pc/v1/list', data);
-  }
-  //鍒涘缓瀹炰緥
-  static createInstance(data) {
-    return request.post('/instancemanage/pc/v1/createInstance', data);
-  }
-  //淇敼瀹炰緥
-  static modifyInstanceBaseInfo(data) {
-    return request.post('/instancemanage/pc/v1/modifyInstanceBaseInfo', data);
-  }
-  //鏌ヨ瀹炰緥閾炬帴
-  static listLink(data) {
-    return request.post('/instancemanage/pc/v1/listLink', data);
-  }
-  //鑾峰彇涓彴鏈嶅姟鍒楄〃
-  static getOnlineMiddlegroundService(data) {
-    return request.post(
-      '/middleground/pc/v1/getOnlineMiddlegroundService',
-      data
-    );
-  }
-}
-
-export default instancemanage;
diff --git a/PublicPCWeb/src/components/MoneyInput/index.vue b/PublicPCWeb/src/components/MoneyInput/index.vue
new file mode 100644
index 0000000..55ee26a
--- /dev/null
+++ b/PublicPCWeb/src/components/MoneyInput/index.vue
@@ -0,0 +1,212 @@
+<template>
+  <el-input
+    v-model="moneyShow"
+    :clearable="clearabled"
+    :placeholder="placeholder"
+    :disabled="disabled"
+    :readonly="readonly"
+    @change="setMoney"
+    @keyup="onInput"
+    @focus="getInputFocus($event)"
+  >
+    <template #append v-if="appned">
+      <slot name="appned"> </slot>
+    </template>
+    <template #suffix v-if="suffix">
+      <slot name="suffix"> </slot>
+    </template>
+  </el-input>
+</template>
+<script setup>
+import { watch, ref, defineProps, defineEmits } from 'vue';
+
+const props = defineProps({
+  modelValue: {
+    type: [Number, String],
+  },
+  // 榛樿杈撳嚭鍊�
+  default: {
+    type: Number,
+    default() {
+      return null;
+    },
+  },
+  // 榛樿灞曠ず鍊�
+  defaultShow: {
+    type: String,
+    default() {
+      return '';
+    },
+  },
+  placeholder: {
+    type: String,
+    default() {
+      return '璇疯緭鍏ラ噾棰�';
+    },
+  },
+  appned: {
+    type: [String, Boolean],
+  },
+  suffix: {
+    type: [String, Boolean],
+  },
+  // 鏄惁鍙竻绌�
+  clearable: {
+    type: Boolean,
+    default() {
+      return false;
+    },
+  },
+  // 鏄惁鍚敤
+  disabled: {
+    type: Boolean,
+    default() {
+      return false;
+    },
+  },
+  // 鏄惁鍙
+  readonly: {
+    type: Boolean,
+    default() {
+      return false;
+    },
+  },
+  // 鏄惁鍏佽杈撳叆璐熸暟
+  isNegativeAllow: {
+    type: Boolean,
+    default() {
+      return false;
+    },
+  },
+  // 鏍¢獙涓嶆弧瓒虫潯浠跺洖婊氫笂娆¤緭鍏ユ纭暟瀛楀洖璋�
+  onValid: {
+    type: Function,
+    default() {
+      return () => true;
+    },
+  },
+  // 闄勫姞鍊�
+  scope: {
+    type: Object,
+    default() {
+      return null;
+    },
+  },
+  // 闄愬埗鏁存暟浣嶆暟
+  maxLength: {
+    type: Number,
+    default() {
+      return 9;
+    },
+  },
+});
+
+const emit = defineEmits(['update:modelValue', 'change']);
+
+let moneyShow = ref('');
+let clearabled = ref(false);
+let oldVal = ''; // 鏈€鍚庝竴娆¤緭鍏ユ牎楠岄€氳繃鐨勫€�
+let maxShowVal = ''; // 鏈€鍚庝竴娆¤緭鍏ユ湭瓒呰繃鎸囧畾闀垮害鐨勫€�
+
+const init = (val) => {
+  oldVal = val;
+  if (val && formart(val) - 0 != props.default - 0) {
+    moneyShow.value = toThousands(val);
+    clearabled.value = props.clearable;
+  } else {
+    clearabled.value = false;
+    moneyShow.value = props.defaultShow;
+  }
+  maxShowVal = moneyShow.value;
+};
+
+// eslint-disable-next-line no-unused-vars
+const setMoney = () => {
+  let changeVal = moneyShow.value;
+  if (changeVal) {
+    moneyShow.value = toThousands(changeVal);
+    changeVal = formart(changeVal);
+  }
+  if (!changeVal || changeVal == '0.00') {
+    moneyShow.value = props.defaultShow;
+  }
+  emit('update:modelValue', changeVal ? parseFloat(changeVal) : props.default);
+  maxShowVal = toThousands(moneyShow.value);
+  if (!props.onValid(changeVal, props.scope)) {
+    // 鏍¢獙鏈€氳繃鍥炲埌涓婃鏍¢獙閫氳繃鏁板瓧
+    init(oldVal);
+    maxShowVal = toThousands(oldVal);
+    emit('update:modelValue', parseFloat(oldVal));
+  }
+  emit('change');
+};
+
+// 浠绘剰瀛楃涓茶浆鏁板瓧锛堜袱浣嶅皬鏁帮級
+const formart = (num) => moneyToNumValue(toThousands(num));
+
+// 浠绘剰瀛楃杞崈鍒嗕綅鍒嗛殧閲戦锛堜袱浣嶅皬鏁帮級
+const toThousands = (num) => {
+  num += '';
+  // eslint-disable-next-line no-useless-escape
+  let isNegative = props.isNegativeAllow && /^\-/.test(num);
+  // 娓呴櫎瀛楃涓蹭腑鐨勯潪鏁板瓧闈炩€�.鈥濆瓧绗�
+  // eslint-disable-next-line no-useless-escape
+  num = num.replace(/[^0-9|\.]/g, '');
+  // 娓呴櫎瀛楃涓插紑澶寸殑0
+  num = num.replace(/^0+/, '');
+  if (!/\./.test(num)) {
+    // 涓烘暣鏁板瓧绗︿覆鍦ㄦ湯灏炬坊鍔�.00
+    num += '.00';
+  }
+  if (/^\./.test(num)) {
+    // 瀛楃浠�.寮€澶存椂,鍦ㄥ紑澶存坊鍔�0
+    num = '0' + num;
+  }
+  num += '00';
+  let numMatch = num.match(/\d+\.\d{2}/);
+  num = numMatch ? numMatch[0] : '0.00';
+  num = (num || 0).toString().replace(/^\./g, '');
+  // eslint-disable-next-line no-useless-escape
+  num = num.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3');
+  let arr = num.split('.');
+  let num1 = (arr[0] || 0).toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,');
+  let resultNumStr = arr[1] == undefined ? num1 + '' : num1 + '.' + arr[1];
+  if (isNegative && resultNumStr != '0.00') {
+    resultNumStr = '-' + resultNumStr;
+  }
+  return resultNumStr;
+};
+
+// 鍗冨垎浣嶅垎闅旈噾棰濊浆鏁板瓧锛堜袱浣嶅皬鏁帮級
+const moneyToNumValue = (val) => {
+  val += '';
+  let num = val.trim();
+  let numStr = num.toString();
+  if (numStr.length == 0) {
+    return '0.00';
+  }
+  return numStr.replace(/,/g, '');
+};
+
+// eslint-disable-next-line no-unused-vars
+const onInput = () => {
+  let value = formart(moneyShow.value);
+  if (value.toString().length > props.maxLength + 3) {
+    moneyShow.value = maxShowVal;
+  } else {
+    maxShowVal = value;
+  }
+};
+
+init(props.modelValue);
+
+watch(
+  () => props.modelValue,
+  (val) => {
+    init(val);
+  }
+);
+const getInputFocus = (e) => {
+  e.currentTarget.select();
+};
+</script>
diff --git a/PublicPCWeb/src/main.js b/PublicPCWeb/src/main.js
index 700bc48..2573c22 100644
--- a/PublicPCWeb/src/main.js
+++ b/PublicPCWeb/src/main.js
@@ -17,8 +17,9 @@ import ElementPlus from 'element-plus';
 import 'element-plus/dist/index.css';
 import 'dayjs/locale/zh-cn'; // for element zh-cn
 import locale from 'element-plus/lib/locale/lang/zh-cn';
-import * as ElementPlusIconsVue from '@element-plus/icons-vue'
+import * as ElementPlusIconsVue from '@element-plus/icons-vue';
 import Pagination from './components/Pagination';
+import MoneyInput from './components/MoneyInput';
 /**others */
 import components from '@/components';
 let app = null;
@@ -30,10 +31,11 @@ const render = (props) => {
     .use(ElementPlus, { size: 'small', zIndex: 3000, locale })
     .use(components);
   app.component('Pagination', Pagination); //鍒嗛〉缁勪欢
+  app.component('MoneyInput', MoneyInput); //閲戦杈撳叆妗�
   // mount instance
   app.mount('#instance-app');
   for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
-    app.component(key, component)
+    app.component(key, component);
   }
 };
 
diff --git a/PublicPCWeb/src/router/index.js b/PublicPCWeb/src/router/index.js
index ebc1b6f..3a0d133 100644
--- a/PublicPCWeb/src/router/index.js
+++ b/PublicPCWeb/src/router/index.js
@@ -13,6 +13,11 @@ const routes = [
     component: () => import('@/views/Inquiry-childcare'),
     name: '鎵樺辜璐瑰彂鏀炬煡璇�',
   },
+  {
+    path: '/reimbursement',
+    component: () => import('@/views/reimbursement'),
+    name: '鎵樺辜璐规姤閿€鏌ョ湅',
+  },
   {
     path: '/batch-generation',
     component: () => import('@/views/batch-generation'),
@@ -23,16 +28,6 @@ const routes = [
     component: () => import('@/views/application-form-query'),
     name: '鐢宠鍗曟煡璇�',
   },
-  {
-    path: '/instance-manage',
-    component: () => import('@/views/instance-manage'),
-    name: '瀹炰緥绠$悊',
-  },
-  {
-    path: '/company',
-    component: () => import('@/views/company/index'),
-    name: '鍗曚綅绠$悊',
-  },
   {
     path: '/',
     redirect: '/instance-manage',
diff --git a/PublicPCWeb/src/views/Inquiry-childcare/index.vue b/PublicPCWeb/src/views/Inquiry-childcare/index.vue
index 7bfd669..37390b6 100644
--- a/PublicPCWeb/src/views/Inquiry-childcare/index.vue
+++ b/PublicPCWeb/src/views/Inquiry-childcare/index.vue
@@ -16,11 +16,14 @@
           :model="data.application"
         >
           <el-form-item label="鐢宠浜哄伐鍙锋垨濮撳悕">
-            <el-input v-model.trim="data.application.applicant" />
+            <el-input
+              v-model.trim="data.application.applicant"
+              placeholder="璇疯緭鍏ョ敵璇蜂汉宸ュ彿鎴栧鍚�"
+            />
           </el-form-item>
           <el-form-item label="鍙戞斁鏈夋晥鏈�">
             <el-date-picker
-              v-model="data.application.effectiveDateMin"
+              v-model="data.application.grantStartDate"
               type="date"
               size="large"
               placeholder="寮€濮嬫棩鏈�"
@@ -30,7 +33,7 @@
             />
 
             <el-date-picker
-              v-model="data.application.effectiveDateMam"
+              v-model="data.application.grantEndDate"
               type="date"
               size="large"
               placeholder="缁撴潫鏃ユ湡"
@@ -40,19 +43,33 @@
           </el-form-item>
           <el-form-item label="鍙戞斁鏈堜唤">
             <el-date-picker
-              v-model="data.application.distributionMonth"
-              type="date"
+              v-model="data.application.grantMonth"
+              type="month"
               placeholder="閫夋嫨鏈堜唤"
-              format="YYYY/MM/DD"
-              value-format="YYYY-MM-DD"
+              format="YYYY-MM"
+              value-format="YYYY-MM"
             />
           </el-form-item>
           <el-form-item label="鍙戞斁鐘舵€�">
-            <el-input v-model.trim="data.application.applicationStatus" />
+            <el-select
+              v-model="data.application.grantState"
+              placeholder="璇烽€夋嫨"
+              size="large"
+            >
+              <el-option
+                v-for="item in data.options"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+              />
+            </el-select>
           </el-form-item>
           <el-form-item label="1">
-            <el-button size="large">閲嶇疆</el-button>
-            <el-button class="fast-reimbursement-button" size="large"
+            <el-button size="large" @click="resetting">閲嶇疆</el-button>
+            <el-button
+              class="fast-reimbursement-button"
+              size="large"
+              @click="pageChange({ page: 1, limit: 10 })"
               >鏌ヨ</el-button
             >
           </el-form-item>
@@ -61,7 +78,7 @@
     </el-card>
     <el-card>
       <el-table
-        :data="tableData"
+        :data="data.tableData"
         border
         :header-cell-style="{
           backgroundColor: '#eaf1fd',
@@ -76,64 +93,183 @@
         max-height="400px"
         style="border: 1px solid #ebeef5"
       >
-        <el-table-column prop="reportCode" label="鐢宠鍗曞彿"></el-table-column>
-        <el-table-column prop="reportStateName" label="鐢宠浜�">
+        <el-table-column prop="employeeName" label="鐢宠浜�"> </el-table-column>
+        <el-table-column prop="employeeTypeName" label="鏁欏伐绫诲瀷" />
+        <el-table-column prop="childName" label="瀛愬コ濮撳悕"> </el-table-column>
+        <el-table-column prop="childBirthday" label="鍑虹敓鏃ユ湡">
+          <template #default="scope">
+            {{ moment(scope.row.childBirthday).format('YYYY-MM-DD') }}
+          </template>
+        </el-table-column>
+        <el-table-column prop="grantCode" label="鍙戞斁鎵规鍙�"> </el-table-column>
+        <el-table-column prop="beginYearMonth" label="鍙戞斁寮€濮嬪勾鏈�">
         </el-table-column>
-        <el-table-column prop="expenseItemNamesStr" label="鏁欏伐绫诲瀷" />
-        <el-table-column prop="expenseItemNamesStr" label="鏁欏伐鐘舵€�" />
-        <el-table-column prop="name" label="瀛愬コ濮撳悕"> </el-table-column>
         <el-table-column
-          prop="budgetProjectNames"
-          label="鍑虹敓鏃ユ湡"
+          prop="endYearMonth"
+          label="鍙戞斁鎴骞存湀"
         ></el-table-column>
-        <el-table-column prop="expenseLatoryName" label="鍙戞斁鎵规鍙�">
-        </el-table-column>
-        <el-table-column prop="name" label="鍙戞斁鏈夋晥鏈�"> </el-table-column>
         <el-table-column
-          prop="expenseReportUsage"
+          prop="grantYearMonth"
           label="鍙戞斁鏈堜唤"
         ></el-table-column>
         <el-table-column
-          prop="expenseReportUsage"
+          prop="grantAmount"
           label="鍙戞斁閲戦"
-        ></el-table-column>
+          header-align="left"
+          align="right"
+        >
+          <template #default="scope">
+            {{ moneyFormat(scope.row.payAmount, 2, ',') }}
+          </template>
+        </el-table-column>
         <el-table-column
-          prop="expenseReportUsage"
+          prop="salaryDeclareBillNo"
           label="鍙戞斁鐢虫姤鍗曞彿"
         ></el-table-column>
-        <el-table-column
-          prop="expenseReportUsage"
-          label="鍙戞斁鍗曠敵鎶ョ姸鎬�"
-        ></el-table-column>
+        <el-table-column prop="salaryDeclareState" label="鍙戞斁鍗曠敵鎶ョ姸鎬�">
+          <template #default="scope">
+            <div
+              class="blueColor divFlex"
+              v-if="scope.row.salaryDeclareState == 0"
+            >
+              <div class="yuan"></div>
+              鏂板缓
+            </div>
+            <div
+              class="yellowColor divFlex"
+              v-else-if="scope.row.salaryDeclareState == 1"
+            >
+              <div class="yuan"></div>
+              寰呴儴闂ㄥ鏍�
+            </div>
+            <div
+              class="yellowColor divFlex"
+              v-else-if="scope.row.salaryDeclareState == 2"
+            >
+              <div class="yuan"></div>
+              寰呰储鍔″鏍�
+            </div>
+            <div
+              class="greenColor divFlex"
+              v-else-if="scope.row.salaryDeclareState == 3"
+            >
+              <div class="yuan"></div>
+              宸插鏍�
+            </div>
+            <div
+              class="greenColor divFlex"
+              v-else-if="scope.row.salaryDeclareState == 4"
+            >
+              <div class="yuan"></div>
+              宸插彂鏀�
+            </div>
+            <div
+              class="RedColor divFlex"
+              v-else-if="scope.row.salaryDeclareState == 5"
+            >
+              <div class="yuan"></div>
+              閮ㄩ棬瀹℃牳椹冲洖
+            </div>
+            <div
+              class="RedColor divFlex"
+              v-else-if="scope.row.salaryDeclareState == 6"
+            >
+              <div class="yuan"></div>
+              璐㈠姟澶勫鏍搁┏鍥�
+            </div>
+            <div
+              class="RedColor divFlex"
+              v-else-if="scope.row.salaryDeclareState == 7"
+            >
+              <div class="yuan"></div>
+              浣滃簾
+            </div>
+          </template>
+        </el-table-column>
       </el-table>
     </el-card>
     <el-card>
       <Pagination
         :total="data.total"
         @pagination="pageChange"
-        :page="data.pageIndex"
-        :limit="data.pageSize"
+        :page="data.application.pageIndex"
+        :limit="data.application.pageSize"
       ></Pagination>
     </el-card>
   </div>
 </template>
 <script setup>
-import { reactive } from 'vue';
+import { reactive, onMounted } from 'vue';
+import InquiryChildcare from '@/api/InquiryChildcare';
+import { moneyFormat } from '@/utils';
+import moment from 'moment';
 const data = reactive({
   application: {
     applicant: '',
-    effectiveDateMin: '',
-    effectiveDateMam: '',
-    applicationStatus: '',
-    distributionMonth: '',
+    grantEndDate: '',
+    grantMonth: '',
+    grantStartDate: '',
+    grantState: 0,
+    pageIndex: 1,
+    pageSize: 10,
   },
+  options: [
+    { value: 0, label: '鏈彂鏀�' },
+    { value: 1, label: '宸插彂鏀�' },
+  ],
   total: 0,
-  pageIndex: 1,
-  pageSize: 10,
+  tableData: [],
 });
+//閲嶇疆
+const resetting = () => {
+  data.application = {
+    applicant: '',
+    grantEndDate: '',
+    grantMonth: '',
+    grantStartDate: '',
+    grantState: '',
+  };
+};
+//鍒嗛〉
+const pageChange = ({ page, limit }) => {
+  data.application.pageIndex = page;
+  data.application.pageSize = limit;
+  statisticsPageList();
+};
+//鏌ヨ
+const statisticsPageList = () => {
+  InquiryChildcare.statisticsPageList(data.application).then((res) => {
+    data.tableData = res.data;
+    data.total = res.total;
+  });
+};
+
+onMounted(() => {});
 </script>
 
 <style lang="scss" scoped>
+.yuan {
+  width: 6px;
+  height: 6px;
+  border-radius: 3px;
+  margin-right: 5px;
+}
+.divFlex {
+  display: flex;
+  align-items: center;
+}
+.RedColor {
+  color: #ff0000;
+}
+.yellowColor {
+  color: #ffab4e;
+}
+.greenColor {
+  color: #19b21e;
+}
+.blueColor {
+  color: #4e85dd;
+}
 .theSecondStep-form .el-form-item:last-child {
   :deep(.el-form-item__label) {
     color: #fff;
diff --git a/PublicPCWeb/src/views/application-form-query/index.vue b/PublicPCWeb/src/views/application-form-query/index.vue
index 9e6a759..fea438e 100644
--- a/PublicPCWeb/src/views/application-form-query/index.vue
+++ b/PublicPCWeb/src/views/application-form-query/index.vue
@@ -16,34 +16,48 @@
           :model="data.application"
         >
           <el-form-item label="鐢宠浜哄伐鍙锋垨濮撳悕">
-            <el-input v-model.trim="data.application.applicant" />
+            <el-input v-model.trim="data.application.applyPerson" />
           </el-form-item>
           <el-form-item label="鍙戞斁鏈夋晥鏈�">
             <el-date-picker
-              v-model="data.application.effectiveDateMin"
-              type="date"
+              v-model="data.application.beginYearMonthStart"
+              type="month"
               size="large"
               placeholder="寮€濮嬫棩鏈�"
               style="margin-right: 10px"
-              format="YYYY-MM-DD"
-              value-format="YYYY-MM-DD"
+              format="YYYY-MM"
+              value-format="YYYY-MM"
             />
 
             <el-date-picker
-              v-model="data.application.effectiveDateMam"
-              type="date"
+              v-model="data.application.endYearMonthEnd"
+              type="month"
               size="large"
               placeholder="缁撴潫鏃ユ湡"
-              format="YYYY-MM-DD"
-              value-format="YYYY-MM-DD"
+              format="YYYY-MM"
+              value-format="YYYY-MM"
             />
           </el-form-item>
           <el-form-item label="鐢宠鍗曠姸鎬�">
-            <el-input v-model.trim="data.application.applicationStatus" />
+            <el-select
+              v-model="data.application.state"
+              placeholder="璇烽€夋嫨"
+              size="large"
+            >
+              <el-option
+                v-for="item in data.options"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+              />
+            </el-select>
           </el-form-item>
           <el-form-item label="1">
-            <el-button size="large">閲嶇疆</el-button>
-            <el-button class="fast-reimbursement-button" size="large"
+            <el-button size="large" @click="resetting">閲嶇疆</el-button>
+            <el-button
+              class="fast-reimbursement-button"
+              size="large"
+              @click="pageChange({ page: 1, limit: 10 })"
               >鏌ヨ</el-button
             >
           </el-form-item>
@@ -60,8 +74,7 @@
         >
       </div>
       <el-table
-        :data="tableData"
-        border
+        :data="data.tableData"
         :header-cell-style="{
           backgroundColor: '#eaf1fd',
           color: '#545354',
@@ -72,69 +85,108 @@
         :row-style="{
           height: 60 + 'px',
         }"
+        ref="tableDataRef"
+        highlight-current-row
+        @cell-click="cellClick"
         max-height="400px"
         style="border: 1px solid #ebeef5"
       >
-        <el-table-column prop="reportCode" label="鐢宠浜�"></el-table-column>
-        <el-table-column prop="reportStateName" label="鏁欏伐绫诲瀷">
+        <el-table-column prop="employeeName" label="鐢宠浜�"></el-table-column>
+        <el-table-column prop="employeeTypeName" label="鏁欏伐绫诲瀷">
         </el-table-column>
-        <el-table-column prop="expenseItemNamesStr" label="鏁欏伐鐘舵€�" />
-
-        <el-table-column prop="name" label="瀛愬コ濮撳悕"> </el-table-column>
-        <el-table-column prop="expenseAmount" label="鍏崇郴"> </el-table-column>
-        <el-table-column
-          prop="budgetProjectNames"
-          label="鍑虹敓鏃ユ湡"
-        ></el-table-column>
-        <el-table-column prop="expenseLatoryName" label="鍙戞斁寮€濮嬪勾鏈�">
+        <el-table-column prop="childName" label="瀛愬コ濮撳悕"> </el-table-column>
+        <el-table-column prop="relationship" label="鍏崇郴">
+          <template #default="scope">
+            <div v-if="scope.row.relationship == 0">鐖跺瓙</div>
+            <div v-else-if="scope.row.relationship == 1">鐖跺コ</div>
+            <div v-else-if="scope.row.relationship == 2">姣嶅瓙</div>
+            <div v-else-if="scope.row.relationship == 3">姣嶅コ</div>
+          </template>
         </el-table-column>
-        <el-table-column prop="name" label="鍙戞斁鎴骞存湀"> </el-table-column>
-        <el-table-column
-          prop="expenseReportUsage"
-          label="鍙戠エ鏁伴噺"
-        ></el-table-column>
+        <el-table-column prop="childBirthday" label="鍑虹敓鏃ユ湡">
+          <template #default="scope">
+            {{ moment(scope.row.childBirthday).format('YYYY-MM-DD') }}
+          </template>
+        </el-table-column>
+        <el-table-column prop="beginYearMonth" label="鍙戞斁寮€濮嬪勾鏈�">
+        </el-table-column>
+        <el-table-column prop="endYearMonth" label="鍙戞斁鎴骞存湀">
+        </el-table-column>
+        <el-table-column prop="invoiceCount" label="鍙戠エ鏁伴噺"></el-table-column>
         <el-table-column
-          prop="expenseReportUsage"
+          prop="payAmount"
           label="鏈堟姤閿€閲戦"
-        ></el-table-column>
+          header-align="left"
+          align="right"
+        >
+          <template #default="scope">
+            {{ moneyFormat(scope.row.payAmount, 2, ',') }}
+          </template>
+        </el-table-column>
         <el-table-column
-          prop="expenseReportUsage"
+          prop="claimsAmount"
           label="鍙戠エ鎶ラ攢閲戦"
-        ></el-table-column>
-        <el-table-column
-          prop="expenseReportUsage"
-          label="鐢宠鍗曠姸鎬�"
-        ></el-table-column>
+          header-align="left"
+          align="right"
+        >
+          <template #default="scope">
+            {{ moneyFormat(scope.row.claimsAmount, 2, ',') }}
+          </template>
+        </el-table-column>
+        <el-table-column prop="expenseReportUsage" label="鐢宠鍗曠姸鎬�">
+          <template #default="scope">
+            <div class="blueColor divFlex" v-if="scope.row.state == 0">
+              <div class="yuan"></div>
+              鏈彁浜�
+            </div>
+            <div class="greenColor divFlex" v-else-if="scope.row.state == 1">
+              <div class="yuan"></div>
+              鎻愪氦
+            </div>
+            <div class="yellowColor divFlex" v-else-if="scope.row.state == 2">
+              <div class="yuan"></div>
+              瀹℃牳
+            </div>
+            <div class="RedColor divFlex" v-else-if="scope.row.state == -1">
+              <div class="yuan"></div>
+              椹冲洖
+            </div>
+          </template>
+        </el-table-column>
       </el-table>
     </el-card>
     <el-card>
       <Pagination
         :total="data.total"
         @pagination="pageChange"
-        :page="data.pageIndex"
-        :limit="data.pageSize"
+        :page="data.application.pageIndex"
+        :limit="data.application.pageSize"
       ></Pagination>
     </el-card>
     <!-- 鍙戞斁鏄庣粏鏌ョ湅 -->
     <el-dialog
       v-model="data.loanShow"
       title="鍙戞斁璁″垝鏄庣粏鏌ョ湅"
-      width="60%"
       custom-class="fast-reimbursement-dialog"
+      @close="cancelClick"
     >
       <div class="application-div">
         <div class="application-left">
           <div>
             <span>鐢宠浜猴細</span>
-            <span>01001-寮犱笁</span>
+            <span>{{ data.rowObj.employeeName }}</span>
           </div>
           <div>
             <span>瀛愬コ濮撳悕锛�</span>
-            <span>寮犳€濇€�</span>
+            <span>{{ data.rowObj.childName }}</span>
           </div>
           <div>
             <span>鍙戞斁鏈夋晥鏃ユ湡锛�</span>
-            <span>2023-07-08鑷�2025-07-08</span>
+            <span
+              >{{ data.rowObj.beginYearMonth }}鑷硔{
+                data.rowObj.endYearMonth
+              }}</span
+            >
           </div>
         </div>
         <el-button class="fast-reimbursement-button" @click="manuallyAdding"
@@ -142,8 +194,7 @@
         >
       </div>
       <el-table
-        :data="tableData"
-        border
+        :data="data.detailTable"
         :header-cell-style="{
           backgroundColor: '#eaf1fd',
           color: '#545354',
@@ -157,21 +208,50 @@
         max-height="400px"
         style="border: 1px solid #ebeef5"
       >
-        <el-table-column prop="reportCode" label="搴斿彂骞存湀"></el-table-column>
-        <el-table-column prop="reportStateName" label="搴斿彂閲戦">
-        </el-table-column>
-        <el-table-column prop="expenseItemNamesStr" label="鍙戞斁鏃堕棿" />
-        <el-table-column prop="name" label="绫诲瀷"> </el-table-column>
-        <el-table-column prop="expenseAmount" label="鐘舵€�"> </el-table-column>
         <el-table-column
-          prop="budgetProjectNames"
-          label="鎿嶄綔"
+          prop="applyYearMonth"
+          label="搴斿彂骞存湀"
         ></el-table-column>
+        <el-table-column
+          prop="payAmount"
+          label="搴斿彂閲戦"
+          header-align="left"
+          align="right"
+        >
+        </el-table-column>
+        <el-table-column prop="grantYearMonth" label="鍙戞斁鏃堕棿" />
+        <el-table-column prop="type" label="绫诲瀷">
+          <template #default="scope">
+            <div v-if="scope.row.type == 0">鍙戠エ</div>
+            <div v-else-if="scope.row.type == 1">鑷姩</div>
+            <div v-else-if="scope.row.type == 2">鎵嬪伐</div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="state" label="鐘舵€�">
+          <template #default="scope">
+            <div v-if="scope.row.state == 0">鏈彂鏀�</div>
+            <div v-else-if="scope.row.state == 1">宸插彂鏀�</div>
+            <div v-else-if="scope.row.state == 2">浣滃簾</div>
+          </template>
+        </el-table-column>
+        <el-table-column label="鎿嶄綔">
+          <template #default="scope">
+            <el-button v-if="scope.row.state == 2" @click="enable(scope.row)"
+              >鍚敤</el-button
+            >
+            <el-button
+              v-if="scope.row.state == 0"
+              type="danger"
+              @click="cancel(scope.row)"
+              >浣滃簾</el-button
+            >
+          </template>
+        </el-table-column>
       </el-table>
       <template #footer>
         <Pagination
-          :total="data.total"
-          @pagination="pageChange"
+          :total="data.detailTotal"
+          @pagination="pageChanges"
           :page="data.pageIndex"
           :limit="data.pageSize"
         ></Pagination>
@@ -181,18 +261,50 @@
     <el-dialog
       v-model="data.addDistribution"
       title="娣诲姞鍙戞斁鏄庣粏"
-      width="40%"
+      width="600px"
       custom-class="fast-reimbursement-dialog application-dialog"
     >
       <el-form :model="data.distributionForm" size="large">
-        <el-form-item label="鍙戞斁骞存湀">
-          <el-input v-model="data.distributionForm.distributionYear" />
+        <el-form-item
+          label="鍙戞斁骞存湀"
+          prop="applyYearMonth"
+          :rules="[
+            {
+              required: true,
+              message: '璇烽€夋嫨鍙戞斁骞存湀',
+              trigger: 'blur',
+            },
+          ]"
+        >
+          <el-date-picker
+            v-model="data.distributionForm.applyYearMonth"
+            type="month"
+            size="large"
+            placeholder="璇峰~鍐欏彂鏀惧勾鏈�"
+            style="width: 100%"
+            format="YYYY-MM"
+            value-format="YYYY-MM"
+          />
         </el-form-item>
-        <el-form-item label="鍙戠エ閲戦">
-          <el-input v-model="data.distributionForm.invoiceValue" />
+        <el-form-item
+          label="鍙戠エ閲戦"
+          prop="invoiceAmount"
+          :rules="[
+            {
+              required: true,
+              message: '璇峰~鍐欏彂鏀鹃噾棰�',
+              trigger: 'blur',
+            },
+          ]"
+        >
+          <MoneyInput
+            v-model="data.distributionForm.invoiceAmount"
+            size="large"
+            @change="countGrantMoney(data.distributionForm.invoiceAmount)"
+          ></MoneyInput>
         </el-form-item>
         <el-form-item label="鍙戞斁閲戦">
-          <el-input v-model="data.distributionForm.distributionAmount" />
+          <el-input v-model="data.distributionForm.payAmount" disabled />
         </el-form-item>
         <el-form-item label="鍙戠エ涓婁紶">
           <el-button :icon="Paperclip" class="fast-reimbursement-button"
@@ -211,36 +323,175 @@
 </template>
 <script setup>
 import { Paperclip } from '@element-plus/icons-vue';
-import { reactive } from 'vue';
+import { reactive, ref } from 'vue';
+import InquiryChildcare from '@/api/InquiryChildcare';
+import { moneyFormat, absNum } from '@/utils';
+import moment from 'moment';
+import { ElMessage, ElMessageBox } from 'element-plus';
+
 const data = reactive({
+  standards: '',
   application: {
-    applicant: '',
-    effectiveDateMin: '',
-    effectiveDateMam: '',
-    applicationStatus: '',
+    applyPerson: '',
+    beginYearMonthStart: '',
+    endYearMonthEnd: '',
+    state: '',
+    pageIndex: 1,
+    pageSize: 10,
   },
   total: 0,
+  detailTotal: 0,
   pageIndex: 1,
   pageSize: 10,
   loanShow: false,
   addDistribution: false,
   distributionForm: {
-    distributionYear: '',
-    invoiceValue: '',
-    distributionAmount: '',
+    applyYearMonth: '',
+    invoiceAmount: '',
+    payAmount: '',
   },
+  options: [
+    { value: 0, label: '鏈彁浜�' },
+    { value: 1, label: '鎻愪氦' },
+    { value: 2, label: '瀹℃牳' },
+    { value: -1, label: '椹冲洖' },
+  ],
+  rowObj: {},
+  tableData: [],
 });
+const tableDataRef = ref([]);
 //鐐瑰嚮鏌ョ湅鍙戞斁璁″垝
 const viewDistributionPlan = () => {
+  if (!data.rowObj.id) {
+    return ElMessage({
+      message: '璇烽€夋嫨鐢虫姤鍗�',
+      type: 'warning',
+    });
+  }
   data.loanShow = true;
+  pageListsa();
+};
+//鏌ョ湅鍙戞斁鏄庣粏
+const pageListsa = () => {
+  InquiryChildcare.pageListsa({
+    applyId: data.rowObj.id,
+    applyYearMonthEnd: '',
+    applyYearMonthStart: '',
+    pageIndex: data.pageIndex,
+    pageSize: data.pageSize,
+  }).then((res) => {
+    data.detailTable = res.data;
+    data.detailTotal = res.total;
+  });
 };
 //鎵嬪姩娣诲姞鍙戞斁鏄庣粏
 const manuallyAdding = () => {
   data.addDistribution = true;
+  grantStandard();
+};
+//鏌ヨ
+const pageLists = () => {
+  InquiryChildcare.pageLists(data.application).then((res) => {
+    data.tableData = res.data;
+    data.total = res.total;
+    data.rowObj = {};
+  });
+};
+//閲嶇疆
+const resetting = () => {
+  data.application = {
+    applyPerson: '',
+    beginYearMonthStart: '',
+    endYearMonthEnd: '',
+    state: '',
+  };
+};
+//涓婚〉鍒嗛〉
+const pageChange = ({ page, limit }) => {
+  data.application.pageIndex = page;
+  data.application.pageSize = limit;
+  pageLists();
+};
+//鐐瑰嚮鍗曞厓鏍�
+const cellClick = (row) => {
+  data.rowObj = row;
+};
+//鏄庣粏鍒嗛〉
+const pageChanges = ({ page, limit }) => {
+  data.application.pageIndex = page;
+  data.application.pageSize = limit;
+  pageListsa();
+};
+//浣滃簾
+const cancel = (row) => {
+  ElMessageBox.confirm('纭浣滃簾鍚�?', '鎻愮ず', {
+    confirmButtonText: '纭',
+    cancelButtonText: '鍙栨秷',
+    type: 'warning',
+  }).then(() => {
+    InquiryChildcare.cancel(row.id).then(() => {
+      ElMessage({
+        type: 'success',
+        message: '浣滃簾鎴愬姛',
+      });
+      pageListsa();
+    });
+  });
+};
+//鍚敤
+const enable = (row) => {
+  InquiryChildcare.enable(row.id).then(() => {
+    ElMessage({
+      type: 'success',
+      message: '鍚敤鎴愬姛',
+    });
+    pageListsa();
+  });
+};
+//鍏抽棴鏄庣粏寮瑰嚭妗�
+const cancelClick = () => {
+  data.rowObj = {};
+  tableDataRef.value.setCurrentRow();
+};
+//鍙戞斁鏍囧噯
+const grantStandard = () => {
+  InquiryChildcare.grantStandard().then((res) => {
+    data.standards = res.data[0];
+  });
+};
+//鍙戞斁閲戦璁$畻
+const countGrantMoney = (val) => {
+  let num = absNum(val, 2, '/');
+  data.distributionForm.payAmount =
+    num > data.standards
+      ? moneyFormat(data.standards, 2, ',')
+      : moneyFormat(num, 2, ',');
 };
 </script>
 
 <style lang="scss" scoped>
+.yuan {
+  width: 6px;
+  height: 6px;
+  border-radius: 3px;
+  margin-right: 5px;
+}
+.divFlex {
+  display: flex;
+  align-items: center;
+}
+.RedColor {
+  color: #ff0000;
+}
+.yellowColor {
+  color: #ffab4e;
+}
+.greenColor {
+  color: #19b21e;
+}
+.blueColor {
+  color: #4e85dd;
+}
 .theSecondStep-form .el-form-item:last-child {
   :deep(.el-form-item__label) {
     color: #fff;
diff --git a/PublicPCWeb/src/views/batch-generation/index.vue b/PublicPCWeb/src/views/batch-generation/index.vue
index 65ea3ef..57f9726 100644
--- a/PublicPCWeb/src/views/batch-generation/index.vue
+++ b/PublicPCWeb/src/views/batch-generation/index.vue
@@ -13,26 +13,31 @@
       >
         <el-form-item label="鍙戞斁骞存湀">
           <el-date-picker
-            v-model="data.batch.effectiveDateMin"
-            type="date"
+            v-model="data.batch.startYearMonth"
+            type="month"
             size="large"
             placeholder="寮€濮嬫棩鏈�"
             style="margin-right: 10px"
-            format="YYYY-MM-DD"
-            value-format="YYYY-MM-DD"
+            format="YYYY-MM"
+            :editable="false"
+            value-format="YYYY-MM"
           />
 
           <el-date-picker
-            v-model="data.batch.effectiveDateMam"
-            type="date"
+            v-model="data.batch.endYearMonth"
+            type="month"
             size="large"
+            :editable="false"
             placeholder="缁撴潫鏃ユ湡"
-            format="YYYY-MM-DD"
-            value-format="YYYY-MM-DD"
+            format="YYYY-MM"
+            value-format="YYYY-MM"
           />
         </el-form-item>
         <el-form-item label="1">
-          <el-button class="fast-reimbursement-button" size="large"
+          <el-button
+            class="fast-reimbursement-button"
+            size="large"
+            @click="pageList"
             >鎼滅储</el-button
           >
         </el-form-item>
@@ -45,11 +50,18 @@
           @click="generateDistribution"
           >鐢熸垚鍙戞斁鎵规</el-button
         >
-        <el-button type="danger" size="large">鎾ら攢鍙戞斁鎵规</el-button>
+        <el-button
+          type="danger"
+          size="large"
+          v-if="
+            !data.rowObj.salaryDeclareBillNo && !data.rowObj.salaryDeclareState
+          "
+          @click="revokeDistribution"
+          >鎾ら攢鍙戞斁鎵规</el-button
+        >
       </div>
       <el-table
-        :data="tableData"
-        border
+        :data="data.tableData"
         :header-cell-style="{
           backgroundColor: '#eaf1fd',
           color: '#545354',
@@ -57,23 +69,72 @@
           fontSize: 14 + 'px',
           height: 47 + 'px',
         }"
+        ref="detailRef"
         :row-style="{
           height: 60 + 'px',
         }"
         max-height="400px"
+        highlight-current-row
+        @cell-click="cellClick"
         style="border: 1px solid #ebeef5"
       >
-        <el-table-column prop="reportCode" label="鍙戞斁鎵规鍙�"></el-table-column>
-        <el-table-column prop="reportStateName" label="鍙戞斁閲戦">
-        </el-table-column>
-        <el-table-column prop="expenseItemNamesStr" label="鍙戞斁浜烘暟" />
-        <el-table-column prop="name" label="鐢虫姤鍗曞彿"> </el-table-column>
-        <el-table-column prop="expenseAmount" label="鍗曟嵁鐘舵€�">
+        <el-table-column prop="grantCode" label="鍙戞斁鎵规鍙�">
+          <template #default="scope">
+            <div style="color: #2972e9">{{ scope.row.grantCode }}</div>
+          </template>
         </el-table-column>
         <el-table-column
-          prop="budgetProjectNames"
-          label="钖祫鐢虫姤鎿嶄綔"
-        ></el-table-column>
+          prop="grantAmount"
+          label="鍙戞斁閲戦"
+          header-align="left"
+          align="right"
+        >
+          <template #default="scope">
+            {{ moneyFormat(scope.row.grantAmount, 2, ',') }}
+          </template>
+        </el-table-column>
+        <el-table-column prop="grantCount" label="鍙戞斁浜烘暟" />
+        <el-table-column prop="salaryDeclareBillNo" label="鐢虫姤鍗曞彿">
+        </el-table-column>
+        <el-table-column prop="salaryDeclareState" label="鍗曟嵁鐘舵€�">
+          <template #default="scope">
+            <div v-if="scope.row.salaryDeclareState == 0">鏂板缓</div>
+            <div v-else-if="scope.row.salaryDeclareState == 1">寰呴儴闂ㄥ鏍�</div>
+            <div v-else-if="scope.row.salaryDeclareState == 2">寰呰储鍔″鏍�</div>
+            <div v-else-if="scope.row.salaryDeclareState == 3">宸插鏍�</div>
+            <div v-else-if="scope.row.salaryDeclareState == 4">宸插彂鏀�</div>
+            <div v-else-if="scope.row.salaryDeclareState == 5">
+              閮ㄩ棬瀹℃牳椹冲洖
+            </div>
+            <div v-else-if="scope.row.salaryDeclareState == 6">
+              璐㈠姟澶勫鏍搁┏鍥�
+            </div>
+            <div v-else-if="scope.row.salaryDeclareState == 7">浣滃簾</div>
+          </template>
+        </el-table-column>
+        <el-table-column label="钖祫鐢虫姤鎿嶄綔">
+          <template #default="scope">
+            <el-button
+              @click="createSalaryDeclare(scope.row)"
+              v-if="
+                !scope.row.salaryDeclareBillNo && !scope.row.salaryDeclareState
+              "
+              >鐢熸垚鍙戞斁鍗�</el-button
+            >
+            <el-button
+              type="danger"
+              v-if="
+                scope.row.salaryDeclareState != 1 &&
+                scope.row.salaryDeclareState != 2 &&
+                scope.row.salaryDeclareState != 3 &&
+                scope.row.salaryDeclareState != 4 &&
+                scope.row.salaryDeclareState
+              "
+              @click="revokeClick(scope.row)"
+              >鎾ら攢</el-button
+            >
+          </template>
+        </el-table-column>
       </el-table>
     </el-card>
     <!-- 鐢熸垚鍙戞斁鎵规 -->
@@ -85,28 +146,38 @@
     >
       <el-form :model="data.generateForm" size="large" inline>
         <el-form-item label="鍙戞斁骞存湀">
-          <el-input
-            v-model="data.generateForm.distributionYear"
+          <el-date-picker
+            v-model="data.generateForm.grantYearMonth"
+            type="month"
+            size="large"
             placeholder="鍙戞斁骞存湀"
+            :editable="false"
+            style="margin-right: 10px"
+            format="YYYY-MM"
+            value-format="YYYY-MM"
           />
         </el-form-item>
         <el-form-item>
-          <el-button size="large">鎼滅储</el-button>
-          <el-button class="fast-reimbursement-button" size="large"
+          <el-button size="large" @click="pageChange({ page: 1, limit: 10 })"
+            >鎼滅储</el-button
+          >
+          <el-button
+            class="fast-reimbursement-button"
+            size="large"
+            @click="createGrant"
             >鐢熸垚</el-button
           >
         </el-form-item>
         <el-form-item>
           <el-checkbox
-            v-model="data.generateForm.type"
+            v-model="data.generateForm.isSameTimeSalary"
             label="鏄惁鍚屾椂鐢熸垚钖祫鐢虫姤鍗�"
             size="large"
           />
         </el-form-item>
       </el-form>
       <el-table
-        :data="tableData"
-        border
+        :data="data.distributionTable"
         :header-cell-style="{
           backgroundColor: '#eaf1fd',
           color: '#545354',
@@ -120,11 +191,19 @@
         max-height="400px"
         style="border: 1px solid #ebeef5"
       >
-        <el-table-column prop="reportCode" label="鐢宠浜�"></el-table-column>
-        <el-table-column prop="reportStateName" label="瀛愬コ濮撳悕">
+        <el-table-column prop="employeeName" label="鐢宠浜�"></el-table-column>
+        <el-table-column prop="childName" label="瀛愬コ濮撳悕"> </el-table-column>
+        <el-table-column prop="applyYearMonth" label="搴斿彂骞存湀" />
+        <el-table-column
+          prop="payAmount"
+          label="鍙戞斁閲戦"
+          header-align="left"
+          align="right"
+        >
+          <template #default="scope">
+            {{ moneyFormat(scope.row.payAmount, 2, ',') }}
+          </template>
         </el-table-column>
-        <el-table-column prop="expenseItemNamesStr" label="搴斿彂骞存湀" />
-        <el-table-column prop="name" label="鍙戞斁閲戦"> </el-table-column>
       </el-table>
       <template #footer>
         <Pagination
@@ -141,24 +220,24 @@
       title="鍙戞斁鎵规鐢熸垚"
       width="576px"
       custom-class="fast-reimbursement-dialog"
+      @close="cancellationClick"
     >
       <div class="batch-div">
         <div>
           <span>鍙戞斁鎵规鍙凤細</span>
-          <span>TY20231231233</span>
+          <span>{{ data.rowObj.grantCode }}</span>
         </div>
         <div>
           <span>鍙戞斁鎬婚噾棰濓細</span>
-          <span>10000.00</span>
+          <span>{{ moneyFormat(data.rowObj.grantAmount, 2, ',') }}</span>
         </div>
         <div>
           <span>鍙戞斁鎬讳汉鏁帮細</span>
-          <span>55</span>
+          <span>{{ data.rowObj.grantCount }}</span>
         </div>
       </div>
       <el-table
-        :data="tableData"
-        border
+        :data="data.detailTable"
         :header-cell-style="{
           backgroundColor: '#eaf1fd',
           color: '#545354',
@@ -172,51 +251,193 @@
         max-height="400px"
         style="border: 1px solid #ebeef5"
       >
-        <el-table-column prop="reportCode" label="鐢宠浜�"></el-table-column>
-        <el-table-column prop="reportStateName" label="瀛愬コ濮撳悕">
+        <el-table-column prop="employeeName" label="鐢宠浜�"></el-table-column>
+        <el-table-column prop="childName" label="瀛愬コ濮撳悕"> </el-table-column>
+        <el-table-column prop="applyYearMonth" label="搴斿彂骞存湀" />
+        <el-table-column
+          prop="payAmount"
+          label="鍙戞斁閲戦"
+          header-align="left"
+          align="right"
+        >
+          <template #default="scope">
+            {{ moneyFormat(scope.row.payAmount, 2, ',') }}
+          </template>
         </el-table-column>
-        <el-table-column prop="expenseItemNamesStr" label="搴斿彂骞存湀" />
-        <el-table-column prop="name" label="鍙戞斁閲戦"> </el-table-column>
       </el-table>
       <template #footer>
         <Pagination
-          :total="data.generatePaging.total"
-          @pagination="pageChange"
-          :page="data.generatePaging.pageIndex"
-          :limit="data.generatePaging.pageSize"
+          :total="data.detailPage.total"
+          @pagination="pageChangeDetail"
+          :page="data.detailPage.pageIndex"
+          :limit="data.detailPage.pageSize"
         ></Pagination>
       </template>
     </el-dialog>
   </div>
 </template>
 <script setup>
-import { reactive } from 'vue';
-
+import { reactive, ref } from 'vue';
+import InquiryChildcare from '@/api/InquiryChildcare';
+import { moneyFormat } from '@/utils';
+import moment from 'moment';
+import { ElMessage, ElMessageBox } from 'element-plus';
 const data = reactive({
+  detailTable: [],
+  detailPage: {
+    pageIndex: 1,
+    pageSize: 10,
+    total: 0,
+  },
+  tableData: [],
+  distributionTable: [],
   batch: {
-    effectiveDateMin: '',
-    effectiveDateMam: '',
+    startYearMonth: '',
+    endYearMonth: '',
+    pageIndex: 1,
+    pageSize: 10,
   },
-  generateDialog: false,
   generatePaging: {
-    total: 0,
     pageIndex: 1,
     pageSize: 10,
+    total: 0,
   },
+  generateDialog: false,
+  total: 0,
   generateForm: {
-    type: true,
-    distributionYear: '',
+    isSameTimeSalary: true,
+    grantYearMonth: moment(new Date()).format('YYYY-MM'),
   },
+  rowObj: {},
   detailsDialog: false,
 });
-//鐢熸垚鍙戞斁鎵规
+const detailRef = ref([]);
+//鐢熸垚
+const createGrant = () => {
+  InquiryChildcare.createGrant(data.generateForm).then(() => {
+    data.generateDialog = false;
+    ElMessage({
+      message: '鐢熸垚鎴愬姛',
+      type: 'success',
+    });
+    pageList();
+  });
+};
+//鎼滅储
+const pageList = () => {
+  InquiryChildcare.pageList(data.batch).then((res) => {
+    data.tableData = res.data;
+    data.rowObj = {};
+  });
+};
+//鐐瑰嚮鐢熸垚鍙戞斁鎵规
 const generateDistribution = () => {
   data.generateDialog = true;
+  pageCanGrantList();
+};
+//鐢熸垚鍙戞斁鎵规
+const pageCanGrantList = () => {
+  InquiryChildcare.pageCanGrantList({
+    grantYearMonth: data.generateForm.grantYearMonth,
+    pageIndex: data.generatePaging.pageIndex,
+    pageSize: data.generatePaging.pageSize,
+  }).then((res) => {
+    data.distributionTable = res.data;
+    data.generatePaging.total = res.total;
+  });
+};
+//鐢熸垚鍙戞斁鎵规鍒嗛〉
+const pageChange = ({ page, limit }) => {
+  data.generatePaging.pageIndex = page;
+  data.generatePaging.pageSize = limit;
+  pageCanGrantList();
 };
 //鏄庣粏鏌ョ湅
 const detailsView = () => {
+  if (!data.rowObj.id) {
+    return ElMessage({
+      message: '璇烽€夋嫨鍙戞斁鎵规',
+      type: 'warning',
+    });
+  }
+  pageGrantDetailList();
   data.detailsDialog = true;
 };
+//鏄庣粏鍏抽棴
+const cancellationClick = () => {
+  data.rowObj = {};
+  detailRef.value.setCurrentRow();
+};
+//鏄庣粏
+const pageGrantDetailList = () => {
+  InquiryChildcare.pageGrantDetailList({
+    grantId: data.rowObj.id,
+    pageIndex: data.detailPage.pageIndex,
+    pageSize: data.detailPage.pageSize,
+  }).then((res) => {
+    data.detailTable = res.data;
+    data.detailPage.total = res.total;
+  });
+};
+//鐢熸垚鍙戞斁鍗�
+const createSalaryDeclare = (row) => {
+  InquiryChildcare.createSalaryDeclare(row.id).then(() => {
+    ElMessage({
+      message: '鐢熸垚鍙戞斁鍗曟垚鍔�',
+      type: 'success',
+    });
+    pageList();
+  });
+};
+//鐐瑰嚮鍗曞厓鏍�
+const cellClick = (row) => {
+  data.rowObj = row;
+};
+//鏄庣粏鏌ョ湅鍒嗛〉
+const pageChangeDetail = ({ page, limit }) => {
+  data.detailPage.pageIndex = page;
+  data.detailPage.pageSize = limit;
+  pageGrantDetailList();
+};
+//鎾ら攢
+const revokeClick = (row) => {
+  ElMessageBox.confirm('纭鎾ら攢鍚�?', '鎻愮ず', {
+    confirmButtonText: '纭',
+    cancelButtonText: '鍙栨秷',
+    type: 'warning',
+  }).then(() => {
+    InquiryChildcare.cancelSalaryDeclare(row.id).then(() => {
+      ElMessage({
+        type: 'success',
+        message: '鎾ら攢鎴愬姛',
+      });
+      pageList();
+    });
+  });
+};
+//鎾ら攢鍙戞斁鎵规
+const revokeDistribution = () => {
+  if (!data.rowObj.id) {
+    return ElMessage({
+      message: '璇烽€夋嫨鍙戞斁鎵规',
+      type: 'warning',
+    });
+  }
+  ElMessageBox.confirm('纭鎾ら攢鍚�?', '鎻愮ず', {
+    confirmButtonText: '纭',
+    cancelButtonText: '鍙栨秷',
+    type: 'warning',
+  }).then(() => {
+    InquiryChildcare.cancelGrant(data.rowObj.id).then(() => {
+      ElMessage({
+        type: 'success',
+        message: '鎾ら攢鎴愬姛',
+      });
+
+      pageList();
+    });
+  });
+};
 </script>
 <style lang="scss" scoped>
 .pagination-container {
diff --git a/PublicPCWeb/src/views/company/index.vue b/PublicPCWeb/src/views/company/index.vue
deleted file mode 100644
index 95cdb7f..0000000
--- a/PublicPCWeb/src/views/company/index.vue
+++ /dev/null
@@ -1,239 +0,0 @@
-<template>
-  <div class="app-container">
-    <el-card>
-      <el-form>
-        <el-row :gutter="20">
-          <el-col :sm="11" :md="8" :lg="6" :xl="6">
-            <el-form-item :model="formData" label="鍗曚綅鍚嶇О">
-              <el-input v-model="formData.companyName"></el-input>
-            </el-form-item>
-          </el-col>
-
-          <el-col :sm="11" :md="7" :lg="6" :xl="6" style="text-align: left">
-            <el-button
-              type="primary"
-              icon="Plus"
-              plain
-              @click="buildexample"
-              >鏂板</el-button
-            >
-            <el-button icon="Search" plain @click="getexamplelist"
-              >鏌ヨ</el-button
-            >
-          </el-col>
-        </el-row>
-      </el-form>
-    </el-card>
-    <el-card class="mt-20">
-      <el-table
-        :data="tableData"
-        border
-        stripe
-        style="width: 100%"
-        :header-cell-style="{ 'text-align': 'center' }"
-      >
-        <el-table-column
-          type="selection"
-          align="center"
-          width="35"
-        ></el-table-column>
-        <el-table-column prop="id" label="鍗曚綅ID" align="center" />
-        <el-table-column prop="companyName" label="鍗曚綅鍚嶇О" align="center" />
-        <el-table-column label="鎿嶄綔" align="center">
-          <template v-slot:default="scope">
-            <el-button
-              type="primary"
-              icon="Edit"
-              plain
-              @click="modity(scope.row)"
-              >淇敼</el-button
-            >
-            <el-popconfirm
-              title="纭鍒犻櫎璇ュ崟浣嶅悧锛�"
-              @confirm="confirmEvent(scope.row)"
-            >
-              <template #reference>
-                <el-button type="danger" icon="Delete" plain
-                  >鍒犻櫎</el-button
-                >
-              </template>
-            </el-popconfirm>
-          </template>
-        </el-table-column>
-      </el-table>
-      <!-- <Pagination
-        :page="formlist.pageIndex"
-        :limit="formlist.pageSize"
-        :total="dataCount"
-        @pagination="changePage"
-      /> -->
-    </el-card>
-    <el-dialog
-      v-model="stuFormDialog"
-      destroy-on-close
-      title="娣诲姞瀹炰緥"
-      width="20%"
-    >
-      <template #title>
-        <span v-if="!student" class="title-name">娣诲姞鍗曚綅</span>
-        <span v-if="student" class="title-age">淇敼鍗曚綅</span>
-      </template>
-      <el-form
-        ref="addform"
-        :rules="rules"
-        label-position="top"
-        label-width="100px"
-        :model="detail"
-      >
-        <el-form-item label="鍗曚綅鍚嶇О " prop="companyName">
-          <el-input v-model="detail.companyName"></el-input>
-        </el-form-item>
-      </el-form>
-      <template #footer>
-        <span class="dialog-footer">
-          <el-button type="primary" @click="build(detail)">绔嬪嵆鍒涘缓</el-button>
-          <el-button @click="stuFormDialog = false">鍙栨秷</el-button>
-        </span>
-      </template>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-import Api from '@/api/company';
-import { onBeforeMount, reactive, toRefs } from 'vue';
-import { ElMessage } from 'element-plus';
-export default {
-  name: '鍗曚綅绠$悊',
-  setup() {
-    const data = reactive({
-      addform: null,
-      publickey: '',
-      labelPosition: 'left',
-      rules: {
-        companyName: {
-          required: true,
-          message: '璇疯緭鍏ュ疄渚嬪悕绉�',
-          trigger: 'blur',
-        },
-      },
-      student: false,
-      detail: {
-        companyName: '',
-      },
-      value: '',
-      options: [],
-      company: [],
-      tableData: [],
-      stuFormDialog: false,
-      stuFormDialogdetail: false,
-      formlist: {
-        pageIndex: 1,
-        pageSize: 10,
-      },
-      status: [
-        {
-          label: '鍚敤',
-          value: true,
-        },
-        {
-          label: '绂佺敤',
-          value: false,
-        },
-      ],
-      dataCount: 0,
-      companyName: '',
-      serviceDescription: '',
-      formData: {
-        companyName: '',
-
-        pageIndex: 1,
-        pageSize: 10,
-      },
-    });
-    const getexamplelist = async () => {
-      const res = await Api.list(data.formData);
-      data.tableData = res.data;
-      data.dataCount = res.total;
-    };
-    const changePage = async (val) => {
-      data.formData.pageIndex = val.page;
-      data.formData.pageSize = val.limit;
-      await getexamplelist(data.formData);
-    };
-    const buildexample = async () => {
-      data.student = false;
-      data.detail = {
-        companyName: '',
-      };
-      data.stuFormDialog = true;
-    };
-    const modity = async (e) => {
-      data.student = true;
-
-      data.detail = JSON.parse(JSON.stringify(e));
-      data.stuFormDialog = true;
-    };
-
-    const build = async (val) => {
-      data.addform.validate(async (valid) => {
-        if (valid) {
-          if (!data.student) {
-            const params = {
-              ...data.detail,
-            };
-            const res = await Api.add(params);
-            data.stuFormDialog = false;
-            if (res.description == '鎴愬姛') {
-              ElMessage({
-                message: '娣诲姞鍗曚綅鎴愬姛',
-                type: 'success',
-              });
-            }
-            await getexamplelist();
-          } else {
-            const res = await Api.update(val);
-            data.stuFormDialog = false;
-            if (res.description == '鎴愬姛') {
-              ElMessage({
-                message: '淇敼鍗曚綅鎴愬姛',
-                type: 'success',
-              });
-            }
-            await getexamplelist();
-          }
-        } else {
-          console.log('error submit!!');
-          return false;
-        }
-      });
-    };
-    const confirmEvent = async (stu) => {
-      const params = {
-        id: stu.id,
-      };
-      await Api.logicDelete(params);
-      await getexamplelist();
-    };
-    onBeforeMount(async () => {
-      await getexamplelist();
-    });
-    return {
-      ...toRefs(data),
-      getexamplelist,
-
-      changePage,
-      buildexample,
-      confirmEvent,
-      build,
-      modity,
-    };
-  },
-};
-</script>
-
-<style scoped>
-.mt-20 {
-  margin-top: 20px;
-}
-</style>
diff --git a/PublicPCWeb/src/views/instance-manage/components/Detail.vue b/PublicPCWeb/src/views/instance-manage/components/Detail.vue
deleted file mode 100644
index e2bd812..0000000
--- a/PublicPCWeb/src/views/instance-manage/components/Detail.vue
+++ /dev/null
@@ -1,322 +0,0 @@
-<template>
-  <div class="app-container">
-    <el-card class="box-card">
-      <template #header>
-        <el-page-header @back="goBack">
-          <template #title>
-            <span class="title-name">杩斿洖</span>
-          </template>
-          <template #content>
-            <span class="title-name">瀹炰緥閾炬帴绠$悊</span>
-          </template>
-        </el-page-header>
-      </template>
-      <div style="line-height: 40px">鍗曚綅锛歿{ companyName }}</div>
-      <div style="line-height: 40px">鏈嶅姟锛歿{ serviceDescription }}</div>
-      <div style="line-height: 40px">瀹炰緥锛歿{ instanceName }}</div>
-    </el-card>
-    <el-card class="box-card" style="margin-top: 20px">
-      <el-col :span="10" style="text-align: left; padding-bottom: 20px">
-        <el-button
-          type="primary"
-          icon="Plus"
-          plain
-          @click="buildexample"
-          >鏂板</el-button
-        >
-      </el-col>
-      <el-table
-        :data="tableData"
-        border
-        style="width: 100%"
-        :header-cell-style="{ 'text-align': 'center' }"
-      >
-        <el-table-column type="selection" width="35"></el-table-column>
-        <el-table-column prop="requesterId" label="璇锋眰鏂瑰悕绉�" align="center" />
-        <el-table-column
-          prop="requesterDescription"
-          label="璇锋眰鏂规弿杩�"
-          align="center"
-        />
-
-        <el-table-column prop="requesterKey" label="璇锋眰鏂瑰叕閽�" width="400">
-          <template v-slot:default="scope">
-            <span style="cursor: pointer" @click="keydetail(scope.row)"
-              >{{
-                scope.row.requesterKey.length > 50
-                  ? scope.row.requesterKey.substring(0, 50) + '...'
-                  : scope.row.requesterKey
-              }}
-            </span>
-          </template>
-        </el-table-column>
-        <el-table-column
-          prop="active"
-          label="婵€娲荤姸鎬�"
-          width="100"
-          align="center"
-        >
-          <template v-slot:default="scope">
-            <el-tag type="success" v-if="scope.row.active">婵€娲�</el-tag>
-            <el-tag type="info" v-if="!scope.row.active">鏈縺娲�</el-tag>
-          </template>
-        </el-table-column>
-        <el-table-column
-          prop="available"
-          label="鍚敤鐘舵€�"
-          width="100"
-          align="center"
-        >
-          <template v-slot:default="scope">
-            <el-tag type="success" v-if="scope.row.available">鍚敤</el-tag>
-            <el-tag type="info" v-if="!scope.row.available">鏈惎鐢�</el-tag>
-          </template>
-        </el-table-column>
-        <el-table-column label="鎿嶄綔" width="350px" align="center">
-          <template v-slot:default="scope">
-            <el-button
-              type="info"
-              v-if="scope.row.available"
-              @click="stopstatus(scope.row)"
-              plain
-              >鍋滅敤</el-button
-            >
-            <el-button
-              type="success"
-              v-if="!scope.row.available"
-              @click="startstatus(scope.row)"
-              plain
-              >鍚敤</el-button
-            >
-            <el-button
-              type="primary"
-              icon="Edit"
-              plain
-              @click="modity(scope.row)"
-              >淇敼</el-button
-            >
-          </template>
-        </el-table-column>
-      </el-table>
-    </el-card>
-    <el-dialog
-      v-model="stuFormDialogdetail"
-      destroy-on-close
-      title="璇锋眰鏂瑰叕閽ヨ鎯�"
-      width="40%"
-    >
-      <el-form>
-        <el-form-item label="瀹炰緥鍏挜"> {{ publickey }} </el-form-item>
-      </el-form>
-      <template #footer>
-        <span class="dialog-footer">
-          <el-button type="primary" @click="stuFormDialogdetail = false"
-            >纭畾</el-button
-          >
-          <el-button @click="stuFormDialogdetail = false">鍙栨秷</el-button>
-        </span>
-      </template>
-    </el-dialog>
-    <el-dialog
-      v-model="stuFormDialog"
-      destroy-on-close
-      title="娣诲姞瀹炰緥"
-      width="20%"
-    >
-      <template #title>
-        <span v-if="!student" class="title-name">鏂板瀹炰緥閾炬帴</span>
-        <span v-if="student" class="title-age">淇敼瀹炰緥閾炬帴</span>
-      </template>
-      <el-form
-        ref="addform"
-        :rules="rules"
-        label-position="top"
-        label-width="100px"
-        :model="detail"
-      >
-        <el-form-item label="璇锋眰鏂瑰悕绉�" prop="requesterId">
-          <el-input :disabled="student" v-model="detail.requesterId"></el-input>
-        </el-form-item>
-        <el-form-item label="璇锋眰鏂规弿杩�" prop="requesterDescription">
-          <el-input v-model="detail.requesterDescription"></el-input>
-        </el-form-item>
-        <el-form-item label="璇锋眰鏂瑰叕閽� " prop="requesterKey">
-          <el-input v-model="detail.requesterKey"></el-input>
-        </el-form-item>
-      </el-form>
-      <template #footer>
-        <span class="dialog-footer">
-          <el-button type="primary" @click="build(detail)">绔嬪嵆鍒涘缓</el-button>
-          <el-button @click="stuFormDialog = false">鍙栨秷</el-button>
-        </span>
-      </template>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-import { reactive, toRefs, onBeforeMount } from 'vue';
-import Api from '@/api/instance-manage';
-import { ElMessage } from 'element-plus';
-export default {
-  props: {
-    id: {
-      type: String,
-    },
-    companyName: {
-      type: String,
-    },
-    serviceDescription: {
-      type: String,
-    },
-    instanceName: {
-      type: String,
-    },
-  },
-  setup(props, context) {
-    const data = reactive({
-      addform: null,
-      tableData: [],
-      detail: {
-        requesterId: '',
-        requesterDescription: '',
-        requesterKey: '',
-      },
-      rules: {
-        requesterId: {
-          required: true,
-          message: '璇疯緭鍏ヨ姹傛柟鍚嶇О',
-          trigger: 'blur',
-        },
-        requesterDescription: [
-          {
-            required: true,
-            message: '璇疯緭鍏ヨ姹傛柟鎻忚堪',
-            trigger: 'blur',
-          },
-        ],
-        requesterKey: {
-          required: true,
-          message: '璇疯緭鍏ヨ姹傛柟鍏挜',
-          trigger: 'blur',
-        },
-      },
-      student: false,
-      stuFormDialogdetail: false,
-      stuFormDialog: false,
-      publickey: '',
-    });
-    const getdetail = async () => {
-      const params = {
-        instanceManageId: props.id,
-      };
-      const res = await Api.listLink(params);
-      data.tableData = res.data;
-    };
-    const goBack = () => {
-      context.emit('switch-page', 'List');
-    };
-    const startstatus = async (e) => {
-      const params = {
-        instanceManageId: props.id,
-        requesterId: e.requesterId,
-      };
-      const res = await Api.enableLink(params);
-      if (res.description == '鎴愬姛') {
-        ElMessage({
-          message: '鍚敤瀹炰緥鎴愬姛',
-          type: 'success',
-        });
-      }
-      getdetail();
-    };
-    const stopstatus = async (e) => {
-      const params = {
-        instanceManageId: props.id,
-        requesterId: e.requesterId,
-      };
-      const res = await Api.disableLink(params);
-      if (res.description == '鎴愬姛') {
-        ElMessage({
-          message: '鍋滅敤瀹炰緥鎴愬姛',
-          type: 'success',
-        });
-      }
-      getdetail();
-    };
-    const keydetail = async (e) => {
-      data.publickey = e.requesterKey;
-      data.stuFormDialogdetail = true;
-    };
-    const buildexample = async () => {
-      data.student = false;
-      data.detail = {
-        requesterId: '',
-        requesterDescription: '',
-        requesterKey: '',
-      };
-        (data.stuFormDialog = true);
-    };
-    const build = async (val) => {
-      data.addform.validate(async (valid) => {
-        if (valid) {
-          if (!data.student) {
-            const params = {
-              instanceManageId: props.id,
-              ...data.detail,
-            };
-            const res = await Api.registerLink(params);
-            data.stuFormDialog = false;
-            if (res.description == '鎴愬姛') {
-              ElMessage({
-                message: '鍒涘缓瀹炰緥閾炬帴鎴愬姛',
-                type: 'success',
-              });
-            }
-            await getdetail();
-          } else {
-            const params = {
-              instanceManageId: props.id,
-              ...val,
-            };
-            const res = await Api.changeLinkKey(params);
-            data.stuFormDialog = false;
-            if (res.description == '鎴愬姛') {
-              ElMessage({
-                message: '鍒涘缓瀹炰緥閾炬帴鎴愬姛',
-                type: 'success',
-              });
-            }
-            await getdetail();
-          }
-        } else {
-          console.log('error submit!!');
-          return false;
-        }
-      });
-    };
-    const modity = async (e) => {
-      data.student = true;
-
-      data.detail = JSON.parse(JSON.stringify(e));
-      data.stuFormDialog = true;
-    };
-    onBeforeMount(async () => {
-      await getdetail();
-    });
-    return {
-      ...toRefs(data),
-      getdetail,
-      goBack,
-      startstatus,
-      stopstatus,
-      keydetail,
-      buildexample,
-      build,
-      modity,
-    };
-  },
-};
-</script>
-
-<style></style>
diff --git a/PublicPCWeb/src/views/instance-manage/components/List.vue b/PublicPCWeb/src/views/instance-manage/components/List.vue
deleted file mode 100644
index 6529d10..0000000
--- a/PublicPCWeb/src/views/instance-manage/components/List.vue
+++ /dev/null
@@ -1,458 +0,0 @@
-<template>
-  <div class="app-container">
-    <el-card>
-      <el-form>
-        <el-row :gutter="20">
-          <el-col :sm="11" :md="7" :lg="3" :xl="3">
-            <el-form-item :model="formData" label="鍗曚綅">
-              <el-select
-                clearable
-                v-model="formData.companyId"
-                style="width: 100%"
-                filterable
-              >
-                <el-option
-                  v-for="item in options"
-                  :key="item.id"
-                  :label="item.companyName"
-                  :value="item.id"
-                >
-                </el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :sm="11" :md="7" :lg="3" :xl="3">
-            <el-form-item label="鏈嶅姟鍚嶇О"
-              ><el-input v-model="formData.serviceName"></el-input
-            ></el-form-item>
-          </el-col>
-          <el-col :sm="11" :md="7" :lg="3" :xl="3">
-            <el-form-item label="瀹炰緥鍚嶇О"
-              ><el-input v-model="formData.instanceName"></el-input
-            ></el-form-item>
-          </el-col>
-          <el-col :sm="11" :md="7" :lg="3" :xl="3">
-            <el-form-item label="鏄惁鍚敤">
-              <el-select
-                v-model="formData.instanceIsEnable"
-                style="width: 100%"
-              >
-                <el-option
-                  v-for="item in status"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                >
-                </el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="10" style="text-align: left">
-            <el-button
-              type="primary"
-              icon="Plus"
-              plain
-              @click="buildexample"
-              >鏂板</el-button
-            >
-            <el-button icon="Search" plain @click="getexamplelist"
-              >鏌ヨ</el-button
-            >
-          </el-col>
-        </el-row>
-      </el-form>
-    </el-card>
-    <el-card class="mt-20">
-      <el-table
-        :data="tableData"
-        border
-        stripe
-        style="width: 100%"
-        :header-cell-style="{ 'text-align': 'center' }"
-      >
-        <el-table-column type="selection" width="35"></el-table-column>
-        <el-table-column
-          prop="companyName"
-          label="鍗曚綅"
-          width="180"
-          align="center"
-        />
-        <el-table-column
-          prop="serviceName"
-          label="鏈嶅姟鍚嶇О"
-          width="180"
-          align="center"
-        />
-        <el-table-column
-          prop="serviceDescription"
-          label="鏈嶅姟鎻忚堪"
-          align="center"
-        />
-        <el-table-column prop="instanceId" label="瀹炰緥ID" align="center" />
-        <el-table-column prop="instanceName" label="瀹炰緥鍚嶇О" align="center" />
-        <el-table-column prop="instanceKey" label="瀹炰緥鍏挜" width="400">
-          <template v-slot:default="scope">
-            <span style="cursor: pointer" @click="keydetail(scope.row)"
-              >{{
-                scope.row.instanceKey.length > 50
-                  ? scope.row.instanceKey.substring(0, 50) + '...'
-                  : scope.row.instanceKey
-              }}
-            </span>
-          </template>
-        </el-table-column>
-        <el-table-column
-          prop="instanceIsEnable"
-          label="鍚敤鐘舵€�"
-          width="100"
-          align="center"
-        >
-          <template v-slot:default="scope">
-            <el-tag type="success" v-if="scope.row.instanceIsEnable"
-              >鍚敤</el-tag
-            >
-            <el-tag type="info" v-if="!scope.row.instanceIsEnable"
-              >鏈惎鐢�</el-tag
-            >
-          </template>
-        </el-table-column>
-        <el-table-column label="鎿嶄綔" width="350px" align="center">
-          <template v-slot:default="scope">
-            <el-button
-              type="info"
-              v-if="scope.row.instanceIsEnable"
-              @click="stopstatus(scope.row)"
-              plain
-              >鍋滅敤</el-button
-            >
-            <el-button
-              type="success"
-              v-if="!scope.row.instanceIsEnable"
-              @click="startstatus(scope.row)"
-              plain
-              >鍚敤</el-button
-            >
-            <el-button
-              type="primary"
-              icon="Edit"
-              plain
-              @click="modity(scope.row)"
-              >淇敼</el-button
-            >
-            <el-button @click="refresh(scope.row)" plain>鍒锋柊瀵嗛挜</el-button>
-            <el-button @click="compile(scope.row)" type="primary" plain
-              >瀹炰緥閾炬帴</el-button
-            >
-          </template>
-        </el-table-column>
-      </el-table>
-      <Pagination
-        :page="formlist.pageIndex"
-        :limit="formlist.pageSize"
-        :total="dataCount"
-        @pagination="changePage"
-      />
-    </el-card>
-    <el-dialog
-      v-model="stuFormDialog"
-      destroy-on-close
-      title="娣诲姞瀹炰緥"
-      width="20%"
-    >
-      <template #title>
-        <span v-if="!student" class="title-name">娣诲姞瀹炰緥</span>
-        <span v-if="student" class="title-age">淇敼瀹炰緥</span>
-      </template>
-      <el-form
-        ref="addform"
-        :rules="rules"
-        label-position="top"
-        label-width="100px"
-        :model="detail"
-      >
-        <el-form-item label="鍗曚綅" prop="companyId">
-          <el-select
-            :disabled="student"
-            clearable
-            v-model="detail.companyId"
-            style="width: 100%"
-            filterable
-          >
-            <el-option
-              v-for="item in options"
-              :key="item.id"
-              :label="item.companyName"
-              :value="item.id"
-            >
-            </el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="涓彴鏈嶅姟" prop="serviceDescription">
-          <el-select
-            :disabled="student"
-            clearable
-            v-model="detail.serviceName"
-            style="width: 100%"
-          >
-            <el-option
-              v-for="item in company"
-              :key="item.serviceName"
-              :label="item.serviceDescription"
-              :value="item.serviceName"
-            >
-            </el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="瀹炰緥鍚嶇О " prop="instanceName">
-          <el-input v-model="detail.instanceName"></el-input>
-        </el-form-item>
-      </el-form>
-      <template #footer>
-        <span class="dialog-footer">
-          <el-button type="primary" @click="build(detail)">绔嬪嵆鍒涘缓</el-button>
-          <el-button @click="stuFormDialog = false">鍙栨秷</el-button>
-        </span>
-      </template>
-    </el-dialog>
-    <el-dialog
-      v-model="stuFormDialogdetail"
-      destroy-on-close
-      title="瀹炰緥鍏挜璇︽儏"
-      width="40%"
-    >
-      <el-form>
-        <el-form-item label="瀹炰緥鍏挜"> {{ publickey }} </el-form-item>
-      </el-form>
-      <template #footer>
-        <span class="dialog-footer">
-          <el-button type="primary" @click="stuFormDialogdetail = false"
-            >纭畾</el-button
-          >
-          <el-button @click="stuFormDialogdetail = false">鍙栨秷</el-button>
-        </span>
-      </template>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-import Api from '@/api/instance-manage';
-import { onBeforeMount, reactive, toRefs } from 'vue';
-import { ElMessage } from 'element-plus';
-export default {
-  setup(props, context) {
-    const data = reactive({
-      addform: null,
-      publickey: '',
-      labelPosition: 'left',
-      rules: {
-        companyId: {
-          required: true,
-          message: '璇烽€夋嫨鍗曚綅',
-          trigger: 'change',
-        },
-        serviceName: [
-          {
-            required: true,
-            message: '璇烽€夋嫨涓彴鏈嶅姟',
-            trigger: 'change',
-          },
-        ],
-        instanceName: {
-          required: true,
-          message: '璇疯緭鍏ュ疄渚嬪悕绉�',
-          trigger: 'blur',
-        },
-      },
-      student: false,
-      detail: {
-        serviceName: '',
-        instanceName: '',
-        companyId: '',
-      },
-      value: '',
-      options: [],
-      company: [],
-      tableData: [],
-      stuFormDialog: false,
-      stuFormDialogdetail: false,
-      formlist: {
-        pageIndex: 1,
-        pageSize: 10,
-      },
-      status: [
-        {
-          label: '鍚敤',
-          value: true,
-        },
-        {
-          label: '绂佺敤',
-          value: false,
-        },
-      ],
-      dataCount: 0,
-      companyName: '',
-      serviceDescription: '',
-      formData: {
-        companyId: '',
-        serviceName: '',
-        instanceName: '',
-        instanceIsEnable: true,
-        pageIndex: 1,
-        pageSize: 10,
-      },
-    });
-    const getexamplelist = async () => {
-      const res = await Api.listInstance(data.formData);
-      data.tableData = res.data;
-      data.dataCount = res.total;
-    };
-    const companylist = async () => {
-      const res = await Api.list({});
-      data.options = res.data;
-    };
-    const keydetail = async (e) => {
-      data.publickey = e.instanceKey;
-      data.stuFormDialogdetail = true;
-    };
-    const stopstatus = async (e) => {
-      const res = await Api.disableInstance(e.id);
-      if (res.description == '鎴愬姛') {
-        ElMessage({
-          message: '鍋滅敤瀹炰緥鎴愬姛',
-          type: 'success',
-        });
-      }
-      getexamplelist();
-    };
-    const startstatus = async (e) => {
-      const res = await Api.enableInstance(e.id);
-      if (res.description == '鎴愬姛') {
-        ElMessage({
-          message: '鍚敤瀹炰緥鎴愬姛',
-          type: 'success',
-        });
-      }
-      getexamplelist();
-    };
-    const refresh = async (e) => {
-      const res = await Api.refreshInstanceKey(e.id);
-      if (res.description == '鎴愬姛') {
-        ElMessage({
-          message: '鍒锋柊瀹炰緥瀵嗛挜鎴愬姛',
-          type: 'success',
-        });
-      }
-      getexamplelist();
-    };
-    const changePage = async (val) => {
-      data.formlist.pageIndex = val.page;
-      data.formlist.pageSize = val.limit;
-      data.formData.pageIndex = val.page;
-      data.formData.pageSize = val.limit;
-      await getexamplelist(data.formData);
-    };
-    const buildexample = async () => {
-      data.student = false;
-      data.detail = {
-        serviceName: '',
-        instanceName: '',
-        companyId: '',
-      };
-      data.stuFormDialog = true;
-    };
-    const modity = async (e) => {
-      data.student = true;
-
-      data.detail = JSON.parse(JSON.stringify(e));
-      data.stuFormDialog = true;
-    };
-    const companyform = async () => {
-      const res = await Api.getOnlineMiddlegroundService({});
-      data.company = res.data;
-    };
-    const build = async (val) => {
-      data.addform.validate(async (valid) => {
-        if (valid) {
-          if (!data.student) {
-            data.options.forEach((item) => {
-              if (item.id == data.detail.companyId) {
-                data.companyName = item.companyName;
-              }
-            });
-            data.company.forEach((item) => {
-              if (item.serviceName == data.detail.serviceName) {
-                data.serviceDescription = item.serviceDescription;
-              }
-            });
-
-            const params = {
-              ...val,
-              serviceDescription: data.serviceDescription,
-              companyName: data.companyName,
-            };
-            const res = await Api.createInstance(params);
-            data.stuFormDialog = false;
-            if (res.description == '鎴愬姛') {
-              ElMessage({
-                message: '鍒涘缓瀹炰緥鎴愬姛',
-                type: 'success',
-              });
-            }
-            await getexamplelist();
-          } else {
-            const res = await Api.modifyInstanceBaseInfo(val);
-            data.stuFormDialog = false;
-            if (res.description == '鎴愬姛') {
-              ElMessage({
-                message: '鍒涘缓瀹炰緥鎴愬姛',
-                type: 'success',
-              });
-            }
-            await getexamplelist();
-          }
-        } else {
-          console.log('error submit!!');
-          return false;
-        }
-      });
-    };
-    const compile = (e) => {
-      context.emit(
-        'switch-page',
-        'Detail',
-        e.id,
-        e.companyName,
-        e.serviceName + e.serviceDescription,
-        e.instanceName
-      );
-    };
-    onBeforeMount(async () => {
-      await getexamplelist();
-      await companylist();
-      await companyform();
-    });
-    return {
-      ...toRefs(data),
-      getexamplelist,
-      companylist,
-      keydetail,
-      stopstatus,
-      startstatus,
-      refresh,
-      changePage,
-      buildexample,
-      companyform,
-      build,
-      modity,
-      compile,
-    };
-  },
-};
-</script>
-
-<style scoped>
-.mt-20 {
-  margin-top: 20px;
-}
-</style>
diff --git a/PublicPCWeb/src/views/instance-manage/index.vue b/PublicPCWeb/src/views/instance-manage/index.vue
deleted file mode 100644
index c778b20..0000000
--- a/PublicPCWeb/src/views/instance-manage/index.vue
+++ /dev/null
@@ -1,46 +0,0 @@
-<template>
-  <div>
-    <component @switch-page="switchPage" :is="currentPage" :id="instanceId"  :instanceName="instanceName" :serviceDescription="serviceDescription" :companyName="companyName" />
-  </div>
-</template>
-
-<script>
-import List from './components/List.vue'; //eslint-disable-line no-unused-vars
-import Detail from './components/Detail.vue'; //eslint-disable-line no-unused-vars
-import { reactive, toRefs } from 'vue';
-export default {
-  name: '瀹炰緥绠$悊',
-  components: {
-    List,
-    Detail,
-  },
-  setup() {
-    const data = reactive({
-      currentPage: 'List',
-      instanceId: '',
-      companyName: '',
-      serviceDescription: '',
-      instanceName:""
-    });
-    const switchPage = (
-      currentComponent,
-      instanceId,
-      companyName,
-      serviceDescription,
-      instanceName
-    ) => {
-      data.currentPage = currentComponent;
-      data.instanceId = instanceId;
-      data.companyName = companyName;
-      data.serviceDescription = serviceDescription;
-      data.instanceName = instanceName
-    };
-    return {
-      ...toRefs(data),
-      switchPage,
-    };
-  },
-};
-</script>
-
-<style scoped></style>
diff --git a/PublicPCWeb/src/views/reimbursement/index.vue b/PublicPCWeb/src/views/reimbursement/index.vue
new file mode 100644
index 0000000..b4e5c07
--- /dev/null
+++ b/PublicPCWeb/src/views/reimbursement/index.vue
@@ -0,0 +1,605 @@
+<template>
+  <div class="container" id="all">
+    <div class="top">
+      <div class="title">鎵樺辜璐规姤閿€鐢宠</div>
+    </div>
+    <div class="middle">
+      <el-card style="padding: 0px 20px 20px 20px">
+        <div class="box">
+          <div class="blue"></div>
+          <div class="title">鐢宠浜轰俊鎭�</div>
+        </div>
+        <el-form inline :model="formData" label-position="top">
+          <el-row :gutter="20" style="width: 100%">
+            <el-col :span="6">
+              <el-form-item label="宸ュ彿" prop="code">
+                <el-input
+                  size="large"
+                  v-model="formData.code"
+                  placeholder="璇疯緭鍏ュ伐鍙�"
+                  readonly
+                  disabled
+                />
+              </el-form-item>
+            </el-col>
+            <el-col :span="6">
+              <el-form-item label="濮撳悕" prop="name">
+                <el-input
+                  size="large"
+                  v-model="formData.name"
+                  placeholder="璇疯緭鍏ュ鍚�"
+                  readonly
+                  disabled
+                />
+              </el-form-item>
+            </el-col>
+            <el-col :span="6">
+              <el-form-item label="鎵€灞為儴闂�" prop="dep">
+                <el-input
+                  size="large"
+                  v-model="formData.dep"
+                  placeholder="璇疯緭鍏ユ墍灞為儴闂�"
+                  readonly
+                  disabled
+                />
+              </el-form-item>
+            </el-col>
+            <el-col :span="6">
+              <el-form-item label="鑱旂郴鏂瑰紡" prop="number">
+                <el-input
+                  size="large"
+                  v-model="formData.number"
+                  placeholder="璇疯緭鍏ヨ仈绯绘柟寮�"
+                />
+              </el-form-item>
+            </el-col>
+          </el-row>
+        </el-form>
+        <div class="inline">
+          <div class="text">
+            <div class="blue"></div>
+            <div class="title">鍑虹敓璇佹槑鍙婂瓙濂充俊鎭�</div>
+          </div>
+          <div>
+            <el-button type="primary" @click="addImg">
+              <el-icon style="margin-right: 5px"><Plus /></el-icon>娣诲姞
+            </el-button>
+          </div>
+        </div>
+        <div class="borthImg">
+          <div class="title">鍑虹敓璇佹槑</div>
+          <div class="img" v-for="item in imgList" :key="item">
+            <el-image
+              style="width: 100%; height: 113px"
+              :src="`data:image/jpg;base64,${item.thumbnailImg}`"
+              fit="contain"
+              :preview-src-list="srcListBorth"
+            />
+            <div class="right-top-container">
+              <el-icon color="#ff2b2b" @click="deleteImg(item)"
+                ><CircleClose
+              /></el-icon>
+            </div>
+          </div>
+        </div>
+        <div class="borthImg">
+          <div class="title">瀛愬コ淇℃伅</div>
+          <el-table
+            :data="tableData"
+            style="width: 100%; border: 1px solid #eaeded; border-bottom: none"
+            :header-cell-style="{
+              background: '#eaf1fd',
+              fontSize: '14px',
+              color: '#545354',
+              fontWeight: 400,
+              height: '47px',
+            }"
+            :row-style="{
+              height: '60px',
+            }"
+          >
+            <el-table-column label="瀛愬コ濮撳悕" prop="childName">
+              <template #default="scope">
+                <div class="text" v-if="!scope.row.edit">
+                  {{ scope.row.childName }}
+                </div>
+                <div class="textInput" v-if="scope.row.edit">
+                  <el-input
+                    v-model="scope.row.childName"
+                    placeholder="璇疯緭鍏ュ瓙濂冲鍚�"
+                  />
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column label="鎬у埆" prop="sex">
+              <template #default="scope">
+                <div class="text" v-if="!scope.row.edit">
+                  {{ scope.row.sex }}
+                </div>
+                <div class="textInput" v-if="scope.row.edit">
+                  <el-input
+                    v-model="scope.row.sex"
+                    placeholder="璇疯緭鍏ュ瓙濂虫€у埆"
+                  />
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column label="鍑虹敓鏃ユ湡" prop="borthDate">
+              <template #default="scope">
+                <div class="text" v-if="!scope.row.edit">
+                  {{ Moment(scope.row.borthDate).format('YYYY-MM-DD') }}
+                </div>
+                <div class="textInput" v-if="scope.row.edit">
+                  <el-date-picker
+                    v-model="scope.row.borthDate"
+                    placeholder="璇烽€夋嫨鍑虹敓鏃ユ湡"
+                    value-format="YYYY-MM-DD"
+                    format="YYYY-MM-DD"
+                    style="width: 100%"
+                  />
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column label="涓庣敵璇蜂汉鍏崇郴" prop="relationship">
+              <template #default="scope">
+                <div class="text" v-if="!scope.row.edit">
+                  {{ scope.row.relationship }}
+                </div>
+                <div class="textInput" v-if="scope.row.edit">
+                  <el-input
+                    v-model="scope.row.relationship"
+                    placeholder="璇疯緭鍏ヤ笌鐢宠浜哄叧绯�"
+                  />
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column label="鎵€灞炲辜鍎垮洯" prop="school">
+              <template #default="scope">
+                <div class="text" v-if="!scope.row.edit">
+                  {{ scope.row.school }}
+                </div>
+                <div class="textInput" v-if="scope.row.edit">
+                  <el-input
+                    v-model="scope.row.school"
+                    placeholder="璇疯緭鍏ユ墍灞炲辜鍎垮洯"
+                  />
+                </div>
+              </template>
+            </el-table-column>
+            <el-table-column label="鎿嶄綔">
+              <template #default="scope">
+                <el-button
+                  v-if="!scope.row.edit"
+                  type="primary"
+                  @click="handleEdit(scope.row)"
+                  size="small"
+                  ><el-icon><EditPen /></el-icon>缂栬緫</el-button
+                >
+
+                <el-button
+                  type="primary"
+                  v-if="scope.row.edit"
+                  @click="handleCheck(scope.row)"
+                  size="small"
+                  ><el-icon><Check /></el-icon>瀹屾垚</el-button
+                >
+              </template>
+            </el-table-column>
+          </el-table>
+        </div>
+        <div style="height: 20px; width: 100%"></div>
+        <div class="inline">
+          <div class="text">
+            <div class="blue"></div>
+            <div class="title">鍙戠エ淇℃伅</div>
+          </div>
+          <div>
+            <el-button type="primary" @click="UploadFileDialogInvoice = true">
+              <el-icon style="margin-right: 5px"><Plus /></el-icon>娣诲姞鍙戠エ
+            </el-button>
+          </div>
+        </div>
+        <div class="invoice">
+          <div class="message" v-for="item in inviceList" :key="item">
+            <div class="left">
+              <el-image
+                style="width: 100%; height: 113px"
+                :src="`data:image/jpg;base64,${item.thumbnailImg}`"
+                fit="contain"
+              />
+              <div class="right-top-container">
+                <el-icon color="#ff2b2b"><CircleClose /></el-icon>
+              </div>
+            </div>
+            <div class="right">
+              <el-form inline label-position="top">
+                <el-row :gutter="20" style="width: 100%">
+                  <el-col :span="8">
+                    <el-form-item label="鍙戠エ鏈堜唤">
+                      <el-input
+                        size="large"
+                        v-model="item.code"
+                        placeholder="璇疯緭鍏ュ彂绁ㄦ湀浠�"
+                      />
+                    </el-form-item>
+                  </el-col>
+                  <el-col :span="8">
+                    <el-form-item label="鍙戠エ閲戦">
+                      <el-input
+                        size="large"
+                        v-model="item.code"
+                        placeholder="璇疯緭鍏ュ彂绁ㄩ噾棰�"
+                      />
+                    </el-form-item>
+                  </el-col>
+                  <el-col :span="8">
+                    <el-form-item label="鍙戠エ鎶ラ攢閲戦">
+                      <el-input
+                        size="large"
+                        v-model="item.code"
+                        placeholder="0.00"
+                        readonly
+                        disabled
+                      />
+                    </el-form-item>
+                  </el-col>
+                </el-row>
+              </el-form>
+            </div>
+          </div>
+        </div>
+      </el-card>
+      <el-card
+        style="
+          display: flex;
+          justify-content: flex-end;
+          padding: 10px 30px 10px 10px;
+        "
+      >
+        <el-button type="danger" size="large" @click="reject">椹冲洖</el-button>
+        <el-button type="primary" size="large">瀹℃壒閫氳繃</el-button>
+      </el-card>
+    </div>
+    <!-- 椹冲洖 -->
+    <el-dialog
+      v-model="rejectShow"
+      title="椹冲洖"
+      width="60%"
+      custom-class="fast-reimbursement-dialog"
+    >
+      <el-form inline :model="formReject">
+        <el-form-item label="椹冲洖鐞嗙敱锛�">
+          <el-input
+            size="large"
+            v-model="formReject.code"
+            placeholder="璇疯緭鍏�"
+          />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <el-button size="large">鍙栨秷</el-button>
+        <el-button type="danger" size="large">椹冲洖</el-button>
+      </template>
+    </el-dialog>
+    <!-- 涓婁紶鍑虹敓璇佹槑 -->
+    <UploadFile
+      v-model="UploadFileDialog"
+      @upload-handler="beforeUpload"
+      :limit="1"
+      title="鍑虹敓璇佹槑"
+      :acceptType="[
+        'pdf',
+        'jpg',
+        'png',
+        'PDF',
+        'JPG',
+        'PNG',
+        'JPEG',
+        'jpeg',
+        'ofd',
+        'OFD',
+      ]"
+    ></UploadFile>
+    <!-- 涓婁紶鍙戠エ淇℃伅 -->
+    <UploadFile
+      v-model="UploadFileDialogInvoice"
+      @upload-handler="beforeUploadInvoice"
+      :limit="1"
+      title="鍙戠エ淇℃伅"
+      :acceptType="[
+        'pdf',
+        'jpg',
+        'png',
+        'PDF',
+        'JPG',
+        'PNG',
+        'JPEG',
+        'jpeg',
+        'ofd',
+        'OFD',
+      ]"
+    ></UploadFile>
+  </div>
+</template>
+<script>
+import { toRefs, reactive, onMounted } from 'vue';
+import Moment from 'moment';
+export default {
+  setup() {
+    const state = reactive({
+      formReject: {
+        code: '',
+      },
+      rejectShow: false,
+      tableData: [
+        {
+          childName: '姹皬绾�',
+          sex: '濂�',
+          relationship: '鐖跺コ',
+          borthDate: '2020-01-10',
+          school: '缈绘枟骞煎効鍥�',
+          edit: false,
+        },
+      ],
+      formData: {
+        code: '',
+        name: '',
+        dep: '',
+        number: '',
+      },
+      imgList: [
+        {
+          fileId: '1751804741975142401',
+          thumbnailImg:
+            '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',
+          fileName: 'd967a882-6fe6-46ca-a3c4-863b26c1a437.jpg',
+          fileType: 'image/jpeg',
+          billId: '1751804742319075330',
+        },
+      ],
+      inviceList: [
+        {
+          fileId: '1751804741975142401',
+          thumbnailImg:
+            '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',
+          fileName: 'd967a882-6fe6-46ca-a3c4-863b26c1a437.jpg',
+          fileType: 'image/jpeg',
+          billId: '1751804742319075330',
+        },
+        {
+          fileId: '1751804741975142401',
+          thumbnailImg:
+            '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',
+          fileName: 'd967a882-6fe6-46ca-a3c4-863b26c1a437.jpg',
+          fileType: 'image/jpeg',
+          billId: '1751804742319075330',
+        },
+      ],
+      UploadFileDialog: false,
+      UploadFileDialogInvoice: false,
+      srcListBorth: [],
+    });
+    onMounted(() => {
+      console.log(1);
+    });
+    const addImg = () => {
+      state.UploadFileDialog = true;
+    };
+    //椹冲洖
+    const reject = () => {
+      state.rejectShow = true;
+    };
+    //鍒犻櫎鍑虹敓璇佹槑
+    const deleteImg = (index) => {
+      state.imgList.splice(index, 1);
+      state.srcListBorth.splice(index, 1);
+      state.tableData.splice(index, 1);
+    };
+    //涓婁紶鍑虹敓璇佹槑
+    const beforeUpload = (file) => {
+      console.log(file);
+      const formData = new FormData();
+      // formData.append('files', file[0].raw);
+      file.forEach((item) => {
+        formData.append('files', item.raw);
+      });
+      // formData.append('claimsOrderId', data.rowList.expenseReportId);
+      // formData.append('attachmentCategory', data.field.attachmentCategory);
+      // formData.append('attachmentType', data.field.attachmentType);
+      // ExpenseAccountInquiry.uploadSupplementAttachFile(formData).then((res) => {
+      //   console.log(res);
+      //   // 鍒ゆ柇鏂囦欢绫诲瀷
+      //   const type = res.data[0].billImgSimpleEn.fileType;
+      //   const index = type.indexOf('/');
+      //   let finalType = type.slice(0, index);
+      //   // 鏄浘鐗�
+      //   if (finalType == 'image') {
+      //     billRecognition
+      //       .getOriginalFileByFileId({
+      //         fileUrl: res.data[0].billImgSimpleEn.originalUrl,
+      //       })
+      //       .then((res) => {
+      //         state.imgList = res.data[0];
+      //         state.srcListBorth.push(`data:image/jpg;base64,${data.img}`);
+      //       });
+      //   }
+      // });
+    };
+    //涓婁紶鍙戠エ淇℃伅
+    const beforeUploadInvoice = () => {};
+    const handleEdit = (row) => {
+      row.edit = !row.edit;
+    };
+    const handleCheck = (row) => {
+      row.edit = !row.edit;
+    };
+    return {
+      Moment,
+      ...toRefs(state),
+      addImg,
+      deleteImg,
+      beforeUpload,
+      beforeUploadInvoice,
+      handleEdit,
+      handleCheck,
+      reject,
+    };
+  },
+};
+</script>
+<style lang="scss" scoped>
+.container {
+  width: 100vw;
+  height: 100vh;
+  .top {
+    background-color: #ffffff;
+    width: 100%;
+    padding: 16px 20px;
+    display: flex;
+    align-items: center;
+    .title {
+      font-family: 'PingFang SC';
+      font-weight: 600;
+      font-size: 20px;
+      line-height: 28px;
+      color: #18191a;
+    }
+  }
+  .middle {
+    background-color: #eff2f5;
+    width: 100%;
+    padding: 30px 20px;
+    overflow: auto;
+    height: calc(100vh - 60px);
+    .box {
+      .blue {
+        width: 3px;
+        height: 18px;
+        background-color: rgb(80, 138, 255);
+        line-height: 56px;
+        display: inline-block;
+        vertical-align: sub;
+        margin-right: 3px;
+      }
+      .title {
+        font-weight: 400;
+        font-size: 18px;
+        line-height: 56px;
+        color: #333;
+        display: inline-block;
+      }
+    }
+    ::v-deep .el-card__body {
+      padding: 0px;
+    }
+    .inline {
+      display: flex;
+      line-height: 56px;
+      .text {
+        flex: 1;
+        .blue {
+          width: 3px;
+          height: 18px;
+          background-color: rgb(80, 138, 255);
+          display: inline-block;
+          vertical-align: sub;
+          margin-right: 3px;
+        }
+        .title {
+          font-weight: 400;
+          font-size: 18px;
+          color: #333;
+          display: inline-block;
+        }
+      }
+    }
+    .borthImg {
+      .title {
+        font-size: 18px;
+        font-weight: 400;
+        line-height: 40px;
+      }
+      .img {
+        height: 120px;
+        width: 180px;
+        border: 1px dashed #ced4db;
+        border-radius: 4px;
+        padding: 2px;
+        background: #f5f7fa;
+        position: relative;
+        .right-top-container {
+          display: inline-block;
+          position: absolute;
+          top: 5px;
+          right: 5px;
+        }
+      }
+    }
+    .invoice {
+      .message {
+        display: flex;
+        padding: 10px 0;
+        .left {
+          height: 120px;
+          width: 180px;
+          border: 1px dashed #ced4db;
+          border-radius: 4px;
+          padding: 2px;
+          background: #f5f7fa;
+          position: relative;
+          .right-top-container {
+            display: inline-block;
+            position: absolute;
+            top: 5px;
+            right: 5px;
+          }
+        }
+        .right {
+          padding: 20px;
+          line-height: 40px;
+          width: calc(100% - 180px);
+        }
+      }
+    }
+  }
+  ::v-deep .el-button--primary {
+    background: #2972e9;
+  }
+  ::v-deep
+    .el-form--small.el-form--label-top
+    .el-form-item
+    .el-form-item__label {
+    font-weight: 400;
+  }
+  ::v-deep .el-form--inline .el-form-item {
+    margin-right: 18px;
+  }
+}
+:deep(.el-dialog__body) {
+  display: flex;
+  justify-content: center;
+}
+:deep(.el-dialog__header) {
+  border-radius: 8px 8px 0 0;
+  font-size: 20px !important;
+  font-weight: 600 !important;
+  border-bottom: 1px solid #d7d7d7;
+  background: #fafafa;
+  margin-right: 0;
+}
+:deep(.fast-reimbursement-dialog) {
+  border-radius: 8px;
+  .el-form-item__label {
+    display: flex;
+    align-items: center;
+    font-size: 15px;
+  }
+}
+
+:deep(.fast-reimbursement-dialog .el-dialog__footer) {
+  display: flex;
+  justify-content: center;
+  border-top: 1px solid #d7d7d7;
+  padding: 10px 0 10px 0;
+}
+</style>
diff --git a/PublicPCWeb/vue.config.js b/PublicPCWeb/vue.config.js
index f5dfb0f..8e30d4a 100644
--- a/PublicPCWeb/vue.config.js
+++ b/PublicPCWeb/vue.config.js
@@ -23,13 +23,13 @@ module.exports = {
     },
     proxy: {
       [process.env.VUE_APP_BASE_API]: {
-        target: 'http://192.168.2.10:8100/',
+        target: 'http://192.168.2.10:8857/',
         changeOrigin: true,
         pathRewrite: {
-          ['^' + process.env.VUE_APP_BASE_API]: ''
-        }
-      }
-    }
+          ['^' + process.env.VUE_APP_BASE_API]: '',
+        },
+      },
+    },
   },
   configureWebpack: {
     output: {
-- 
GitLab