<template>
  <div class="bs-setting-wrap">
    <el-form
      ref="form"
      :model="config"
      class="setting-body bs-el-form"
      label-position="left"
      label-width="90px"
    >
      <el-form
        :model="config.customize"
        class="setting-body bs-el-form"
        label-position="left"
        label-width="90px"
      >
        <SettingTitle>标题</SettingTitle>
        <el-form-item
          class="lc-field-body"
          label="指标卡名称"
        >
          <el-input
            v-model="config.title"
            clearable
          />
        </el-form-item>
        <SettingTitle>位置</SettingTitle>
        <div class="lc-field-body">
          <PosWhSetting :config="config" />
        </div>
        <SettingTitle>旋转</SettingTitle>
        <div class="lc-field-body">
          <RotateSetting
            :config="config"
          />
        </div>
         <!-- <SettingTitle v-if="config.border">边框</SettingTitle>
          <div class="lc-field-body">
            <BorderSetting
              v-if="config.border"
              label-width="100px"
              :config="config.border"
              :bigTitle='config.title'
            />
          </div> -->
        <SettingTitle>基础</SettingTitle>
        <div class="lc-field-body">
          <el-form-item label-width="100px" label="渐变背景色一">
            <ColorPicker
              v-model="config.customize.gradientColor0"
              :predefine="predefineThemeColors"
            />
          </el-form-item>
          <el-form-item label-width="100px" label="渐变背景色二">
            <ColorPicker
              v-model="config.customize.gradientColor1"
              :predefine="predefineThemeColors"
            />
          </el-form-item>
          <el-form-item label-width="100px" label="渐变色方向">
              <el-select
                v-model="config.customize.gradientDirection"
                popper-class="bs-el-select"
                class="bs-el-select"
              >
                <el-option
                  v-for="iconPosition in options"
                  :key="iconPosition.value"
                  :label="iconPosition.label"
                  :value="iconPosition.value"
                />
              </el-select>
            </el-form-item>
          <el-form-item label-width="100px" label="边框颜色">
            <ColorPicker
              v-model="config.customize.borderColor"
              :predefine="predefineThemeColors"
            />
          </el-form-item>
          <el-form-item label-width="100px" label="边框粗细">
            <el-input-number
              v-model="config.customize.borderWidth"
              :precision="0"
              class="bs-el-input-number"
              label="请输入粗细"
            />
          </el-form-item>
          <el-form-item label-width="100px" label="边框圆角">
            <el-input-number
              v-model="config.customize.borderRadius"
              :precision="0"
              class="bs-el-input-number"
              label="请输入圆角值"
            />
          </el-form-item>
          <el-form-item
            label="单位"
            label-width="100px"
          >
            <el-input
              v-model="config.customize.unit"
              clearable
              placeholder="请输入单位"
            >
            </el-input>
          </el-form-item>
          <el-form-item label-width="100px" label="单位字体大小">
            <el-input-number
              v-model="config.customize.unitSize"
              :precision="0"
              class="bs-el-input-number"
              label="请输入单位字体大小"
            />
          </el-form-item>
          <el-form-item label-width="100px" label="单位字体颜色">
            <ColorPicker
              v-model="config.customize.unitColor"
              :predefine="predefineThemeColors"
            />
          </el-form-item>
          <el-form-item label-width="100px" label="上下间距">
            <el-input-number
              v-model="config.customize.lineDistance"
              :precision="0"
              class="bs-el-input-number"
              label="请输入上下间距"
            />
          </el-form-item>
          <el-form-item label-width="100px" label="首行文字大小">
            <el-input-number
              v-model="config.customize.firstSize"
              :precision="0"
              class="bs-el-input-number"
              label="请输入首行文字大小"
            />
          </el-form-item>
          <el-form-item
            label="数据文字类型"
            label-width="100px"
          >
            <el-select
              v-model="config.customize.fontFamily"
              popper-class="bs-el-select"
              class="bs-el-select"
            >
              <el-option
                v-for="item in fontFamilyList"
                :key="item.value"
                :label="item.label"
                :value="item.value"
              />
            </el-select>
          </el-form-item>
          <el-form-item label-width="100px" label="首行字体颜色">
            <ColorPicker
              v-model="config.customize.firstColor"
              :predefine="predefineThemeColors"
            />
          </el-form-item>
          <el-form-item label-width="100px" label="首行字体粗细">
            <el-input-number
              v-model="config.customize.firstWeight"
              :precision="0"
              :step="100"
              class="bs-el-input-number"
              label="请输入首行字体粗细"
            />
          </el-form-item>
          <el-form-item
            label="第二行文字内容"
            label-width="100px"
          >
            <el-input
              v-model="config.customize.secondLine"
              clearable
              placeholder="请输入第二行文字内容"
            />
          </el-form-item>
           <el-form-item label-width="100px" label="第二行文字大小">
            <el-input-number
              v-model="config.customize.secondSize"
              :precision="0"
              class="bs-el-input-number"
              label="请输入第二行文字大小"
            />
          </el-form-item>
           <el-form-item label-width="100px" label="第二行字体颜色">
            <ColorPicker
              v-model="config.customize.secondColor"
              :predefine="predefineThemeColors"
            />
          </el-form-item>
          <el-form-item label-width="100px" label="第二行字体粗细">
            <el-input-number
              v-model="config.customize.secondWeight"
              :precision="0"
              :step="100"
              class="bs-el-input-number"
              label="请输入第二行字体粗细"
            />
          </el-form-item>
        </div>
      </el-form>
    </el-form>
  </div>
</template>
<script>
import SettingTitle from 'data-room-ui/SettingTitle/index.vue'
import ColorPicker from 'data-room-ui/ColorPicker/index.vue'
import {predefineColors} from "data-room-ui/js/utils/colorList";
import BorderSetting from 'data-room-ui/BigScreenDesign/RightSetting/BorderSetting.vue'
import PosWhSetting from 'data-room-ui/BigScreenDesign/RightSetting/PosWhSetting.vue'
import RotateSetting from 'data-room-ui/BigScreenDesign/RightSetting/RotateSetting.vue'
import fontList from 'data-room-ui/js/utils/fontList'
export default {
  name: 'BarSetting',
  components: {
    ColorPicker,
    PosWhSetting,
    SettingTitle,
    BorderSetting,
    RotateSetting
  },
  data () {
    return {
      options: [
      {
        label: '从左到右',
        value: 'to right'
      },
      {
        label: '从右到左',
        value: 'to left'
      },
      {
        label: '从上到下',
        value: 'to bottom'
      },
      {
        label: '从下到上',
        value: 'to top'
      },
      {
        label: '从左上到右下',
        value: 'to bottom right'
      },
      {
        label: '从右上到左下',
        value: 'to bottom left'
      },
      {
        label: '从左下到右上',
        value: 'to top right'
      },
      {
        label: '从右下到左上',
        value: 'to top left'
      }
    ],
      // 预设主题色
      predefineThemeColors: predefineColors,
      fontFamilyList: fontList,
    }
  },
  computed: {
    config: {
      get () {
        return this.$store.state.bigScreen.activeItemConfig
      },
      set (val) {
        this.$store.state.bigScreen.activeItemConfig = val
      }
    }
  },
  watch: {},
  mounted () {
  },
  methods: {
  }
}
</script>

<style lang="scss" scoped>
.lc-field-body {
  padding: 12px 16px;
}
</style>
