setting.vue 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. <template>
  2. <div class="bs-setting-wrap">
  3. <el-form
  4. ref="form"
  5. :model="config"
  6. label-width="90px"
  7. label-position="left"
  8. class="setting-body bs-el-form"
  9. >
  10. <div>
  11. <el-form
  12. :model="config.customize"
  13. label-position="left"
  14. class="setting-body bs-el-form"
  15. label-width="90px"
  16. >
  17. <SettingTitle>标题</SettingTitle>
  18. <div class="lc-field-body">
  19. <el-form-item label="翻牌器名称">
  20. <el-input
  21. v-model="config.title"
  22. clearable
  23. />
  24. </el-form-item>
  25. </div>
  26. <SettingTitle>位置</SettingTitle>
  27. <div class="lc-field-body">
  28. <PosWhSetting :config="config" />
  29. </div>
  30. <SettingTitle>基础</SettingTitle>
  31. <div class="lc-field-body">
  32. <el-form-item label="字体颜色">
  33. <ColorPicker
  34. v-model="config.customize.color"
  35. :predefine="predefineThemeColors"
  36. />
  37. </el-form-item>
  38. <el-form-item label="卡片背景颜色">
  39. <ColorPicker
  40. v-model="config.customize.bgColor"
  41. :predefine="predefineThemeColors"
  42. />
  43. </el-form-item>
  44. <el-form-item label="卡片边框颜色">
  45. <ColorPicker
  46. v-model="config.customize.borderColor"
  47. :predefine="predefineThemeColors"
  48. />
  49. </el-form-item>
  50. <el-form-item label="卡片边框粗度">
  51. <el-input-number
  52. v-model="config.customize.borderWidth"
  53. class="bs-el-input-number"
  54. :min="0"
  55. :step="1"
  56. />
  57. </el-form-item>
  58. <el-form-item label="字体大小">
  59. <el-input-number
  60. v-model="config.customize.fontSize"
  61. class="bs-el-input-number"
  62. :min="12"
  63. :step="1"
  64. />
  65. </el-form-item>
  66. <el-form-item label="卡片宽度">
  67. <el-input-number
  68. v-model="config.customize.width"
  69. class="bs-el-input-number"
  70. :min="0"
  71. :step="1"
  72. />
  73. </el-form-item>
  74. <el-form-item label="卡片圆角">
  75. <el-input-number
  76. v-model="config.customize.borderRadius"
  77. class="bs-el-input-number"
  78. :min="0"
  79. :step="1"
  80. />
  81. </el-form-item>
  82. <el-form-item label="逗号分隔位置">
  83. <el-input-number
  84. v-model="config.customize.formatter"
  85. class="bs-el-input-number"
  86. :min="0"
  87. :max="100"
  88. :step="1"
  89. />
  90. </el-form-item>
  91. <el-form-item label="字体粗细">
  92. <el-input-number
  93. v-model="config.customize.fontWeight"
  94. class="bs-el-input-number"
  95. :min="0"
  96. :step="1"
  97. />
  98. </el-form-item>
  99. <el-form-item label="数字位数">
  100. <el-input-number
  101. v-model="config.customize.numberDigits"
  102. class="bs-el-input-number"
  103. :min="0"
  104. :step="1"
  105. />
  106. </el-form-item>
  107. <el-form-item label="卡片距离">
  108. <el-input-number
  109. v-model="config.customize.marginRight"
  110. class="bs-el-input-number"
  111. :min="0"
  112. :step="1"
  113. />
  114. </el-form-item>
  115. <el-form-item label="补位值">
  116. <el-input
  117. v-model="config.customize.placeHolder"
  118. clearable
  119. />
  120. </el-form-item>
  121. <el-form-item label="头部填充">
  122. <el-input
  123. v-model="config.customize.slotLeft"
  124. clearable
  125. />
  126. </el-form-item>
  127. <el-form-item label="尾部填充">
  128. <el-input
  129. v-model="config.customize.slotRight"
  130. clearable
  131. />
  132. </el-form-item>
  133. </div>
  134. </el-form>
  135. </div>
  136. </el-form>
  137. </div>
  138. </template>
  139. <script>
  140. import SettingTitle from 'packages/SettingTitle/index.vue'
  141. import ColorPicker from 'packages/ColorPicker/index.vue'
  142. import PosWhSetting from 'packages/BigScreenDesign/RightSetting/PosWhSetting.vue'
  143. export default {
  144. name: 'BarSetting',
  145. components: {
  146. ColorPicker,
  147. PosWhSetting,
  148. SettingTitle
  149. },
  150. data () {
  151. return {
  152. // 预设主题色
  153. predefineThemeColors: [
  154. '#007aff',
  155. '#1aa97b',
  156. '#ff4d53',
  157. '#1890FF',
  158. '#DF0E1B',
  159. '#0086CC',
  160. '#2B74CF',
  161. '#00BC9D',
  162. '#ED7D32'
  163. ]
  164. }
  165. },
  166. computed: {
  167. config: {
  168. get () {
  169. return this.$store.state.bigScreen.activeItemConfig
  170. },
  171. set (val) {
  172. this.$store.state.bigScreen.activeItemConfig = val
  173. }
  174. }
  175. },
  176. watch: {},
  177. mounted () {},
  178. methods: {}
  179. }
  180. </script>
  181. <style lang="scss" scoped>
  182. @import '../../assets/style/settingWrap.scss';
  183. .lc-field-body {
  184. padding: 12px 16px;
  185. }
  186. </style>