From 5506edbe54883b31db3cc8e4a1d9d0795a18a3c9 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 27 十二月 2024 14:37:54 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/2.0.1' into 2.0.1

---
 company/src/components/business/OperaContractDescWindow.vue |  169 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 169 insertions(+), 0 deletions(-)

diff --git a/company/src/components/business/OperaContractDescWindow.vue b/company/src/components/business/OperaContractDescWindow.vue
new file mode 100644
index 0000000..da17f44
--- /dev/null
+++ b/company/src/components/business/OperaContractDescWindow.vue
@@ -0,0 +1,169 @@
+<template>
+    <GlobalWindow
+        :title="title"
+        width="100%"
+        :withFooter="false"
+        :visible.sync="visible"
+        :confirm-working="isWorking"
+        @confirm="confirm"
+    >
+        <div class="info" v-if="info">
+            <div class="info_label">
+                <span>鍚堝悓璇︽儏</span>
+            </div>
+            <div class="info_list">
+                <div class="info_list_item">
+                    <div class="info_list_item_label">鍚堝悓鍚嶇О锛�</div>
+                    <div class="info_list_item_val">{{info.name}}</div>
+                </div>
+                <div class="info_list_item">
+                    <div class="info_list_item_label">鍚堝悓鏃堕棿锛�</div>
+                    <div class="info_list_item_val">{{info.startTime}} - {{info.endTime}}</div>
+                </div>
+                <div class="info_list_item" v-if="userInfo.type === 0 || info.type === 2">
+                    <div class="info_list_item_label">鍚堝悓绫诲瀷锛�</div>
+                    <div class="info_list_item_val">
+                        <template v-if="info.signType === 0">骞冲彴-鍟嗘埛</template>
+                        <template v-if="info.signType === 1">骞冲彴-浼佷笟</template>
+                        <template v-if="info.signType === 2">鍟嗘埛-浼佷笟</template>
+                    </div>
+                </div>
+                <div class="info_list_item">
+                    <div class="info_list_item_label">浼佷笟鍚嶇О锛�</div>
+                    <div class="info_list_item_val">{{info.companyName}}</div>
+                </div>
+                <div class="info_list_item" style="width: 100%;" v-if="userInfo.type === 0 || info.type === 2">
+                    <div class="info_list_item_label">绛剧讲鏂瑰紡锛�</div>
+                    <div class="info_list_item_val">
+                        <template v-if="info.type === 0">鍙屾柟绛剧珷</template>
+                        <template v-if="info.type === 1">浠呮垜鏂圭绔�</template>
+                    </div>
+                </div>
+                <div class="info_list_item" style="width: 100%;">
+                    <div class="info_list_item_label">鍘熷闄勪欢锛�</div>
+                    <div class="info_list_item_val" v-if="info.multifile">
+                        <u @click.stop="openPDF(info.multifile.name, info.multifile.fileurlFull)">{{info.multifile.name}}</u>
+                    </div>
+                </div>
+                <div class="info_list_item" style="width: 100%;">
+                    <div class="info_list_item_label">澶囨敞锛�</div>
+                    <div class="info_list_item_val">{{info.remark}}</div>
+                </div>
+            </div>
+        </div>
+        <div class="info" v-if="info && info.status !== 0">
+            <div class="info_label">
+                <span>鍚堝悓绛剧讲鎯呭喌</span>
+            </div>
+            <div class="info_list">
+                <div class="info_list_item">
+                    <div class="info_list_item_label">{{info.signType === 2 ? '鍟嗘埛' :  [0, 1].includes(info.signType) ? '骞冲彴' : ''}}绛剧讲浜猴細</div>
+                    <div class="info_list_item_val">{{info.firstSignUserName}}</div>
+                </div>
+                <div class="info_list_item">
+                    <div class="info_list_item_label">{{info.signType === 2 ? '鍟嗘埛' :  [0, 1].includes(info.signType) ? '骞冲彴' : ''}}绛剧讲鏃堕棿锛�</div>
+                    <div class="info_list_item_val">{{info.signDate}}</div>
+                </div>
+                <div class="info_list_item" v-if="info.type !== 1">
+                    <div class="info_list_item_label">{{info.signType === 0 ? '鍟嗘埛' :  [1, 2].includes(info.signType) ? '浼佷笟' : ''}}绛剧讲浜猴細</div>
+                    <div class="info_list_item_val">{{info.doneSignUserName}}</div>
+                </div>
+                <div class="info_list_item" v-if="info.type !== 1">
+                    <div class="info_list_item_label">{{info.signType === 0 ? '鍟嗘埛' :  [1, 2].includes(info.signType) ? '浼佷笟' : ''}}绛剧讲鏃堕棿锛�</div>
+                    <div class="info_list_item_val">{{info.comSignDate}}</div>
+                </div>
+                <div class="info_list_item">
+                    <div class="info_list_item_label">绛剧讲浠讹細</div>
+                    <div class="info_list_item_val">
+                        <u v-if="info.multiDoneFile" @click.stop="openPDF(info.multiDoneFile.name, info.multiDoneFile.fileurlFull)">{{info.multiDoneFile.name}}</u>
+                        <u v-else-if="info.multiFirstFile" @click.stop="openPDF(info.multiFirstFile.name, info.multiFirstFile.fileurlFull)">{{info.multiFirstFile.name}}</u>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <!-- 棰勮pdf -->
+        <OperaPdfViewerWindow ref="OperaPdfViewerWindow"  />
+    </GlobalWindow>
+</template>
+
+<script>
+  import BaseOpera from '@/components/base/BaseOpera'
+  import GlobalWindow from '@/components/common/GlobalWindow'
+  import OperaPdfViewerWindow from '@/components/business/OperaPdfViewerWindow'
+  import { contractId } from '@/api/business/contract'
+  import { mapState } from 'vuex'
+  export default {
+    name: 'OperaContractDescWindow',
+    extends: BaseOpera,
+    computed: {
+      ...mapState(['userInfo'])
+    },
+    components: { GlobalWindow, OperaPdfViewerWindow },
+    data () {
+      return {
+        info: null
+      }
+    },
+    methods: {
+      open (title, id) {
+        this.title = title
+        this.info = null
+        this.visible = true
+        console.log(this.userInfo)
+        contractId(id)
+          .then(res => {
+            console.log(res)
+            this.info = res
+          })
+      },
+      openPDF(name, url) {
+        this.$refs.OperaPdfViewerWindow.open(name, url)
+      },
+    }
+  }
+</script>
+
+<style lang="scss" scoped>
+    .info {
+        width: 100%;
+        .info_label {
+            width: 100%;
+            display: flex;
+            align-items: center;
+            justify-content: space-between;
+            margin-bottom: 20px;
+            span {
+                font-size: 18px;
+                font-weight: 600;
+                color: #000000;
+            }
+        }
+        .info_list {
+            width: 100%;
+            display: flex;
+            align-items: start;
+            flex-wrap: wrap;
+            .info_list_item {
+                width: 50%;
+                display: flex;
+                align-items: start;
+                margin-bottom: 20px;
+                .info_list_item_label {
+                    flex-shrink: 0;
+                    font-size: 16px;
+                }
+                .info_list_item_val {
+                    flex: 1;
+                    display: flex;
+                    align-items: center;
+                    font-size: 16px;
+                    u {
+                        font-size: 16px;
+                        color: #2E68EC;
+                        cursor: pointer;
+                    }
+                }
+            }
+        }
+    }
+</style>

--
Gitblit v1.9.3