1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915 |
- <template>
- <div style="display: flex; height: calc(100vh - 120px)">
- <Aside
- :resultArr="resultArr"
- :fujianArr="fujianArr"
- @refresh="resultRefresh"
- ></Aside>
- <div class="drawer__panel">
- <div class="my-steps">
- <a-steps :current="active - 1" style="margin-bottom: 10px">
- <a-step
- :title="$t(item.title)"
- v-for="(item, index) in items"
- :key="index"
- >
- <i
- slot="icon"
- class="iconfont"
- style="font-size: 32px; color: #3874f6 !important"
- v-if="active > index + 1"
- ></i
- >
- </a-step>
- </a-steps>
- </div>
- <!--选光头-->
- <div class="dialog-content" v-show="active == 1">
- <div class="option-line">
- <MySelect
- type="radius"
- :isClear="false"
- :options="[
- { remarks: '自动选配', value: '自动选配' },
- { remarks: '手动输入', value: '手动输入' },
- ]"
- v-model="mode"
- ></MySelect>
- </div>
- <div v-show="mode == '自动选配'">
- <div class="option-line">
- <div class="item">
- <div class="label">{{ $t("搜索") }}:</div>
- <el-input
- :placeholder="$t(`名称/料号`)"
- v-model="guangtouParam.content.where.condition"
- clearable
- @clear="Search('guangtouParam')"
- size="small"
- @keyup.enter.native="Search('guangtouParam')"
- >
- </el-input>
- </div>
- </div>
- <div class="option-line">
- <div class="item">
- <div class="label">{{ $t("驱动方式") }}:</div>
- <MySelect
- :isClear="false"
- @click="
- ($event) => {
- guangtouChange($event);
- Search('guangtouParam', 'drivetype');
- }
- "
- :options="drivetype"
- v-model="guangtouParam.content.where.drivetype"
- ></MySelect>
- </div>
- </div>
- <div class="option-line">
- <div class="item">
- <div class="label">{{ $t("公称通径") }}:</div>
- <el-select
- filterable
- v-model="guangtouParam.content.where.caliber"
- :placeholder="$t(`请选择公称通径`)"
- size="small"
- style="width: 100%"
- clearable
- @change="Search('guangtouParam', 'caliber')"
- >
- <el-option
- v-for="item in caliber"
- :key="item.value"
- :value="item.value"
- :label="$t(item.value)"
- ></el-option>
- </el-select>
- </div>
- <div class="item">
- <div class="label">{{ $t("公称压力") }}:</div>
- <el-select
- filterable
- @change="Search('guangtouParam', 'nominalpressure')"
- :disabled="!guangtouParam.content.where.caliber"
- v-model="guangtouParam.content.where.nominalpressure"
- :placeholder="$t(`请选择公称压力`)"
- size="small"
- style="width: 100%"
- clearable
- >
- <el-option
- v-for="item in nominalpressure"
- :key="item.value"
- :value="item.value"
- :label="$t(item.remarks)"
- ></el-option>
- </el-select>
- </div>
- </div>
- <div class="option-line">
- <div class="item">
- <div class="label">{{ $t("连接方式") }}:</div>
- <MySelect
- @click="Search('guangtouParam', 'connection')"
- :disabled="!guangtouParam.content.where.nominalpressure"
- :options="connection"
- v-model="guangtouParam.content.where.connection"
- ></MySelect>
- </div>
- </div>
- <div class="option-line">
- <div class="item">
- <div class="label">{{ $t("阀体材质") }}:</div>
- <el-select
- filterable
- @change="Search('guangtouParam', 'bodymaterial')"
- :disabled="!guangtouParam.content.where.connection"
- v-model="guangtouParam.content.where.bodymaterial"
- :placeholder="$t(`请选择阀体材质`)"
- size="small"
- style="width: 100%"
- clearable
- >
- <el-option
- v-for="item in bodymaterial"
- :key="item.value"
- :value="item.value"
- :label="$t(item.remarks)"
- ></el-option>
- </el-select>
- </div>
- <div class="item">
- <div class="label">{{ $t("阀杆材质") }}:</div>
- <el-select
- filterable
- @change="Search('guangtouParam', 'stemmaterial')"
- :disabled="!guangtouParam.content.where.bodymaterial"
- v-model="guangtouParam.content.where.stemmaterial"
- :placeholder="$t(`请选择阀杆材质`)"
- size="small"
- style="width: 100%"
- clearable
- >
- <el-option
- v-for="item in stemmaterial"
- :key="item.value"
- :value="item.value"
- :label="$t(item.remarks)"
- ></el-option>
- </el-select>
- </div>
- <div class="item">
- <div class="label">{{ $t("阀座材质") }}:</div>
- <el-select
- filterable
- @change="Search('guangtouParam', 'plinthmaterial')"
- :disabled="!guangtouParam.content.where.stemmaterial"
- v-model="guangtouParam.content.where.plinthmaterial"
- :placeholder="$t(`请选择阀座材质`)"
- size="small"
- style="width: 100%"
- clearable
- >
- <el-option
- v-for="item in plinthmaterial"
- :key="item.value"
- :value="item.value"
- :label="$t(item.remarks)"
- ></el-option>
- </el-select>
- </div>
- </div>
- <!--光头-->
- <MyTable
- :height="tableHeight"
- ref="guangtouRef"
- fixedName="operation"
- :layout="tool.tabelCol($route.name)['guangtouTable'].tablecols"
- :param="guangtouParam"
- :opwidth="200"
- :custom="true"
- style="margin-top: 14px;"
- >
- <template v-slot:customcol="scope">
- <span v-if="scope.column.columnname != 'operation'">{{
- $t(scope.column.data[scope.column.columnname])
- }}</span>
- </template>
- <template v-slot:opreation="scope">
- <el-button
- type="text"
- size="mini"
- @click="selectTarget(scope.data, '主阀')"
- :disabled="!guangtouParam.content.where.drivetype"
- >{{ $t("选择") }}</el-button
- >
- </template>
- </MyTable>
- </div>
- <div class="write" style="margin-top: 10px" v-show="mode == '手动输入'">
- <el-row :gutter="10">
- <el-form
- :model="guangtouParam.content.where"
- ref="ruleForm"
- :label-width="tool.onlyZh('130px')"
- >
- <el-col :xs="12" :sm="12" :md="12" :lg="12" :xl="6">
- <el-form-item
- :label="$t(`驱动方式`) + ':'"
- prop="drivetype"
- :rules="{
- required: true,
- message: $t('请选择驱动方式'),
- trigger: 'blur',
- }"
- >
- <el-select
- filterable
- v-model="guangtouParam.content.where.drivetype"
- :placeholder="$t(`请选择驱动方式`)"
- size="small"
- style="width: 100%"
- >
- <el-option
- v-for="item in drivetype"
- :key="item.value"
- :value="item.value"
- :label="$t(item.remarks)"
- ></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="12" :sm="12" :md="12" :lg="12" :xl="6">
- <el-form-item
- :label="$t(`扭矩`) + ':'"
- prop="torque"
- :rules="{
- required: true,
- message: $t('请输入扭矩'),
- trigger: 'blur',
- }"
- >
- <el-input
- v-model="guangtouParam.content.where.torque"
- size="small"
- :placeholder="$t(`请输入扭矩`)"
- ></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="12" :sm="12" :md="12" :lg="12" :xl="6">
- <el-form-item
- :label="$t(`法兰号`) + ':'"
- prop="flh"
- :rules="{
- required: true,
- message: $t('请选择法兰号'),
- trigger: 'blur',
- }"
- >
- <el-select
- filterable
- v-model="guangtouParam.content.where.flh"
- :placeholder="$t(`请选择法兰号`)"
- size="small"
- style="width: 100%"
- >
- <el-option
- v-for="item in flh"
- :key="item.value"
- :value="item.value"
- :label="$t(item.remarks)"
- ></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col
- :xs="12"
- :sm="12"
- :md="12"
- :lg="12"
- :xl="6"
- v-if="!guangtouParam.content.where.maxrounddiameter"
- >
- <el-form-item
- :label="$t(`方阀杆最大宽度`) + ':'"
- prop="maxsquarewidth"
- :rules="{
- required: true,
- message: $t('请输入方阀杆最大宽度'),
- trigger: 'blur',
- }"
- >
- <el-input
- size="small"
- v-model="guangtouParam.content.where.maxsquarewidth"
- :placeholder="$t(`请输入方阀杆最大宽度`)"
- ></el-input>
- </el-form-item>
- </el-col>
- <el-col
- :xs="12"
- :sm="12"
- :md="12"
- :lg="12"
- :xl="6"
- v-if="!guangtouParam.content.where.maxsquarewidth"
- >
- <el-form-item
- :label="$t(`圆阀杆最大直径`) + ':'"
- prop="maxrounddiameter"
- :rules="{
- required: true,
- message: $t('请输入圆阀杆最大直径'),
- trigger: 'blur',
- }"
- >
- <el-input
- size="small"
- v-model="guangtouParam.content.where.maxrounddiameter"
- :placeholder="$t(`请输入圆阀杆最大直径`)"
- ></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="12" :sm="12" :md="12" :lg="12" :xl="6">
- <el-form-item :label="$t(`公称通径`) + ':'" prop="caliber">
- <el-select
- filterable
- v-model="guangtouParam.content.where.caliber"
- :placeholder="$t(`请选择公称通径`)"
- size="small"
- style="width: 100%"
- clearable=""
- >
- <el-option
- v-for="item in caliber"
- :key="item.value"
- :value="item.value"
- :label="$t(item.value)"
- ></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="12" :sm="12" :md="12" :lg="12" :xl="6">
- <el-form-item
- :label="$t(`公称压力`) + ':'"
- prop="nominalpressure"
- >
- <el-select
- filterable
- v-model="guangtouParam.content.where.nominalpressure"
- :placeholder="$t(`请选择公称压力`)"
- size="small"
- style="width: 100%"
- clearable=""
- >
- <el-option
- v-for="item in nominalpressure"
- :key="item.value"
- :value="item.value"
- :label="$t(item.remarks)"
- ></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- </el-form>
- </el-row>
- </div>
- </div>
- <!--选执行器-->
- <div class="dialog-content" v-show="active == 2">
- <div class="option-line">
- <div class="item">
- <div class="label">{{ $t("执行器") }}:</div>
- <el-input
- :placeholder="$t(`型号/料号`)"
- v-model="excelParam.content.where.condition1"
- clearable
- @clear="Search('excelParam')"
- size="small"
- @keyup.enter.native="Search('excelParam')"
- >
- </el-input>
- </div>
- <div
- class="item"
- v-if="guangtouParam.content.where.drivetype != '气动'"
- >
- <div class="label">{{ $t("减速箱") }}:</div>
- <el-input
- :placeholder="$t(`型号/料号`)"
- v-model="excelParam.content.where.condition2"
- clearable
- @clear="Search('excelParam')"
- size="small"
- @keyup.enter.native="Search('excelParam')"
- >
- </el-input>
- </div>
- </div>
- <div
- class="option-line"
- v-if="guangtouParam.content.where.drivetype == '气动'"
- >
- <div class="item">
- <div class="label">{{ $t("驱动方式") }}:</div>
- <MySelect
- :isClear="false"
- :options="[
- { remarks: '气动调节', value: '气动调节' },
- { remarks: '气动开关', value: '气动开关' },
- ]"
- v-model="excelParam.content.where.drivetype"
- ></MySelect>
- </div>
- </div>
- <div
- class="option-line"
- v-if="guangtouParam.content.where.drivetype == '电动'"
- >
- <div class="item">
- <div class="label">{{ $t("驱动方式") }}:</div>
- <MySelect
- @click="
- Search('excelParam', 'actuatordrivetype');
- calcTableHeight('excelRef');
- "
- :options="[
- { remarks: '电动开关', value: '电动开关' },
- { remarks: '电动调节', value: '电动调节' },
- ]"
- v-model="excelParam.content.where.actuatordrivetype"
- ></MySelect>
- </div>
- </div>
- <div v-if="actuatorbrand.length">
- <div
- class="option-line"
- v-if="guangtouParam.content.where.drivetype == '电动'"
- >
- <div class="item">
- <div class="label">{{ $t("品牌") }}:</div>
- <MySelect
- @click="Search('excelParam', 'actuatorbrand')"
- :disabled="!excelParam.content.where.actuatordrivetype"
- :options="actuatorbrand"
- v-model="excelParam.content.where.actuatorbrand"
- ></MySelect>
- </div>
- </div>
- <div class="option-line" v-else>
- <div class="item">
- <div class="label">{{ $t("品牌") }}:</div>
- <MySelect
- @click="Search('excelParam', 'actuatorbrand')"
- :options="actuatorbrand"
- v-model="excelParam.content.where.actuatorbrand"
- ></MySelect>
- </div>
- </div>
- </div>
- <div
- v-if="
- guangtouParam.content.where.drivetype == '电动' &&
- excelParam.content.where.actuatorbrand &&
- actuatorname.length
- "
- >
- <div class="option-line">
- <div class="item">
- <div class="label" style="width: 80px">
- {{ $t("执行器类型") }}:
- </div>
- <span
- style="font-size: 14px; font-weight: bold; color: #3874f6"
- >{{ $t(excelParam.content.where.actuatorname) || "--" }}</span
- >
- </div>
- </div>
- <SelectBar
- style="margin: 20px 0"
- v-model="excelParam.content.where.actuatorname"
- @change="Search('excelParam', 'actuatorname')"
- :options="computedActuatorNameOptions"
- ></SelectBar>
- </div>
- <div
- class="option-line"
- v-if="guangtouParam.content.where.drivetype == '电动'"
- >
- <div class="item">
- <div class="label">{{ $t("电源电压") }}:</div>
- <MySelect
- @click="Search('excelParam', 'supplyvoltage')"
- :disabled="!excelParam.content.where.actuatorname"
- :options="supplyvoltage"
- v-model="excelParam.content.where.supplyvoltage"
- ></MySelect>
- </div>
- <div class="item">
- <div class="label">{{ $t("信号类型") }}:</div>
- <MySelect
- @click="Search('excelParam', 'actuatorsignal')"
- :disabled="!excelParam.content.where.supplyvoltage"
- :options="actuatorsignal"
- v-model="excelParam.content.where.actuatorsignal"
- ></MySelect>
- </div>
- </div>
- <!-- <div class="option-line">
- <div class="item">
- <div class="label" style="width: 75px;">{{$t('执行器类型')}}:</div>
- <el-select filterable @change="Search('excelParam','actuatorname')" :disabled="!excelParam.content.where.actuatorbrand" v-model="excelParam.content.where.actuatorname" :placeholder="$t(`请选择执行器类型`)" size="small" style="width:100%" clearable>
- <el-option v-for="item in actuatorname" :key="item.value" :value="item.value" :label="$t(item.remarks)"></el-option>
- </el-select>
- </div>
- </div> -->
- <div
- class="option-line"
- v-show="guangtouParam.content.where.drivetype == '气动'"
- >
- <div class="item">
- <div class="label">{{ $t("功能") }}:</div>
- <MySelect
- :disabled="!excelParam.content.where.actuatorname"
- @click="Search('excelParam', 'func')"
- :options="func"
- v-model="excelParam.content.where.func"
- ></MySelect>
- </div>
- </div>
- <div
- class="option-line"
- v-show="guangtouParam.content.where.drivetype == '气动'"
- >
- <div class="item">
- <div class="label">{{ $t("结构") }}:</div>
- <MySelect
- :disabled="!excelParam.content.where.func"
- @click="Search('excelParam', 'bodystructure')"
- :options="bodystructure"
- v-model="excelParam.content.where.bodystructure"
- ></MySelect>
- </div>
- </div>
- <div
- class="tips"
- v-if="
- guangtouParam.content.where.drivetype == '电动' && resultArr.length
- "
- style="color: #3874f6; margin-top: 10px"
- >
- <i class="el-icon-warning" style="margin-right: 5px"></i
- >{{ $t("建议开关阀时间")
- }}{{
- caliber.filter((v) => v.value == resultArr[0].caliber).length
- ? caliber
- .filter((v) => v.value == resultArr[0].caliber)[0]
- .remarks.split(";")[0]
- : "-"
- }}{{ $t("秒") }}
- </div>
- <!--执行器-->
- <div v-if="guangtouParam.content.where.drivetype == '电动'">
- <MyTable
- fixedName="operation"
- :height="tableHeight"
- :noQuery="true"
- ref="excelRef"
- :layout="tool.tabelCol($route.name)['excelTable1'].tablecols"
- :param="excelParam"
- :custom="true"
- style="margin-top: 14px;"
- >
- <template v-slot:customcol="scope">
- <span
- v-if="scope.column.columnname == 'matchratio'"
- style="color: red"
- >{{ $t(scope.column.data[scope.column.columnname]) }}</span
- >
- <span v-else-if="scope.column.columnname == 'maxsquarewidth'">{{
- scope.column.data[scope.column.columnname].join(",")
- }}</span>
- <span v-else-if="scope.column.columnname != 'operation'">{{
- $t(scope.column.data[scope.column.columnname])
- }}</span>
- </template>
- <template v-slot:opreation="scope">
- <el-button
- type="text"
- size="mini"
- @click="selectTarget(scope.data, '执行器')"
- :disabled="
- guangtouParam.content.where.drivetype == '电动' &&
- resultArr.length == 2
- "
- >{{ $t("选择") }}</el-button
- >
- </template>
- </MyTable>
- </div>
- <MyTable
- v-else
- :height="tableHeight"
- fixedName="operation"
- :noQuery="true"
- ref="excelRef"
- :layout="tool.tabelCol($route.name)['excelTable2'].tablecols"
- :param="excelParam"
- :custom="true"
- style="margin-top: 14px"
- >
- <template v-slot:customcol="scope">
- <span
- v-if="scope.column.columnname == 'matchratio'"
- style="color: red"
- >{{ $t(scope.column.data[scope.column.columnname]) }}</span
- >
- <span v-else-if="scope.column.columnname == 'maxsquarewidth'">{{
- scope.column.data[scope.column.columnname].join(",")
- }}</span>
- <span v-else-if="scope.column.columnname != 'operation'">{{
- $t(scope.column.data[scope.column.columnname])
- }}</span>
- </template>
- <template v-slot:opreation="scope">
- <el-button
- type="text"
- size="mini"
- @click="selectTarget(scope.data, '执行器')"
- :disabled="
- guangtouParam.content.where.drivetype == '电动' &&
- resultArr.length == 2
- "
- >{{ $t("选择") }}</el-button
- >
- </template>
- </MyTable>
- </div>
- <!--选辅件-->
- <div class="dialog-content" v-show="active == 3">
- <MyTable
- :noQuery="true"
- ref="fujianRef"
- fixedName="operation"
- :height="tableHeight"
- :layout="tool.tabelCol($route.name)['itemList'].tablecols"
- :param="fujianParam"
- :opwidth="200"
- :custom="true"
- style="margin-top: 14px"
- >
- <template v-slot:customcol="scope">
- <span v-if="scope.column.columnname != 'operation'">{{
- $t(scope.column.data[scope.column.columnname])
- }}</span>
- </template>
- <template v-slot:opreation="scope">
- <el-button
- type="text"
- size="mini"
- @click="selectTarget(scope.data, '辅件')"
- :disabled="loading"
- >{{ $t("选择") }}</el-button
- >
- </template>
- </MyTable>
- </div>
- <div class="dialog-content" v-if="active == 4">
- <table
- bgcolor="#FAFAFA"
- cellpadding="0"
- style="width: 100%"
- class="result"
- >
- <tr style="width: 100px">
- <td class="title">{{ $t("光头") }}</td>
- <td>
- <div class="text1" style="margin-bottom: 8px">
- <el-tag
- style="margin-right: 10px"
- size="small"
- type="warning"
- >{{ resultArr[0] && resultArr[0].actuatorbrand }}</el-tag
- >
- <span style="margin-bottom: 8px">{{
- resultArr[0] && resultArr[0].itemname
- }}</span>
- </div>
- <div class="descript">
- <div
- class="item"
- v-if="resultArr.length && resultArr[0].itemno"
- >
- <span style="color: #888888">{{ $t("料号") }}:</span
- >{{ resultArr[0].itemno }}
- </div>
- <div
- class="item"
- v-if="resultArr.length && resultArr[0].torque"
- >
- <span style="color: #888888">{{ $t("扭矩") }}:</span
- >{{ resultArr[0].torque }}
- </div>
- <div class="item" v-if="resultArr.length && resultArr[0].flh">
- <span style="color: #888888">{{ $t("法兰号") }}:</span
- >{{ resultArr[0].flh }}
- </div>
- <div
- class="item"
- v-if="resultArr.length && resultArr[0].caliber"
- >
- <span style="color: #888888">{{ $t("公称通径") }}:</span
- >{{ resultArr[0].caliber }}
- </div>
- <div
- class="item"
- v-if="resultArr.length && resultArr[0].nominalpressure"
- >
- <span style="color: #888888">{{ $t("公称压力") }}:</span
- >{{ tool.nominalPressureSet(resultArr[0].nominalpressure) }}
- </div>
- <div
- class="item"
- v-if="resultArr.length && resultArr[0].stemmaterial"
- >
- <span style="color: #888888">{{ $t("阀杆材质") }}:</span
- >{{ resultArr[0].stemmaterial }}
- </div>
- <div
- class="item"
- v-if="resultArr.length && resultArr[0].mainmaterial"
- >
- <span style="color: #888888">{{ $t("主体材质") }}:</span
- >{{ resultArr[0].mainmaterial }}
- </div>
- </div>
- </td>
- </tr>
- <tr>
- <td class="title">{{ $t("执行器") }}</td>
- <td>
- <div class="text1" style="margin-bottom: 8px">
- <el-tag
- style="margin-right: 10px"
- size="small"
- type="warning"
- >{{ resultArr[1] && resultArr[1].actuatorbrand }}</el-tag
- >
- <span style="margin-bottom: 8px"
- >{{ resultArr[1] && resultArr[1].actuatormodel }}
- {{
- guangtouParam.content.where.drivetype == "电动" &&
- resultArr[1] &&
- resultArr[1].gearboxname
- ? ` + ${$t("减速箱")}:${
- resultArr[1] && resultArr[1].gearboxname
- }`
- : ""
- }}</span
- >
- </div>
- <div class="descript">
- <div
- class="item"
- v-if="resultArr.length >= 2 && resultArr[1].actuatorno"
- >
- <span style="color: #888888">{{ $t("执行器料号") }}:</span
- >{{ resultArr[1].actuatorno }}
- </div>
- <div
- class="item"
- v-if="resultArr.length >= 2 && resultArr[1].actuatorname"
- >
- <span style="color: #888888">{{ $t("执行器名称") }}:</span
- >{{ resultArr[1].actuatorname }}
- </div>
- <div
- class="item"
- v-if="resultArr.length >= 2 && resultArr[1].actuatortype"
- >
- <span style="color: #888888">{{ $t("执行器类型") }}:</span
- >{{ resultArr[1].actuatortype }}
- </div>
- <div
- class="item"
- v-if="resultArr.length >= 2 && resultArr[1].flh.length"
- >
- <span style="color: #888888">{{ $t("法兰号") }}:</span
- >{{ resultArr[1].flh.join(",") }}
- </div>
- <div
- class="item"
- v-if="resultArr.length >= 2 && resultArr[1].bodystructure"
- >
- <span style="color: #888888">{{ $t("执行器结构") }}:</span
- >{{ resultArr[1].bodystructure }}
- </div>
- <div
- class="item"
- v-if="resultArr.length >= 2 && resultArr[1].torque"
- >
- <span style="color: #888888">{{ $t("输出扭矩") }}:</span
- >{{ resultArr[1].torque }}(Nm)
- </div>
- <div
- class="item"
- v-if="resultArr.length >= 2 && resultArr[1].maxruntime"
- >
- <span style="color: #888888">{{ $t("开关时间") }}:</span
- >{{ resultArr[1].maxruntime }}(s)
- </div>
- <div
- class="item"
- v-if="resultArr.length >= 2 && resultArr[1].speed"
- >
- <span style="color: #888888">{{ $t("转速") }}:</span
- >{{ resultArr[1].speed }}(rpm)
- </div>
- <div
- class="item"
- v-if="resultArr.length >= 2 && resultArr[1].handwheelratio"
- >
- <span style="color: #888888">{{ $t("减速比") }}:</span
- >{{ resultArr[1].ratio }}
- </div>
- <div
- class="item"
- v-if="resultArr.length >= 2 && resultArr[1].supplyvoltage"
- >
- <span style="color: #888888">{{ $t("电压") }}:</span
- >{{ resultArr[1].supplyvoltage }}(V)
- </div>
- <div
- class="item"
- v-if="resultArr.length >= 2 && resultArr[1].ratedcurrent"
- >
- <span style="color: #888888">{{ $t("电流") }}:</span
- >{{ resultArr[1].ratedcurrent }}(A)
- </div>
- <div
- class="item"
- v-if="resultArr.length >= 2 && resultArr[1].ratedpower"
- >
- <span style="color: #888888">{{ $t("功率") }}:</span
- >{{ resultArr[1].ratedpower }}(KW)
- </div>
- <div
- class="item"
- v-if="
- resultArr.length >= 2 && resultArr[1].actuatorsignal_choose
- "
- >
- <span style="color: #888888">{{ $t("信号类型") }}:</span
- >{{ resultArr[1].actuatorsignal_choose }}
- </div>
- </div>
- </td>
- </tr>
- <tr v-if="fujianArr.length">
- <td class="title">{{ $t("辅件") }}</td>
- <td style="padding: 0">
- <tr style="border-bottom: 1px solid #dddddd" class="custom-table">
- <div>{{ $t("定位器") }}</div>
- <div class="text1">
- <el-tag
- style="margin-right: 10px"
- size="small"
- type="warning"
- v-if="
- fujianArr.filter((item) => item.itemname == '定位器')
- .length
- "
- >{{
- fujianArr.filter((item) => item.itemname == "定位器")[0]
- .actuatorbrand
- }}</el-tag
- >
- <span>{{
- fujianArr.filter((item) => item.itemname == "定位器").length
- ? fujianArr.filter((item) => item.itemname == "定位器")[0]
- .model
- : "-"
- }}</span>
- </div>
- <div>{{ $t("电磁阀") }}</div>
- <div class="text1">
- <el-tag
- style="margin-right: 10px"
- size="small"
- type="warning"
- v-if="
- fujianArr.filter((item) => item.itemname == '电磁阀')
- .length
- "
- >{{
- fujianArr.filter((item) => item.itemname == "电磁阀")[0]
- .actuatorbrand
- }}</el-tag
- >
- <span>{{
- fujianArr.filter((item) => item.itemname == "电磁阀").length
- ? fujianArr.filter((item) => item.itemname == "电磁阀")[0]
- .model
- : "-"
- }}</span>
- </div>
- </tr>
- <tr class="custom-table">
- <div>{{ $t("限位开关") }}</div>
- <div class="text1">
- <el-tag
- style="margin-right: 10px"
- size="small"
- type="warning"
- v-if="
- fujianArr.filter((item) => item.itemname == '限位开关')
- .length
- "
- >{{
- fujianArr.filter((item) => item.itemname == "限位开关")[0]
- .actuatorbrand
- }}</el-tag
- >
- <span>{{
- fujianArr.filter((item) => item.itemname == "限位开关")
- .length
- ? fujianArr.filter(
- (item) => item.itemname == "限位开关"
- )[0].model
- : "-"
- }}</span>
- </div>
- <div>{{ $t("过滤减压阀") }}</div>
- <div class="text1">
- <el-tag
- style="margin-right: 10px"
- size="small"
- type="warning"
- v-if="
- fujianArr.filter((item) => item.itemname == '过滤减压阀')
- .length
- "
- >{{
- fujianArr.filter(
- (item) => item.itemname == "过滤减压阀"
- )[0].actuatorbrand
- }}</el-tag
- >
- <span>{{
- fujianArr.filter((item) => item.itemname == "过滤减压阀")
- .length
- ? fujianArr.filter(
- (item) => item.itemname == "过滤减压阀"
- )[0].model
- : "-"
- }}</span>
- </div>
- </tr>
- </td>
- </tr>
- <tr>
- <td class="title">{{ $t("成品料号") }}</td>
- <td class="text1">
- {{ Object.keys(product).length ? product.itemno || "-" : "" }}
- </td>
- </tr>
- <tr>
- <td class="title" style="padding: 0" colspan="2">
- <tr class="price-tr">
- <td class="title" style="width: 120px !important">
- {{ $t(product.itemno ? "牌价" : "最低经销价") }}
- </td>
- <td class="text2">
- ¥{{
- Object.keys(product).length
- ? tool.formatAmount(product.price, 2)
- : "xxxxxx"
- }}
- <div
- style="color: #1c1919; font-weight: normal; font-size: 12px"
- >
- *{{ $t("非标准产品,当前价格仅供参考") }}!
- </div>
- </td>
- <td class="title">{{ $t("成本价格") }}</td>
- <td class="text2">
- ¥{{
- Object.keys(product).length
- ? tool.formatAmount(product.marketprice, 2)
- : "xxxxxx"
- }}
- </td>
- </tr>
- </td>
- </tr>
- </table>
- </div>
- <div
- class="fixed__btn__panel"
- v-if="(active == 1 && mode == '手动输入') || active == 3 || active == 4"
- >
- <el-button
- size="small"
- type="primary"
- @click="next"
- class="normal-btn-width"
- v-if="active == 1 && mode == '手动输入'"
- >{{ $t("下一步") }}</el-button
- >
- <el-button
- size="small"
- type="primary"
- @click="close"
- class="normal-btn-width"
- v-if="active == 4"
- >{{ $t("完成") }}</el-button
- >
- </div>
- </div>
- </div>
- </template>
- <script>
- import "@/optionSystem/valveOption/index.css";
- import MySelect from "@/optionSystem/FProductManage/modules/select.vue";
- import MyTable from "@/optionSystem/FProductManage/modules/table.vue";
- import SelectBar from "@/optionSystem/FProductManage/modules/selectBar.vue";
- import Aside from "@/optionSystem/FProductManage/modules/aside.vue";
- export default {
- props: ["position"],
- components: { MySelect, MyTable, SelectBar, Aside },
- data() {
- return {
- items: [
- { title: "选光头", value: "光头" },
- { title: "选执行器", value: "执行器" },
- { title: "选辅件", value: "辅件" },
- { title: "确认配置", value: "配置" },
- ],
- mode: "自动选配",
- active: 1,
- tableHeight: "400px",
- excel: "",
- gangtou: "",
- resultArr: [],
- caliber: [],
- nominalpressure: [],
- connection: [],
- bodymaterial: [],
- stemmaterial: [],
- plinthmaterial: [],
- actuatorbrand: [],
- actuatorname: [],
- actuatordrivetype: [],
- actuatorsignal: [],
- supplyvoltage: [],
- flh: [],
- drivetype: [],
- bodystructure: [],
- func: [],
- guangtouList: [],
- isFujianShow: false, //辅件是否显示
- form: {
- itemid: 0,
- plm_itemextendid: 0,
- valvetype: "蝶阀", //阀门类型(固定)
- itemno: "", //产品编码(必填,唯一)
- itemname: "", //产品名称(必填)
- erpitemno: "", //erp品号(必填)
- erpitemname: "", //erp品名(必填)
- spec: "", //规格尺寸(必填)
- model: "", //型号(必填)
- material: "", //材质(必填,选项)
- marketprice: "",
- caliber: "", //公称通径
- nominalpressure: [], //公称压力
- connection: "",
- drivetype: [], //驱动方式
- valveplatematerial: "",
- bodymaterial: "",
- stemmaterial: "",
- plinthmaterial: "",
- torque: "", //
- maxruntime: "", //90°最大运行时间
- actuatorbrand: "", //执行器品牌
- actuatordrivetype: "", //执行器类型
- part_itemids: [],
- },
- guangtouParam: {
- id: 20240718162102,
- content: {
- pageNumber: 1,
- pageSize: 30,
- where: {
- condition: "",
- caliber: "", //公称通径
- nominalpressure: "", //公称压力
- connection: "", //连接方式
- bodymaterial: "", //阀体材质
- stemmaterial: "", //阀杆材质
- plinthmaterial: "", //阀座材质
- drivetype: "电动", //驱动方式
- },
- },
- },
- excelList: [],
- excelParam: {
- id: 20240718162202,
- content: {
- itemid: "", //光头id
- pageNumber: 1,
- pageSize: 30,
- where: {
- actuatordrivetype: "电动开关", //驱动方式
- condition1: "",
- condition2: "",
- torque: "", //阀门扭矩
- flh: "", //法兰号
- actuatorbrand: "", //品牌
- actuatorname: "",
- supplyvoltage: "",
- actuatorsignal: "",
- maxsquarewidth: "", //方阀杆最大宽度
- maxrounddiameter: "", //圆阀杆最大直径
- },
- },
- },
- fujianList: [],
- fujianArr: [],
- loading: false, // Add this line to define the loading property
- fujianParam: {
- id: 20240718162402,
- content: {
- othertypes: [],
- pageNumber: 1,
- pageSize: 300,
- where: {
- actuatorbrand: "", //品牌
- },
- },
- },
- timer: null,
- product: {},
- };
- },
- watch: {
- // 'excelParam.content.where.actuatorbrand': {
- // handler (val) {
- // setTimeout(() => {
- // this.calcTableHieght('excelRef')
- // },500)
- // }
- // },
- active(val) {
- switch (val) {
- case 1:
- this.calcTableHieght("guangtouRef");
- break;
- case 2:
- this.calcTableHieght("excelRef");
- break;
- case 3:
- this.calcTableHieght("fujianRef");
- break;
- default:
- break;
- }
- if (val == 4) {
- if (this.guangtouParam.content.where.drivetype == "电动") {
- if (this.resultArr[1].gearboxid)
- this.resultArr.push({
- parttype: "减速箱",
- itemid: this.resultArr[1].gearboxid,
- itemname: this.resultArr[1].gearboxname,
- actuatorbrand: this.resultArr[1].gearboxbrand,
- });
- }
- this.$api
- .requested({
- id: 2024071916224702,
- content: {
- part_itemids: this.resultArr.map((item) => {
- return {
- parttype: item.parttype,
- itemid: item.itemid,
- };
- }),
- },
- })
- .then((res) => {
- this.product = res.data;
- });
- }
- },
- },
- computed: {
- //执行器类型选项
- computedActuatorNameOptions() {
- return this.actuatorname.map((v) => {
- return {
- url: v.url,
- remarks: v.remarks.split("-").pop(),
- value: v.remarks,
- };
- });
- },
- },
- methods: {
- resultRefresh(type) {
- if (type == "光头") {
- this.active = 1;
- this.resultArr = [];
- this.fujianArr = [];
- } else if (type == "执行器") {
- this.active = 2;
- this.resultArr = this.resultArr.splice(0, 1);
- this.fujianArr = [];
- } else {
- this.fujianArr = [];
- this.resultArr = this.resultArr.splice(0, 2);
- this.active = 3;
- if (this.excelParam.content.where.drivetype == "气动调节") {
- this.fujianParam.content.othertypes = ["定位器", "过滤减压阀"];
- } else if (this.excelParam.content.where.drivetype == "气动开关") {
- this.fujianParam.content.othertypes = [
- "电磁阀",
- "限位开关",
- "过滤减压阀",
- ];
- }
- this.$refs.fujianRef.listData();
- }
- },
- //手动输入下一步
- next() {
- this.$refs.ruleForm.validate(async (val) => {
- if (val) {
- let data = JSON.parse(
- JSON.stringify(this.guangtouParam.content.where)
- );
- this.selectTarget(data, "主阀");
- }
- });
- },
- close() {
- this.active = 1;
- this.guangtouParam.content.where.drivetype = "电动";
- this.resultArr = [];
- this.fujianArr = [];
- if (this.$refs.ruleForm) {
- this.$refs.ruleForm.resetFields();
- this.guangtouParam.content.where.drivetype = "电动";
- }
- },
- //搜索
- Search(type, position) {
- let index = 0;
- let whereKeys = Object.keys(this[type].content.where);
- if (position) {
- index = whereKeys.indexOf(position) + 1;
- }
- if (type !== "excelParam") {
- for (let i = index; i < whereKeys.length - 1; i++) {
- if (!position && whereKeys[i].includes("condition")) continue;
- this[type].content.where[whereKeys[i]] = "";
- }
- } else {
- for (let i = index; i < whereKeys.length; i++) {
- if (
- whereKeys[i].includes("condition") ||
- whereKeys[i].includes("flh") ||
- whereKeys[i].includes("maxrounddiameter") ||
- whereKeys[i].includes("maxsquarewidth") ||
- whereKeys[i].includes("torque") ||
- whereKeys[i].includes("drivetype")
- )
- continue;
- this[type].content.where[whereKeys[i]] = "";
- }
- }
- if (this.loading) return;
- this.loading = true;
- const updateOptions = (ref, callback) => {
- this.$refs[ref] && this.$refs[ref].listData(callback);
- };
- const updateWhereKeys = (ref, keys, startIndex, callback) => {
- let isBreak = false;
- for (let i = startIndex; i < keys.length; i++) {
- if (isBreak) break;
- if (!keys[i]?.includes("condition")) {
- if (this.$refs[ref].list.length) {
- if (i >= index) {
- if (keys[i] !== "drivetype")
- this[keys[i]] = this.$refs[ref].list[0].option[keys[i]];
- if (this[keys[i]] && this[keys[i]].length === 1) {
- if (this[type].content.where[position])
- this[type].content.where[keys[i]] = this[keys[i]][0].value;
- if (this.timer) clearTimeout(this.timer);
- this.timer = setTimeout(() => {
- this.$refs[ref] && this.$refs[ref].listData();
- });
- } else if (
- this[keys[i]] &&
- this[keys[i]].length > 1 &&
- keys[i] !== "drivetype"
- ) {
- this[type].content.where[keys[i]] = "";
- }
- if (this.$refs[ref].list[0].option[keys[i]] && this.$refs[ref].list[0].option[keys[i]].length > 1) {
- isBreak = true;
- }
- }
- } else {
- if (i >= index && keys[i] !== "drivetype") this[keys[i]] = [];
- }
- }
- }
- this.loading = false;
- console.log(this.loading,'loading updateWhereKeys')
- };
- switch (type) {
- case "guangtouParam":
- updateOptions("guangtouRef", () =>
- updateWhereKeys("guangtouRef", whereKeys, index - 1)
- );
- break;
- case "excelParam":
- this.$nextTick(() => {
- updateOptions("excelRef", () =>
- updateWhereKeys("excelRef", whereKeys, 5)
- );
- });
- break;
- default:
- break;
- }
- },
- calcTableHieght(id) {
- try {
- this.$nextTick(() => {
- let target = this.$refs[id].$el.getBoundingClientRect();
- let clientHeight = document.body.clientHeight;
- this.tableHeight = this.active == 1? clientHeight - target.top - 35 + "px" : clientHeight - target.top - 65 + "px";
- this.$refs[id].$refs.table.doLayout();
- });
- } catch (error) {
- console.log(error);
- }
- },
- guangtouChange(val) {
- switch (val) {
- case "电动":
- this.excelParam = {
- id: 20240718162202,
- content: {
- itemid: 0, //光头id
- pageNumber: 1,
- pageSize: 30,
- where: {
- actuatordrivetype: "电动开关", //驱动方式
- condition1: "",
- condition2: "",
- torque: "", //阀门扭矩
- flh: "", //法兰号
- actuatorbrand: "", //品牌
- actuatorname: "",
- supplyvoltage: "",
- actuatorsignal: "",
- maxsquarewidth: "", //方阀杆最大宽度
- maxrounddiameter: "", //圆阀杆最大直径
- },
- },
- };
- break;
- case "气动":
- this.excelParam = {
- id: 20240718162302,
- content: {
- pageNumber: 1,
- pageSize: 30,
- where: {
- condition1: "",
- torque: "", //阀门扭矩
- flh: "", //法兰号
- maxsquarewidth: "", //方阀杆最大宽度
- maxrounddiameter: "", //圆阀杆最大直径
- actuatorbrand: "", //品牌
- actuatorname: "",
- func: "", //功能
- bodystructure: "", //结构
- drivetype: "气动调节",
- },
- },
- };
- break;
- default:
- break;
- }
- },
- //选择目标
- selectTarget(data, type) {
- data.parttype = type;
- this.resultArr.push(data);
- if (type == "主阀") {
- this.guangtouChange(this.guangtouParam.content.where.drivetype);
- Object.assign(this.excelParam.content.where, {
- itemid: data.itemid,
- torque: data.torque,
- flh: data.flh,
- maxsquarewidth: data.maxsquarewidth,
- maxrounddiameter: data.maxrounddiameter,
- });
- this.actuatorbrand = [];
- this.$nextTick(() => {
- this.$refs.excelRef.listData(() => {
- if (!this.$refs.excelRef.list.length) return;
- const options = this.$refs.excelRef.list[0].option;
- this.actuatorbrand = options.actuatorbrand;
- this.bodystructure = options.bodystructure;
- this.func = options.func;
- });
- });
- this.active = 2;
- } else if (type == "执行器") {
- if (this.guangtouParam.content.where.drivetype === "电动") {
- const times = this.caliber
- .find((v) => v.value === this.resultArr[0].caliber)
- .remarks.split(";")[0]
- .split("-")
- .map(Number);
- const maxRuntime = parseInt(data.maxruntime, 10);
- if (maxRuntime > times[1] || maxRuntime < times[0]) {
- this.$confirm(
- `${this.$t("当前选择执行器开关时间为")}${
- data.maxruntime
- }${this.$t("秒,超出建议值")}${times.join("-")},${this.$t(
- "是否确认"
- )}?`,
- this.$t("提示"),
- {
- confirmButtonText: this.$t("确定"),
- cancelButtonText: this.$t("取消"),
- type: "warning",
- }
- )
- .then(() => {
- handle.call(this);
- this.active = 4;
- })
- .catch(() => {
- this.resultArr.pop();
- });
- } else {
- handle.call(this);
- this.active = 4;
- }
- } else {
- handle.call(this);
- this.active = 3;
- this.$refs.fujianRef.listData();
- }
- function handle() {
- const actuator = this.resultArr[1];
- actuator.itenname = actuator.actuatorname;
- actuator.itemno = actuator.actuatorno;
- if (this.excelParam.content.where.drivetype === "气动调节") {
- this.fujianParam.content.othertypes = ["定位器", "过滤减压阀"];
- } else {
- this.fujianParam.content.othertypes = [
- "电磁阀",
- "限位开关",
- "过滤减压阀",
- ];
- }
- data.itemid = data.actuatorid;
- data.itemname = data.actuatorname;
- }
- } else {
- if (this.fujianArr.filter((item) => item.itemid == data.itemid).length)
- return;
- this.fujianParam.content.othertypes.splice(
- this.fujianParam.content.othertypes.indexOf(data.itemname),
- 1
- );
- this.fujianArr.push(data);
- if (!this.fujianParam.content.othertypes.length)
- return (this.active = 4);
- this.loading = true;
- this.$refs.fujianRef.listData(() => {
- this.loading = false;
- });
- }
- this.resultArr[this.resultArr.length - 1] = data;
- },
- //重置
- refresh() {
- this.resultArr = [];
- this.fujianArr = [];
- this.dialogVisible = false;
- this.active = 1;
- this.items = this.items.splice(0, 2);
- },
- //选项
- optionsList() {
- this.$store.dispatch("optiontypeselect", "caliber").then((res) => {
- this.caliber = res.data;
- console.log(this.caliber, "公称通径");
- });
- this.$store.dispatch("optiontypeselect", "pressure").then((res) => {
- this.nominalpressure = res.data;
- console.log(this.nominalpressure, "公称压力");
- });
- this.$store.dispatch("optiontypeselect", "connection").then((res) => {
- this.connection = res.data;
- console.log(this.connection, "连接方式");
- });
- this.$store.dispatch("optiontypeselect", "bodymaterial").then((res) => {
- this.bodymaterial = res.data;
- console.log(this.bodymaterial, "阀体材质");
- });
- this.$store.dispatch("optiontypeselect", "stemmaterial").then((res) => {
- this.stemmaterial = res.data;
- console.log(this.stemmaterial, "阀杆材质");
- });
- this.$store.dispatch("optiontypeselect", "plinthmaterial").then((res) => {
- this.plinthmaterial = res.data;
- console.log(this.plinthmaterial, "阀座材质");
- });
- this.drivetype = [
- { remarks: "电动", value: "电动" },
- { remarks: "气动", value: "气动" },
- ];
- console.log(this.drivetype, "驱动方式");
- this.$store.dispatch("optiontypeselect", "lectotypebrand").then((res) => {
- this.actuatorbrand = [];
- console.log(this.actuatorbrand, "执行器品牌");
- });
- this.$store
- .dispatch("optiontypeselect", "actuatordrivetype")
- .then((res) => {
- this.actuatordrivetype = res.data;
- console.log(this.actuatordrivetype, "执行器驱动方式");
- });
- this.$store.dispatch("optiontypeselect", "bodystructure").then((res) => {
- this.bodystructure = res.data;
- console.log(this.bodystructure, "结构");
- });
- this.$store.dispatch("optiontypeselect", "func").then((res) => {
- this.func = res.data;
- console.log(this.func, "功能");
- });
- this.$store.dispatch("optiontypeselect", "flh").then((res) => {
- this.flh = res.data;
- console.log(this.func, "法兰号");
- });
- this.$store.dispatch("optiontypeselect", "actuatorsignal").then((res) => {
- this.actuatorsignal = res.data;
- console.log(this.actuatorsignal, "信号");
- });
- this.$store.dispatch("optiontypeselect", "supplyvoltage").then((res) => {
- this.supplyvoltage = res.data;
- console.log(this.supplyvoltage, "电源电压");
- });
- },
- },
- created() {
- this.optionsList();
- },
- mounted() {
- this.calcTableHieght("guangtouRef");
- },
- };
- </script>
- <style scoped>
- /deep/.ant-steps-item-finish
- > .ant-steps-item-container
- > .ant-steps-item-content
- > .ant-steps-item-title::after {
- background: #3874f6 !important;
- }
- /deep/.ant-steps-item-finish .ant-steps-item-icon {
- background: none !important;
- }
- /deep/.ant-steps-item-icon {
- background: #3874f6;
- height: 32px !important;
- }
- /deep/.ant-steps-item-wait .ant-steps-item-icon {
- background: none !important;
- }
- /deep/.ant-steps-item-active .ant-steps-item-title {
- color: #3874f6 !important;
- font-weight: bold;
- }
- .scroll {
- height: calc(100vh - 60px);
- overflow-y: scroll;
- }
- ::-webkit-scrollbar {
- display: none;
- }
- .select-info {
- background: #f5f6fa;
- font-family: Microsoft YaHei, Microsoft YaHei;
- width: 240px;
- border-right: 1px #999999 solid;
- z-index: 301;
- flex-shrink: 0;
- word-wrap: break-word;
- }
- .select-info .info-title {
- font-weight: bold;
- font-size: 20px;
- color: #333333;
- padding: 10px 20px;
- border-bottom: 1px solid #d9d9d9;
- }
- .select-info .product-wrapper {
- padding: 0 20px;
- }
- .select-info .product-wrapper .product {
- padding-bottom: 20px;
- border-bottom: #d9d9d9 1px solid;
- }
- .select-info .product-wrapper .product:last-child {
- border-bottom: none !important;
- }
- .select-info .product-wrapper .product .product-header {
- display: flex;
- align-items: center;
- align-content: center;
- padding: 10px 0;
- }
- .select-info .product-wrapper .product .product-header span:last-child {
- color: #3874f6;
- margin-left: 18px;
- cursor: pointer;
- }
- .select-info .product-wrapper .product .product-header .title {
- font-weight: bold;
- font-size: 14px;
- color: #333333;
- }
- .select-info .product-wrapper .product .product-header img {
- width: 12px;
- height: 12px;
- }
- .select-info .product-wrapper .product .product-name {
- font-weight: 400;
- font-size: 14px;
- color: #555555;
- }
- .select-info .product-wrapper .product .attrite {
- display: flex;
- justify-content: space-between;
- align-items: center;
- font-weight: 400;
- font-size: 12px;
- color: #999999;
- padding-top: 10px;
- }
- .select-info .product-wrapper .product .attrite .attrite-title {
- color: #555555;
- }
- .select-info .product-wrapper .product .attrite .attrite-value {
- }
- .select-info .product-wrapper .product .attrite2 {
- display: flex;
- flex-direction: column;
- font-weight: 400;
- font-size: 12px;
- color: #999999;
- padding-top: 10px;
- }
- .select-info .product-wrapper .product .attrite2 .attrite-title {
- color: #555555;
- margin-bottom: 5px;
- }
- .select-info .product-wrapper .product .attrite2 .attrite-value {
- }
- .select-info .product-wrapper .product {
- display: flex;
- flex-direction: column;
- }
- .drawer__panel {
- font-family: Source Han Sans SC, Source Han Sans SC;
- padding: 10px 40px !important;
- flex: 1;
- margin-bottom: 0 !important;
- overflow: hidden;
- }
- .my-steps {
- padding: 0px 68px;
- }
- .product-info {
- padding: 10px 20px;
- border: 1px solid #3874f6;
- background: rgba(56, 116, 246, 0.08);
- margin-top: 5px;
- border-radius: 2px;
- }
- .product-info .title {
- margin-bottom: 16px;
- font-weight: bold;
- color: #333333;
- font-size: 16px !important;
- }
- .product-info .info-content {
- display: flex;
- flex-wrap: wrap;
- }
- .product-info .info-content .info-item {
- display: flex;
- flex-direction: column;
- }
- .product-info .info-content .info-item .info-title {
- margin-bottom: 4px;
- display: flex;
- align-content: center;
- align-items: center;
- }
- .product-info .info-content .info-item .info-title .title {
- margin-bottom: 0px !important;
- }
- .product-info .info-content .info-item .info-title div {
- margin-right: 20px;
- font-size: 14px !important;
- }
- .product-info .info-content .info-item .info-title span {
- font-size: 14px;
- color: #3874f6 !important;
- cursor: pointer;
- display: inline-block;
- display: flex;
- align-items: center;
- align-content: center;
- }
- .product-info .info-content .info-item .info-title span img {
- width: 12px;
- height: 12px;
- margin-right: 4px;
- }
- .product-info .info-content .info-item .name {
- font-weight: 400;
- font-size: 14px;
- color: #555555;
- }
- .product-info .info-content .info-item .names {
- font-weight: 400;
- font-size: 14px;
- color: #555555;
- display: flex;
- }
- .product-info .info-content .info-item .names div {
- margin-right: 20px;
- }
- .product-info .info-content .info-item .names div span {
- margin-right: 10px;
- }
- .product-content .block {
- margin-top: 30px;
- padding-left: 20px;
- }
- .product-content .block .header {
- display: flex;
- align-content: center;
- align-items: center;
- margin-bottom: 20px;
- }
- .product-content .block .header .title {
- font-size: 16px;
- font-weight: bold;
- margin-right: 20px;
- }
- .product-content .block .header .handle {
- display: flex;
- }
- .dialog-content {
- }
- .dialog-content .option-line {
- display: flex;
- margin-top: 10px;
- }
- .dialog-content .option-line .item {
- display: flex;
- align-items: center;
- font-size: 14px;
- font-weight: 500px;
- margin-right: 20px;
- }
- .dialog-content .option-line .item .label {
- width: 70px;
- flex-shrink: 0;
- text-align-last: justify;
- margin-right: 15px;
- color: #000000 !important;
- }
- .descript {
- font-size: 12px;
- color: red;
- }
- table,
- td,
- tr {
- border-collapse: collapse;
- }
- td {
- padding: 20px 20px;
- }
- table,
- td {
- border: 1px solid #dddddd;
- }
- .result {
- margin-top: 20px;
- margin-bottom: 70px;
- }
- .result .title {
- font-family: Source Han Sans SC, Source Han Sans SC;
- font-weight: bold;
- font-size: 16px;
- color: #333333;
- padding: 20px 20px;
- width: 120px;
- }
- .custom-table {
- border: none;
- display: flex;
- height: 64px;
- align-items: center;
- align-content: center;
- }
- .custom-table div {
- border-right: 1px solid #dddddd;
- height: 100%;
- display: flex;
- align-items: center;
- align-content: center;
- padding-left: 20px;
- }
- .custom-table div:nth-child(1) {
- width: 120px;
- }
- .custom-table div:nth-child(2) {
- flex: 1;
- }
- .custom-table div:nth-child(3) {
- width: 120px;
- }
- .custom-table div:nth-child(4) {
- flex: 1;
- }
- .descript {
- display: flex;
- flex-wrap: wrap;
- }
- .descript .item {
- font-family: Source Han Sans SC, Source Han Sans SC;
- font-weight: 400;
- font-size: 14px;
- color: #333333;
- margin-right: 40px;
- margin-bottom: 5px;
- }
- .descript .item:last-child {
- margin-right: 0 !important;
- }
- .text1 {
- font-family: Source Han Sans SC, Source Han Sans SC;
- font-weight: bold;
- font-size: 16px;
- color: #3874f6;
- }
- .text2 {
- font-family: Source Han Sans SC, Source Han Sans SC;
- font-weight: bold;
- font-size: 16px;
- color: #e80000;
- }
- .price-tr {
- display: flex;
- }
- .price-tr td ~ td {
- flex: 1;
- }
- .price-tr td {
- border-left: none;
- border-top: none;
- border-bottom: none;
- }
- </style>
|