From f6722e13ba28cd292c162df9292bb3418ba12bec Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期三, 25 六月 2025 15:17:50 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/2.0.1' into 2.0.1
---
company/src/components/business/OperaSolutionsDescWindow.vue | 380 +++++++++++++++++++++++++++++------------------------
1 files changed, 208 insertions(+), 172 deletions(-)
diff --git a/company/src/components/business/OperaSolutionsDescWindow.vue b/company/src/components/business/OperaSolutionsDescWindow.vue
index 8404f01..06b049f 100644
--- a/company/src/components/business/OperaSolutionsDescWindow.vue
+++ b/company/src/components/business/OperaSolutionsDescWindow.vue
@@ -1,9 +1,8 @@
<template>
<GlobalWindow
:title="title"
- width="70%"
- text="淇敼"
- :withFooter="userInfo.type !== 1"
+ width="100%"
+ :withFooter="false"
:visible.sync="visible"
:confirm-working="isWorking"
@confirm="$refs.operaSolutionsWindow.open('缂栬緫鏂规', form)"
@@ -11,66 +10,69 @@
<div class="info">
<div class="info_list">
<div class="info_list_item">
- <div class="info_list_item_label">鏂规鍚嶇О锛�</div>
+ <div class="info_list_item_label">{{userInfo.type!=1?'瀛愭柟妗堬細':'鏂规锛�'}}</div>
<div class="info_list_item_val">{{form.name}}</div>
</div>
- <div class="info_list_item">
- <div class="info_list_item_label">淇濋櫓鍏徃锛�</div>
- <div class="info_list_item_val">{{form.insuranceName}}</div>
+ <div class="info_list_item" v-if="userInfo.type !== 1">
+ <div class="info_list_item_label">涓绘柟妗堬細</div>
+ <div class="info_list_item_val"><a @click="$refs.operaSolutionsBaseDescWindow.open('涓绘柟妗堣鎯�', { id: form.parentId })" style="cursor: pointer;color: #2E68EC;">{{form.solutionBaseName}}</a></div>
</div>
<div class="info_list_item">
- <div class="info_list_item_label">鎵夸繚鍏徃锛�</div>
- <div class="info_list_item_val">{{form.companyName}}</div>
- </div>
- <div class="info_list_item">
- <div class="info_list_item_label">鎶曚繚绫诲瀷锛�</div>
- <div class="info_list_item_val" v-if="form.type === 0 "> 鐩翠繚</div>
- <div class="info_list_item_val" v-if="form.type === 1">濮旀墭鎶曚繚</div>
- </div>
- <div class="info_list_item" v-if="form.type === 1">
- <div class="info_list_item_label">濮旀墭鍟嗘埛锛�</div>
- <div class="info_list_item_val" > {{form.shopName}}</div>
- </div>
- <div class="info_list_item">
- <div class="info_list_item_label">鎶曚繚骞撮緞锛�</div>
- <div class="info_list_item_val">{{form.minAge}}鑷硔{form.maxAge}}</div>
- </div>
- <div class="info_list_item">
- <div class="info_list_item_label">淇濋櫓璐圭敤锛�</div>
+ <div class="info_list_item_label">鏂规璐圭敤锛�</div>
<div class="info_list_item_val">
- {{form.price}}鍏�/浜�/
- <span v-if="form.timeUnit === 0">澶�</span>
- <span v-if="form.timeUnit === 1">鍗婃湀</span>
- <span v-if="form.timeUnit === 2">鏈�</span>
- <span v-if="form.timeUnit === 3">骞�</span>
+ {{form.price}}鍏�/浜�/<template v-if="form.timeUnit === 0">澶�</template><template v-if="form.timeUnit === 2">鏈�</template><template v-if="form.timeUnit === 3">瀛e害</template><template v-if="form.timeUnit === 4">鍗婂勾</template><template v-if="form.timeUnit === 5">骞�</template>
</div>
</div>
<div class="info_list_item">
- <div class="info_list_item_label">鎶曚繚鍛ㄦ湡锛�</div>
+ <div class="info_list_item_label">鎵规敼璁¤垂瑙勫垯锛�</div>
<div class="info_list_item_val">
- {{form.insureCycle}}
<span v-if="form.insureCycleUnit === 0">澶�</span>
<span v-if="form.insureCycleUnit === 1">鍗婃湀</span>
<span v-if="form.insureCycleUnit === 2">鏈�</span>
- <span v-if="form.insureCycleUnit === 3">骞�</span>
+ <span v-if="form.insureCycleUnit === 3">瀛e害</span>
+ <span v-if="form.insureCycleUnit === 4">鍗婂勾</span>
+ <span v-if="form.insureCycleUnit === 5">骞�</span>
</div>
</div>
<div class="info_list_item">
- <div class="info_list_item_label">鐢熸晥鏃堕棿锛�</div>
- <div class="info_list_item_val">{{form.validType === 0 ? form.validTypeNum + '鏃ュ悗鐢熸晥' : '娆℃湀鐢熸晥'}}</div>
+ <div class="info_list_item_label">鎶曚繚绫诲瀷锛�</div>
+ <div class="info_list_item_val" v-if="form.type === 0 ">鐩翠繚</div>
+ <div class="info_list_item_val" v-if="form.type === 1">濮旀墭鎶曚繚</div>
</div>
-
+ <div class="info_list_item">
+ <div class="info_list_item_label">濮旀墭鍟嗘埛锛�</div>
+ <div class="info_list_item_val" > {{form.shopName}}</div>
+ </div>
+ <div class="info_list_item">
+ <div class="info_list_item_label">娲鹃仯鍗曚綅锛�</div>
+ <div class="info_list_item_val" v-if="form.hasDispatchUnit === 1">鏃�</div>
+ <div class="info_list_item_val" v-else-if="form.hasDispatchUnit === 0">鏈�</div>
+ </div>
<div class="info_list_item">
<div class="info_list_item_label">鎺ユ敹鏂囦欢閭锛�</div>
<div class="info_list_item_val">{{form.email}}</div>
</div>
- <div class="info_list_item" style="width: 100%" v-if="form.type==1">
- <div class="info_list_item_label">鏂规纭涔︼細</div>
- <div class="info_list_item_val" ><a v-if="form.fanganFile && form.fanganFile.fileurlFull" style="cursor: pointer;color: #2E68EC" title="鐐瑰嚮鏌ョ湅" @click="openFile(form.fanganFile.fileurlFull)">{{ form.fanganFile.name || '鐐瑰嚮鏌ョ湅' }}</a></div>
+ <div class="info_list_item">
+ <div class="info_list_item_label">鎵规敼鏀寔锛�</div>
+ <div class="info_list_item_val">
+ <span style="margin-right: 50px">鍔犱繚 <i :class="form.canAdd ==1?'el-icon-circle-check':'el-icon-circle-close'" :style="form.canAdd ==1?'color:green;font-weight:bold':'color:red;font-weight:bold'"></i></span>
+ <span style="margin-right: 50px">鍑忎繚 <i :class="form.canReduce ==1?'el-icon-circle-check':'el-icon-circle-close'" :style="form.canReduce ==1?'color:green;font-weight:bold':'color:red;font-weight:bold'"></i></span>
+ <span>鏇存崲娲鹃仯鍗曚綅 <i :class="form.canChangeUnit ==1?'el-icon-circle-check':'el-icon-circle-close'" :style="form.canChangeUnit ==1?'color:green;font-weight:bold':'color:red;font-weight:bold'"></i></span>
+ </div>
</div>
+ <div class="info_list_item">
+ <div class="info_list_item_label">鎵瑰噺浠呮敮鎸佹浛鎹細</div>
+ <div class="info_list_item_val">{{form.delOnlyReplace ==1?'鏄�':'鍚�'}}</div>
+ </div>
+ <div class="info_list_item" style="width: 100%">
+ <div class="info_list_item_label">鏂规纭涔︼細</div>
+ <div class="info_list_item_val" ><a v-if="form.fanganFile && form.fanganFile.fileurlFull" style="cursor: pointer;color: #2E68EC" title="鐐瑰嚮鏌ョ湅" @click="openFile(form.fanganFile.fileurlFull)">{{ form.fanganFile.name || '鐐瑰嚮鏌ョ湅' }}</a></div>
+ </div>
</div>
+ <div style="font-size: 18px; font-weight: bold; margin-bottom: 10px;" v-if="userInfo.type === 0">鏂规浣跨敤鎯呭喌</div>
<el-table
- :data="form.worktypeList"
+ v-if="userInfo.type === 0"
+ :data="list"
border
style="width: 100%; margin-bottom: 20px;">
<el-table-column
@@ -82,154 +84,188 @@
</template>
</el-table-column>
<el-table-column
- prop="worktypeName"
+ prop="companyName"
align="center"
- label="宸ョ鍚嶇О">
+ label="浼佷笟鍚嶇О">
+ </el-table-column>
+ <el-table-column
+ align="center"
+ label="绛剧珷鎯呭喌">
+ <template slot-scope="{row}">
+ <span v-if="row.signStatus === 0">寰呯绔�</span>
+ <span v-if="row.signStatus === 1">宸茬绔�</span>
+ </template>
</el-table-column>
</el-table>
- <div class="info_agree">
- <div class="info_agree_label">鐗瑰埆绾﹀畾锛歿{form.specialAgreement}}</div>
- <div class="info_agree_label">鐗瑰埆璇存槑锛歿{form.specialInfo}}</div>
- <div class="info_agree_label">鍏朵粬璇存槑锛歿{form.ortherInfo}}</div>
- </div>
+<!-- <el-table-->
+<!-- :data="form.worktypeList"-->
+<!-- border-->
+<!-- style="width: 100%; margin-bottom: 20px;">-->
+<!-- <el-table-column-->
+<!-- label="搴忓彿"-->
+<!-- align="center"-->
+<!-- width="80">-->
+<!-- <template slot-scope="scope">-->
+<!-- <span>{{scope.$index + 1}}</span>-->
+<!-- </template>-->
+<!-- </el-table-column>-->
+<!-- <el-table-column-->
+<!-- prop="worktypeName"-->
+<!-- align="center"-->
+<!-- label="宸ョ鍚嶇О">-->
+<!-- </el-table-column>-->
+<!-- </el-table>-->
</div>
<!-- 淇敼 -->
<OperaSolutionsWindow ref="operaSolutionsWindow" @success="callback"/>
+ <OperaPdfViewerWindow ref="OperaPdfViewerWindow" />
+ <OperaSolutionsBaseDescWindow ref="operaSolutionsBaseDescWindow" />
</GlobalWindow>
</template>
<script>
- import BaseOpera from '@/components/base/BaseOpera'
- import GlobalWindow from '@/components/common/GlobalWindow'
- import OperaSolutionsWindow from '@/components/business/OperaSolutionsWindow'
- import { solutionsId } from '@/api/business/solutions'
- import {mapState} from "vuex";
- export default {
- name: 'OperaSolutionsDescWindow',
- extends: BaseOpera,
- components: { GlobalWindow, OperaSolutionsWindow },
- data () {
- return {
- // 琛ㄥ崟鏁版嵁
- form: {
- id: null,
- name: '',
- companyName: '',
- insuranceId: '',
- validType: 0,
- type: 0,
- minAge: '',
- maxAge: '',
- price: '',
- timeUnit: '',
- insureCycle: '',
- shopName:'',
- insureCycleUnit: '',
- validTypeNum: '',
- email: '',
- specialAgreement: '',
- specialInfo: '',
- ortherInfo: '',
- insuranceName: '',
- signKeyword: '',
- worktypeList: [],
- worktypeIdList: []
- }
- }
- },
- computed: {
- ...mapState(['userInfo'])
- },
- created () {
- this.config({
- api: '/business/solutions',
- 'field.id': 'id'
- })
- },
- methods: {
- open (title, target) {
- this.title = title
- this.visible = true
- this.form = {
- id: null,
- name: '',
- companyName: '',
- insuranceId: '',
- validType: 0,
- type: 0,
- minAge: '',
- maxAge: '',
- price: '',
- timeUnit: '',
- insureCycle: '',
- shopName:'',
- insureCycleUnit: '',
- validTypeNum: '',
- email: '',
- specialAgreement: '',
- specialInfo: '',
- ortherInfo: '',
- fanganFile:null,
- insuranceName: '',
- signKeyword: '',
- worktypeList: [],
- worktypeIdList: []
- }
-
- this.$nextTick(() => {
- for (const key in this.form) {
- this.form[key] = target[key]
- }
- this.getDetails()
- })
- },
- openFile (url) {
- setTimeout(() => {
- window.open(url)
- }, 500)
- },
- getDetails() {
- solutionsId(this.form.id)
- .then(res => {
- for (const key in this.form) {
- this.form[key] = res[key]
- }
- this.form.worktypeIdList = res.worktypeList.map(item => {
- return {
- worktypeId: item.worktypeId
- }
- })
- })
- },
- callback() {
- this.$emit('success')
- this.visible = false
- }
- }
+import BaseOpera from '@/components/base/BaseOpera'
+import GlobalWindow from '@/components/common/GlobalWindow'
+import OperaSolutionsWindow from '@/components/business/OperaSolutionsWindow'
+import OperaPdfViewerWindow from '@/components/business/OperaPdfViewerWindow'
+import OperaSolutionsBaseDescWindow from '@/components/business/OperaSolutionsBaseDescWindow'
+import { solutionsId, listForCompany } from '@/api/business/solutions'
+import { mapState } from 'vuex'
+export default {
+ name: 'OperaSolutionsDescWindow',
+ extends: BaseOpera,
+ components: { GlobalWindow, OperaPdfViewerWindow,OperaSolutionsWindow, OperaSolutionsBaseDescWindow },
+ data () {
+ return {
+ // 琛ㄥ崟鏁版嵁
+ form: {
+ id: null,
+ name: '',
+ companyName: '',
+ insuranceId: '',
+ validType: 0,
+ type: 0,
+ minAge: '',
+ maxAge: '',
+ price: '',
+ timeUnit: '',
+ insureCycle: '',
+ parentId: '',
+ shopName: '',
+ insureCycleUnit: '',
+ hasDispatchUnit: '',
+ solutionBaseName: '',
+ validTypeNum: '',
+ email: '',
+ canReduce: 0,
+ canChangeUnit: 0,
+ addValidDays: 0,
+ delValidDays: 0,
+ delOnlyReplace: 0,
+ canAdd: 0,
+ specialAgreement: '',
+ specialInfo: '',
+ ortherInfo: '',
+ insuranceName: '',
+ signKeyword: '',
+ worktypeList: [],
+ worktypeIdList: []
+ },
+ list: []
}
+ },
+ computed: {
+ ...mapState(['userInfo'])
+ },
+ created () {
+ this.config({
+ api: '/business/solutions',
+ 'field.id': 'id'
+ })
+ },
+ methods: {
+ open (title, target) {
+ this.title = title
+ this.visible = true
+ this.form = {
+ id: null,
+ name: '',
+ companyName: '',
+ insuranceId: '',
+ validType: 0,
+ type: 0,
+ minAge: '',
+ maxAge: '',
+ parentId: '',
+ price: '',
+ timeUnit: '',
+ insureCycle: '',
+ hasDispatchUnit: '',
+ shopName: '',
+ insureCycleUnit: '',
+ validTypeNum: '',
+ email: '',
+ specialAgreement: '',
+ solutionBaseName: '',
+ specialInfo: '',
+ ortherInfo: '',
+ fanganFile: null,
+ canReduce: 0,
+ canChangeUnit: 0,
+ addValidDays: 0,
+ delValidDays: 0,
+ delOnlyReplace: 0,
+ canAdd: 0,
+ insuranceName: '',
+ signKeyword: '',
+ worktypeList: [],
+ worktypeIdList: []
+ }
+
+ this.$nextTick(() => {
+ for (const key in this.form) {
+ this.form[key] = target[key]
+ }
+ this.getDetails()
+ this.getList()
+ })
+ },
+ getList() {
+ listForCompany({ solutionId: this.form.id })
+ .then(res => {
+ this.list = res
+ })
+ },
+ openFile (url) {
+ setTimeout(() => {
+ this.$refs.OperaPdfViewerWindow.open('鏂规纭涔�',url)
+ // window.open(url)
+ }, 500)
+ },
+ getDetails () {
+ solutionsId(this.form.id)
+ .then(res => {
+ for (const key in this.form) {
+ this.form[key] = res[key]
+ }
+ this.form.worktypeIdList = res.worktypeList.map(item => {
+ return {
+ worktypeId: item.worktypeId
+ }
+ })
+ })
+ },
+ callback () {
+ this.$emit('success')
+ this.visible = false
+ }
+ }
+}
</script>
<style lang="scss" scoped>
.info {
width: 100%;
- .info_agree {
- width: 100%;
- display: flex;
- flex-direction: column;
- margin-top: 20px;
- .info_agree_label {
- font-size: 14px;
- font-weight: 500;
- color: #000000;
- margin-top: 5px;
- }
- .info_agree_val {
- font-size: 14px;
- font-weight: 500;
- color: #000000;
- margin-top: 5px;
- }
- }
.info_label {
width: 100%;
display: flex;
--
Gitblit v1.9.3