ZaiZai 2 ani în urmă
părinte
comite
77dfcddf3d
4 a modificat fișierele cu 107 adăugiri și 21 ștergeri
  1. 3 3
      package.json
  2. 12 0
      src/styles/index.scss
  3. 76 7
      src/views/home/task-details.vue
  4. 16 11
      yarn.lock

+ 3 - 3
package.json

@@ -10,10 +10,10 @@
     "dependencies": {
         "axios": "^1.3.6",
         "crypto-js": "^4.1.1",
-        "dayjs": "^1.11.7",
+        "dayjs": "^1.11.8",
         "echarts": "^5.4.2",
-        "element-plus": "2.3.5",
-        "hc-vue3-ui": "^1.2.3",
+        "element-plus": "2.3.6",
+        "hc-vue3-ui": "^1.2.6",
         "js-base64": "^3.7.5",
         "js-cookie": "^3.0.5",
         "js-fast-way": "^0.1.0",

+ 12 - 0
src/styles/index.scss

@@ -204,3 +204,15 @@ html, body, #app {
     border-radius: 5px;
     color: #232323;
 }
+
+.hc-info-list {
+    position: relative;
+    .img {
+        height: 70px;
+        width: 156px;
+        border-radius: 3px;
+    }
+    .img + .img {
+        margin-left: 20px;
+    }
+}

+ 76 - 7
src/views/home/task-details.vue

@@ -18,8 +18,8 @@
             </div>
         </HcCardItem>
 
-        <HcCardItem title="操作任务" class="mt-4">
-            <el-form ref="formRef" :model="formModel" :rules="formRules" label-width="" :disabled="dataType !== 'to-do'">
+        <HcCardItem title="操作任务" class="mt-4" v-if="dataType === '1'">
+            <el-form ref="formRef" :model="formModel" :rules="formRules" label-width="" :disabled="tabsKey !== 'to-do'">
                 <el-form-item label="变更类别:" prop="type" size="large">
                     <el-radio-group v-model="formModel.type" size="large">
                         <el-radio label="1">已完成</el-radio>
@@ -41,20 +41,80 @@
             </el-form>
         </HcCardItem>
 
+        <HcCardItem title="数据详情" class="mt-4" v-if="dataType > 1">
+            <div class="hc-info-list">
+                <HcListItem title="报销金额:" content="1520元"/>
+                <HcListItem title="发生日期:" content="2023-05-15"/>
+                <HcListItem title="费用类型:" content="水电"/>
+                <HcListItem title="费用说明:" content="这是费用说明"/>
+                <HcListItem title="电子发票:" >
+                    <HcImg ui="img" :index="0"
+                           src="https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg"
+                           :srcs="['https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg']"
+                    />
+                    <HcImg ui="img" :index="0"
+                           src="https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg"
+                           :srcs="['https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg']"
+                    />
+                </HcListItem>
+                <HcListItem title="附件文件:" >
+                    <HcImg ui="img" :index="0"
+                           src="https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg"
+                           :srcs="['https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg']"
+                    />
+                    <HcImg ui="img" :index="0"
+                           src="https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg"
+                           :srcs="['https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg']"
+                    />
+                    <HcImg ui="img" :index="0"
+                           src="https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg"
+                           :srcs="['https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg']"
+                    />
+                    <HcImg ui="img" :index="0"
+                           src="https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg"
+                           :srcs="['https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg']"
+                    />
+                </HcListItem>
+                <HcListItem title="归属人:" content="张三"/>
+                <HcListItem title="备注信息:" content="备注数据"/>
+            </div>
+        </HcCardItem>
+
+        <HcCardItem title="操作任务" class="mt-4" v-if="dataType !== '1' && authType">
+            <HcListItem ui="items-center" title="支付状态:">
+                <el-radio-group v-model="formPay" size="large">
+                    <el-radio label="1">已支付</el-radio>
+                    <el-radio label="2" class="ml-4">待支付</el-radio>
+                </el-radio-group>
+            </HcListItem>
+        </HcCardItem>
+
         <template #action>
             <el-button size="large" type="info" hc-btn @click="goBackClick">
                 <HcIcon name="arrow-go-back"/>
-                <span v-if="dataType === 'to-do'">取消并返回</span>
+                <span v-if="tabsKey === 'to-do'">取消并返回</span>
                 <span v-else>返回</span>
             </el-button>
-            <el-button size="large" type="danger" hc-btn @click="groundsShow" v-if="dataType === 'to-do'">
+            <el-button size="large" type="danger" hc-btn @click="groundsShow" v-if="tabsKey === 'to-do'">
                 <HcIcon name="arrow-go-forward"/>
                 <span>驳回申请</span>
             </el-button>
-            <el-button size="large" type="primary" hc-btn @click="doubleClick" v-if="dataType === 'to-do'">
+            <el-button size="large" type="primary" hc-btn @click="doubleClick" v-if="tabsKey === 'to-do'">
                 <HcIcon name="check-double"/>
                 <span>审核通过</span>
             </el-button>
+
+            <!--模拟效果-->
+            <div class="w-36 mx-6 inline-block">
+                <el-select v-model="dataType" block placeholder="选择模拟类型" size="large">
+                    <el-option label="任务详情" value="1"/>
+                    <el-option label="财务报销" value="2"/>
+                    <el-option label="采购" value="3"/>
+                    <el-option label="外包支付" value="4"/>
+                    <el-option label="借款审批" value="5"/>
+                </el-select>
+            </div>
+            <el-button hc-btn @click="authTypeClick">模拟财务审核</el-button>
         </template>
 
         <HcDialog bgColor="#ffffff" isToBody :loading="groundsLoading" :show="groundsModal" title="请填写驳回理由" widths="600px" @close="closeGroundsClick" @save="saveGroundsClick">
@@ -64,26 +124,34 @@
                 </el-form-item>
             </el-form>
         </HcDialog>
+
     </HcCard>
 </template>
 
 <script setup>
-import {onActivated, ref} from "vue";
+import {onMounted, ref} from "vue";
 import {useRouter, useRoute} from 'vue-router'
 
 //初始变量
 const router = useRouter()
 const useRoutes = useRoute()
+const tabsKey = ref(useRoutes?.query?.tabKey ?? '')
 const dataType = ref(useRoutes?.query?.type ?? '')
 const dataId = ref(useRoutes?.query?.id ?? '')
+const authType = ref(false)
 
 //缓存页面被激活时
-onActivated(() => {
+onMounted(() => {
+    tabsKey.value = useRoutes?.query?.tabKey ?? ''
     dataType.value = useRoutes?.query?.type ?? ''
     dataId.value = useRoutes?.query?.id ?? ''
     console.log(useRoutes.query)
 })
 
+const authTypeClick = () => {
+    authType.value = !authType.value
+}
+
 //任务表格
 const tableColumn = [
     {key: 'taskName', name: '所属项目'},
@@ -108,6 +176,7 @@ const formRules = {
         message: "请输入节点名称"
     },
 }
+const formPay = ref('1')
 
 const groundsShow = () => {
     groundsLoading.value = false

+ 16 - 11
yarn.lock

@@ -588,11 +588,16 @@ csstype@^3.1.1:
   resolved "http://47.110.251.215:9000/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b"
   integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==
 
-dayjs@^1.11.3, dayjs@^1.11.7:
+dayjs@^1.11.3:
   version "1.11.7"
   resolved "http://47.110.251.215:9000/dayjs/-/dayjs-1.11.7.tgz#4b296922642f70999544d1144a2c25730fce63e2"
   integrity sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==
 
+dayjs@^1.11.8:
+  version "1.11.8"
+  resolved "http://47.110.251.215:9000/dayjs/-/dayjs-1.11.8.tgz#4282f139c8c19dd6d0c7bd571e30c2d0ba7698ea"
+  integrity sha512-LcgxzFoWMEPO7ggRv1Y2N31hUf2R0Vj7fuy/m+Bg1K8rr+KAs1AEy4y9jd5DXe8pbHgX+srkHNS7TH6Q6ZhYeQ==
+
 delayed-stream@~1.0.0:
   version "1.0.0"
   resolved "http://47.110.251.215:9000/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
@@ -621,10 +626,10 @@ electron-to-chromium@^1.4.284:
   resolved "http://47.110.251.215:9000/electron-to-chromium/-/electron-to-chromium-1.4.384.tgz#5c23b5579930dec9af2a93edafddbe991542eace"
   integrity sha512-I97q0MmRAAqj53+a8vZsDkEXBZki+ehYAOPzwtQzALip52aEp2+BJqHFtTlsfjoqVZYwPpHC8wM6MbsSZQ/Eqw==
 
-element-plus@2.3.5, element-plus@^2.3.5:
-  version "2.3.5"
-  resolved "http://47.110.251.215:9000/element-plus/-/element-plus-2.3.5.tgz#5b04de44fd0ee1bd29ad6ed971d9155982cc1295"
-  integrity sha512-g27DHm2C5/tPwte9H6Juu+JOdzT9z1ALHTIvia6MwnBdCrI4kd77o6KcYdodU15/tYiPBoCEmobhl/7GUDb+1Q==
+element-plus@2.3.6, element-plus@^2.3.6:
+  version "2.3.6"
+  resolved "http://47.110.251.215:9000/element-plus/-/element-plus-2.3.6.tgz#848f8834ed70adfbae8f4dec5303a9126d472d28"
+  integrity sha512-GLz0pXUYI2zRfIgyI6W7SWmHk6dSEikP9yR++hsQUyy63+WjutoiGpA3SZD4cGPSXUzRFeKfVr8CnYhK5LqXZw==
   dependencies:
     "@ctrl/tinycolor" "^3.4.1"
     "@element-plus/icons-vue" "^2.0.6"
@@ -811,14 +816,14 @@ has@^1.0.3:
   dependencies:
     function-bind "^1.1.1"
 
-hc-vue3-ui@^1.2.3:
-  version "1.2.3"
-  resolved "http://47.110.251.215:9000/hc-vue3-ui/-/hc-vue3-ui-1.2.3.tgz#6c4f20e1c4971eb7bb4615e8186db4d229234722"
-  integrity sha512-dlrtEug0CRxkOq3sZxK+WWcYOEDIClICuTPv6uYTUlORZmi7gmI3lJOUCJ7fFgV+04YWu7WNgVRfdu3H8yv7UA==
+hc-vue3-ui@^1.2.6:
+  version "1.2.6"
+  resolved "http://47.110.251.215:9000/hc-vue3-ui/-/hc-vue3-ui-1.2.6.tgz#11c528c1f25419b557769dfc21141f09186d504a"
+  integrity sha512-Etiy/Juq+IDPLxyGzh+3GRBQzUTZ8he+xiPYk+FXO6l5+8/kU8k/aMvaUJqKVnzkB3HoOtvmAbcgbBkttd4INA==
   dependencies:
     axios "^1.4.0"
-    dayjs "^1.11.7"
-    element-plus "^2.3.5"
+    dayjs "^1.11.8"
+    element-plus "^2.3.6"
     js-fast-way "^0.1.0"
     js-md5 "^0.7.3"
     remixicon "^3.3.0"