<template>
  <div class="add-good-con">
    <Card v-if="loading" class="loading-card">
      <Spin fix size="large" />
    </Card>
    <Card v-else>
      <div class="head">
        <Icon type="md-bookmark" color="#2d8cf0" :size="28" />
        <label>{{ title }}</label>
      </div>
      <base-info :data="form.baseInfo" :isDetail="isDetail" :isEdit="isEdit" :isAgain="isAgain"/>
      <sale-info
        :data="form.saleInfo"
        :isDetail="isDetail"
        :isEdit="isEdit"
        :isAgain="isAgain"
        :isSelf="isSelf"
        :status="status"
      />
      <decipt-info :data="form.deciptInfo" :isDetail="isDetail" :status="status"/>
      <info-con title="销售信息：" class="base-info-con">
      <div class="series-info">
        <label class="label">是否允许延后提货：</label>
        <i-switch v-model="form.delayDelivery" :disabled="delayDeliveryDisabled || isDetail"/>
      </div>
      <div class="series-info">
        <label class="label">退换货类型：</label>
        <RadioGroup v-model="form.returnType">
          <Radio label="0" :disabled="isDetail" class="ivu-radio">不支持</Radio>
          <Radio label="1" :disabled="isDetail" class="ivu-radio">七天无理由退货</Radio>
          <Radio label="2" :disabled="isDetail" class="ivu-radio">
            自定义
            <Input v-model="form.returnReason" :disabled="isDetail" type="textarea" placeholder="请输入退货缘由" style="width: 200px" />
          </Radio>

        </RadioGroup>
      </div>
      <div class="series-info">
        <label class="label">商品备注：</label>
          <Input v-model="form.note" :readonly="isDetail" type="textarea" placeholder="商品备注" style="width: 200px" />
      </div>
      </info-con>
      <info-con title="溯源信息" class="base-info-con">
        <div class="series-info">
        <label class="label">溯源编号：</label>
        <Input v-model="form.traceabilityNumber" :readonly="isDetail" placeholder="请输入溯源系统的商品溯源编号(非必填)" style="width: 400px" />
      </div>
      </info-con>
      <div class="submit-con">
        <Button
          type="primary"
          @click="handleSubmit"
          v-if="!isDetail"
          :loading="submitLoading"
          >提交商品信息</Button
        >
      </div>
    </Card>
  </div>
</template>

<script>
import BaseInfo from './base-info'
import SaleInfo from './sale-info'
import DeciptInfo from './decpit-info'
import { getPosterFromVideoUrl } from '@/libs/tools'
import { mapMutations } from 'vuex'
import InfoCon from './info-con'
import { formatTime } from '../../../libs/ali-oss'
export default {
  name: 'add_good',
  components: {
    BaseInfo,
    SaleInfo,
    DeciptInfo,
    InfoCon
  },
  computed: {
    title () {
      if (this.routeName === 'commodity_update_good') {
        return '编辑商品 - 填写商品信息'
      } else if (this.routeName == 'commodity_good_detail') {
        return '商品详情'
        // this.isSelf // : `商品详情（ 品牌商：${this.form.brandName} ）`
      } else if (this.routeName === 'commodity_again_good') {
        return '重新发布商品 - 填写商品信息'
      } else {
        return '发布商品 - 填写商品信息'
      }
    },
    isDetail () {
      return this.routeName === 'commodity_good_detail'
    },
    isAdd () {
      return this.routeName === 'commodity_add_good'
    },
    isEdit () {
      return this.routeName === 'commodity_update_good'
    },
    isAgain () {
      return this.routeName === 'commodity_again_good'
    },
    isSelf () {
      return this.form.brandId === this.$store.state.admin.brandId
    },
    status () {
      return this.form.baseInfo.type
    }
  },
  data () {
    return {
      routeName: '',
      delayDeliveryDisabled: false,
      form: {
        brandId: '',
        brandName: '',
        goodsId: '',

        // templateId: '',
        baseInfo: {
          name: '', // 商品名称
          description: '', // 商品描述
          prop: [{ name: '', val: '' }], // 商品属性
          categoryId: [], // 类目选择
          type: '6', // 商品类型
          coinName: ''
        },
        saleInfo: {
          sku: [],
          imgObj: {},
          commodityPass: 3,
          originalPrice: '',
          weight: '',
          nftSalesType: '',
          stock: ''
          // statu:this.status
        },
        deciptInfo: {
          video: '',
          videoList: [],
          nftFile: '',
          nftEnclosureList: [],
          videoThumb: '',
          thumb: '',
          thumbList: [],
          detailPictures: [],
          detailDescribe: '',
          defaultDetailPicture: [],
          defaultVideoList: [],
          defaultThumbList: [],
          defaultNftEnclosureList: []
          // statu:this.status
        },
        returnType: '', // 退货类型
        returnReason: '', // 退货理由
        note: '', // 商品备注
        buyerDeposit: '', // 买家保证金
        priceIncrease: '', // 出价最小增幅
        endTime: '', // 结束时间
        deposit: '', // 首付比例
        depositType: '', // 首付比例类型
        drawStartTime: '', // 预计提货开始时间
        drawEndTime: '', // 预计提货结束时间
        saleStartTime: '', // 预售开始时间
        saleEndTime: '', // 预售结束时间
        stock: '', // 积分库存
        pnum: '', // 积分数量
        traceabilityNumber: '', // 溯源编号
        delayDelivery: false, // 延迟提货
        packageDTO: {
          resource: [{ integralMerchantNameList: [], goodsId: '', skuId: '', number: '', specificationsList: [], actualNumber: '' }], // 打包资源
          price: '', // 打包价格
          stock: ''// 库存
        },
        nftdto: {
          number: '', // 发行数量：只有商户选择“可拷贝”时，才会出现
          price: '', // 商品价格
          type: '', // NFT类型（1.单个，不可考贝 2.可拷贝）
          tzType: '', // 1.内部发行 2.外部绑定
          tokenId: '' // 绑定的外部通证id
        }

      },
      skuNumber: '',
      loading: true,
      expressList: [],
      profitList: [],
      integralMerchantNameList: [],
      specificationsList: [],
      idx: '',
      fixedProportion: '',
      fixedAmount: '',
      nftList: [],
      submitLoading: false
    }
  },
  methods: {
    ...mapMutations(['closeTag']),
    requestOptionData () {
      // 获取快递模板
      this.api({
        apiName: 'templateList',
        success: (res) => {
          this.expressList = res.data
        }
      })
    },
    getDelayDelivery () {
      if (!this.isDetail) {
        this.api({
          apiName: 'merchantDelayDelivery',
          success: (res) => {
            if (res.data == 0) {
              this.delayDeliveryDisabled = true
            }
          }
        })
      }
    },
    getTemplateorshopquery () {
      if (this.isAdd) {
        this.api({
          apiName: 'templateorshopquery',
          success: (res) => {
          }
        })
      }
    },
    requestGoodDetail (goodsId) {
      this.loading = true
      this.api({
        apiName: 'getGoodDetail',
        postdata: { goodsId },
        success: (res) => {
          let {
            brandId,
            brandName,
            // templateId,
            name,
            description,
            prop,
            skus,
            imgList,
            video,
            videoThumb,
            thumb,
            detail,
            type,
            note,
            returnType,
            traceabilityNumber,
            delayDelivery,
            returnReason,
            categoryName,
            categoryIds,
            preSaleVO,
            auctionVO,
            commodityPass,
            goodsPackageVO,
            goodsNftVO,
            nftFile
          } = res.data

          this.form.brandId = brandId
          this.form.brandName = brandName
          // this.form.templateId = templateId
          this.form.note = note
          this.form.returnType = returnType.toString()
          this.form.returnReason = returnReason
          this.form.traceabilityNumber = traceabilityNumber
          if (delayDelivery == 0) {
            this.form.delayDelivery = false
          } else {
            this.form.delayDelivery = true
          }
          if (auctionVO) {
            this.form.buyerDeposit = auctionVO.buyerDeposit
            this.form.priceIncrease = auctionVO.priceIncrease
            this.form.endTime = formatTime(auctionVO.endTime)
          }
          this.form.baseInfo = {
            name,
            description,
            prop: JSON.parse(prop),
            type: type.toString(),
            categoryId: this.isAgain ? JSON.parse(categoryIds) : categoryName
          }
          let newSku = []
          skus.forEach((item) => {
            let { image, propertyList } = item
            let upload = {
              imageList: [image],
              defaultImgList: [image]
            }
            let prop = {}
            propertyList.forEach((pItem) => {
              prop[pItem.propKey] = pItem.propVal
            })
            newSku.push({ ...item, ...prop, upload })
          })
          this.form.saleInfo.sku = newSku
          this.form.saleInfo.commodityPass = commodityPass
          this.form.deciptInfo = {
            nftFile,
            nftEnclosureList: [nftFile],
            video,
            videoList: [video],
            videoThumb,
            thumb,
            thumbList: [thumb],
            detailPictures: JSON.parse(imgList),
            detailDescribe: detail,

            defaultDetailPicture: JSON.parse(imgList),
            defaultVideoList: [video],
            defaultThumbList: [thumb],
            defaultNftEnclosureList: [nftFile]
          }
          if (!video) {
            this.form.deciptInfo.video = ''
            this.form.deciptInfo.defaultVideoList = []
          }
          if (!nftFile) {
            this.form.deciptInfo.nftFile = ''
            this.form.deciptInfo.defaultNftEnclosureList = []
          }
          if (type == 2) {
            this.form.depositType = preSaleVO.depositType.toString()
            if (this.form.depositType == 1) {
              this.fixedProportion = preSaleVO.deposit
            } else {
              this.fixedAmount = preSaleVO.deposit
            }
            // this.form.deposit = preSaleVO.deposit
            this.form.drawEndTime = formatTime(preSaleVO.drawEndTime)
            this.form.drawStartTime = formatTime(preSaleVO.drawStartTime)
            this.form.saleEndTime = formatTime(preSaleVO.saleEndTime)
            this.form.saleStartTime = formatTime(preSaleVO.saleStartTime)
          }
          if (goodsPackageVO) {
            goodsPackageVO.resource.forEach((item, index) => {
              item.name = item.goodsName
              let stock = item.sku.number + (item.number * goodsPackageVO.stock)
              // console.log('stock', stock)
              item.specificationsList = [
                { name: item.sku.name, skuId: item.sku.skuId, stock: stock }
              ]
              item.skuId = item.sku.skuId
            })
            this.form.packageDTO = goodsPackageVO
          }

          if (goodsNftVO) {
            goodsNftVO.type = goodsNftVO.type.toString()
            goodsNftVO.tzType = goodsNftVO.tzType.toString()
            // goodsNftVO.tokenId = goodsNftVO.tokenId

            this.form.nftdto = goodsNftVO
            // console.log('22222222', this.form.nftdto)
          }
          // this.form.nftdto = nftdto
        },
        complete: () => {
          this.loading = false
        }
      })
    },
    initData () {
      let routeName = this.$route.name
      let { goodsId, labelName } = this.$route.query
      this.form.baseInfo.coinName = labelName
      this.form.goodsId = goodsId
      this.routeName = routeName
      if (routeName == 'update_good' || routeName == 'good_detail' || routeName == 'again_good') {
        this.requestGoodDetail(goodsId)
      } else {
        this.loading = false
      }
    },
    checkForm () {
      let errMsg = ''
      let form = {
        auctionDTO: {},
        pointsExchangeDTO: {},
        preSaleDTO: {},
        skuList: [{
          coinName: '',
          originalPrice: '',
          nftSalesType: '',
          propertyList: [{
            propKey: '',
            propVal: ''
          }],
          republish: '',
          skuId: '',
          stock: ''
        }],
        packageDTO: {},
        nftdto: {}
      }

      let {
        goodsId,
        // templateId,
        baseInfo,
        saleInfo,
        deciptInfo,
        returnType,
        returnReason,
        note,
        deposit,
        depositType,
        buyerDeposit,
        priceIncrease,
        drawStartTime,
        drawEndTime,
        saleStartTime,
        saleEndTime,
        endTime,
        stock,
        pnum,
        traceabilityNumber,
        delayDelivery,
        nftdto,
        // packagePrice
        packageDTO
      } = this.form
      form.goodsId = goodsId
      if (!baseInfo) {
        return { errMsg: '请完善基本信息！' }
      }
      if (!baseInfo.name) {
        return { errMsg: '请填写 基本信息 - 商品名称！' }
      }
      if (!baseInfo.type) {
        return { errMsg: '请填写 基本信息 - 商品类型！' }
      }
      if (!baseInfo.description) {
        return { errMsg: '请填写 基本信息 - 商品描述！' }
      }
      // if (
      //   (!baseInfo.prop ||
      //   baseInfo.prop.length === 0 ||
      //   !baseInfo.prop[0].name ||
      //   !baseInfo.prop[0].val)
      // ) {
      //   return { errMsg: '请填写 基本信息 - 商品属性！' }
      // }
      if (
        (!baseInfo.categoryId ||
        baseInfo.categoryId.length === 0)
      ) {
        return { errMsg: '请填写 基本信息 - 类目选择！' }
      }
      form = { ...form, ...baseInfo }
      // 销售信息
      if (baseInfo.type != 6 && baseInfo.type != 5) {
        if (
          (!saleInfo.sku ||
        saleInfo.sku.length === 0)
        ) {
          return { errMsg: '请完善规格信息！' }
        }
        let skuIndex = 0
        saleInfo.sku.forEach((item) => {
        // console.log('item', item)
          if (!item.originalPrice && item.originalPrice != 0) {
            errMsg = '请填写 规格信息 - 价格！'
          }
          if (!item.stock) {
            errMsg = '请填写 规格信息 - 库存！'
          }
          if (this.isAdd && saleInfo.commodityPass == 1 && !item.coinName) {
            errMsg = '请填写 规格信息 - Token名称！'
          }
          if (!item.weight) {
            errMsg = '请填写 规格信息 - 重量！'
          }
          if ((item.weight == 0 || (item.weight && item.weight < 0) || item.weight > 9999)) {
            errMsg = '规格信息 - 重量 格式不正确！'
          }
          item.weight = parseFloat(item.weight)
          if (!/^[0-9]+(.[0-9]{1,2})?$/.test(item.weight)) {
            errMsg = '规格信息 - 重量 最多至小数点后两位！'
          }
          // console.log('coinName', item.coinName)
          if (this.isAdd && saleInfo.commodityPass == 1 && !/^[A-Z0-9]{2,10}$/.test(item.coinName)) {
            errMsg = '规格信息 - Token名称 格式不正确！'
          }
          if ((item.originalPrice <= 0 || item.originalPrice > 999999)) {
            errMsg = '规格信息 - 价格 格式不正确！'
          }
          item.originalPrice = parseFloat(item.originalPrice)
          if (!/^[0-9]+(.[0-9]{1,2})?$/.test(item.originalPrice)) {
            errMsg = '规格信息 - 价格 最多至小数点后两位！'
          }
          if ((item.stock < 0 || !/^\d+$/.test(item.stock) || item.stock > 99999999)) {
            errMsg = '规格信息 - 库存 格式不正确！'
          }
          if (
            item.upload &&
          item.upload.imageList &&
          item.upload.imageList.length !== 0
          ) {
            saleInfo.sku[skuIndex].image = item.upload.imageList[0]
          }
          skuIndex++
        })
        if (errMsg) {
          return { errMsg }
        }

        form.skuList = saleInfo.sku
        form.commodityPass = saleInfo.commodityPass

        if (form.commodityPass == 1) {
          form.skuList = form.skuList.map(item => {
            let {
              coinName,
              coinNamePrefix,
              ...other
            } = item
            return { coinName: coinNamePrefix + coinName, ...other }
          })
        }
        if (form.commodityPass == 2 && !this.isEdit) {
          form.skuList.forEach(item => {
            let name = JSON.parse(item.name)
            item.commodityPassId = name.commodityPassId
            item.coinName = `${item.coinNamePrefix}${name.labelName}`
          })
        }
      }
      if (baseInfo.type == 6 && saleInfo.sku.length != 0) {
        // console.log(11111, saleInfo.sku)
        form.skuList = saleInfo.sku
      }
      // form.skuList = skuList
      // console.log('form.skuList', form.skuList)
      // 图文信息
      if (!deciptInfo) {
        return { errMsg: '请完善图文描述！' }
      }
      if (!deciptInfo.detailPictures ||
        deciptInfo.detailPictures.length === 0) {
        return { errMsg: '请上传 图文描述 - 商品图片！' }
      }
      // if (!deciptInfo.videoList || deciptInfo.videoList.length === 0) {
      //   return { errMsg: '请上传 图文描述 - 商品视频！' }
      // }
      if (!deciptInfo.thumbList || deciptInfo.thumbList.length === 0) {
        return { errMsg: '请上传 图文描述 - 缩略图！' }
      }
      if (deciptInfo.detailDescribe.length > 18000) {
        return { errMsg: '图文描述 - 详情描述 内容长度过长！' }
      }
      if (deciptInfo.detailDescribe.length == 0) {
        return { errMsg: '图文描述 - 请输入详情描述！' }
      }
      // form = { ...form, ...deciptInfo }
      form.thumb = deciptInfo.thumbList[0]
      form.imgList = JSON.stringify(deciptInfo.detailPictures)
      form.detail = deciptInfo.detailDescribe
      if (deciptInfo.videoList && deciptInfo.videoList.length !== 0) {
        form.video = deciptInfo.videoList[0]
        form.videoPoster = getPosterFromVideoUrl(form.video)
      } else {
        form.video = ''
        form.videoPoster = ''
      }
      if (deciptInfo.nftEnclosureList && deciptInfo.nftEnclosureList.length !== 0) {
        form.nftFile = deciptInfo.nftEnclosureList[0]
        // form.videoPoster = getPosterFromVideoUrl(form.video)
      } else {
        form.nftFile = ''
      }
      // console.log('form',form)
      // 快递模板
      // if (!templateId) {
      //   return { errMsg: '请选择快递模板！' }
      // }
      // form.templateId = templateId
      // 打包价格
      if (!packageDTO.price && baseInfo.type == 5) {
        return { errMsg: '请填写打包价格' }
      }
      form.packageDTO.price = packageDTO.price
      // 打包资源
      packageDTO.resource.forEach(item => {
        if (!item.skuId && baseInfo.type == 5) {
          errMsg = '请选择规格！'
        }
        if (!item.number && item.number != 0 && baseInfo.type == 5) {
          errMsg = '请填写数量！'
        }
      })
      form.packageDTO.resource = packageDTO.resource
      form.packageDTO.resource = form.packageDTO.resource.map(item => {
        let {
          skuId,
          number
        } = item
        return { skuId: skuId, number: number }
      })
      form.packageDTO.resource = JSON.stringify(form.packageDTO.resource)
      if (!packageDTO.stock && baseInfo.type == 5) {
        return { errMsg: '请填写打包库存' }
      }
      form.packageDTO.stock = packageDTO.stock
      // NFT商品价格
      // console.log('nftdto', nftdto)
      if (!nftdto.price && baseInfo.type == 6) {
        return { errMsg: '请填写商品价格' }
      }
      // NFT类型
      if (!nftdto.type && baseInfo.type == 6 && nftdto.tzType == 1) {
        return { errMsg: '请选择NFT类型' }
      }
      // NFT类型
      if (!nftdto.number && baseInfo.type == 6 && nftdto.type == 2) {
        return { errMsg: '请填写发行数量' }
      }
      form.nftdto = nftdto
      // 退货类型
      if (!returnType && returnType != 0) {
        return { errMsg: '请选择退货类型' }
      }
      form.returnType = returnType
      // 自定义退货(退货理由)
      if (returnReason == '' && returnType == 2) {
        return { errMsg: '请描述退货理由' }
      }
      form.returnReason = returnReason
      // 商品备注
      if (!note) {
        return { errMsg: '请填写商品备注' }
      }
      form.note = note
      if (!depositType && baseInfo.type == 2) {
        return { errMsg: '请选择预售定金类型' }
      }
      form.preSaleDTO.depositType = depositType
      // 首付比例
      if (baseInfo.type == 2) {
        if (depositType == 1) {
          deposit = this.fixedProportion
        } else {
          deposit = this.fixedAmount
        }
      }
      if (!deposit && baseInfo.type == 2) {
        return { errMsg: '请填写首付比例' }
      }
      form.preSaleDTO.deposit = deposit
      // 预计提货开始时间
      if (!drawStartTime && baseInfo.type == 2) {
        return { errMsg: '请填写预计提货开始时间' }
      }
      form.preSaleDTO.drawStartTime = drawStartTime
      // 预计提货结束时间
      if (!drawEndTime && baseInfo.type == 2) {
        return { errMsg: '请填写预计提货结束时间' }
      }
      form.preSaleDTO.drawEndTime = drawEndTime
      // 预售开始时间
      if (!saleStartTime && baseInfo.type == 2) {
        return { errMsg: '请填写预售开始时间' }
      }
      form.preSaleDTO.saleStartTime = saleStartTime
      // 预售结束时间
      if (!saleEndTime && baseInfo.type == 2) {
        return { errMsg: '请填写预售结束时间' }
      }
      form.preSaleDTO.saleEndTime = saleEndTime
      // 买家保证金
      if (!buyerDeposit && baseInfo.type == 3) {
        return { errMsg: '请填写拍卖保证金' }
      }
      if ((buyerDeposit < 0 || !/^\d+$/.test(buyerDeposit)) && baseInfo.type == 3) {
        return { errMsg: '拍卖保证金格式输入有误！' }
      }
      form.auctionDTO.buyerDeposit = buyerDeposit
      // 出价最小增幅
      if (!priceIncrease && baseInfo.type == 3) {
        return { errMsg: '请填写出价最小增幅' }
      }
      if ((priceIncrease < 0 || !/^\d+$/.test(priceIncrease)) && baseInfo.type == 3) {
        return { errMsg: '出价最小增幅格式输入有误！' }
      }
      form.auctionDTO.priceIncrease = priceIncrease
      if (!endTime && baseInfo.type == 3) {
        return { errMsg: '请填写拍卖结束时间' }
      }
      form.auctionDTO.endTime = endTime
      // 积分库存
      // if (!stock && baseInfo.type == 4) {
      //   return { errMsg: '请填写库存' }
      // }
      // form.pointsExchangeDTO.stock = stock
      // // 积分数量
      // if (!pnum && baseInfo.type == 4) {
      //   return { errMsg: '请填写积分数量' }
      // }
      form.pointsExchangeDTO.pnum = pnum
      form.traceabilityNumber = traceabilityNumber
      form.delayDelivery = delayDelivery == true ? '1' : '0'
      return { errMsg, form }
    },
    handleSubmit () {
      let { errMsg, form } = this.checkForm()
      // console.log('form', form)
      if (errMsg) {
        return this.$Notice.warning({ title: errMsg })
      }
      if (!errMsg) {
        form.categoryId = JSON.stringify(form.categoryId)
        form.prop = JSON.stringify(form.prop)
        form.type = JSON.parse(form.type)
      }
      if (!errMsg) {
        if (form.type == 6) {
          // form.commodityPass = 0
          form.skuList.forEach(item => {
            item.originalPrice = form.nftdto.price
            item.coinName = form.nftdto.tokenId
            item.republish = false
            item.propertyList = [{ propKey: '规格', propVal: form.name }]
            item.stock = form.nftdto.number
            item.image = form.thumb
            item.nftSalesType = ''
          })
        }
      }
      // form.detail
      var regex1 = new RegExp("(i?)(\<p)(?!(.*?style=['\"](.*)['\"])[^\>]+\>)", 'gmi')
      form.detail = form.detail.replace(regex1, '$2 style="padding:0 10px"$3')
      // console.log('form', form)
      let apiName = this.isAdd ? 'addGood' : this.isAgain ? 'republishGood' : 'updateGood'
      let title = this.isAdd ? '添加成功！' : this.isAgain ? '重新发布成功！' : '编辑成功！'
      this.submitLoading = true
      this.api({
        apiName,
        postdata: form,
        success: (res) => {
          // 关闭当前标签页
          let route = this.$route
          let toRouteName = 'product_list'
          this.closeTag({ route, toRouteName })
          this.$Notice.success({ title })
        },
        complete: () => {
          this.submitLoading = false
        }
      })
    }

  },
  mounted () {
    this.requestOptionData()
    this.initData()
    this.getDelayDelivery()
    this.getTemplateorshopquery()
    // console.log('base', this.form.baseInfo)
  }
}
</script>

<style lang="less" scoped>
.add-good-con {
  height: 100%;
  .loading-card {
    height: 100%;
  }
  .head {
    color: #17233d;
    font-size: 18px;
    font-weight: bold;
    display: flex;
    align-items: center;
    margin-bottom: 15px;
    i {
      margin-right: 10px;
    }
  }
  .series-info {
    padding: 5px 36px;
    // border: 1px solid #dcdee2;
    // border-radius: 5px;
    margin-bottom: 10px;
    .label {
      // color: #17233d;
      font-size: 12px;
      // font-weight: bold;
    }
    .ivu-radio{
      width: 200px;
    }
    .ivu-select {
      width: 200px;
    }
  }
  .series-time{
    padding: 5px 36px;
    margin-bottom: 10px;
    display: flex;
    flex: 1;
    .label {
      padding: 5px;
      font-size: 12px;
    }
    .time{
      display: flex;
      justify-content: space-around;
    }
  }
  .submit-con {
    text-align: center;
  }
  .package-resources{
    padding: 5px 36px;
    margin-bottom: 10px;
    align-items: center;
    display: flex;
    .label {
      // color: #17233d;
      text-align: right;
      font-size: 12px;
      // font-weight: bold;
    }
    .property-con{
      border: 1px solid #dcdee2;
      border-radius: 5px;
      padding: 20px;
      align-items: center;
      .property-item{

        // display: flex;
        // justify-content: space-between;
        align-items: center;
        margin-bottom: 10px;
        padding-right: 30px;
        .del-con {
          // float: left;
          margin-left: 5px;
          cursor: pointer;
        }
      }
    }
  }
}
</style>
