| <template> | 
|     <GlobalWindow | 
|         :title="title" | 
|         width="100%" | 
|         :withFooter="false" | 
|         :visible.sync="visible" | 
|         :confirm-working="isWorking" | 
|         @confirm="$refs.operaSolutionsWindow.open('编辑方案', form)" | 
|     > | 
|         <div class="info"> | 
|             <div class="info_list"> | 
|                 <div class="info_list_item"> | 
|                     <div class="info_list_item_label">子方案:</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"><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.price}}元/人/<template v-if="form.timeUnit === 0">天</template><template v-if="form.timeUnit === 2">月</template><template v-if="form.timeUnit === 3">季度</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_val"> | 
|                         <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 === 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" 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%"> | 
|                     <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 | 
|                 v-if="userInfo.type === 0" | 
|                 :data="list" | 
|                 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="companyName" | 
|                     align="center" | 
|                     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> | 
| <!--            <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 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_label { | 
|             width: 100%; | 
|             display: flex; | 
|             align-items: center; | 
|             justify-content: space-between; | 
|             margin-bottom: 20px; | 
|             span { | 
|                 font-size: 18px; | 
|                 font-weight: 500; | 
|                 color: #000000; | 
|             } | 
|         } | 
|         .info_fwb { | 
|             width: 100%; | 
|             margin-top: 20px; | 
|         } | 
|         .info_list { | 
|             width: 100%; | 
|             display: flex; | 
|             align-items: center; | 
|             flex-wrap: wrap; | 
|             .info_list_item { | 
|                 width: 50%; | 
|                 display: flex; | 
|                 align-items: start; | 
|                 margin-bottom: 20px; | 
|                 .info_list_item_label { | 
|   | 
|                     flex-shrink: 0; | 
|                 } | 
|                 .info_list_item_val { | 
|                     flex: 1; | 
|                     display: flex; | 
|                     align-items: center; | 
|                     .image { | 
|                         width: 100px; | 
|                         height: 100px; | 
|                         display: flex; | 
|                         align-items: center; | 
|                         justify-content: center; | 
|                         overflow: hidden; | 
|                         img { | 
|                             width: 100%; | 
|                         } | 
|                     } | 
|                 } | 
|             } | 
|         } | 
|     } | 
| </style> |