<template>
<div class="hcfdlab">
  <div class="scal">
     
      <div class="toolbar-part-detail lbg_color1 ">
         <!-- 工具栏 -->
      <!-- <transformtool ref="transform" :servertype="servertype" :projectId='project.projectId'  :wstep='wstep' :bStep='bStep' :vStep='vStep'></transformtool> -->
          <el-tabs   v-model="activeName" type="card" @tab-click="handleClick">

            <el-tab-pane label="几何建模" name="one"><geometry></geometry></el-tab-pane>
          <el-tab-pane label="网格划分" name="twos"> <meshindex></meshindex></el-tab-pane>
          <!-- 通用设置 -->
          <el-tab-pane :label="$t('HCFD.geneal.geneal')" name="two">
              <div class="imgzong">
             <div class="item1"  v-for="(itemcj,index) in twolist"  :key="'two-'+ index" :class="{activeOrange:active=='two-'+ index}" @click="clickgeometry($event,index,'two-'+ index)">
                <el-tooltip class="item" effect="dark" :content="itemcj.titlie" placement="bottom">
                             <el-image :src="itemcj.icon" fit="cover" /> 
            </el-tooltip>
            </div>
           </div>
          </el-tab-pane>
          <!-- 物理模型 -->
          <el-tab-pane :label="$t('HCFD.physics.physics')" name="three">
             <div class="imgzong">
             <div class="item1"  v-for="(item,index) in physicslist"  :key="'three-'+ index" :class="{activeOrange:active=='three-'+ index}" @click="clickgeometry($event,index,'three-'+ index)">
                <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
                        <el-image :src="item.icon" fit="cover" />   
            </el-tooltip>
             </div>
               <span class="shu">|</span>
                 <div class="item1"  v-for="(item,index) in physicslist2"  :key="'three2-'+ index" :class="{activeOrange:active=='three2-'+ index}" @click="clickgeometry($event,index,'three2-'+ index)">
                <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
                       <el-image :src="item.icon" fit="cover" /> 
            </el-tooltip>
             </div>
              <span class="shu">|</span>
                <div class="item1"  v-for="(item,index) in physicslist1"  :key="'three1-'+ index" :class="{activeOrange:active=='three1-'+ index}" @click="clickgeometry($event,index,'three1-'+ index)">
                <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
                       <el-image :src="item.icon" fit="cover" />  
            </el-tooltip>
             </div>
            </div>
            
          </el-tab-pane>
          <!-- 求解控制 -->
          <el-tab-pane :label="$t('HCFD.solution.solution')" name="four">
            <div class="imgzong">
              <div class="item1"  v-for="(item,index) in  solutionlist"  :key="'four-'+ index" :class="{activeOrange:active=='four-'+ index}" @click="clickgeometry($event,index,'four-'+ index)">
                <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
                  <el-image :src="item.icon" fit="cover" /> 
            </el-tooltip>
             </div>
                  <span class="shu">|</span>
                     <div class="item1"  v-for="(item,index) in  solutionlist2"  :key="'four2-'+ index" :class="{activeOrange:active=='four2-'+ index}" @click="clickgeometry($event,index,'four2-'+ index)">
                <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
                     <el-image :src="item.icon" fit="cover" /> 
            </el-tooltip>
             </div>
                   
                  <span class="shu">|</span>
                      <div class="item1"  v-for="(item,index) in  solutionlist3"  :key="'four3-'+ index" :class="{activeOrange:active=='four3-'+ index}" @click="clickgeometry($event,index,'four3-'+ index)">
                <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
                     <el-image :src="item.icon" fit="cover" /> 
            </el-tooltip>
             </div>
                  <!-- <span class="shu">|</span>
                      <div class="item1"  v-for="(item,index) in  solutionlist4"  :key="'four4-'+ index" :class="{activeOrange:active=='four4-'+ index}" @click="clickgeometry($event,index,'four4-'+ index)">
                <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
                    <svg class="icon" aria-hidden="true">
                    <use :xlink:href="`#${item.icon}`" />
                  </svg>
            </el-tooltip>
             </div> -->
              
            </div>
            <!-- 结果 -->
          </el-tab-pane>
           <el-tab-pane :label=" $t('HCFD.results.results')" name="five">
              <div class="imgzong" v-if="lsolverState=='2'">
                        <div class="item1 "    v-for="(item,index) in  resultslist"  :key="'five-'+ index" :class="{activeOrange:active=='five-'+ index}" @click="clickgeometry($event,index,'five-'+ index)">
                <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
                       <el-image :src="item.icon" fit="cover" /> 
            </el-tooltip>
             </div>
               </div>
           </el-tab-pane>
           <!-- 工具 -->
          <el-tab-pane :label="$t('HCFD.tool.unitConversion')" name="six"> 
               <div class="imgzong">
                        <div class="item1"  v-for="(item,index) in  unitlist "  :key="'six-'+ index" :class="{activeOrange:active=='six-'+ index}" @click="clickgeometry($event,index,'six-'+ index)">
                <el-tooltip class="item" effect="dark" :content="item.titlie" placement="bottom">
                      <el-image :src="item.icon" fit="cover" /> 
            </el-tooltip>
             </div>
               </div>
          </el-tab-pane>
        </el-tabs>
         </div> 
          </div> 
<!-- 缩放 -->
   <el-dialog
     v-if="active=='two-0'"
      :visible.sync="dialog.scale_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      class="dialog"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
    >
      <div slot="title" class=dialog_header>
     <el-image class="imge" :src="t1" fit="cover" />
     <span class="text-color">{{$t('HCFD.geneal.scale')}}</span>
  </div>
      <el-form>
             <el-form-item label="名称" :label-width="formLabelWidth2" >
        <el-input v-model="mcnames" autocomplete="off"></el-input>
      </el-form-item>
      <el-form-item label="类型" :label-width="formLabelWidth2" >
      <el-input value="suofang" autocomplete="off"></el-input>
      </el-form-item>
       <div class="line">
      <div class="linetext">相交/延长</div>
    </div> 
         <el-form-item :label="$t('HCFD.geneal.factor')" :label-width="formLabelWidth2" >
      <el-input  v-model="geneal.MeshTransform.Scale.Factor" autocomplete="off"></el-input>
      </el-form-item>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="info"  @click="dialog.scale_visiable = false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button type="primary" @click="hcfdparam(); dialog.scale_visiable = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
    <!-- 翻译 -->
  <el-dialog
     v-if="active=='two-1'"
      :visible.sync="dialog.translation_visiable"
          :close-on-click-modal="false"
          @close='activecleer()'
       :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
    >
       <div slot="title" class=dialog_header>
     <el-image class="imge" :src="t2" fit="cover" />
     <span class="text-color">{{$t('HCFD.geneal.translation')}}</span>
  </div>
      <el-form class="div64">
            <el-form-item label="名称" :label-width="formLabelWidth2" >
        <el-input v-model="mcnames" autocomplete="off"></el-input>
      </el-form-item>
      <el-form-item label="类型" :label-width="formLabelWidth2" >
      <el-input value="PingYi" autocomplete="off"></el-input>
      </el-form-item>
       <div class="line">
      <div class="linetext">属性</div>
    </div> 
        <div  class="liitem">
              <el-form-item :label="$t('HCFD.geneal.distance')" :label-width="formLabelWidth7">
              <el-input    v-model="geneal.MeshTransform.Translation.Distance" autocomplete="off"></el-input>
            </el-form-item>
        </div>
        <div class="liitem">
            <el-form-item :label="$t('HCFD.geneal.translationx')" :label-width="formLabelWidth7">
              <el-input    v-model="geneal.MeshTransform.Translation.X" autocomplete="off"></el-input>
            </el-form-item>
        </div>
        <div  class="liitem">
            <el-form-item :label=" $t('HCFD.geneal.translationy')" :label-width="formLabelWidth7">
              <el-input    v-model="geneal.MeshTransform.Translation.Y" autocomplete="off"></el-input>
            </el-form-item>
        </div>
        <div  class="liitem">
             <el-form-item :label="$t('HCFD.geneal.translationz')" :label-width="formLabelWidth7">
              <el-input    v-model="geneal.MeshTransform.Translation.Z" autocomplete="off"></el-input>
            </el-form-item>
        </div>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="info"  @click="dialog.translation_visiable = false"
          > {{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.translation_visiable = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
<!-- 旋转 -->
 <el-dialog
    v-if="active=='two-2'"
      :close-on-click-modal="false"
      @close='activecleer()'
       :modal='false'
    custom-class='dialoglocation dialog_color'
      :visible.sync="dialog.rotation_visiable"
       width="385px"
      :style="styX"
    >
     <div slot="title" class=dialog_header>
     <el-image class="imge" :src="t3" fit="cover" />
     <span class="text-color">{{$t('HCFD.geneal.rotation')}}</span>
  </div>
      <el-form class="div64">
           <el-form-item label="名称" :label-width="formLabelWidth2" >
        <el-input v-model="mcnames" autocomplete="off"></el-input>
      </el-form-item>
      <el-form-item label="类型" :label-width="formLabelWidth2" >
      <el-input value="xuanzuan" autocomplete="off"></el-input>
      </el-form-item>
       <div class="line">
      <div class="linetext">属性</div>
    </div> 
     <el-form-item :label="$t('HCFD.geneal.angle')" :label-width="formLabelWidth7" >
      <el-input v-model="geneal.MeshTransform.Rotation.Angle" autocomplete="off"></el-input>
      </el-form-item>
      <el-form-item :label="$t('HCFD.geneal.rotationx')" :label-width="formLabelWidth7" >
      <el-input   v-model="geneal.MeshTransform.Rotation.X" autocomplete="off"></el-input>
      </el-form-item>
       <el-form-item :label="$t('HCFD.geneal.rotationy')" :label-width="formLabelWidth7" >
      <el-input      v-model="geneal.MeshTransform.Rotation.Y" autocomplete="off"></el-input>
      </el-form-item>
      <el-form-item :label="$t('HCFD.geneal.rotationz')" :label-width="formLabelWidth7" >
      <el-input          v-model="geneal.MeshTransform.Rotation.Z" autocomplete="off"></el-input>
      </el-form-item>
         <el-form-item :label="$t('HCFD.geneal.rotationx1')" :label-width="formLabelWidth7" >
      <el-input            v-model="geneal.MeshTransform.Rotation.X1" autocomplete="off"></el-input>
      </el-form-item>  
        <el-form-item :label="$t('HCFD.geneal.rotationy1')" :label-width="formLabelWidth7" >
      <el-input              v-model="geneal.MeshTransform.Rotation.Y1" autocomplete="off"></el-input>
      </el-form-item>  
       <el-form-item :label="$t('HCFD.geneal.rotationz1')" :label-width="formLabelWidth7" >
      <el-input   v-model="geneal.MeshTransform.Rotation.Z1" autocomplete="off"></el-input>
      </el-form-item>  
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="info"  @click="dialog.rotation_visiable = false">{{ $t("HCFD.file.cancel")}}</el-button>
        <el-button type="primary" @click="hcfdparam(); dialog.rotation_visiable = false"
          >{{ $t("HCFD.file.ok")}} </el-button
        >
      </div>
    </el-dialog>
    <!-- 分析类型 -->
     <el-dialog
      class="lg-y-z"
      :visible.sync="dialog.type_visiable "
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='two-3'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
    >
     <div slot="title" class=dialog_header>
     <el-image class="imge" :src="t4" fit="cover" />
     <span class="text-color">{{$t('HCFD.geneal.analysis')}}</span>
  </div>
      <el-form>
        <div class="radio_text text_color  liangf">
          <div class="classfelx">
               <el-tooltip class="item" effect="dark" content="分析类型" placement="bottom">
                <el-radio
                  v-model="parameterObj.nmlParam.analysis_Type"
                  label="Steady"
                  >{{ $t("HCFD.geneal.steady") }}</el-radio
                >
                  </el-tooltip>
            </div>
            <div class="classfelx">
                  <el-tooltip class="item" effect="dark" content="分析类型" placement="bottom">
                <el-radio
                  v-model="parameterObj.nmlParam.analysis_Type"
                  label="Unsteady"
                  >{{ $t("HCFD.geneal.unsteady") }}</el-radio
                >
                    </el-tooltip>
              </div>
        </div>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button
           type="info" 
          @click="referencevisiable((dialog.type_visiable  = false))"
          >{{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.type_visiable  = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
    <!-- 并行类型 -->
     <el-dialog
      class="lg-y-z"
      :visible.sync="dialog.parallel_visiable "
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='two-4'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
    >
     <div slot="title" class=dialog_header>
     <el-image class="imge" :src="t5" fit="cover" />
     <span class="text-color">{{$t('HCFD.geneal.parallel')}}</span>
  </div>
      <el-form>
             <div class="radio_text text_color">
                <el-radio-group
                  v-model="parameterObj.nmlParam.parallel_Optional"
                >
                <div>
                   <el-tooltip class="item" effect="dark" content="并行类型" placement="bottom">
                  <el-radio label="Serial">
                    {{ $t("HCFD.geneal.serial") }}</el-radio
                  >
                   </el-tooltip>
                   </div>
                      <div>
                     <el-tooltip class="item" effect="dark" content="并行类型" placement="bottom">
                  <el-radio label="MPI Parallel">{{
                    $t("HCFD.geneal.mpi")
                  }}</el-radio>
                   </el-tooltip>
                     </div>
                </el-radio-group>
                   <el-form-item :label="$t('HCFD.geneal.number')" :label-width="formLabelWidth2"    v-if="
                    parameterObj.nmlParam.parallel_Optional == 'MPI Parallel'
                  ">
                    <el-input      v-model="parameterObj.nmlParam.number_of_Processors"  autocomplete="off"></el-input>
                    </el-form-item>  
                </div>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button
           type="info" 
          @click="referencevisiable((dialog.parallel_visiable  = false))"
          >{{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.parallel_visiable  = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
<!-- 控制方程 -->
   <el-dialog
     v-if="active=='three-0'"
      :visible.sync="dialog.equation_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      class="dialog"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
    >
      <div slot="title" class=dialog_header>
     <el-image class="imge" :src="w1" fit="cover" />
     <span class="text-color">{{$t('HCFD.physics.gover')}}</span>
  </div>
      <el-form>
         <el-radio-group
                  v-model="parameterObj.nmlParam.eqn_type"
                  size="mini"
                >
                  <el-radio label="cal_perf_compress" style="display: block; padding:15px 0;">{{
                    $t("HCFD.physics.compress")
                  }}</el-radio>
                  <el-radio label="cal_perf_incompress">{{
                    $t("HCFD.physics.incompress")
                  }}</el-radio>
                </el-radio-group>
        <div class="disflex text_color" v-if="parameterObj.nmlParam.eqn_type=='cal_perf_incompress'">
            <span class="text_color formLabelWidth8">{{ $t("HCFD.physics.artifical") }}</span>
                  <el-input
                        class='inpw75'
                        size="mini"
                        v-model="parameterObj.nmlParam.artificial_compress"
             ></el-input>
        </div>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="info"  @click="dialog. equation_visiable = false"> {{ $t("HCFD.file.cancel")}}  </el-button>
        <el-button type="primary" @click="hcfdparam(); dialog.equation_visiable = false"
          >{{ $t("HCFD.file.ok")}} </el-button
        >
      </div>
    </el-dialog>
    <!-- 粘性模型 -->
     <el-dialog
      class="lg-y-z"
      :visible.sync="dialog.inviscid_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='three2-0'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     heigth="385px"
     :style="styX"
    >
       <div slot="title" class=dialog_header>
     <el-image class="imge" :src="w2" fit="cover" />
     <span class="text-color">{{$t('HCFD.physics.viscous')}}</span>
  </div>
      <el-form>
          <div class="selecr">
            <el-form-item label="模型类型" :label-width="formLabelWidth5">
      <el-select   v-model="parameterObj.nmlParam.viscous_terms" placeholder="请选择">
    <el-option
      v-for="item in selectlist1"
      :key="item.value"
      :label="item.name"
      :value="item.value"
      >
    </el-option>
  </el-select>
 </el-form-item>
 <div class="line">
      <div class="linetext">属性</div>
    </div> 
       <div v-if="parameterObj.nmlParam.viscous_terms=='laminar'">
        <el-form-item :label="$t('HCFD.physics.molecular')" :label-width="formLabelWidth5" >
      <el-input      v-model="parameterObj.nmlParam.prandtlnumber_molecular" autocomplete="off"></el-input>
      </el-form-item>  
        </div>          
       <div v-if="parameterObj.nmlParam.viscous_terms=='turbulent'">
              <el-form-item label="湍流模型" :label-width="formLabelWidth5">
      <el-select  v-model="parameterObj.nmlParam.turb_model" placeholder="请选择">
    <el-option
      v-for="item in selectlist2"
      :key="item.value"
      :label="item.name"
      :value="item.value"
      >
    </el-option>
  </el-select>
 </el-form-item>
      <el-form-item :label="$t('HCFD.physics.Molecular')" :label-width="formLabelWidth5" >
      <el-input      v-model="parameterObj.nmlParam.prandtlnumber_molecular" autocomplete="off"></el-input>
      </el-form-item>  
           <el-form-item :label="$t('HCFD.physics.turbulents')" :label-width="formLabelWidth5" >
      <el-input    v-model="Physics.Turbulent.TurbulentPrandtlNumber" autocomplete="off"></el-input>
      </el-form-item>  
      </div>
      </div>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button
           type="info" 
          @click="dialog.inviscid_visiable= false"
          >{{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.inviscid_visiable = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
    <!-- 运动网格  -->
     <el-dialog
      class="lg-y-z"
      :visible.sync="dialog.dynamic_visiable "
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='three2-2'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
    >
         <div slot="title" class=dialog_header>
     <el-image class="imge" :src="w4" fit="cover" />
     <span class="text-color">{{$t('HCFD.physics.dynamic')}}</span>
  </div>
      <el-form>
               <div class="radio_text text_color liangf">
                 <div class="classfelx">
                    <el-radio
                      v-model="parameterObj.nmlParam.dynamic_Mesh"
                      label="on"
                      >on</el-radio
                    >
                    </div>
                     <div class="classfelx">
                    <el-radio
                      v-model="parameterObj.nmlParam.dynamic_Mesh"
                      label="off"
                      >off</el-radio
                    >
                       </div>
               
                  </div>
                  <div class="selecr" v-if="parameterObj.nmlParam.dynamic_Mesh=='on'">
                        <el-form-item label="运动模型" :label-width="formLabelWidth7">
                      <el-select   v-model="ydval"  placeholder="请选择">
                    <el-option
                      v-for="item in ydlist"
                      :key="item.value"
                      :label="item.name"
                      :value="item.value"
                      >
                    </el-option>
                  </el-select>
                </el-form-item>  
                 <div class="line">
                <div class="linetext">定义运动体</div>
              </div> 
              <el-form-item label="数量" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
              
              <el-form-item label="名字" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
                <el-form-item label="运动机理" :label-width="formLabelWidth7">
                      <el-select   v-model="ydval2"  placeholder="请选择">
                    <el-option
                      v-for="item in ydlist2"
                      :key="item.value"
                      :label="item.name"
                      :value="item.value"
                      >
                    </el-option>
                  </el-select>
                </el-form-item>  
                  <el-form-item label="类型" :label-width="formLabelWidth7">
                      <el-select   v-model="ydval3"  placeholder="请选择">
                    <el-option
                      v-for="item in ydlist3"
                      :key="item.value"
                      :label="item.name"
                      :value="item.value"
                      >
                    </el-option>
                  </el-select>
                </el-form-item> 
                <div v-if="ydval2=='0'&&ydval3=='0'||ydval2=='1'&&ydval3=='0'">
                <el-form-item label="无量刚速率" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
              
              <el-form-item label="无量刚速率" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
            </div> 
            <div v-if="ydval2=='1'&&ydval3=='0'||ydval2=='1'&&ydval3=='1'">
                <el-form-item label="相位/度" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
              <el-form-item label="幅值/度" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
               </div>
               <div  v-if="ydval2=='1'&&ydval3=='0'||ydval2=='1'&&ydval3=='1'">
                <el-form-item label="旋转中心坐标X" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
              <el-form-item label="旋转中心坐标Y" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
                <el-form-item label="旋转中心坐标Z" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
           </div>
            <el-form-item label="旋转轴单位矢量X分量" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
              <el-form-item label="旋转轴单位矢量Y分量" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
                <el-form-item label="旋转轴单位矢量Z分量" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
               <el-form-item label="无量纲旋转起始时间" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
                <el-form-item label="无量纲旋转持续时间" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
               <div class="line">
              <div class="linetext">t=0时刻力矩中心</div>
            </div>
                <el-form-item label="X-coordinate" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
               <el-form-item label="Y-coordinate" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
                <el-form-item label="Z-coordinate" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
               <el-form-item label="力矩中心状态" :label-width="formLabelWidth7">
                      <el-select   v-model="ydval4"  placeholder="请选择">
                    <el-option
                      v-for="item in ydlist4"
                      :key="item.value"
                      :label="item.name"
                      :value="item.value"
                      >
                    </el-option>
                  </el-select>
                </el-form-item> 
                 <div class="line">
              <div class="linetext">力/力矩无量纲化</div>
            </div>
              <el-form-item label="无量纲参考面积" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
               <el-form-item label="无量纲参考弦长" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
                <el-form-item label="无量纲参考展长" :label-width="formLabelWidth7">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
               <div class="line">
              <div class="linetext">有量纲物理量</div>
            </div>
                  <div class="liangf">
                 <div class="classfelx text_color" style="line-height: 2;">
                   输出运动体有量纲物理量
                    </div>
                     <div class="classfelx">
                        <el-radio
                      v-model="parameterObj.nmlParam.dynamic_Mesh"
                      label="on"
                      >on</el-radio
                    >
                    <el-radio
                      v-model="parameterObj.nmlParam.dynamic_Mesh"
                      label="off"
                      >off</el-radio
                    >

                       </div>
               
                  </div>
                 <el-checkbox v-model="checked">预览网格运动</el-checkbox>
            </div>    
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button
           type="info" 
          @click="dialog.dynamic_visiable  = false"
          >{{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.dynamic_visiable   = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
    <!--非惯性参考条件  -->
     <el-dialog
      class="lg-y-z"
      :visible.sync="dialog.nonitertial_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='three1-1'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
    >
      <div slot="title" class=dialog_header>
     <el-image class="imge" :src="w6" fit="cover" />
     <span class="text-color">{{$t('HCFD.physics.nonitertial')}}</span>
  </div>
      <el-form>
        <div class="radio_text text_color liangf">
          <div class="classfelx">
            <el-radio
                  v-model="parameterObj.nmlParam.noninertial_Reference_Frame"
                  label="on"
                  >on</el-radio>
              </div>
                 <div class="classfelx">
                <el-radio
                  v-model="parameterObj.nmlParam.noninertial_Reference_Frame"
                  label="off"
                  >off</el-radio
                >
                </div>
                </div>
              <div v-if="parameterObj.nmlParam.noninertial_Reference_Frame=='on'">
                    <div class="line">
                  <div class="linetext">旋转中心</div>
                </div>    
                  <el-form-item label="坐标X" :label-width="formLabelWidth2">
                  <el-input v-model="form.name" autocomplete="off"></el-input>
                </el-form-item>
                  <el-form-item label="坐标Y" :label-width="formLabelWidth2">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
                  <el-form-item label="坐标Z" :label-width="formLabelWidth2">
                  <el-input v-model="form.name" autocomplete="off"></el-input>
                </el-form-item>
                    <div class="line">
                  <div class="linetext">旋转矢量</div>
                </div>   
                  <el-form-item label="X方向分量" :label-width="formLabelWidth2">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
                  <el-form-item label="Y方向分量" :label-width="formLabelWidth2">
                  <el-input v-model="form.name" autocomplete="off"></el-input>
                </el-form-item>
                  <el-form-item label="Z方向分量" :label-width="formLabelWidth2">
                <el-input v-model="form.name" autocomplete="off"></el-input>
              </el-form-item>
              </div>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button
           type="info" 
          @click="dialog.nonitertial_visiable  = false"
          >{{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.nonitertial_visiable   = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
    <!-- 通量残差构造方法 -->
    <el-dialog
      class="lg-Solution"
      :visible.sync="dialog.fluxrc_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='four-0'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
    >
   <div slot="title" class=dialog_header>
     <el-image class="imge" :src="q1" fit="cover" />
     <span class="text-color">{{$t('HCFD.solution.invis')}}</span>
  </div>
      <el-form   class="groupradio selecr">
         <div class="line">
      <div class="linetext">属性</div>
    </div> 
          <el-form-item label="通量残差构造方法" :label-width="formLabelWidth7">
          <el-select  v-model="parameterObj.nmlParam.flux_construction"  placeholder="请选择">
        <el-option
          v-for="item in qjklist"
          :key="item.value"
          :label="item.name"
          :value="item.value"
          >
        </el-option>
      </el-select>
    </el-form-item>
     
     <el-form-item label="通量雅可比构造方法" :label-width="formLabelWidth7">
          <el-select         v-model="parameterObj.nmlParam.flux_construction_lhs"  placeholder="请选择">
        <el-option
          v-for="item in qjklist3"
          :key="item.value"
          :label="item.name"
          :value="item.value"
          >
        </el-option>
      </el-select>
    </el-form-item>
       <el-form-item label="MUSCL重构格式" :label-width="formLabelWidth7">
      <el-input v-model="form.name" autocomplete="off"></el-input>
    </el-form-item>
      <el-form-item label="通量限制" :label-width="formLabelWidth7">
          <el-select    v-model="parameterObj.nmlParam.flux_limiter"  placeholder="请选择">
        <el-option
          v-for="item in qjklist2"
          :key="item.value"
          :label="item.name"
          :value="item.value"
          >
        </el-option>
      </el-select>
    </el-form-item>
     
         <el-form-item :label="$t('HCFD.solution.firstOrderNum') " :label-width="formLabelWidth7">
      <el-input    v-model="parameterObj.nmlParam.first_order_iterations" autocomplete="off"></el-input>
    </el-form-item>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="info"  @click="referencevisiable((dialog.fluxrc_visiable = false))"
          > {{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.fluxrc_visiable = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
     
    <!-- 时间格式 -->
    
    <el-dialog
      :visible.sync="dialog.time_visiable"
      class="lg-Solution"
      :close-on-click-modal="false"
      @close='activecleer()'
    v-if="active=='four-1'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
    :style="styX"
    >
    <div slot="title" class=dialog_header>
     <el-image class="imge" :src="q2" fit="cover" />
     <span class="text-color">{{$t('HCFD.solution.timeScheme')}}</span>
  </div>
   <el-form class="lg-form">
       <div class="line">
      <div class="linetext">属性</div>
    </div> 
      <el-form-item label="时间格式" :label-width="formLabelWidth7" style=" text-align: left;">
          <el-select    v-model="parameterObj.nmlParam.time_accuracy"  placeholder="请选择">
        <el-option
          v-for="item in tlist1"
          :key="item.value"
          :label="item.name"
          :value="item.value"
          >
        </el-option>
      </el-select>
    </el-form-item>
        <li class="lheig34 disflex liitem liangf" style="padding:5px 0">
          <span class="formLabelWidth8">{{$t('HCFD.solution.stepping')}}</span>
          <el-radio-group class="inpw35" style="display:flex" v-model="parameterObj.nmlParam.pseudo_time_stepping">
            <el-radio :label="'on'">On</el-radio>
            <el-radio :label="'off'">Off</el-radio>
          </el-radio-group>
        </li>
        <li class="disflex liitem liangf">
          <span  class="formLabelWidth8">{{$t('HCFD.solution.nondim')}}</span>
          <el-input v-model="parameterObj.nmlParam.time_step_nondim"></el-input>
        </li>
        <li class="disflex liitem liangf">
          <span  class="formLabelWidth8">{{$t('HCFD.solution.subiterations')}}</span>
          <el-input v-model="parameterObj.nmlParam.subiterations"></el-input>
        </li>
        <li class="disflex liitem liangf">
          <span  class="formLabelWidth8">{{$t('HCFD.solution.cfl')}}</span>
          <el-input
            v-model="parameterObj.nmlParam.schedule_iteration[0]"
          ></el-input>
          <el-input
            v-model="parameterObj.nmlParam.schedule_iteration[1]"
          ></el-input>
        </li>
        <li class="disflex liitem liangf">
          <span  class="formLabelWidth8">{{$t('HCFD.solution.Schedulecfl')}}</span>
          <el-input v-model="parameterObj.nmlParam.schedule_cfl[0]"></el-input>
          <el-input v-model="parameterObj.nmlParam.schedule_cfl[1]"></el-input>
        </li>
        <li class="disflex liitem liangf">
          <span class="formLabelWidth8">{{$t('HCFD.solution.cflturb')}}</span>
          <el-input
            v-model="parameterObj.nmlParam.schedule_cflturb[0]"
          ></el-input>
          <el-input
            v-model="parameterObj.nmlParam.schedule_cflturb[1]"
          ></el-input>
        </li>
      </el-form>
    
      <div slot="footer" class="dialog-footer">
        <el-button type="info"  @click="referencevisiable((dialog.time_visiable = false))"
          >{{ $t("HCFD.file.cancel")}}  </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.time_visiable = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
        <!-- 边界条件 -->
     <el-dialog
      class="dialog-block"
      :visible.sync="dialog.border_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='three2-1'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="384px"
    :style="styX"
    >
        <div slot="title" class=dialog_header>
     <el-image class="imge" :src="w2" fit="cover" />
     <span class="text-color">{{$t('HCFD.physics.boundary')}}</span>
  </div>
      <el-form >
           <div class="selecr">
                <el-form-item >
            <el-input type="textarea" v-model="form.desc"></el-input>
          </el-form-item>
  
           <el-form-item label=" 边界类型" :label-width="formLabelWidth">
      <el-select 
                  size="mini"
                  @change="boundaryChange"
                  v-model="Physics.Boundary.bquery"
                  placeholder="select boundary"
                >
                  <el-option
                    v-for="hcfdBoundary in parameterObj.hcfdBoundarys"
                    :key="hcfdBoundary.id"
                    :label="hcfdBoundary.name"
                    :value="hcfdBoundary.id"
                  >
                  </el-option>
                </el-select>
        </el-form-item>
            <el-form-item label=" 外流类型" :label-width="formLabelWidth">
                <el-select
                  size="mini"
                  @change="conditionsChange"
                  v-model="Physics.Boundary.cquery"
                  placeholder="select Conditions"
                >
                  <el-option
                    v-for="Condition in Physics.Boundary.Conditions"
                    :key="Condition.conditionsCode"
                    :label="Condition.name"
                    :value="Condition.conditionsCode"
                  >
                  </el-option>
                </el-select>
             </el-form-item>
        <div v-if="Physics.Boundary.bquery=='WING1'">
       <el-form-item label=" 总压比" :label-width="formLabelWidth">
      <el-input v-model="form.name" autocomplete="off"></el-input>
    </el-form-item> 
      <el-form-item label=" 总温比" :label-width="formLabelWidth">
      <el-input v-model="form.name" autocomplete="off"></el-input>
    </el-form-item> 
      <el-form-item label="法向" :label-width="formLabelWidth">
      <el-input v-model="form.name" autocomplete="off"></el-input>
    </el-form-item> 
      <el-form-item label="入流角(Alpha)" :label-width="formLabelWidth">
      <el-input v-model="form.name" autocomplete="off"></el-input>
    </el-form-item> 
      <el-form-item label="入流角(Beta)" :label-width="formLabelWidth">
      <el-input v-model="form.name" autocomplete="off"></el-input>
    </el-form-item> 
      <el-form-item label=" 欧拉角(Theta1)" :label-width="formLabelWidth">
      <el-input v-model="form.name" autocomplete="off"></el-input>
    </el-form-item> 
      <el-form-item label=" 欧拉角(Theta2)" :label-width="formLabelWidth">
      <el-input v-model="form.name" autocomplete="off"></el-input>
    </el-form-item> 
      <el-form-item label="欧拉角(Theta3)" :label-width="formLabelWidth">
      <el-input v-model="form.name" autocomplete="off"></el-input>
    </el-form-item> 
    </div>
            </div>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button
           type="info" 
         @click="dialog.border_visiable = false"
          >{{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.border_visiable = false"
          >{{ $t("HCFD.file.ok")}} </el-button
        >
      </div>
    </el-dialog>
    <!-- 参考条件 -->
    <el-dialog
      class="dialog-block"
      :visible.sync="dialog.reference_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='three1-0'"
    :modal='false'
    custom-class='dialoglocation dialog_color heightclass'
     width="385px"
    height="400px"
    :style="styX"
    >
       <div slot="title" class=dialog_header>
     <el-image class="imge" :src="w5" fit="cover" />
     <span class="text-color">{{$t('HCFD.physics.reference')}}</span>
  </div>
      <el-form  class="groupradio">
         <div class="line">
      <div class="linetext">属性</div>
    </div> 
       <li class="disflex liitem liangf">
                  <span class="formLabelWidth8">{{ $t("HCFD.physics.machNum") }}</span>
                  <el-input
                        class="inpw50"
                        size="mini"
                        v-model="parameterObj.nmlParam.mach_number"
                      ></el-input>
                </li>
                <li class=" liitem liangf">
                  <span class="formLabelWidth8">{{ $t("HCFD.physics.reyNum") }}</span>
                  <el-input
                        class="inpw50"
                        size="mini"
                        v-model="parameterObj.nmlParam.reynolds_number"
                      ></el-input>
                </li>
             
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.temperature") }}</span>
        </li>
        <li class=" liitem liangf">
          <el-radio-group v-model="parameterObj.nmlParam.temperature_units" style=" width: 100%;">
            <el-radio :label="'Kelvin'">{{ $t("HCFD.physics.kelvin") }}</el-radio>
            <el-radio :label="'Rankine'">{{ $t("HCFD.physics.rankine") }}</el-radio>
          </el-radio-group>
          <el-input v-model="parameterObj.nmlParam.temperature"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.attack") }}</span>
          <el-input v-model="parameterObj.nmlParam.angle_of_attack"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.yaw") }} </span>
          <el-input v-model="parameterObj.nmlParam.angle_of_yaw"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.area") }}</span>
          <el-input v-model="parameterObj.nmlParam.area_reference"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.yaxis") }}</span>
          <el-input v-model="parameterObj.nmlParam.x_moment_length"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.zaxis") }}</span>
          <el-input v-model="parameterObj.nmlParam.y_moment_length"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.momentc") }}</span>
                 <el-input v-model="parameterObj.nmlParam.x_moment_center"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.xcoordinate") }}</span>
          <el-input v-model="parameterObj.nmlParam.x_moment_center"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.ycoordinate") }}</span>
          <el-input v-model="parameterObj.nmlParam.y_moment_center"></el-input>
        </li>
        <li class=" liitem liangf">
          <span class="formLabelWidth8">{{ $t("HCFD.physics.zcoordinate") }}</span>
          <el-input v-model="parameterObj.nmlParam.z_moment_center"></el-input>
        </li>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button
           type="info" 
         @click="dialog.reference_visiable = false"
          >{{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.reference_visiable = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
    <!-- 线性方程组求解参数 -->
        <el-dialog
      class="lg-Solution"
      :visible.sync="dialog.xian_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='four2-0'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
    :style="styX"
    >
     <div slot="title" class=dialog_header>
     <el-image class="imge" :src="q3" fit="cover" />
     <span class="text-color">{{$t('HCFD.solution.linearSol')}}</span>
  </div>
      <el-form >
       <li class="disflex  liitem liangf ">
                  <span class="formLabelWidth8">
                    {{ $t("HCFD.solution.meanflow") }}
                  </span>
                  <el-input
                    class="inpw75"
                    size="mini"
                    v-model="parameterObj.nmlParam.meanflow_sweeps"
                  ></el-input>
                </li>
                <li class="disflex  liitem liangf ">
                  <span class="formLabelWidth8">
                    {{ $t("HCFD.solution.turbulence") }}
                  </span>
                  <el-input
                    class="inpw75"
                    size="mini"
                    v-model="parameterObj.nmlParam.turbulence_sweeps"
                  ></el-input>
                </li>
                     <el-form-item :label="$t('HCFD.solution.gcr')" :label-width="formLabelWidth6">
                   <el-radio-group v-model="parameterObj.nmlParam.line_implicit">
                    <el-radio label="off">Off</el-radio>
                    <el-radio label="on">On</el-radio>
                  </el-radio-group>
              </el-form-item>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="info"  @click="referencevisiable((dialog.xian_visiable = false))"
          >{{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.xian_visiable = false"
          >{{ $t("HCFD.file.ok")}} </el-button
        >
      </div>
    </el-dialog>
    <!-- 初始化 -->
     <el-dialog
      class="lg-y-z"
      :visible.sync="dialog.initialization_visiable "
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='four2-1'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
    >
        <div slot="title" class=dialog_header>
     <el-image class="imge" :src="q4" fit="cover" />
     <span class="text-color">{{$t('HCFD.solution.initialization')}}</span>
  </div>
      <el-form>
               <div class="radio_text text_color"  >
             <el-radio-group v-model="initialization" size="mini">
              
                  <el-radio label="freestreams">{{
                    $t("HCFD.solution.freestreams")
                  }}</el-radio>
                  <el-radio label="specified">{{
                    $t("HCFD.solution.specified")
                  }}</el-radio>
                </el-radio-group>
             </div>
             <div  v-if="initialization=='specified'">
              <div class="line">
            <div class="linetext">属性</div>
          </div> 
               <el-form-item label="区域数量" :label-width="formLabelWidth2">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
              <div class="selecr">
            <el-form-item label=" 区域类型" :label-width="formLabelWidth2">
              <el-select  @change="changest" v-model="loadval"  placeholder="请选择">
            <el-option
              v-for="item in loadlist"
              :key="item.value"
              :label="item.name"
              :value="item.value"
              >
            </el-option>
          </el-select>
        </el-form-item>
        <div v-if="loadval=='0'">
            <el-form-item label="顶点1" :label-width="formLabelWidth2">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
              <el-form-item label="顶点2" :label-width="formLabelWidth2">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
        </div>
         <div v-if="loadval=='1'">
            <el-form-item label="球心" :label-width="formLabelWidth2">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
              <el-form-item label="半径" :label-width="formLabelWidth2">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
        </div>
          <div v-if="loadval=='2'">
            <el-form-item label="球心" :label-width="formLabelWidth2">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
              <el-form-item label="端点1" :label-width="formLabelWidth2">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
               <el-form-item label="端点2" :label-width="formLabelWidth2">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
        </div>
           <div v-if="loadval=='2'">
              <el-form-item label="端点1" :label-width="formLabelWidth2">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
            <el-form-item label="半径1" :label-width="formLabelWidth2">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
               <el-form-item label="端点2" :label-width="formLabelWidth2">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
              <el-form-item label="半径2" :label-width="formLabelWidth2">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
        </div>
           </div>  
            <div class="line">
      <div class="linetext">区域变量</div>
    </div>   
      <el-form-item label="无量纲密度" :label-width="formLabelWidth7">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
            <el-form-item label="无量纲声速" :label-width="formLabelWidth7">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
               <el-form-item label="X方向无量纲速度分量" :label-width="formLabelWidth7">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
              <el-form-item label="Y方向无量纲速度分量" :label-width="formLabelWidth7">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
              <el-form-item label="Z方向无量纲速度分量" :label-width="formLabelWidth7">
              <el-input v-model="form.name" autocomplete="off"></el-input>
            </el-form-item>
                   </div>  
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button
           type="info" 
          @click="dialog.initialization_visiable = false"
          >{{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.initialization_visiable  = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
    <!-- 运行控制Run  Control -->
    
    <el-dialog
      :visible.sync="dialog.runc_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='four3-0'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
    >
        <div slot="title" class=dialog_header>
     <el-image class="imge" :src="q5" fit="cover" />
     <span class="text-color">{{$t('HCFD.solution.run')}}</span>
  </div>
      <el-form class="lg-form text_color">
             <el-form-item :label="$t('HCFD.solution.iterNum')" :label-width="formLabelWidth6">
      <el-input   v-model="parameterObj.nmlParam.steps" autocomplete="off"></el-input>
    </el-form-item>
             <el-form-item :label="$t('HCFD.solution.stopToler')" :label-width="formLabelWidth6">
      <el-input       v-model="parameterObj.nmlParam.stopping_tolerance" autocomplete="off"></el-input>
    </el-form-item>
             <el-form-item :label="$t('HCFD.solution.writeFreq')" :label-width="formLabelWidth6">
      <el-input    v-model="parameterObj.nmlParam.restart_write_freq" autocomplete="off"></el-input>
    </el-form-item>
        <el-form-item :label="$t('HCFD.solution.evaluate')" :label-width="formLabelWidth6">
      <el-input       v-model="parameterObj.nmlParam.jacobian_eval_freq" autocomplete="off"></el-input>
    </el-form-item>
        <el-form-item :label="$t('HCFD.solution.Restart')" :label-width="formLabelWidth6">
         <el-radio-group class="inpw35" v-model="parameterObj.nmlParam.restart_read">
            <el-radio label="off">Off</el-radio>
            <el-radio label="on">On</el-radio>
          </el-radio-group>
    </el-form-item>
    <el-button type="info"  @click="hcfdparam()"> 运行</el-button>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="info"  @click="runcvisiable()"> {{ $t("HCFD.file.cancel")}} </el-button>
        <el-button type="primary" @click="Runsolve()"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
    <!-- 物面输出 -->
      <el-dialog
      :visible.sync="dialog.boundaryo_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
      class="Conditions lg-out-h"
       v-if="active=='four3-1'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
    >
       <div slot="title" class=dialog_header>
     <el-image class="imge" :src="q6" fit="cover" />
     <span class="text-color">{{$t('HCFD.solution.bounOut')}}</span>
  </div>
      <el-form>
        <div class="selecr">
    <el-form-item label=" 特征" :label-width="formLabelWidth2">
      <el-select  @change="changest" v-model="objectplaneval"  placeholder="请选择">
    <el-option
      v-for="item in objectplanelist"
      :key="item.value"
      :label="item.name"
      :value="item.value"
      >
    </el-option>
  </el-select>
 </el-form-item>
 </div>
 <el-form-item :label=" $t('HCFD.solution.outputfreq')" :label-width="formLabelWidth2">
      <el-input  v-model="parameterObj.nmlParam.animation_freq" autocomplete="off"></el-input>
    </el-form-item>
   <div class="line">
      <div class="linetext">{{ $t("HCFD.solution.Variables")}}</div>
    </div> 
        <div v-if="objectplaneval=='0'">
        <el-checkbox
          :indeterminate="Solution.boundaryout.isIndeterminate"
          v-model="Solution.boundaryout.checkAll"
          @change="solutionbCheckAllChange"
          >{{ $t("HCFD.solution.all")}}</el-checkbox
        >
          <div  class="displanblock">
           <el-checkbox  
                v-model="parameterObj.nmlParam.a_u">
               {{ $t("HCFD.solution.Xcomponent")}}</el-checkbox>
             <el-checkbox   
                v-model="parameterObj.nmlParam.a_v"
              >{{ $t("HCFD.solution.Ycomponent")}}</el-checkbox>
               <el-checkbox  
                v-model="parameterObj.nmlParam.a_w"
              >{{ $t("HCFD.solution.Zcomponent")}}</el-checkbox>
               <el-checkbox  
                v-model="parameterObj.nmlParam.a_p"
              >{{ $t("HCFD.solution.Press")}}</el-checkbox>
               <el-checkbox   
                v-model="parameterObj.nmlParam.a_cp"
              >{{ $t("HCFD.solution.presscoefficient")}}</el-checkbox>
               <el-checkbox  
                v-model="parameterObj.nmlParam.a_mach"
              >{{ $t("HCFD.solution.mnumber")}}</el-checkbox>
               <el-checkbox  
                v-model="parameterObj.nmlParam.a_vort_mag"
              >{{ $t("HCFD.solution.magnitude")}}</el-checkbox>
                <el-checkbox   
                v-model="parameterObj.nmlParam.a_vort_x "
              >{{ $t("HCFD.solution.Xvorticity")}}</el-checkbox>
                <el-checkbox   
                v-model="parameterObj.nmlParam.a_vort_y"
              >{{ $t("HCFD.solution.Yvorticity")}}</el-checkbox>
                <el-checkbox   
                v-model="parameterObj.nmlParam.a_vort_z "
              >{{ $t("HCFD.solution.Zvorticity")}}</el-checkbox>
                <el-checkbox   
                v-model="parameterObj.nmlParam.a_q_criterion"
              >{{ $t("HCFD.solution.Criterion")}}</el-checkbox>
                </div>
                   </div>
        <div v-else>
        <el-checkbox
          :indeterminate="Solution.volumout.isIndeterminate"
          v-model="Solution.volumout.checkAll"
          @change="solutionvCheckAllChange"
          >{{ $t("HCFD.solution.all")}}</el-checkbox
        >
        <div class="displanblock">
        <el-checkbox  
                v-model="parameterObj.nmlParam.v_u">{{ $t("HCFD.solution.Xcomponent")}}</el-checkbox>
             <el-checkbox   
                v-model="parameterObj.nmlParam.v_v "
              >{{ $t("HCFD.solution.Ycomponent")}}</el-checkbox>
               <el-checkbox  
                v-model="parameterObj.nmlParam.v_w"
              >{{ $t("HCFD.solution.Zcomponent")}}</el-checkbox>
               <el-checkbox  
                v-model="parameterObj.nmlParam.v_p "
              >{{ $t("HCFD.solution.Press")}}</el-checkbox>
               <el-checkbox   
                v-model="parameterObj.nmlParam.v_cp"
              >{{ $t("HCFD.solution.presscoefficient")}}</el-checkbox>
               <el-checkbox  
                v-model="parameterObj.nmlParam.v_mach"
              >{{ $t("HCFD.solution.mnumber")}}</el-checkbox>
               <el-checkbox  
                v-model="parameterObj.nmlParam.v_vort_mag"
              >{{ $t("HCFD.solution.magnitude")}}</el-checkbox>
                <el-checkbox   
                v-model="parameterObj.nmlParam.v_vort_x "
              >{{ $t("HCFD.solution.Xvorticity")}}</el-checkbox>
                <el-checkbox   
                v-model="parameterObj.nmlParam.v_vort_y"
              >{{ $t("HCFD.solution.Yvorticity")}}</el-checkbox>
                <el-checkbox   
                v-model="parameterObj.nmlParam.v_vort_z "
              >{{ $t("HCFD.solution.Zvorticity")}}</el-checkbox>
                <el-checkbox   
                v-model="parameterObj.nmlParam.v_q_criterion"
              >{{ $t("HCFD.solution.Criterion")}}</el-checkbox>
               </div>
        </div>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button
           type="info" 
          @click="referencevisiable(dialog.boundaryo_visiable = false)"
          >{{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="hcfdparam(); dialog.boundaryo_visiable = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>

    <el-dialog
      class="lg-y-z"
      :title="$t('HCFD.solution.specialPara')"
      :visible.sync="dialog.specialp_visiable"
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='four4-0'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
    :style="styX"
    >
      <el-form>
        <el-radio-group v-model="parameterObj.nmlParam.large_angle_fix">
          <el-radio label="off">Off</el-radio>
          <el-radio label="on">On</el-radio>
        </el-radio-group>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button
           type="info" 
          @click="referencevisiable((dialog.specialp_visiable = false))"
          >{{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="dialog.specialp_visiable = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
    <el-dialog
      title="Swap Y-Z Axres"
      :visible.sync="dialog.swap_visiable"
      class="lg-y-z"
      :close-on-click-modal="false"
      @close='activecleer()'
     v-if="active=='four4-1'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
    :style="styX"
    >
      <el-form>
        <el-radio-group v-model="parameterObj.nmlParam.swap_yz_axes">
          <el-radio label="false">Off</el-radio>
          <el-radio label="true">On</el-radio>
        </el-radio-group>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="info"  @click="referencevisiable((dialog.swap_visiable = false))"
          > {{ $t("HCFD.file.cancel")}} </el-button
        >
        <el-button type="primary" @click="dialog.swap_visiable = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
    <!-- 资源选择 -->
     <el-dialog
      :close-on-click-modal="false"
      @close='activecleer()'
      :title="$t('HCFD.solution.Resource')"
      :visible.sync="dialog.ziyuan"
      width="45%"
      class="dialog"
        custom-class='dialog_color'
    >
      <el-form>
        <el-table
    
          :data="ziyprojects"
          border
          :row-key="getRowKeys"
          height="250"
          row-class-name='table-color'
          ref="multipleTable"
          @selection-change="ziySelectionChange"
          @select="ziySelectionSelect"
            size="mini"
          :fit="true"
        > 
          <el-table-column type="selection"  label="选择" :reserve-selection="true"/>
          <el-table-column property="id" label="ID" />
          <el-table-column property="resIp" label="资源内网IP" />
          <el-table-column property="resShortname" label="资源简称" />
        </el-table>
      </el-form>
        <div class="pagination">
      <Pagination
        :pagination-config="paginationConfig"
        @putPagination="getPagination"
      ></Pagination>
    </div>
      <div slot="footer" class="dialog-footer">
        <el-button type="info"  @click="dialog.ziyuan = false"> {{ $t("HCFD.file.cancel")}} </el-button>
        <el-button type="primary"  @click='resourceOK()'>{{ $t("HCFD.file.ok")}} </el-button>
      </div>
    </el-dialog>
    <!-- 求解表面 -->
     <el-dialog
      :visible.sync="dialog.SurfaceGrid_visiable"
      class="lg-y-z"
      :close-on-click-modal="false"
      :modal-append-to-body="false"
       :append-to-body="false"
      @close='activecleer()'
        v-if="active=='five-0'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
    >
        <div slot="title" class=dialog_header>
     <el-image class="imge" :src="j1" fit="cover" />
     <span class="text-color">{{$t('HCFD.results.Surfacegrid')}}</span>
  </div>

                <div class="flexpad30">
                  <div class="selecr">
                      <el-form>
                      <el-form-item :label="$t('HCFD.results.steps') " :label-width="formLabelWidth2">
                      <el-select  size="mini" v-model="bStep" @change="bStepChange" placeholder="请选择">
                  <el-option
                          v-for="setep in boundaryStep"
                          :key="setep"
                          :label="setep"
                          :value="setep"
                        >
                        </el-option>
                  </el-select>
                </el-form-item>
                          <el-form-item :label=" $t('HCFD.results.scalar') " :label-width="formLabelWidth2">
                          <el-select size="mini" v-model="bScalar" placeholder="请选择">
                          <el-option
                            v-for="scalar in boundaryScalars"
                            :key="scalar"
                            :label="scalar"
                            :value="scalar"
                          >
                          </el-option>
                        </el-select>
                    </el-form-item> 
                  <div>
                       <el-form-item :label=" $t('HCFD.results.contour')" :label-width="formLabelWidth2">
                         <el-input-number v-model="Surfacenum" @change="SurfaceChange" :min="1" :max="10" label="描述文字"></el-input-number>
                    </el-form-item>
                    <li class="disflex lheig34 liitem">
                      <span class="span100 marb5 formLabelWidth15">{{ $t("HCFD.results.vector")}} </span>
                      <el-checkbox checked>Velocity</el-checkbox>
                    </li>
                    <li class="disflex lheig34 liitem">
                      <span class='span100 marb5 formLabelWidth15' >{{ $t("HCFD.results.show")}} </span>
                      <el-checkbox-group v-model="belementCheckeds" style="display:flex">
                        <el-checkbox label="Mesh"  @change="Contourval('Mesh')"
                        ></el-checkbox>
                        <el-checkbox label="Contour"    @change="Contourval('Contour')"
                        ></el-checkbox>
                      </el-checkbox-group>
                    </li>
                  </div>
                      <el-button
                        size="mini"
                        type="primary"
                        style="margin:30px 0 30px 40%"
                        @click="boundaryShow()"

                        > {{ $t("HCFD.results.Surface")}} </el-button>
        >
      </el-form>
      </div>
          </div>
      <div slot="footer" class="dialog-footer">
        <el-button type="info"  @click="referencevisiable((dialog.SurfaceGrid_visiable = false))"
          >{{ $t("HCFD.file.cancel")}}  </el-button
        >
        <el-button type="primary" @click="dialog.SurfaceGrid_visiable = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
    <el-dialog
      :visible.sync="dialog.VolumeGrid_visiable"
      class="lg-y-z"
      :close-on-click-modal="false"
      @close='activecleer()'
    v-if="active=='five-1'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
    >
   <div slot="title" class=dialog_header>
     <el-image class="imge" :src="j2" fit="cover" />
     <span class="text-color">{{$t('HCFD.results.volume')}}</span>
  </div>
  <div class="selecr">
      <el-form>
                       <el-form-item :label="$t('HCFD.results.steps') " :label-width="formLabelWidth2">
                    <el-select size="mini" v-model="vStep"  @change="vStepChange" placeholder="请选择">
                           <el-option
                          label="请选择"
                          :value="0"
                        >
                        </el-option>
                        <el-option
                          v-for="setep in volumStep"
                          :key="setep"
                          :label="setep"
                          :value="setep"
                        >
                        </el-option>
                      </el-select>
                </el-form-item>
                  <el-form-item :label="$t('HCFD.results.scalar') " :label-width="formLabelWidth2">
                             <el-select size="mini" v-model="vSalar" placeholder="请选择">
                          <el-option
                            v-for="scalar in volumScalars"
                            :key="scalar"
                            :label="scalar"
                            :value="scalar"
                          >
                          </el-option>
                        </el-select>
                </el-form-item>
                
                  <div>
                    <li class="disflex lheig34 liitem">
                      <span class="span100 marb5 formLabelWidth15">{{ $t("HCFD.results.vector")}} </span>
                      <el-checkbox checked>Velocity</el-checkbox>
                    </li>
                         <el-form-item :label=" $t('HCFD.results.contour')" :label-width="formLabelWidth2">
                       <el-input-number v-model="Volumenum" @change="VolumenumChange" :min="1" :max="10" label="描述文字"></el-input-number>
                    </el-form-item>
                    <li class="disflex lheig34 liitem">
                      <span class="span100 marb5 formLabelWidth15">{{ $t("HCFD.results.show")}}</span>
                      <el-checkbox-group v-model="velementCheckeds" style="display:flex">
                        <el-checkbox
                          label="Mesh"
                          @change="ContourvalVolume('Mesh')"
                        ></el-checkbox>
                        <el-checkbox
                          label="Contour"
                          @change="ContourvalVolume('Contour')"
                        ></el-checkbox>
                      </el-checkbox-group>
                    </li>

                  </div>
              
                  <el-button
                     type="primary"
                    size="mini"
                   style="margin:30px 0 30px 40%"
                    @click="showVolume()"
                    >{{ $t("HCFD.results.ShowVolume")}}</el-button
                  >
      </el-form>
      </div>
      <div slot="footer" class="dialog-footer">
        <el-button type="info"  @click="referencevisiable((dialog.VolumeGrid_visiable = false))"
          >{{ $t("HCFD.file.cancel")}}</el-button
        >
        <el-button type="primary" @click="dialog.VolumeGrid_visiable = false"
          >{{ $t("HCFD.file.ok")}}</el-button
        >
      </div>
    </el-dialog>
     <!-- 单位计算开始 -->
       <el-dialog  :visible.sync="visiable" 
     v-if="active=='six-0'"
    :modal='false'
    :close-on-click-modal="false"
    @close='activecleer()'
    custom-class='dialoglocation dialog_color'
     width="385px"
     :style="styX"
       >
            <div slot="title" class=dialog_header>
     <el-image class="imge" :src="d1" fit="cover" />
     <span class="text-color">单位换算</span>
  </div>
  <el-form :model="form1">
    <el-form-item label="kelvin"  :label-width="formLabelWidth1">
      <el-input v-model="form1.kelvins" type="number" autocomplete="off"></el-input>
        
    </el-form-item>
     <el-form-item label="℃"  :label-width="formLabelWidth1">
      <el-input v-model="form1.ssd" type="number" autocomplete="off"></el-input>
        </el-form-item>
      <div>
          <el-button @click="dialogbtnkew" style="margin:10px 0 0 65px" size="mini">摄氏度</el-button>
            <el-button @click="dialogbtnssd" size="mini">开尔文</el-button>
            </div>
  
  </el-form>
  
</el-dialog>
    <!-- Y+ Calculator -->
    <el-dialog
      :visible.sync="Yvisiable"
      :close-on-click-modal="false"
      @close='activecleer()'
       v-if="active=='six-1'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
       :style="styX"
    >
              <div slot="title" class=dialog_header>
     <el-image class="imge" :src="d2" fit="cover" />
     <span class="text-color">Y+值计算</span>
  </div>
      <el-form :model="form" class="gongju">
        <!-- Freestream velocity流速度U∞ -->
        <el-form-item label="自由流速度U∞(m/s):" :label-width="formLabelWidth3">
          <el-input v-model="form.u_freestream" autocomplete="off"></el-input>
        </el-form-item>
        <!--Density 自由氣流密度ρ  -->
        <el-form-item label="自由氣流密度ρ(kg/m^3):" :label-width="formLabelWidth3">
          <el-input v-model="form.rho" autocomplete="off"></el-input>
        </el-form-item>

        <!-- Characteristic length 特征长度L-->
        <el-form-item label="特征长度L:(m):" :label-width="formLabelWidth3">
          <el-input
            v-model="form.L"
            type="number"
            autocomplete="off"
          ></el-input>
        </el-form-item>

        <!-- Dynamic viscosity表流运动粘贴系数μ: -->
        <el-form-item label="表流运动粘贴系数μ(Pa·s):" :label-width="formLabelWidth3"> 
          <el-input v-model="form.mu" autocomplete="off"></el-input>
        </el-form-item>
        <!-- Desired Y+ value: -->
        <el-form-item label="Y+:" :label-width="formLabelWidth3">
          <el-input
            v-model="form.y_plus_desired"
            type="number"
            autocomplete="off"
          ></el-input>
        </el-form-item>
        <!-- Reynolds number -->
        <h3 class="Rex">雷诺数:&nbsp;&nbsp;&nbsp;&nbsp;{{ form.Rex }}</h3>
        <!-- Estimated wall distance: -->
        <h3 class="Rex">估计墙距:&nbsp;&nbsp;&nbsp;&nbsp;{{ form.dtc }}</h3>
        <el-form-item style="margin-left: 0">
          <!-- <el-input v-model="form.lys" type="number" autocomplete="off"></el-input> -->
          
            <el-button type="primary" @click="dialogbtny" style="margin:0 0 0 55px">计算</el-button>
        </el-form-item>
      </el-form>
    </el-dialog>
    <!-- r雷诺数计算 -->
    <el-dialog
      :visible.sync="llsvisiable"
      :close-on-click-modal="false"
          v-if="active=='six-2'"
    :modal='false'
    custom-class='dialoglocation dialog_color'
     width="385px"
       :style="styX"
    >
           <div slot="title" class=dialog_header>
     <el-image class="imge" :src="d3" fit="cover" />
     <span class="text-color">雷诺数计算</span>
  </div>
      <el-form :model="form" class="leiluoshu">
        <el-form-item label="流速v(m/s):"  :label-width="formLabelWidth3">
          <el-input v-model="form.lls" autocomplete="off" ></el-input>
        </el-form-item>
        <el-form-item label="密度ρ(kg/m^3)"  :label-width="formLabelWidth3">
          <el-input v-model="form.lmi" autocomplete="off"></el-input>
        </el-form-item>
        <el-form-item label="动力黏性系数η(Pa·s)"  :label-width="formLabelWidth3">
          <el-input v-model="form.ldlzxxs" autocomplete="off"></el-input>
        </el-form-item>
        <el-form-item label="特征长度(内径)d(m):"  :label-width="formLabelWidth3">
          <el-input v-model="form.lld" autocomplete="off"></el-input>
        </el-form-item>
        <el-form-item label="">
          <!-- <el-input v-model="form.lys" type="number" autocomplete="off"></el-input> -->
          <h3 class="Rex">雷诺数Re:{{ form.Re }}</h3>
          <el-button type="primary" style="margin:0 0 0 60px" @click="leinsdialogbtny">计算</el-button>
        </el-form-item>
      </el-form>
    </el-dialog>
    <!-- 组件 -->
    <filesload
      ref="filesload"
      :fileurls="fileurls"
      @fileLoadeState="fileLoadeState($event)"
    ></filesload>
    <loading ref="loading" :loadObjs="loadObjs"></loading>
    <!-- <hcfd-Calculator ref="Calculator"></hcfd-Calculator> -->
  </div>
</template>
<script>






// 引入组件
import geometry from '../geometry/index.vue'
import meshindex from '../meshindex/index.vue'
import t1 from '@/assets/icon/u9588.png'
import t2 from '@/assets/icon/u9616.png'
import t3 from '@/assets/icon/u9637.png'
import t4 from '@/assets/icon/u212.png'
import t5 from '@/assets/icon/u3284.png'
import w1 from '@/assets/icon/u3250.png'
import w2 from '@/assets/icon/u9700.png'
import w3 from '@/assets/icon/u9872.png'
import w4 from '@/assets/icon/u3877.png'
import w5 from '@/assets/icon/u9823.png'
import w6 from '@/assets/icon/u3742.png'
import d1 from '@/assets/icon/u10148.png'
import d2 from '@/assets/icon/u10152.png'
import d3 from '@/assets/icon/u10156.png'
import d4 from '@/assets/icon/u10160.png'
import j1 from '@/assets/icon/u10140.png'
import j2 from '@/assets/icon/u10144.png'
import q1 from '@/assets/icon/u9681.png'
import q2 from '@/assets/icon/u10115.png'
import q3 from '@/assets/icon/u9987.png'
import q4 from '@/assets/icon/u3868.png'
import q5 from '@/assets/icon/u10048.png'
import q6 from '@/assets/icon/u10068.png'

import adilog from "@/assets/hcfd_images/adilog.png";
import Pagination from '@/components/Pagination'
import { Message, MessageBox } from "element-ui";
import store from "@/store";
import UgridLoad from "./loads/UgridLoad.vue";
import VolumLoad from "./loads/VolumLoad.vue";
import { request, uploadFile } from "@/utils/request";
import vueUploader from "./fileupload.vue";
import filesload from "./filesload.vue";
import { Caegw_ProUrl } from "@/settings"; // 引入settings.js
import loading from "./loading.vue";
import transformtool from "./loads/transformtool.vue";
import echartsHFCD from "./echartsHFCD.vue";
import TFileStream from "./TFileStream.vue";

export default {
    components:{geometry,meshindex,  vueUploader,
    filesload,
    loading,
    UgridLoad,
    VolumLoad,
    transformtool,
    Pagination,
    // vtkLoad,
    echartsHFCD,
    TFileStream,},
    // websocket,},
    props:{
      objopp:String,
      pid:String,
      femnum:String,
      elodingfalse:{
          type:Boolean,
          default(){
            return false
          }
        }
    },

  data() {
    return {
      checked:false,
      solverConfigid:'',
      mcnames:'apply1',
         formLabelWidth: '60px',
        formLabelWidth2:'73px',
        formLabelWidth4:'37px',
        formLabelWidth5:'100px',
         formLabelWidth6:'120px',
         formLabelWidth7:'170px',
      switchvalue: '1',
      styX:{
        left:''
      },
          t1,
        t2,
        t3,
        t4,
        t5,
        w1,
        w2,
        w3,
        w4,
        w5,
        w6,
         d1,
        d2,
        d3,
       d4,
       j1,
       j2,
       q1,
       q2,
       q3,
       q4,
       q5,
       q6,
      visibles:false,
      restime:'',
      numzhexian:'',
      newlog:'',
      luobj:{
        projectName:'',
        projectId:'',
        projectDesc:'',
      },
        // current:0,
        lsolverState:"2",
        footerShow:true,
        bMesh:0,
        bContour:1,
           vMesh:0,
        vContour:1,
        name:"New",
      xiugai:{},
        Surfacenum: 3,
        Volumenum:3,
        clearobj:{
         projectId:'',
         fileType:'',
        step:Number
        },
        servertype:'ugrid',
        tstep:Number,
        wstep:'0',
        step:'0',
        srsurl:'ugrid',
        footerval:'on',
        top:'50px',
        formLabelWidth1:'70px',
        formLabelWidth3:'180px',
         visiable:false,
        dialogFormVisible: false,
        form1: {
          ssd: '',
          kelvins:'',
          delivery: false,
          type: [],
          resource: '',
          desc: ''
        },
        sum:"",
        formLabelWidth: '120px',
   adilog: adilog,
      activeName: 'one',
        tabPosition: 'bottom',
        showtrue:true,
           drawer: true,
        direction: 'rtl',
         twolist:[
            { icon:t1, titlie:'缩放'},
            {icon:t2, titlie:'平移'},  
            {icon:t3, titlie:'旋转'}, 
            {icon:t4, titlie:'分析类型'},  
            {icon:t5, titlie:'并行类型'}, 
        ],
        physicslist:[
            { icon:w1, titlie:'控制方程'},
        ],
        physicslist2:[
            { icon:w2, titlie:'粘性模型'},
            // {icon:"icon-d-glassware", titlie:'层流'},  
            // {icon:"icon-xunhuanbofang", titlie:'湍流'}, 
            { icon:w3, titlie:'边界条件'},
            {icon:w4, titlie:'运动网格'},
        ],
          physicslist1:[
 
            { icon:w5, titlie:'参考条件'}, 
            { icon:w6, titlie:'非惯性参考系'} 
        ],
        solutionlist:[
            { icon:q1, titlie:'无粘通量方法'},
             { icon:q2, titlie:'时间推进格式'},
        ],
         solutionlist2:[
            { icon:q3, titlie:'线性方程组求解参数'},
             { icon:q4, titlie:'初始化'},
        ],
        solutionlist3:[
            { icon:q5, titlie:'运行控制'},
            { icon:q6, titlie:'输出控制'},
        ],
         solutionlist4:[
            { icon:"icon-xitongcanshupeizhi", titlie:'Advanced Option_特殊的参数'},
            { icon:"icon-icon", titlie:'Advanced Option_Swap Y-Z Axres'},
            { icon:"icon-yunhang", titlie:'运行'},
            { icon:"icon-quxiantu", titlie:'Monitor'},
            { icon:"icon-tuxingtuxiangchuli", titlie:'资源选择'},
        ],
        resultslist:[
          //  { icon:"icon-cankaowenjian", titlie:'下载求解结果'},
            { icon:j1, titlie:'物面数据'},
            { icon:j2, titlie:'流场数据'},
        ],
        unitlist:[
            { icon:d1, titlie:'单位换算'},
            { icon:d2, titlie:'Y+计算器'},
            { icon:d3, titlie:'雷诺数计算'},
        ],
        selectlist1:[
             {value:'inviscid',name:'无粘'},
            {value:'laminar',name:'层流'},
            {value:'turbulent',name:'湍流'},
          ],
          selectlist2:[
             {value:'sa',name:'SA'},
            {value:'k-omega-sst',name:'Menter-SST'},
            {value:'sa-des',name:'SA-DES'},
            {value:'k-omega-des',name:'k-omega-DES'},
            {value:'linear-k-epsilon',name:'Linear-k-epsilon'},
            {value:'abid-k-epsilon',name:'Abid-k-epsilon'},
            {value:'menter-sst-les',name:'Menter-SST-LES'},
            {value:'Wilcox-les',name:'Wilcox-LES'},
          ],
          qjklist:[
              {value:'roe',name:'Roe'},
            {value:'vanleer',name:'vanleer'},
            {value:'hllc',name:'HLLC'},
            {value:'aufs',name:'AUFS'},
            {value:'central_diss',name:'Central_Diss'},
            {value:'dlfss',name:'LDFSS'},
            {value:'stvd',name:'STVD'},
            {value:'stvd_modified',name:'STVD_modified'},
          ],
          qjklist2:[
              {value:'none',name:'none'},
            {value:'barth',name:'barth'},
            {value:'venkat',name:'venkat'},
            {value:'minmod',name:'minmod'},
            {value:'vanleer',name:'vanleer'},
            {value:'vanalbada',name:'vanalbada'},
            {value:'smooth',name:'smooth'},
            {value:'hminmod',name:'hminmod'},
            {value:'hvanleer',name:'hvanleer'},
            {value:'hvanalbada',name:'hvanalbada'},
            {value:'hsmooth',name:'hsmooth'},
            {value:'hvenkat',name:'hvenkat'},
          ],
           qjklist3:[
              {value:'roe',name:'Roe'},
            {value:'central_difference',name:'Central_Difference'},
            {value:'hllc',name:'HLLC'},
            {value:'aufs',name:'AUFS'},
            {value:'dlfss',name:'LDFSS'},
          ],
          ydlist:[
             {value:'0',name:'刚体'},
            {value:'1',name:'变形'},
          ],
          tlist1:[
            {value:'steady',name:"定常"},
            {value:'1storder',name:'1阶差分'},
            {value:'2ndorder',name:'2阶差分'},
            {value:'2ndorderOPT',name:'最优2阶差分'},
            {value:'3rdorder',name:'4阶差分'},
            {value:'4thorderMEBDF4',name:'4阶差分'},
            {value:'4thorderESDIRK4',name:'4阶差分'},
          ],
          ydval:'0',
             ydlist2:[
             {value:'0',name:'平动'},
            {value:'1',name:'转动'},
          ],
          ydval2:'0',
            ydlist3:[
             {value:'0',name:'匀速'},
            {value:'1',name:'正弦'},
          ],
          ydval3:'0',
           ydlist4:[
             {value:'0',name:'随体运动'},
            {value:'1',name:'空间固定'},
          ],
          ydval4:'0',
          loadlist:[
            {value:'0',name:'盒子'},
            {value:'1',name:'球'},
            {value:'2',name:'圆柱'},
            {value:'4',name:'圆锥'},
          ],
          loadval:'0',
          objectplanelist:[
             {value:'0',name:' 物面输出'},
            {value:'1',name:'流场输出'},
          ],
           objectplaneval:'0',
           active:'',
          //大对象
          ziyprojects:[],
      paginationConfig: {
        hideSinglePage: false,
        page: 1,
        size: 15,
        sizeList: [10, 15, 30, 50],
        layout: 'total, sizes, prev, pager, next, jumper',
        total: 0,
      },
      getRowKeys(row) {
            return row.id;
        },
      selsectid:[],
      missType:true,
      initialization: "freestreams",
      upVisible: false,
      Yvisiable: false,
      llsvisiable: false,
      newload: true,
      runMonitor: true,
      contourLevel: 3,

      form: {
        u_freestream: "",
        rho: "",
        L: "",
        mu: "",
        y_plus_desired: "",

        dtc: "",
        md: "",
        ls: "",
        cd: "",
        Rex: "",
        Re: "",
        lys: "",
        lmi: "",
        ldlzxxs: "",
        lld: "",
        Re: "",
        dtc: "",
        lls: "",
      },
      uploadlist: [
        {
          name: "mapbc",
          percentage: 0,
        },
        {
          name: "ugrid",
          percentage: 0,
        },
      ],
      ContourSurface: false,
      adilog: adilog,
      loading: loading,
      headMenu_2Show: false,
      leftMenu_2Show: false,
      gennealShow: false,
      physicsShow: false,
      solutionShow: false,
      resultShow: false,
      Consoleshow: true,
      openshow:false,
      TaskGenealshow: false,
      TaskPhysicsshow: false,
      TaskSolutionshow: false,
      TaskSurfaceshow: false,
      TaskVolumeshow: false,
      ugridUrl: "",
      bload: null,
      websock: null,
      logs: "欢迎来到HCFD",
      islogload: true, //控制log请求（ture 发起 false 不发起）
      outline: "OutLine",
      fileNames: [],

      belementCheckeds: ["Contour"],
      boundaryStep: [],
      bStep: 0,
      boundaryScalars: [],
      bScalar: "cp",

      velementCheckeds: ["Contour"],
      vStep: 0,
      volumStep: [],
      volumScalars: [],
      vSalar: "p",

      isSolverEnd: false, //判断是否求解完成
      solverState: "0", //求解状态（0-未求解 1-求解中 2-求解完成）

      menuList: [
        {
          id: "1",
          label: "Setup",
          children: [
            {
              id: "2",
              label: "General",
            },
            {
              id: "3",
              label: "Physics",
            },
            {
              id: "4",
              label: "Solution",
            },
          ],
        },
        {
          id: "5",
          label: "Results",
          children: [
            {
              id: "6",
              label: "Monitor",
            },
            {
              id: "7",
              label: "Surface Grid",
            },
            {
              id: "8",
              label: "Volume Grid",
            },
            {
              id: "9",
              label: "Ugrid",
            },
          ],
        },
      ],

      dialog: {
        //弹出框 控制
        new_visiable: false,
        load_visiable: false,
        ziyuan:false,
        upload_visiable: false,
        scale_visiable: false,
        translation_visiable: false,
        rotation_visiable: false,
        type_visiable:false, 
         parallel_visiable:false, 
       equation_visiable:false,
       inviscid_visiable:false,
        laminar_visiable: false,
        turbulent_visiable: false,
        dynamic_visiable:false,
        nonitertial_visiable:false,
        border_visiable:false,
        reference_visiable: false,
        fluxrc_visiable: false,
        time_visiable: false,
        timeasm_visiable: false,
        xian_visiable:false,
        initialization_visiable:false,
        specified_visiable: false, //未完成
        runc_visiable: false,
        boundaryo_visiable: false,
        volumeo_visiable: false,
        specialp_visiable: false,
        swap_visiable: false,
        SurfaceGrid_visiable:false,
        VolumeGrid_visiable:false,
      },
      geneal: {
        //数据存储
        MeshTransform: {
          Scale: {
            Factor: 0,
          },
          Translation: {
            Distance: 0,
            X: 1,
            Y: 0,
            Z: 0,
          },
          Rotation: {
            Angle: 0,
            X: 0,
            Y: 0,
            Z: 0,
            X1: 1,
            Y1: 0,
            Z1: 0,
          },
        },
      },
      Physics: {
        Turbulent: {
          TurbulentPrandtlNumber: 0.9,
        },
        Boundary: {
          bquery: null, //hcfdBoundary 选中数据 id
          hcfdBoundaryquery: null, //hcfdBoundary 选中数据
          cquery: null,
          /* 黎曼远场边界(Farfield) 5000
           * 自由来流边界（Freestream）5050
           * 无粘壁面(Inviscous Wall) 3000
           * 粘性壁面（Viscous Wall）4000
           * X-对称平面(X-symmetry Plane)6661
           * Y-对称平面(Y-symmetry Plane ) 6662
           * Z-对称平面Z-symmetry Plane) 6663
           * 周期边界(Periodic) 6100*/
          Conditions: [
            { conditionsCode: 5000, name: "Farfield" },
            { conditionsCode: 5050, name: "Freestream" },
            { conditionsCode: 3000, name: "Inviscous Wall" },
            { conditionsCode: 4000, name: "Viscous Wall" },
            { conditionsCode: 6661, name: "X-symmetry Plane" },
            { conditionsCode: 6662, name: "Y-symmetry Plane" },
            { conditionsCode: 6663, name: "Z-symmetry Plane" },
            { conditionsCode: 6100, name: "Periodic" },
          ],
        },
      },
      Solution: {
        boundaryout: {
          checkAll: false,
          checkeds: [],
          lists: [
            "X-component of velocity",
            "Y-component of velocity",
            "Z-component of velocity",
            "Press",
            "Press coefficient",
            "Mach Number",
            "Vorticity magnitude",
            "X-component of vorticity",
            "Y-component of vorticity",
            "Z-component of vorticity",
            "Q Criterion",
          ],
          isIndeterminate: true,
        },
        volumout: {
          checkAll: false,
          checkeds: [],
          lists: [
            "X-component of velocity",
            "Y-component of velocity",
            "Z-component of velocity",
            "Press",
            "Press coefficient",
            "Mach Number",
            "Vorticity magnitude",
            "X-component of vorticity",
            "Y-component of vorticity",
            "Z-component of vorticity",
            "Q Criterion",
          ],
          isIndeterminate: true,
        },
      },
      //state -1,0 ,1
      //message
      //type 1 一般 2 下载
      loadObjs: [],
      loadVVisiable: false,
      loading: false,
      fileurls: [],
      project: {
        projectId: "",
        lesseeId:'',
        projectName: "",
        projectType: "hcfd",
        projectDesc: "",
        fileType: "ascii",
        solverfiles: [],
        solverVolumUrls: [],
        solverBoundaryUrls: [],
        loadfils: [],
        converge: "",
        uid: "",
      },
      projects: [],
      parameterObjclone: [],
      parameterObj: {
        hcfdBoundarys: [
          {
            name: "WING1",
            id: 1,
            conditionsCode: 3000,
          },
        ],
        nmlParam: {
          a_vort_mag: "false",
          case_title: "case_name",
          angle_of_yaw: 0,
          x_moment_center: 0,
          eqn_type: "cal_perf_incompress",
          schedule_cfl: [0, 0],
          swap_yz_axes: "false",
          v_vort_mag: "false",
          pseudo_time_stepping: "on",
          meanflow_sweeps: 15,
          a_p: "true",
          a_u: true,
          a_w: "true",
          a_v: "true",
          dynamic_Mesh: "off",
          jacobian_eval_freq: 10,
          turb_model: "menter-sst",
          grid_format: "aflr3",
          turbulence_sweeps: 10,
          mach_number: 0.5,
          y_moment_length: 1,
          area_reference: 1,
          flux_limiter: "none",
          a_cp: "true",
          viscous_terms: "turbulent",
          volume_animation_freq: 100,
          steps: 1500,
          flux_construction_lhs: "roe",
          stopping_tolerance: 2.0e-1,
          prandtlnumber_molecular: 0.72,
          restart_write_freq: 250,
          v_vort_x: "false",
          schedule_iteration: [1, 50],
          v_vort_y: "false",
          v_vort_z: "false",
          line_implicit: "off",
          temperature_units: "Rankine",
          number_of_Processors: 2,
          x_moment_length: 1,
          time_accuracy: "steady",
          angle_of_attack: 0,
          subiterations: 0,
          artificial_compress: 15,
          a_q_criterion: "false",
          schedule_cflturb: [50, 50],
          schedule: 1,
          first_order_iterations: 0,
          restart_read: "off",
          temperature: 490,
          input_version: 2.2,
          namelist_verbosity: "off",
          ignore_euler_number: "false",
          data_format: "ascii",
          v_cp: "true",
          time_step_nondim: 0,
          a_mach: "true",
          large_angle_fix: "off",
          v_p: "true",
          animation_freq: 100,
          v_mach: "true",
          project_rootname: "tf",
          v_v: "true",
          v_q_criterion: "false",
          v_u: "true",
          y_moment_center: 0,
          v_w: true,
          z_moment_center: 0,
          parallel_Optional: "Serial",
          analysis_Type: "Steady",
          noninertial_Reference_Frame: "off",
          flux_construction: "roe",
          a_vort_z: "false",
          a_vort_y: "false",
          a_vort_x: "false",
          reynolds_number: 1000000,
        },
      },

      renderer_hight: 500,
      renderer_width: 500,
      showUgridflag: false, //ugrid 是否显示过
      showSurfaceflag: false, //surface 是否显示过
      showVolumeflage: false, //Volume 是否显示过
      showMonitorflage: false, //Monitor是否显示过
    };
},

   created(){
   },
 mounted() {

     this.init();
  },    

  //  destroyed() {
  //     this.websock.close() //离开路由之后断开websocket连接
  //   },
methods:{
  //数据加载参数配置obj
    hcfdchange(obj,solverConfigid){
       this.parameterObj = JSON.parse(obj);
      sessionStorage.setItem("res", obj);
      this.solverConfigid=solverConfigid;
    },
//更新参数配置
hcfdparam(){
  const params = {
        transCode: 'C00004',
        solverConfigid: this.solverConfigid,
        parameterObj: JSON.stringify(this.parameterObj),
        }
        request(params)
          .then((res) => { 
          this.$parent.solverchange(this.femnum);
         })
          .catch((err) => {
          })
},
// 新版求解控制
        Runsolve(){
          this.hcfdparam();
          this.dialog.runc_visiable = false;
          //  this.hcfdExe();
          this.hcfdrun();

        },
        hcfdExe(){
  var _this = this;
      let params = {
        transCode: "C00005",
        solverConfigId:this.solverConfigid,
      };
      request(params)
        .then((res) => {
        Message({
                  type: "success",
                  message:res.returnMsg,
                });
           
        })
        .catch((err) => {
          setTimeout(function () {
            _this.$refs.loading.visiable = false;
          }, 4000);

          if (err.returnCode == "EB8100017") {
         
            MessageBox.confirm("你还未分配资源?", "提示", {
              confirmButtonText: "分配资源",
              cancelButtonText: "取消",
              type: "warning",
            })
              .then(() => {
                let errUril =
                
                  _this.$store.getters.proUrl +
                  "?projectId=" +
                  _this.project.projectId;
                let params2 = {
                  transCode: "A00118",
                  lesseeId: _this.$store.getters.lesseeId
                };
                request(params2)
                  .then((res) => {
                    window.location.href =
                      errUril + "&authCode=" + res.authCode;
                  })
                  .catch((err) => {});
              })
              .catch(() => {
                _this.$refs.loading.visiable = false;
                Message({
                  type: "info",
                  message: "已取消",
                });
              });
          }
        });
        },
         /**
     * 更新配置 并求解
     */
    async hcfdrun() {
      if (this.solverState == "2") {
        //上次求解完成
        MessageBox.confirm(
          "已完成计算，是否放弃上次计算结果，重新计算? 如果不放弃请自行下载上次结果文件！",
          "提示",
          {
            confirmButtonText: "重新计算",
            cancelButtonText: "取消",
            type: "warning",
          }
        )
          .then(() => {
            MessageBox.close();
             this.$emit("exlodingfalse",true)
            this.isSolverEnd = false;
            this.hcfdExe();
            let _this = this;
            let isStop = false;
              // if (!isStop && !_this.isSolverEnd) {
              this.$parent.fun();
              // }
       
          })
          .catch(() => {
            Message.info("已取消！");
            MessageBox.close();
        this.$emit("exlodingfalse",false)
          });
      } else {
          this.$emit("exlodingfalse",true)
        this.isSolverEnd = false;
        this.hcfdExe();
        let _this = this;
        let isStop = false;
          // if (!isStop && !_this.isSolverEnd) {
            isStop = true;
             this.$parent.fun();
          // }
      }
    },
    // 求解的日志
  getlog(){
   let params = {
            transCode: "C00006",
            pid:this.project.projectId,
       
          };
          request(params)
            .then((res) => {
              let rows = res.rows;
              console.log(rows);
         
            })
            .catch((err) => {
        
            });
  },
   handleClick(tab, event) {
  //   if(this.activeName=='five'){
  //     let params = {
  //       transCode: "A00107",
  //       projectId: this.project.projectId,
  //     };
  //      request(params)
  //       .then((res) => {
  //           this.lsolverState=res.solverState;
  //       } )
  //         if(this.lsolverState=='2'){
  //            // this.resultdata();
  //         }else{
  //       Message({
  //                   type: "warning",
  //                   message: "求解未完成,请完成求解",
  //                 });
  //         }
  //   }else{

  //   }
  //  this.activecleer();
        },
        activecleer(){
          this.active=11;
        },
 //模块选择
  clickgeometry(e,index,key){
var e=e||window.Event
this.styX.left=e.clientX+'px';
    this.active=key;
   console.log(key);
  switch(key){
    case 'info1-0':
      this.name="New"
      this.clickNew();
      break;
    case 'info1-1':
      this.loadProjects();
      break; 
        case 'info1-2':
           this.name="amend"
          this.clickNew();
      break; 
     case 'two-0':
       this.dialog.scale_visiable = true;
       break; 
       case 'two-1':
       this.dialog.translation_visiable= true;
       break; 
      case 'two-2':
       this.dialog.rotation_visiable= true;
        case 'two-3':
       this.dialog.type_visiable= true;
       break; 
      case 'two-4':
       this.dialog.parallel_visiable= true;
       break; 
       case 'three-0':
       this.dialog.equation_visiable= true;
       break; 
       case 'three2-0':
       this.dialog.inviscid_visiable= true;
        break; 
        case 'three2-1':
       this.dialog.border_visiable= true;
       break;
         case 'three2-2':
       this.dialog.dynamic_visiable= true;
       break;
         case 'three1-0':
       this.dialog.reference_visiable = true;
       break; 
         case 'three1-1':
       this.dialog.nonitertial_visiable = true;
      break;
      case 'four-0':
       this.dialog.fluxrc_visiable = true;
       break; 
          case 'four-1':
          this.dialog.time_visiable = true;
       break; 
        case 'four2-0':
       this.dialog.xian_visiable = true;
       break;
         case 'four2-1':
       this.dialog.initialization_visiable = true;
       break;
         case 'four3-0':
       this.dialog.runc_visiable = true;
       break;
        case 'four3-1':
       this.dialog.boundaryo_visiable = true;
       break;
       case 'four4-0':
       this.dialog.specialp_visiable = true;
       break;
        case 'four4-1':
       this.dialog.swap_visiable = true;
       break;
        case 'four4-2':
       this.hcfdrun(true);
       break;
        case 'four4-3':
       break;
        case 'four4-4':
       break;
       case 'five-0':
         this.dialog.SurfaceGrid_visiable = true;
       break;
     case 'five-1':
         this.dialog.VolumeGrid_visiable = true;
       break;
        case 'six-0':
         this.visiable=true;
       break;
     case 'six-1':
         this.Yvisiable= true;
       break;
          case 'six-2':
         this.llsvisiable = true;
       break;
  }

  },
    //清除相关信息
    clearAll() {
      this.showUgridflag = false; //ugrid 是否显示过
      this.showSurfaceflag = false; //surface 是否显示过
      this.showVolumeflage = false; //Volume 是否显示过
      this.showMonitorflage = false;
      this.islogload = true;

      this.logs = "";
      this.project = {
        projectId: "",
        projectName: "",
        projectType: "hcfd",
        projectDesc: "",
        fileType: "ascii",
        solverfiles: [],
        solverVolumUrls: [],
        solverBoundaryUrls: [],
        loadfils: [],
        converge: "",
      };
    },
    init() {
  
      this.project.projectId = this.pid; //获取url 参数
      this.project.lesseeId = this.$store.getters.lesseeId; //获取url 参数
      
      if (
        this.project.projectId != undefined &&
        this.project.projectId != null
      ) {
       // this.selectProjectOK();
      }
      this.missType=true
    },
    
    logtime(){
      let self = this;
      let projectId = self.project.projectId;
        if (projectId != null && projectId != "" && self.islogload) {
          self.islogload = false;
          let params = {
            transCode: "A00112",
            projectId: projectId,
             page: 0,
             count: 30,
          };
          request(params)
            .then((res) => {
               console.log(res)
              let rows = res.rows;
              self.logs = ""; //只显示最新的数据
              rows.forEach((row) => {
                self.logs = row.log + "\n" + self.logs;
                if (row.log.indexOf("Solver end") > 0) {
                  self.isSolverEnd = true;
                }
              });
              self.islogload = true;
            })
            .catch((err) => {
              self.islogload = true;
            });
        }
    },


    setVolumScalars(scalars) {
      console.log(scalars)
      this.volumScalars = scalars;
    },
    // 工具栏的点击事件
    yCalchange() {
      this.Yvisiable = true;
    },
    reyCalchange() {
      this.llsvisiable = true;
    },
    atmoCalchange() {},
    // 弹框执行事件
    // 弹框执行事件
    referencevisiable() {
      this.parameterObjclone = JSON.parse(sessionStorage.getItem("res"));
      this.parameterObj.nmlParam = this.parameterObjclone.nmlParam;
      // this.dialog.scale_visiable = false;
    },
  
    timeasmvisiable() {
      this.parameterObjclone = JSON.parse(sessionStorage.getItem("res"));
      this.parameterObj.nmlParam = this.parameterObjclone.nmlParam;
      this.dialog.timeasm_visiable = false;
    },
    runcvisiable() {
      this.parameterObjclone = JSON.parse(sessionStorage.getItem("res"));
      this.parameterObj.nmlParam = this.parameterObjclone.nmlParam;
      this.dialog.runc_visiable = false;
    },
       //  this.$emit("visiable",this.visiable);
       dialogbtnkew(){
            this.form1.ssd="";
            var kelvins=parseFloat(this.form1.kelvins) 
           this.form1.ssd =  this.accAdd(kelvins,273.15);
            //  this.form.ssd = Math.floor((parseInt(this.form.kelvins) * 100) / 100)-273.15
                if( this.form1.ssd <0){
                this.form1.ssd =0;
            }
     
        },
        accAdd(arg1,arg2){ 
            var r1,r2,m; 
            try{r1=arg1.toString().split(".")[1].length}catch(e){r1=0} 
            try{r2=arg2.toString().split(".")[1].length}catch(e){r2=0} 
            m=Math.pow(10,Math.max(r1,r2)) 
            return (arg1*m-arg2*m)/m 
            },
            
        dialogbtnssd(){
              this.form1.kelvins="";
              var ssd=parseFloat(this.form1.ssd) 
              this.form1.kelvins= this.accAdd(ssd ,-273.15);
            //this.form.kelvins = Math.floor((parseInt(this.form.ssd) * 100) / 100) +273.15
        },
    dialogbtny() {
      let u_freestream = eval(this.form.u_freestream);
      if (u_freestream <= 0.0) {
        alert("Free stream velocity must be greater than zero");
        return;
      }

      let rho = eval(this.form.rho);
      if (rho <= 0.0) {
        alert("Density must be greater than zero");
        return;
      }
      let L = eval(this.form.L);
      if (L <= 0.0) {
        alert("Boundary layer reference length must be greater than zero");
        return;
      }
      let mu = eval(this.form.mu);
      if (mu <= 0.0) {
        alert("Dynamic viscosity must be greater than zero");
        return;
      }
      let y_plus_desired = eval(this.form.y_plus_desired);
      if (y_plus_desired <= 0.0) {
        alert("Desired y+ value must be greater than zero");
        return;
      }
      let Re = (rho * u_freestream * L) / mu;
      let C_f = 0.026 * Math.pow(Re, -(1.0 / 7.0));
      C_f = 0.0576 * Math.pow(Re, -1.0 / 5.0);
      C_f = 0.37 * Math.pow(Math.log(Re) / Math.log(10), -2.584);
      C_f = Math.pow((2 * Math.log(Re)) / Math.log(10) - 0.65, -2.3);
      let tau_w = C_f * 0.5 * rho * u_freestream * u_freestream;
      let U_f = Math.sqrt(tau_w / rho);
      let wall_distance_estimation = (y_plus_desired * mu) / (U_f * rho);
      this.form.Rex = Re.toExponential(1);
      this.form.dtc = wall_distance_estimation.toExponential(1);
    },
    leinsdialogbtny() {
      this.form.Re =
        (this.form.lmi * this.form.lls * this.form.lld) / this.form.ldlzxxs;
      // console.log(this.form.Re);
    }, 
    unitConversion() {
      this.$refs.Calculator.visiable = true;
    },
    taskchangGeneal() {
      this.TaskGenealshow = false;
    },
    taskchangPhysics() {
      this.TaskPhysicsshow = false;
    },
    taskchangSolution() {
      this.TaskSolutionshow = false;
    },
    taskchangSurface() {
      this.TaskSurfaceshow = false;
    },
    taskchangVolume() {
      this.TaskVolumeshow = false;
 
    },
    //  Contour
    showLeftMenu(emt) {
      this.leftMenu_2Show = true;
    },
    uploadRequest1(params) {
      let param = new FormData();
      param.append("transCode", "A00102");
      param.append("file", params.file);
      param.append("projectId", this.project.projectId);
      uploadFile(param)
        .then((res) => {
          // console.log(res);
          // this.fileId = res.fileId
          this.findParam();
          this.getHCFDLoadFiles();
        })
        .catch((err) => {});
    },
    uploadRequest2(params) {
      let param = new FormData();
      param.append("transCode", "A00102");
      param.append("file", params.file);
      param.append("projectId", this.project.projectId);
      uploadFile(param) 
        .then((res) => {
          // console.log(res);
          // this.fileId = res.fileId
          this.findParam();
        })
        .catch((err) => {});
    },
    //获取上传文件
    async getHCFDLoadFiles() {
      let params = {
        transCode: "A00110",
        projectId: this.project.projectId,
      };
      await request(params)
        .then((res) => {
          this.project.loadfils = res.files;
          this.fileNames = [];
          res.files.forEach((url) => {
            let names = url.filepath.split("/");
            let name = names[names.length - 1];
            this.fileNames.push(name);
          });
        })
        .catch((err) => {});
    },
    /**
     * 更新配置 并求解
     */
//选择step
bStepChange(val){
  this.bStep=val;
   if(this.bStep==0){
    Message({
            type: "warning",
            message: "请选择setp有效值",
          });
  }else{
      this.showboundary();
  }

},
//选择step
vStepChange(val){
  this.vStep=val;
    if(val==0){
    Message({
            type: "warning",
            message: "请选择setp有效值",
          });
  }else{
this.Volumeshow();
}
},
// 表面加载
SurfaceChange(value){// 选择色条个数
  this.Surfacenum=value;

},
// 体积
VolumenumChange(value){// 选择色条个数
  this.Volumenum=value;

},
    async reUpload() {
      this.$refs.mapbc.uploader.upload();
      this.$refs.ugrid.uploader.upload();
    },
    async ugridShow() {
      if (
        this.project.projectId == "" ||
        this.project.projectId == undefined ||
        this.project.projectId == null
      ) {
        Message({
          type: "error",
          message: "缺少文件，请检查修改",
        });
      } else {
        this.dialog.new_visiable = false;
              this.tstep=0;
                this.clearserver();
           this.initWebSocket();
      }
    },
    async findParam() {
      let params = {
        transCode: "A00107",
        projectId: this.project.projectId,
      };
      // console.log(params);
      await request(params)
        .then((res) => {
          // console.log("findParam：" + res);
          this.project.projectName = res.projectName;
          this.project.uid = res.uid;
          let cjuserid = this.$route.query.cjuserid;
          sessionStorage.setItem('projectName',res.projectName)
          if(res.missionType==='3'||res.missionType==='4'){
            this.missType=false
          }else{
            this.missType=true
          }
      
          console.log(this.parameterObj)
          this.parameterObj = JSON.parse(res.parameterObj);
          sessionStorage.setItem("res", res.parameterObj);
               this.lsolverState=res.solverState;

        })
        .catch((err) => {});
    },
    //上传配置参数
    async updateParam() {
      delete this.parameterObj.nmlParam.initialization;
      let params = {
        transCode: "A00104",
        parameterObj: JSON.stringify(this.parameterObj),
        projectId: this.project.projectId,
        lesseeId: this.$store.getters.lesseeId
      };
        console.log(this.parameterObj.nmlParam.a_u);
      console.log(this.parameterObj);
      await request(params)
        .then((res) => {
          this.solverState = res.solverState;
        })
        .catch((err) => {});
    },
    loadProjects() {
      this.dialog.load_visiable=true;
      let params = {
        transCode: "A00101",
        page: 1,
        size: 1,
        projectType: "hcfd",
        lesseeId: this.$store.getters.lesseeId
      };
      this.loading = true;
      request(params)
        .then((res) => {
          this.projects = res.rows;
          this.loading = false;
        })
        .catch((err) => {});
    },
    projectsSelectionChange(val) {
      this.clearAll();
       if (val.length == 1) {

       this.project.projectId = val[0].projectId;;
         this.project.projectName =val[0].projectName;
        this.project.projectDesc = val[0].projectDesc;
      
        this.xiugai=val[0];
      } else if (val.length > 1) {
          this.project.projectId = val[1].projectId;;
         this.project.projectName =val[1].projectName;
        this.project.projectDesc = val[1].projectDesc;
         this.xiugai=val[1];
      }
    
    },
    projectsSelectionSelect(selection, row) {
      if (selection.length <= 1) return;
      this.$refs.projectsTable.clearSelection();
      this.$refs.projectsTable.toggleRowSelection(row, true);

    },
    //load状态回调
    fileLoadeState(files) {
      files.forEach((file) => {
        this.loadObjs.forEach((obj) => {
          if (obj.type == 2) {
            if (obj.filename === file.name) {
              obj.percentage = file.percentage;
            }
          }
          if (obj.type == 1) {
            //  obj.message=file.message;
          }
        });
      });
    },

    boundaryChange(boundaryid) {
      this.parameterObj.hcfdBoundarys.forEach((hcfdBoundary) => {
        if (hcfdBoundary.id === boundaryid) {
          this.Physics.hcfdBoundaryquery = hcfdBoundary;
          this.Physics.Boundary.cquery = hcfdBoundary.conditionsCode;
          return;
        }
      });
    },
    conditionsChange(conditionsCode) {
      this.Physics.hcfdBoundaryquery.conditionsCode = conditionsCode;
    },
 
     solutionbCheckAllChange(val) {
if(val==true){
   this.parameterObj.nmlParam.a_u = true;
      this.parameterObj.nmlParam.a_v = true;
       this.parameterObj.nmlParam.a_w = true;
      this.parameterObj.nmlParam.a_p = true;
      this.parameterObj.nmlParam.a_cp = true;
      this.parameterObj.nmlParam.a_mach = true;
      this.parameterObj.nmlParam.a_vort_mag = true;
      this.parameterObj.nmlParam.a_vort_x = true;
      this.parameterObj.nmlParam.a_vort_y = true;
      this.parameterObj.nmlParam.a_vort_z = true;
      this.parameterObj.nmlParam.a_q_criterion = true;
      this.Solution.boundaryout.isIndeterminate = false;
      //this.solutionbSetParam();
}else {
   
     this.parameterObj.nmlParam.a_u = false;
      this.parameterObj.nmlParam.a_v = false;
       this.parameterObj.nmlParam.a_w = false;
      this.parameterObj.nmlParam.a_p = false;
      this.parameterObj.nmlParam.a_cp = false;
      this.parameterObj.nmlParam.a_mach = false;
      this.parameterObj.nmlParam.a_vort_mag = false;
      this.parameterObj.nmlParam.a_vort_x = false;
      this.parameterObj.nmlParam.a_vort_y = false;
      this.parameterObj.nmlParam.a_vort_z = false;
      this.parameterObj.nmlParam.a_q_criterion = false;
       this.Solution.boundaryout.isIndeterminate = false;
} 
        
  
    },
    solutionbCheckedCitiesChange(value) {
      let checkedCount = value.length;
      this.Solution.boundaryout.checkAll =
        checkedCount === this.Solution.boundaryout.lists.length;
      this.Solution.boundaryout.isIndeterminate =
        checkedCount > 0 &&
        checkedCount < this.Solution.boundaryout.lists.length;
      this.solutionbSetParam();
    },
    solutionbSetParam() {
      this.Solution.boundaryout.checkeds.forEach((cell) => {
        switch (cell) {
          case "X-component of velocity":
            console.log( this.parameterObj.nmlParam.a_u);
            this.parameterObj.nmlParam.a_u = true;
            break;
          case "Y-component of velocity":
            this.parameterObj.nmlParam.a_v = true;
            break;
          case "Z-component of velocity":
            this.parameterObj.nmlParam.a_w = true;
            break;
          case "Press":
            this.parameterObj.nmlParam.a_p = true;
            break;
          case "Press coefficient":
            this.parameterObj.nmlParam.a_cp = true;
            break;
          case "Mach Number":
            this.parameterObj.nmlParam.a_mach = true;
            break;
          case "Vorticity magnitude":
            this.parameterObj.nmlParam.a_vort_mag = true;
            break;
          case "X-component of vorticity":
            this.parameterObj.nmlParam.a_vort_x = true;
            break;
          case "Y-component of vorticity":
            this.parameterObj.nmlParam.a_vort_y = true;
            break;
          case "Z-component of vorticity":
            this.parameterObj.nmlParam.a_vort_z = true;
            break;
          case "Q Criterion":
            this.parameterObj.nmlParam.a_q_criterion = true;
            break;
          default:   
            break;
        }
               
      });
     
    },
 
    solutionvCheckAllChange(val) {
      // this.Solution.volumout.checkeds = val ? this.Solution.volumout.lists : [];
      // this.Solution.volumout.isIndeterminate = false;
      // this.solutionbSetParam();
      if(val==true){
     this.parameterObj.nmlParam.v_u = true;
      this.parameterObj.nmlParam.v_v = true;
       this.parameterObj.nmlParam.v_w = true;
      this.parameterObj.nmlParam.v_p = true;
      this.parameterObj.nmlParam.v_cp = true;
      this.parameterObj.nmlParam.v_mach = true;
      this.parameterObj.nmlParam.v_vort_mag = true;
      this.parameterObj.nmlParam.v_vort_x = true;
      this.parameterObj.nmlParam.v_vort_y = true;
      this.parameterObj.nmlParam.v_vort_z = true;
      this.parameterObj.nmlParam.v_q_criterion = true;
}else{
     this.parameterObj.nmlParam.v_u = false;
      this.parameterObj.nmlParam.v_v = false;
       this.parameterObj.nmlParam.v_w = false;
      this.parameterObj.nmlParam.v_p = false;
      this.parameterObj.nmlParam.v_cp = false;
      this.parameterObj.nmlParam.v_mach = false;
      this.parameterObj.nmlParam.v_vort_mag = false;
      this.parameterObj.nmlParam.v_vort_x = false;
      this.parameterObj.nmlParam.v_vort_y = false;
      this.parameterObj.nmlParam.v_vort_z = false;
      this.parameterObj.nmlParam.v_q_criterion = false;
   this.Solution.volumout.isIndeterminate = false;
} 
    },
    solutionvCheckedCitiesChange(value) {
      let checkedCount = value.length;
      console.log(value);
      this.Solution.volumout.checkAll =
        checkedCount === this.Solution.volumout.lists.length;
      this.Solution.volumout.isIndeterminate =
        checkedCount > 0 && checkedCount < this.Solution.volumout.lists.length;
      this.solutionvSetParam();
    },
    solutionvSetParam() {
      this.Solution.volumout.checkeds.forEach((cell) => {
        switch (cell) {
          case "X-component of velocity":
            this.parameterObj.nmlParam.v_u = true;
            break;
          case "Y-component of velocity":
            this.parameterObj.nmlParam.v_v = true;
            break;
          case "Z-component of velocity":
            this.parameterObj.nmlParam.v_w = true;
            break;
          case "Press":
            this.parameterObj.nmlParam.v_p = true;
            break;
          case "Press coefficient":
            this.parameterObj.nmlParam.v_cp = true;
            break;
          case "Mach Number":
            this.parameterObj.nmlParam.v_mach = true;
            break;
          case "Vorticity magnitude":
            this.parameterObj.nmlParam.v_vort_mag = true;
            break;
          case "X-component of vorticity":
            this.parameterObj.nmlParam.v_vort_x = true;
            break;
          case "Y-component of vorticity":
            this.parameterObj.nmlParam.v_vort_y = true;
            break;
          case "Z-component of vorticity":
            this.parameterObj.nmlParam.v_vort_z = true;
            break;
          case "Q Criterion":
            this.parameterObj.nmlParam.v_q_criterion = true;
            break;
          default:
            break;
        }
      });
    },
    //显示 UgridLoad
    async showUgrid() {
      console.log(this.showUgridflag);
      this.$refs.monitor.hiden();
      if (!this.showUgridflag) {
        //是否显示过
        this.$refs.ugridLoad.clear();
        if (this.project.loadfils.length == 0) {
          await this.getHCFDLoadFiles();
        }
        this.project.loadfils.forEach((url) => {
          if (url.filepath.indexOf(".ugrid") > 0) {
            this.ugridUrl = url.filepath;
          }
        });

        this.$refs.ugridLoad.loadUgrid(this.ugridUrl, 1);
        this.showUgridflag = true;
      } else {
        this.$refs.ugridLoad.nhiden();
      }
    },
    //显示 Surface
    async showSurface() {
      let mesh = false;
      let contour = false;
      this.belementCheckeds.forEach((ele) => {
        if ("Mesh" == ele) {
          mesh = true;
        } else if ("Contour" == ele) {
          contour = true;
        }
      });
      this.$refs.ugridLoad.hiden();
      this.$refs.volumLoad.hiden();
      this.$refs.monitor.hiden();
      if (!this.showSurfaceflag) {
        if (this.project.solverfiles.length == 0) {
        }
        let burl;
       
        this.project.solverBoundaryUrls.forEach((url) => {
          if (url.indexOf(this.bStep + ".dat") > 0) {
            burl = url;
          }
        });
        if (mesh) {
          this.$refs.boundaryLoad.loadBoundary(burl, 1, this.bScalar);
        }
        if (contour) {
          this.$refs.boundaryLoad.loadBoundary(burl, 2, this.bScalar);
        }
        this.showSurfaceflag = true;
      } else {
        this.$refs.boundaryLoad.clear();
        this.$refs.boundaryLoad.nhiden();
        if (mesh) {
          this.$refs.boundaryLoad.mesh(this.bScalar);
        }
        if (contour) {
          //  console.log(222);
          this.$refs.volumLoad.vdivb = false;
          this.$refs.boundaryLoad.divb = true;
          this.$refs.boundaryLoad.contour(this.bScalar);
        }
      }
    },

   
  
 
    large() {
      this.$refs.ugridLoad.large();
      this.$refs.boundaryLoad.large();
      this.$refs.volumLoad.large();
    },
    small() {
      this.$refs.ugridLoad.small();
      this.$refs.boundaryLoad.small();
      this.$refs.volumLoad.small();
    },
    positive(axis) {
      this.$refs.ugridLoad.positive(axis);
      this.$refs.boundaryLoad.positive(axis);
      this.$refs.volumLoad.positive(axis);
    },
    negative(axis) {
      this.$refs.ugridLoad.negative(axis);
      this.$refs.boundaryLoad.negative(axis);
      this.$refs.volumLoad.negative(axis);
    },
    // 资源选择代码
    showresource(){
      this.dialog.ziyuan=true;
       this.getresource();
    },
    //获取资源代码
    getresource(){
    const loading = this.$loading({
        lock: true,
        text: 'Loading',
        spinner: 'el-icon-loading',
        background: 'rgba(0, 0, 0, 0.7)',
      })
      setTimeout(() => {
        const params = {
          transCode: 'HG00000',
        page: this.paginationConfig.page,
        count: this.paginationConfig.size,
          lesseeId:this.$store.getters.lesseeId,
  
        }
        request(params)
          .then((res) => { 
    
         loading.close()
            this.ziyprojects = res.rows;
           this.paginationConfig.total = res.total
           this.resourcelook();
          })
          .catch((err) => {
           loading.close()
          })
      }, 500)
    },
     getPagination(data) {
      this.paginationConfig = data
      this.getresource()
    },
    //选中
    ziySelectionChange (val) {
   
    let id= []
     val.map((item)=> {
    id.push(item.id)
      })
  this.selsectid= id.join(',')    
    },
     ziySelectionSelect(selection, row) {
    },
    // 日志的文本框
       footerShows(evt) {
         if(evt=='claer'){
          this.logs='';

         }else{
        this.footerShow=!this.footerShow
         }
           
    },
    //保存
    resourceOK(){
     
       const params = {
          transCode: 'HG00002',
          otherId:this.project.projectId,
          type:'1',
           resourceIds:this.selsectid,
          lesseeId:this.$store.getters.lesseeId,
        }
        request(params)
          .then((res) => { 
              Message({
          type: "success",
          message: "保存成功",
        });
       this.dialog.ziyuan=false;
          })
          .catch((err) => {
         
          })
    },
    changest(val){

    },
    // 查看已经中的
        resourcelook(){
           const loading = this.$loading({
        lock: true,
        text: 'Loading',
        spinner: 'el-icon-loading',
        background: 'rgba(0, 0, 0, 0.7)',
      })
           const params = {
          transCode: 'HG00001',
          otherId:  this.project.projectId,
          type:'1',
          lesseeId:this.$store.getters.lesseeId,
        }
        request(params)
          .then((res) => { 
                  loading.close()
          let rst=res.rows;
           console.log(res)
            this.$refs.multipleTable.clearSelection();
          if (rst.length > 0) {
                
            for (var i = 0; i < rst.length; i++) { 
              for ( let j = 0 ; j < this.ziyprojects.length; j++ ){
                  if (this.ziyprojects[j].id === rst[i].resourceId) {
                    this.$refs.multipleTable.toggleRowSelection(this.ziyprojects[j],true);
                  } 
              }
            }
          }else{
            consolog.log(2222)
          }
          })
          .catch((err) => {
                  loading.close()
          })
        },
        closeOff(val){
          if(val=='on'){
          this.Consoleshow=true;
          this.openshow=false;

        }else{
        console.log(val);
          this.Consoleshow=false;
          this.openshow=true;
        }
        },

 

      }
}
</script>
<style lang="scss" >
@import '@/styles/variables.scss';
@import '@/styles/mixin.scss';
.hcfdlab{
.el-input__inner{
  line-height: 30px;
  height: 30px;
}
}
html,body{
    width: 100%;
    height: 100%;
}
.el-tabs__content{
  padding: 0 5px;
}
.content{
    display: flex;
    height: 100%;
    position: relative;
    .left{
    width: 200px;
    height: 100%;
    flex-direction: column;
    padding: 15px;
    position: relative;
    height: 88vh;
  //  box-shadow:   2px 0 15px 0 rgb(232, 232, 232);
  //   -webkit-box-shadow:   2px 0 15px 0 rgb(232, 232, 232);
  //   -moz-box-shadow:  2px 0 15px 0 rgb(232, 232, 232);
             
    }
     .part-panel-collapse-handle {
    position: absolute;
    // right: -56px;
    left: -38px;
    top: 44%;
    width: 94px;
    height: 0;
    cursor: pointer;
    text-align: center;
    border-width: 0 20px 18px;
    line-height: 18px;
    border-style: none solid solid;
    transform: rotateZ(
90deg);
    font-size: 19px;
}
.lbg_color3 i:before{
  transform: rotateZ(
0);
}
    .right{
        flex: 1;
         height: 100%;
          height: 85vh;
          position: relative;
        
    }
.imgcontent img{
    font-size: 16px;
}
    .slide-fade-enter-active {
  transition: all .3s ease;
}
}
.tablist{
      border-bottom:1px solid #999;
      padding: 3px 0;
}
.tablist .tabitem{
    color: #b6b6b6;
    font-size: 16px;
    padding-right: 5px;
    cursor: pointer;
   &.current{
       color: #Fff ;
   }
}

.imgzong{
    display: flex;
    padding-top: 4px;
      flex-wrap:wrap;
  .el-image{
      width: 30px;

  }  
}

.imgzong .item1{
    padding-right: 4px;
    padding: 4px 4px ;
 
}
.shu{
    padding: 4px 10px;
    color: #666;

}
.el-tabs__item{
    color:#b6b6b6;
    font-size: 16px;
}
.textlab{
    display: inline-block;
    vertical-align: middle;
    margin-top: -28px;
}
</style>
<style>
.el-input-number__decrease, .el-input-number__increase{
  position: absolute;
    z-index: 1;
    top: 4px;
    width: 31px;
    height: 30px;
    text-align: center;
    background: #F5F7FA;
    color: #606266;
    cursor: pointer;
    font-size: 13px;
}
.el-tabs--bottom .el-tabs__header.is-bottom{
  margin: 0;
}
.el-tabs__header{
  margin: 0;
}
.imgcontent{
      padding: 0 15px;
    }
    .el-tabs__item{
      height: 30px;
      line-height: 30px;
      padding: 0 8px;
      font-size: 12px;
    }
.el-tabs--border-card{
    background-color: none;
}
.baoshi{
    margin-top: 4px;
    color: #b6b6b6;
}

.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active{
  background-color: #757070;

}

.el-dialog__header{
      padding: 15px 20px 10px;
}

.textselsect{
      position: absolute;
    z-index: 9;
    bottom: 1px;
    right: 7px;
    z-index: 9;
}
 .dialoglocation{
    position: absolute;
    top: -15vh;
    left: 10px;
  }
  .el-dialog__wrapper{
          top: 15vh;
  }
</style>
// 样式大全
<style lang="scss" scoped>
.diyi i{
  font-size: 14px;
  color: #C0C4CC;
}
 
.tupian{
  display: flex;
  justify-content: center;
  align-items: center;
}
 .red{
  color: red;
 }
 .dialog_header{
   align-items: center;
    display: flex;
}
.juli{
  margin-top: 15px;
  width: 100%
}

</style>
<style lang="scss">
@import '@/styles/variables.scss';
@import '@/styles/mixin.scss';
.heigeinput 
{
 .el-form-item{
  margin-bottom: 5px;
}
}
.el-dialog__body{
  padding: 10px 20px 10px 20px;
} 
.line{
  width: 100%;
  height: 1px;
  background-color: #999;
  position: relative;
  margin: 30px 0;
  .linetext{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    background-color: #ffff;
    padding: 5px;
    font-size: 12px;
    top: -10px;
    font-weight: 700;
    
  }
 
}
.ulist ul{
  display: flex;
  margin: 0;
  padding: 0;
  li{
    flex: 1;
    border: 1px solid #666;
  }
  
}

.liitem{
  margin-bottom: 5px;
}
.inputwithd  .el-input__inner{
  width: 74px;
}
.inputtext .el-input{
  margin-top: 5px;
}
.dancentent{
  display: flex;
  justify-content:center;
  align-items: center;
}
 .titleinput .el-input{
    width: 100px;
  }
  
  .itemlist{
    display: flex;
  
  }
  .listbtn{
  display: flex;
  margin-bottom: 5px;
  .anniu{
    flex: 1;
  }
  .el-checkbox{
      flex: 1;
  }
  }
  .anniu{
    padding: 5px 28px;
    font-size: 12px;
      margin: 0;
    
  }
 .titleinput{
  .el-row{
      padding-left: 10px;
   }
     .el-button{
    padding: 5px 28px;
    font-size: 12px;
    }
    .el-button+.el-button{
      margin: 0;
    }
    }
 .el-dialog__wrapper{
  z-index: 2300;
 }
    .tiele{
      width: 324px;
      background-color: #fff;
      position: fixed;
      top: 50%;
       left: 50%;
      z-index: 2049;
      padding: 20px;
      .heder{
        width: 100%;
        height: 40px;
        line-height: 40px;
        font-size: 14px;
        padding: 0 20px;
        border-bottom: 1px solid #eee;
      }
      .tiele_content{
        padding: 20px 20px;
        .el-checkbox{
          display: block;
        }
      }
      p{
        text-align: center;
      }
      
      
    }
    .el-form-item{
      margin: 0;
    }
  .btntext{
    text-align: center;
    background-color: #757070;
    color:#d5d5d5 ;
    font-size: 12px;
    padding: 4px 0;
    margin: 5px 0;
    border-radius: 5px;
  }
  .btnyiban{
    width: 50%;
    background-color: #757070;
    color:#d5d5d5 ;
  }
  .fangxiang .el-row{
    display: flex;
    padding-bottom: 10px;
  }

  .input3{
    display: flex;
     flex-wrap:nowrap;
     justify-content: space-around;
     padding-bottom: 5px;

    .el-input{
    width: 30%;
    }
  }
.yiinpu .el-form-item__content{
display:flex;
.el-input{
  margin-right: 5px;
}
}

  .saninput{
   display: flex;
     flex-wrap:nowrap;
     justify-content: space-around;
    .el-input{
   margin-right: 5px;
    }
    .el-form-item__label{
        text-align: left;
    }  
  }
  // select样式
  .selecr{
    font-size: 12px;
    .el-select{
      width: 100%;
    }
    
  }
  .btnringth{
    text-align: right;
  }
  .juli .el-input__inner{
    margin-bottom: 5px;
    width:100%;
  }
</style>
<style lang="scss" scoped>
 /deep/.toolbar-part-detail{
  position: relative;
}
/deep/ .el-form-item__label{
  font-size: 12px;
   line-height: 30px;
}
/deep/.el-form-item__content{
      line-height: 30px;
        font-size: 12px;
}
.el-form-item{
      margin-bottom: 5px;
}
</style>
<style lang="scss" scoped>
.femFooter {
  height: 135px !important;
  padding: 0;
  position: relative;
}
.footerTitle {
  display: flex;
  justify-content: space-between;
  padding: 5px 20px;
  font-size: 20px;
  height: 30px !important;
  background-color: #bbb;
}
.footerTitle div {

  display: flex;
  justify-content: space-around;
  align-items: center;
}
.footerTitle p {
  margin: 0;
}
.footerTitle span {
  padding: 5px 10px;
  cursor: default;
}

 /deep/.footerText .el-textarea__inner{
  width: 100%;
  height: 135px !important;
  border: 0;
  font-size: 12px;
  color: #333;
  padding: 2px;
}

 .radio_text{
  line-height: 28px;
   .el-radio__label{
    color: #d5d5d5;
  }
  .disacent{
    padding: 6px 0 6px 3.125vw;
     font-size:12px;
  }
}
.el-table th, .el-table tr{
   background-color: #535353;
}
.beij-container {
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, #ccd3e2 0%, rgba(255, 255, 255, 0) 100%);
}
.el-footer {
  padding: 0;
  height: 149px;
  overflow-y: auto;
}

.logs_title {
    background: #bfc5cb;
    padding: 10px;
    font-size: 16px;
}
.x {
    cursor: default;
    float: right;
}
.exloadbox {
    float: right;
    margin-right: 100px;
    display: flex;
}
.maxh221{
  max-height: calc(100vh - 10px);
}
.maxh400{
  max-height: calc(100vh - 410px);
}
body {
  position: relative;
  background-color: #eceef0;
 
}
.el-loading-mask {
  background: none;
}
.sblock{
  width: 100px;
  display: inline-block;
}
.groupradio .el-radio{
  display: block;
  padding: 5px;

}
.radiogroup{
  display:flex;
}
.radiogroup label{
  flex: 1;
}
/deep/ .radiogroup .el-radio-button--mini .el-radio-button__inner{
    border-radius: 5px;
}
/deep/ .radiogroup .el-radio-button:last-child .el-radio-button__inner{
  border-radius: 4px ;
}
/deep/  .heightclass{
  height: 450px;
  overflow-y: auto;
  
}
/deep/  .heightclass .el-dialog__header{
  position: fixed;
  z-index: 99;
  width: 385px;
}
/deep/  .heightclass  .el-dialog__body{
  margin-top: 60px;
}
.displanblock .el-checkbox{
display: block;
}
.outline{
  margin-left: 50px;
  font-size: 20px;
}
/deep/.el-dialog__wrapper{
 pointer-events:none;
}
/deep/.el-dialog{
 pointer-events:auto; 
}
/deep/ .asideTag2{
      left: auto;
  right: 10px;
 top: 21px;
  ul{
      display: flex; 
      li{
      
 margin-left: 4px;
     width: 28px;
    height: 28px;
      }
  }
}
 .asideTag{

 top: 30px;
}
/deep/ .asideTag  ul{
  display: flex;   
      li{
 margin-left: 4px;
     width: 28px;
    height: 28px;
      }
}
@media screen and (max-width:1330px){
  .headMenu_2 .el-col{
    transform:scale(0.8);
    transform-origin: 0 0;
  }
  .headMenu_2{
    height: 150px !important;
  }
  .asideTag2,.asideTag {
    transform:scale(0.7);
    transform-origin: 0 0;
  }
}
@media screen and (max-width:1160px){
  .headMenu_2 .el-col{
    transform:scale(0.7);
    transform-origin: 0 0;
  }
  .asideTag2{
    left: 91%;
  }
  .el-aside{
    width:170px !important;
  }
  .headMenu_2{
    height: 135px !important;
  }
}
.text{
  color: #fff;
  font-size:14px;
      margin: 0;
}
.y{
  width:100%;
  height:100%;
  background-image: url('../../../assets/3d_images/y.png') center 100%;
}
.y2{
     background-image: url('../../../assets/3d_images/y2.png');
}
body{
  font-family:'微软雅黑'
}

.classfelx{
  flex:1;
}
.liitem .formLabelWidth8{
     width: 343px;
}
.formLabelWidth15{
  width:70px;
   text-align:center;
}
</style>
<style>
.imge{
width:25px;
vertical-align:middle;
}
</style>
