CrEditProperty_Point.ce.vue 39 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855
  1. <template>
  2. <div class="jt-drawing-dialog">
  3. <el-dialog :modal="false" :destroy-on-close="false" v-model="dialogVisible" :title="title" @close="closeDialog" @open="openDialog" :show-close="false">
  4. <template #header>
  5. <div slot="title" class="header-title">
  6. <span style="line-height:24rem;font-size:16rem;color:#fff;font-family: 'Alimama_ShuHeiTi_Bold'">{{ title }}</span>
  7. </div>
  8. </template>
  9. <template #default>
  10. <el-scrollbar>
  11. <div class="content">
  12. <el-collapse v-model="activeNames">
  13. <el-collapse-item name="标注样式" v-show="isShowLabelStyle">
  14. <template #title>
  15. <el-icon style="padding: 10rem;">
  16. <Setting />
  17. </el-icon>标注样式
  18. </template>
  19. <div class="jt-drawing-row" style="height: 60rem;">
  20. <div class="col-left">内容</div>
  21. <div class="col-main">
  22. <el-input v-model="label.content" placeholder="输入显示的文字内容" clearable type="textarea" :rows="2" />
  23. </div>
  24. </div>
  25. <div class="jt-drawing-row">
  26. <div class="col-left">字体</div>
  27. <div class="col-main">
  28. <el-select v-model="label.font" placeholder="请选择">
  29. <el-option v-for="item in selectOptionsFont" :key="item.value" :label="item.label" :value="item.value" />
  30. </el-select>
  31. </div>
  32. </div>
  33. <div class="jt-drawing-row">
  34. <div class="col-left">字体大小</div>
  35. <div class="col-main">
  36. <el-input-number v-model="label.fontSize" :min="0" :max="100" />
  37. </div>
  38. </div>
  39. <div class="jt-drawing-row">
  40. <div class="col-left">是否加粗</div>
  41. <div class="col-main">
  42. <el-switch v-model="label.bolder" />
  43. </div>
  44. </div>
  45. <div class="jt-drawing-row">
  46. <div class="col-left">是否斜体</div>
  47. <div class="col-main">
  48. <el-switch v-model="label.italic" />
  49. </div>
  50. </div>
  51. <div class="jt-drawing-row">
  52. <div class="col-left">颜色</div>
  53. <div class="col-main">
  54. <el-config-provider :locale="locale">
  55. <el-color-picker v-model="label.fillColor" show-alpha :predefine="predefineColors" label="12" />
  56. </el-config-provider>
  57. </div>
  58. </div>
  59. <div class="jt-drawing-row">
  60. <div class="col-left">是否边框</div>
  61. <div class="col-main">
  62. <el-switch v-model="label.showOutline" />
  63. </div>
  64. </div>
  65. <div class="jt-drawing-row" v-show="label.showOutline">
  66. <div class="col-left">边框颜色</div>
  67. <div class="col-main">
  68. <el-config-provider :locale="locale">
  69. <el-color-picker v-model="label.outlineColor" show-alpha :predefine="predefineColors" label="12" />
  70. </el-config-provider>
  71. </div>
  72. </div>
  73. <div class="jt-drawing-row" v-show="label.showOutline">
  74. <div class="col-left">边框宽度</div>
  75. <div class="col-main">
  76. <el-input-number v-model="label.outlineWidth" :min="0" :max="100" />
  77. </div>
  78. </div>
  79. <div class="jt-drawing-row">
  80. <div class="col-left">是否背景</div>
  81. <div class="col-main">
  82. <el-switch v-model="label.showBackground" />
  83. </div>
  84. </div>
  85. <div class="jt-drawing-row" v-show="label.showBackground">
  86. <div class="col-left">背景颜色</div>
  87. <div class="col-main">
  88. <el-config-provider :locale="locale">
  89. <el-color-picker v-model="label.backgroundColor" show-alpha :predefine="predefineColors" label="12" />
  90. </el-config-provider>
  91. </div>
  92. </div>
  93. <div class="jt-drawing-row" v-show="label.showBackground">
  94. <div class="col-left">背景内边距</div>
  95. <div class="col-main">
  96. <el-input-number v-model="label.backgroundPadding" :min="-100" :max="100" />
  97. </div>
  98. </div>
  99. <div class="jt-drawing-row">
  100. <div class="col-left">横向偏移像素</div>
  101. <div class="col-main">
  102. <el-input-number v-model="label.pixelOffsetX" :min="-100" :max="100" />
  103. </div>
  104. </div>
  105. <div class="jt-drawing-row">
  106. <div class="col-left">纵向偏移像素</div>
  107. <div class="col-main">
  108. <el-input-number v-model="label.pixelOffsetY" :min="-100" :max="100" />
  109. </div>
  110. </div>
  111. </el-collapse-item>
  112. <el-collapse-item name="点样式" v-show="isShowPointStyle">
  113. <template #title>
  114. <el-icon style="padding: 10rem;">
  115. <Setting />
  116. </el-icon>点样式
  117. </template>
  118. <div class="jt-drawing-row">
  119. <div class="col-left">像素大小</div>
  120. <div class="col-main">
  121. <el-input-number v-model="point.pixelSize" :min="0" :max="100" />
  122. </div>
  123. </div>
  124. <div class="jt-drawing-row">
  125. <div class="col-left">颜色</div>
  126. <div class="col-main">
  127. <el-config-provider :locale="locale">
  128. <el-color-picker v-model="point.color" show-alpha :predefine="predefineColors" label="12" />
  129. </el-config-provider>
  130. </div>
  131. </div>
  132. <div class="jt-drawing-row">
  133. <div class="col-left">是否边框</div>
  134. <div class="col-main">
  135. <el-switch v-model="point.showOutline" />
  136. </div>
  137. </div>
  138. <div class="jt-drawing-row" v-show="point.showOutline">
  139. <div class="col-left">边框颜色</div>
  140. <div class="col-main">
  141. <el-config-provider :locale="locale">
  142. <el-color-picker v-model="point.outlineColor" show-alpha :predefine="predefineColors" label="12" />
  143. </el-config-provider>
  144. </div>
  145. </div>
  146. <div class="jt-drawing-row" v-show="point.showOutline">
  147. <div class="col-left">边框宽度</div>
  148. <div class="col-main">
  149. <el-input-number v-model="point.outlineWidth" :min="0" :max="100" />
  150. </div>
  151. </div>
  152. </el-collapse-item>
  153. <el-collapse-item name="图片样式" v-show="isShowBillboardStyle">
  154. <template #title>
  155. <el-icon style="padding: 10rem;">
  156. <Setting />
  157. </el-icon>图片样式
  158. </template>
  159. <div class="jt-drawing-row" style="height: 60rem;">
  160. <div class="col-left">图标</div>
  161. <div class="col-main">
  162. <el-input v-model="billboard.imgUrl" placeholder="输入图标路径" clearable type="textarea" :rows="2" />
  163. </div>
  164. </div>
  165. <div class="jt-drawing-row">
  166. <div class="col-left">大小比例</div>
  167. <div class="col-main">
  168. <el-input-number v-model="billboard.scale" :min="1" :max="100" />
  169. </div>
  170. </div>
  171. </el-collapse-item>
  172. <el-collapse-item name="小模型样式" v-show="isShowModelStyle">
  173. <template #title>
  174. <el-icon style="padding: 10rem;">
  175. <Setting />
  176. </el-icon>小模型样式
  177. </template>
  178. <div class="jt-drawing-row" style="height: 60rem;">
  179. <div class="col-left">模型路径</div>
  180. <div class="col-main">
  181. <el-input v-model="model.url" placeholder="输入模型路径" clearable type="textarea" :rows="2" />
  182. </div>
  183. </div>
  184. <div class="jt-drawing-row">
  185. <div class="col-left">透明度</div>
  186. <div class="col-main">
  187. <el-input-number v-model="model.alpha" :step="0.1" :min="0" :max="1" />
  188. </div>
  189. </div>
  190. <div class="jt-drawing-row">
  191. <div class="col-left">最小像素大小</div>
  192. <div class="col-main">
  193. <el-input-number v-model="model.minimumPixelSize" :step="1" :min="0" :max="20000" />
  194. </div>
  195. </div>
  196. <div class="jt-drawing-row">
  197. <div class="col-left">是否边框</div>
  198. <div class="col-main">
  199. <el-switch v-model="model.showSilhouette" />
  200. </div>
  201. </div>
  202. <div class="jt-drawing-row" v-show="model.showSilhouette">
  203. <div class="col-left">边框颜色</div>
  204. <div class="col-main">
  205. <el-config-provider :locale="locale">
  206. <el-color-picker v-model="model.silhouetteColor" show-alpha :predefine="predefineColors" label="12" />
  207. </el-config-provider>
  208. </div>
  209. </div>
  210. <div class="jt-drawing-row" v-show="model.showSilhouette">
  211. <div class="col-left">边框宽度</div>
  212. <div class="col-main">
  213. <el-input-number v-model="model.silhouetteSize" :step="1" :min="0" :max="100" />
  214. </div>
  215. </div>
  216. </el-collapse-item>
  217. </el-collapse>
  218. </div>
  219. <div class="el-body-foot">
  220. <el-button-group>
  221. <el-button type="primary" :icon="Edit" @click="submit()">修改</el-button>
  222. <el-button type="primary" style="background-color: rgb(222, 146, 47);" :icon="Delete" @click="remove()">删除</el-button>
  223. <el-button type="primary" style="background-color: rgb(126, 128, 135);" :icon="Close" @click="close()">关闭</el-button>
  224. </el-button-group>
  225. </div>
  226. </el-scrollbar>
  227. </template>
  228. </el-dialog>
  229. </div>
  230. </template>
  231. <script setup>
  232. /* 引入ref和reactive 其中ref用于简单类型 reactive用于复杂类型 */
  233. import {
  234. computed,
  235. ref,
  236. reactive,
  237. toRefs,
  238. watch,
  239. getCurrentInstance
  240. } from 'vue';
  241. /* 引入element-plus字体包 */
  242. import zhCn from 'element-plus/dist/locale/zh-cn.mjs';
  243. import en from 'element-plus/dist/locale/en.mjs';
  244. /* 引入element-plus组件 */
  245. import {
  246. ElDialog,
  247. ElInput,
  248. ElSelect,
  249. ElOption,
  250. ElSwitch,
  251. ElButtonGroup,
  252. ElConfigProvider,
  253. ElColorPicker,
  254. ElRadioButton,
  255. ElButton,
  256. ElRadioGroup,
  257. ElInputNumber,
  258. ElCollapse,
  259. ElCollapseItem,
  260. ElIcon
  261. } from 'element-plus';
  262. /* 引入element-plus字体 */
  263. import {
  264. ArrowLeft,
  265. ArrowRight,
  266. Delete,
  267. Edit,
  268. Share,
  269. Close,
  270. Setting
  271. } from '@element-plus/icons-vue';
  272. import {
  273. param,
  274. type
  275. } from 'jquery';
  276. import DrawPoint from './DrawPoint.js';
  277. const language = ref('zh-cn');
  278. const locale = computed(() => (language.value === 'zh-cn' ? zhCn : en));
  279. const {
  280. proxy
  281. } = getCurrentInstance();
  282. const props = defineProps({
  283. params: {
  284. id: {
  285. type: String,
  286. default: () => undefined
  287. },
  288. text: {
  289. type: String,
  290. default: () => ''
  291. },
  292. font: {
  293. type: String,
  294. default: () => ''
  295. },
  296. fontSize: {
  297. type: Number,
  298. default: () => 24
  299. },
  300. color: {
  301. type: String,
  302. default: () => '255,255,0,0.9'
  303. },
  304. },
  305. showDialog: {
  306. type: Boolean,
  307. default: () => false
  308. }
  309. });
  310. const emit = defineEmits(['submit', 'update:showDialog', 'update:params', 'remove']);
  311. /* 默认颜色 */
  312. const predefineColors = ref([
  313. '#ff4500',
  314. '#ff8c00',
  315. '#ffd700',
  316. '#90ee90',
  317. '#00ced1',
  318. '#1e90ff',
  319. '#c71585',
  320. 'rgba(255, 69, 0, 0.68)',
  321. 'rgb(255, 120, 0)',
  322. 'hsv(51, 100, 98)',
  323. 'hsva(120, 40, 94, 0.5)',
  324. 'hsl(181, 100%, 37%)',
  325. 'hsla(209, 100%, 56%, 0.73)',
  326. '#c7158577'
  327. ]);
  328. /* 字体下拉列表 */
  329. const selectOptionsFont = [{
  330. value: 'Helvetica',
  331. label: '默认字体',
  332. }, {
  333. value: 'Microsoft YaHei',
  334. label: '微软雅黑',
  335. },
  336. {
  337. value: '宋体',
  338. label: '宋体',
  339. },
  340. {
  341. value: '楷体',
  342. label: '楷体',
  343. },
  344. {
  345. value: '隶书',
  346. label: '隶书',
  347. },
  348. {
  349. value: '黑体',
  350. label: '黑体',
  351. },
  352. ]
  353. /* 初始赋值 */
  354. const activeNames = ref(['1']);
  355. const title = ref('属性编辑');
  356. const dialogVisible = ref(props.showDialog);
  357. const isShowLabelStyle = ref(false);
  358. const isShowPointStyle = ref(false);
  359. const isShowBillboardStyle = ref(false);
  360. const isShowModelStyle = ref(false);
  361. /* 文字 */
  362. const label = ref({
  363. content: '',//文字内容
  364. font: '',//文字字体
  365. fontSize: 0,//文字字体大小
  366. bolder: false,//文字是否加粗
  367. italic: false,//文字是否倾斜
  368. fillColor: '',//文字颜色
  369. showOutline: false,//是否显示描边线
  370. outlineColor: '',//描边线颜色
  371. outlineWidth: 0,//描边线宽度
  372. showBackground: false,//是否显示背景
  373. backgroundColor: '',//背景颜色
  374. backgroundPadding: 0,//以像素为单位指定水平和垂直背景填充。
  375. pixelOffsetX: 0,//横向偏移像素
  376. pixelOffsetY: 0//纵向偏移像素
  377. });
  378. /* 点 */
  379. const point = ref({
  380. color: '',//点颜色
  381. pixelSize: 10,//点像素大小
  382. showOutline: false,//是否显示描边线
  383. outlineColor: '',//描边线颜色
  384. outlineWidth: 0,//描边线宽度
  385. });
  386. /* 广告牌图片 */
  387. const billboard = ref({
  388. imgUrl: '',//图片路径
  389. alpha: 1,//透明度
  390. scale: 1,//放大比例
  391. });
  392. /* 模型 */
  393. const model = ref({
  394. url: '',//模型路径
  395. alpha: 1, // 模型透明度
  396. showSilhouette:false,//是否显示模型轮廓
  397. silhouetteSize:0,//模型轮廓宽度
  398. silhouetteColor: 'rgba(255,255,255,1)', //模型轮廓颜色
  399. minimumPixelSize: 1, // 模型最小刻度
  400. maximumScale: 1, // 模型的最大比例尺大小,设置模型最大放大大小
  401. heading: 0.0, // 以弧度为单位的航向分量
  402. pitch: 0.0, //以弧度为单位的螺距分量
  403. roll: 0.0, // 以弧度为单位的滚动分量
  404. });
  405. /* 初始化根据传递的属性更新 */
  406. updateParams(props.params);
  407. /**
  408. * 根据参数更新内容
  409. * @param {JSON} params 参数
  410. */
  411. function updateParams(params) {
  412. /* 保存到本地 */
  413. proxy._params = params;
  414. _setShowControls(false);
  415. /* 根据参数的显示不同的内容 */
  416. if (params.id === DrawPoint.DrawType.Label) {
  417. title.value = '文字编辑';
  418. activeNames.value = ['标注样式'];
  419. isShowLabelStyle.value = true;
  420. label.value.content = params.label.text;
  421. label.value.font = params.label.font;
  422. label.value.fontSize = params.label.fontSize;
  423. label.value.fillColor = params.label.fillColor;
  424. label.value.showOutline = params.label.showOutline;
  425. label.value.outlineColor = params.label.outlineColor;
  426. label.value.outlineWidth = params.label.outlineWidth;
  427. label.value.showBackground = params.label.showBackground;
  428. label.value.backgroundColor = params.label.backgroundColor;
  429. label.value.backgroundPadding = params.label.backgroundPadding;
  430. label.value.pixelOffsetX = params.label.pixelOffsetX;
  431. label.value.pixelOffsetY = params.label.pixelOffsetY;
  432. } else if (params.id === DrawPoint.DrawType.Point) {
  433. title.value = '点编辑';
  434. activeNames.value = ['点样式'];
  435. isShowPointStyle.value = true;
  436. point.value.color = params.point.color;
  437. point.value.pixelSize = params.point.pixelSize;
  438. point.value.showOutline = params.point.showOutline;
  439. point.value.outlineColor = params.point.outlineColor;
  440. point.value.outlineWidth = params.point.outlineWidth;
  441. } else if (params.id === DrawPoint.DrawType.Point2Label) {
  442. title.value = '点及文字编辑';
  443. activeNames.value = ['点样式', '标注样式'];
  444. isShowPointStyle.value = true;
  445. isShowLabelStyle.value = true;
  446. point.value.color = params.point.color;
  447. point.value.pixelSize = params.point.pixelSize;
  448. point.value.showOutline = params.point.showOutline;
  449. point.value.outlineColor = params.point.outlineColor;
  450. point.value.outlineWidth = params.point.outlineWidth;
  451. label.value.content = params.label.text;
  452. label.value.font = params.label.font;
  453. label.value.fontSize = params.label.fontSize;
  454. label.value.fillColor = params.label.fillColor;
  455. label.value.showOutline = params.label.showOutline;
  456. label.value.outlineColor = params.label.outlineColor;
  457. label.value.outlineWidth = params.label.outlineWidth;
  458. label.value.showBackground = params.label.showBackground;
  459. label.value.backgroundColor = params.label.backgroundColor;
  460. label.value.backgroundPadding = params.label.backgroundPadding;
  461. label.value.pixelOffsetX = params.label.pixelOffsetX;
  462. label.value.pixelOffsetY = params.label.pixelOffsetY;
  463. } else if (params.id === DrawPoint.DrawType.Billboard) {
  464. title.value = '广告牌编辑';
  465. activeNames.value = ['图片样式'];
  466. isShowBillboardStyle.value = true;
  467. billboard.value.imgUrl = params.billboard.imgUrl;
  468. billboard.value.alpha = params.billboard.alpha;
  469. billboard.value.scale = params.billboard.scale;
  470. } else if (params.id === DrawPoint.DrawType.Billboard2Label) {
  471. title.value = '广告牌及文字圆编辑';
  472. activeNames.value = ['图片样式', '标注样式'];
  473. isShowBillboardStyle.value = true;
  474. isShowLabelStyle.value = true;
  475. billboard.value.imgUrl = params.billboard.imgUrl;
  476. billboard.value.alpha = params.billboard.alpha;
  477. billboard.value.scale = params.billboard.scale;
  478. label.value.content = params.label.text;
  479. label.value.font = params.label.font;
  480. label.value.fontSize = params.label.fontSize;
  481. label.value.fillColor = params.label.fillColor;
  482. label.value.showOutline = params.label.showOutline;
  483. label.value.outlineColor = params.label.outlineColor;
  484. label.value.outlineWidth = params.label.outlineWidth;
  485. label.value.showBackground = params.label.showBackground;
  486. label.value.backgroundColor = params.label.backgroundColor;
  487. label.value.backgroundPadding = params.label.backgroundPadding;
  488. label.value.pixelOffsetX = params.label.pixelOffsetX;
  489. label.value.pixelOffsetY = params.label.pixelOffsetY;
  490. }else if (params.id === DrawPoint.DrawType.Model) {
  491. title.value = '小模型编辑';
  492. activeNames.value = ['小模型样式'];
  493. isShowModelStyle.value = true;
  494. model.value.url = params.model.url;
  495. model.value.alpha= params.model.alpha;
  496. model.value.showSilhouette= params.model.showSilhouette;
  497. model.value.silhouetteColor= params.model.silhouetteColor;
  498. model.value.silhouetteSize= params.model.silhouetteSize;
  499. model.value.minimumPixelSize= params.model.minimumPixelSize;
  500. model.value.maximumScale= params.model.maximumScale;
  501. model.value.heading= params.model.heading;
  502. model.value.pitch= params.model.pitch;
  503. model.value.roll= params.model.roll;
  504. }
  505. }
  506. /**
  507. * 显示控件设置
  508. * @param {Boolean} isShow 是否显示
  509. */
  510. function _setShowControls(isShow) {
  511. isShowLabelStyle.value = isShow;
  512. isShowPointStyle.value = isShow;
  513. isShowBillboardStyle.value = isShow;
  514. isShowModelStyle.value = isShow;
  515. }
  516. /**
  517. * 提交更改
  518. */
  519. function submit() {
  520. let outParam = proxy._params;
  521. outParam = {
  522. id: outParam.id,
  523. label: {
  524. text: label.value.content,
  525. font: label.value.font,
  526. fontSize: label.value.fontSize,
  527. bolder: label.value.bolder,
  528. italic: label.value.italic,
  529. fillColor: label.value.fillColor,
  530. showOutline: label.value.showOutline,
  531. outlineWidth: label.value.outlineWidth,
  532. outlineColor: label.value.outlineColor,
  533. showBackground: label.value.showBackground,
  534. backgroundColor: label.value.backgroundColor,
  535. backgroundPadding: label.value.backgroundPadding,
  536. pixelOffsetX: label.value.pixelOffsetX,
  537. pixelOffsetY: label.value.pixelOffsetY,
  538. },
  539. point: {
  540. color: point.value.color,
  541. pixelSize: point.value.pixelSize,
  542. showOutline: point.value.showOutline,
  543. outlineWidth: point.value.outlineWidth,
  544. outlineColor: point.value.outlineColor,
  545. },
  546. billboard: {
  547. imgUrl: billboard.value.imgUrl,
  548. alpha: billboard.value.alpha,
  549. scale: billboard.value.scale,
  550. },
  551. model:{
  552. url: model.value.url,
  553. alpha: model.value.alpha,
  554. showSilhouette:model.value.showSilhouette,
  555. silhouetteColor: model.value.silhouetteColor,
  556. silhouetteSize: model.value.silhouetteSize,
  557. minimumPixelSize: model.value.minimumPixelSize,
  558. maximumScale: model.value.maximumScale,
  559. heading: model.value.heading,
  560. pitch: model.value.pitch,
  561. roll: model.value.roll,
  562. }
  563. }
  564. emit('submit', outParam);
  565. }
  566. /**
  567. * 关闭
  568. */
  569. function close() {
  570. dialogVisible.value = false;
  571. }
  572. /**
  573. * 提交删除
  574. */
  575. function remove() {
  576. emit('remove', {});
  577. dialogVisible.value = false;
  578. }
  579. /**
  580. * 窗口关闭,修改双向绑定值
  581. */
  582. function closeDialog() {
  583. emit('update:showDialog', false);
  584. }
  585. /**
  586. * 窗口打开
  587. */
  588. function openDialog() {
  589. updateParams(props.params);
  590. }
  591. </script>
  592. <style lang="scss">
  593. /* 引入element-plus的内部样式 必须在此处引入 否则无效 */
  594. /* 为了保证引入的样式文件起作用 必须保证文件名称以.ce.vue结束 */
  595. @import 'element-plus/theme-chalk/index.css';
  596. //组件内部样式
  597. .el-button {
  598. height: 32rem !important;
  599. padding: 8rem 15rem !important;
  600. font-size: 14rem !important;
  601. }
  602. .el-input__wrapper {
  603. padding: 1rem 11rem !important;
  604. }
  605. .el-input {
  606. height: 32rem !important;
  607. font-size: 14rem !important;
  608. }
  609. .el-input-number {
  610. line-height: 30rem !important;
  611. width: 150rem;
  612. }
  613. .el-input-number__decrease,
  614. .el-input-number__increase {
  615. top: 1rem !important;
  616. bottom: 1rem !important;
  617. width: 32rem !important;
  618. font-size: 13rem !important;
  619. background-color: rgb(64 158 255);
  620. }
  621. .jt-drawing-row .col-left {
  622. font-size: 14rem !important;
  623. }
  624. .el-color-picker__trigger {
  625. height: 32rem !important;
  626. padding: 4rem !important;
  627. }
  628. .el-radio-button__inner {
  629. padding: 8rem 15rem !important;
  630. font-size: 14rem;
  631. }
  632. .el-textarea__inner {
  633. padding: 5rem 11rem !important;
  634. font-size: 14rem;
  635. }
  636. .el-input__inner {
  637. height: 32rem !important;
  638. font-size: 14rem !important;
  639. }
  640. //取消边框剪切
  641. .el-scrollbar {
  642. // background-color: gainsboro !important;
  643. color: #fff !important;
  644. background-color: rgba(5, 45, 115, 1) !important;
  645. overflow: visible !important;
  646. }
  647. /* 墙对话框内容行样式 */
  648. .jt-drawing-row {
  649. display: flex;
  650. flex-direction: row;
  651. height: 40rem;
  652. align-items: center;
  653. /* 行左侧标题样式 */
  654. .col-left {
  655. display: flex;
  656. align-items: center;
  657. justify-content: right;
  658. width: 60rem;
  659. font-family: 'Alimama_ShuHeiTi_Bold';
  660. font-weight: bold;
  661. margin-right: 8rem;
  662. }
  663. /* 主要内容样式 */
  664. .col-main {
  665. flex: 1;
  666. display: flex;
  667. flex-direction: row;
  668. .el-input--suffix {
  669. background-color: rgba(255, 255, 255, 0);
  670. }
  671. .el-input--suffix * {
  672. background-color: rgba(255, 255, 255, 0);
  673. color: rgba(255, 255, 255, 1);
  674. }
  675. /* 数字组件按钮背景色 */
  676. .el-input-number__decrease,
  677. .el-input-number__increase {
  678. background-color: rgb(64 158 255);
  679. color: rgb(255, 255, 255);
  680. }
  681. }
  682. }
  683. /* 墙对话框整体样式 */
  684. .jt-drawing-dialog {
  685. pointer-events: none; // ***覆盖层元素增加可穿透点击事件***
  686. .el-dialog {
  687. pointer-events: auto; // ***弹窗层元素不可穿透点击事件(不影响弹窗层元素的点击事件)***
  688. position: absolute !important; //将通知框的position改成absolute,可以在某个div进行显示
  689. background: rgb(5 45 155 / 70%);
  690. min-width: 280rem;
  691. overflow: hidden;
  692. left: 10rem;
  693. background: rgb(0 44 126 / 68%);
  694. height: calc(100% - 175rem);
  695. width: 180rem;
  696. top: 125rem;
  697. margin-top: 0rem;
  698. /* 对话框标题头样式 */
  699. .el-dialog__header {
  700. background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAAyCAIAAAD9fhrKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MzQ5OSwgMjAxOC8wOC8xMy0xNjo0MDoyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo4NTc1YTY2Yi1hY2U5LTUyNDctODM5MS01MGJjMjM4MDkxMDkiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RDY4MTUxMzk2RDM1MTFFRDkzM0JDNEQ5N0IwQTIxRjYiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RDY4MTUxMzg2RDM1MTFFRDkzM0JDNEQ5N0IwQTIxRjYiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6YjZlNTUzODYtMzRjZC02NDQyLWI4OTktODY4YTdiYTNkMzgyIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjg1NzVhNjZiLWFjZTktNTI0Ny04MzkxLTUwYmMyMzgwOTEwOSIv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) no-repeat;
  701. background-size: 100%;
  702. margin-right: 0rem;
  703. padding: 6rem;
  704. text-align: center;
  705. }
  706. /* 对话框关闭按钮的样式 */
  707. .el-dialog__headerbtn {
  708. height: 34rem;
  709. }
  710. .content {
  711. height: calc(100% - 120rem);
  712. width: 92%;
  713. overflow-y: auto;
  714. padding: 5rem 0 0 0;
  715. position: absolute;
  716. }
  717. .el-collapse {
  718. --el-collapse-border-color: rgb(0 44 126 / 0%);
  719. --el-collapse-header-text-color: #ffffff;
  720. --el-collapse-header-font-size: 13rem;
  721. --el-collapse-content-bg-color: rgb(0 44 126 / 0%);
  722. --el-collapse-content-font-size: 13rem;
  723. --el-collapse-content-text-color: rgb(216 240 255);
  724. --el-collapse-header-height: 40rem;
  725. --el-collapse-header-bg-color: rgb(30 130 255);
  726. .el-collapse-item__header {
  727. background-color: rgb(64 158 255);
  728. border-bottom: 2px solid rgb(22 90 190);
  729. }
  730. .el-collapse-item__content {
  731. padding: 10rem;
  732. // height: calc(100% - 200rem);
  733. // overflow-y: auto;
  734. }
  735. }
  736. /* 对话框主体的样式 */
  737. .el-dialog__body {
  738. padding: 10rem;
  739. color: #fff;
  740. }
  741. /* 颜色选择器的宽度 */
  742. .el-color-picker__trigger {
  743. width: 120rem;
  744. }
  745. /* 底部按钮容器样式 */
  746. .el-body-foot {
  747. position: absolute;
  748. bottom: 8rem;
  749. right: 8rem;
  750. width: calc(100% - 16rem);
  751. }
  752. /* 底部容器内分组容器样式 */
  753. .el-body-foot .el-button-group {
  754. display: flex;
  755. }
  756. /* 底部容器内按钮样式 */
  757. .el-body-foot .el-button-group .el-button {
  758. border: solid 0rem rgb(255, 0, 0);
  759. flex: 1;
  760. }
  761. }
  762. }
  763. </style>