jiangping
2024-06-20 09da100729793848bc01b51f7b05ca3f1e7ec64f
company/src/components/business/OperaSolutionsWindow.vue
@@ -44,27 +44,29 @@
                    </el-select>
                </div>
            </el-form-item>
            <el-form-item label="保险费用" prop="price">
            <el-form-item label="方案费用" prop="price">
                <div style="display: flex; align-items: center;">
                    <el-input v-model="form.price" style="flex: 1;" placeholder="请输入" v-trim/>
                    <span style="margin: 0 30px;">元/人</span>
                    <el-select v-model="form.timeUnit" style="flex: 1;" placeholder="请选择">
                    <el-select v-model="form.timeUnit" style="flex: 1;" placeholder="请选择周期单位" @change="changeTimeUnit">
                        <el-option label="天" :value="0"></el-option>
<!--                        <el-option label="半月" :value="1"></el-option>-->
                        <el-option label="月" :value="2"></el-option>
                        <el-option label="年" :value="3"></el-option>
                      <el-option label="月" :value="2"></el-option>
                      <el-option label="季度" :value="3"></el-option>
                      <el-option label="半年" :value="4"></el-option>
                      <el-option label="年" :value="5"></el-option>
                    </el-select>
                </div>
            </el-form-item>
            <el-form-item label="投保周期" prop="insureCycle">
            <el-form-item label="批改计费规则" prop="insureCycleUnit">
                <div style="display: flex; align-items: center;">
                    <el-input v-model="form.insureCycle" style="flex: 1;" placeholder="请输入" v-trim/>
                    <span style="margin: 0 30px;"></span>
                    <el-select v-model="form.insureCycleUnit" style="flex: 1;" placeholder="请选择">
                        <el-option label="天" :value="0"></el-option>
<!--                        <el-option label="半月" :value="1"></el-option>-->
                        <el-option label="月" :value="2"></el-option>
                        <el-option label="年" :value="3"></el-option>
                        <el-option  label="天" :value="0"></el-option>
                        <el-option v-if="form.timeUnit>=1"  label="半月" :value="1"></el-option>
                        <el-option v-if="form.timeUnit>=2"  label="月" :value="2"></el-option>
                        <el-option v-if="form.timeUnit>=3"  label="季度" :value="3"></el-option>
                        <el-option  v-if="form.timeUnit>=4"  label="半年" :value="4"></el-option>
                        <el-option v-if="form.timeUnit>=5" label="年" :value="5"></el-option>
                    </el-select>
                </div>
            </el-form-item>
@@ -76,17 +78,17 @@
                            <el-radio :label="1">次月生效</el-radio>
                        </el-radio-group>
                    </div>
                    <el-input style="margin-left: 20px;" type="number" v-model="form.validTypeNum" placeholder="请输入延迟天数" v-if="form.validType === 0"></el-input>
                    <el-input style="margin-left: 20px;" type="number" v-model="form.validTypeNum"   placeholder="请输入延迟天数" v-if="form.validType === 0"></el-input>
                </div>
            </el-form-item>
          <el-form-item label="是否支持" prop="addValidDays">
          <el-form-item label="批改支持" >
            <div style="width: 100%; display: flex; align-items: center;">
              <el-checkbox :true-label="1" :false-label="0"   v-model="form.canAdd">加保</el-checkbox>
              <el-checkbox :true-label="1" :false-label="0"   v-model="form.canReduce">减保</el-checkbox>
              <el-checkbox :true-label="1" :false-label="0"   v-model="form.canChangeUnit">更换派遣单位</el-checkbox>
            </div>
          </el-form-item>
          <el-form-item label="批减只支持替换(减保批改仅支持替换人员即减保人员少于加保人员)" prop="delOnlyReplace">
          <el-form-item label="批减只支持替换(减保批改仅支持替换人员,即减保人员不少于加保人员数量)"  prop="delOnlyReplace" v-if="form.insureCycleUnit===0 || (form.insureCycleUnit===form.timeUnit)">
            <div style="width: 100%; display: flex; align-items: center;">
              <el-radio-group v-model="form.delOnlyReplace">
              <el-radio :label="1">是</el-radio>
@@ -94,14 +96,14 @@
              </el-radio-group>
            </div>
          </el-form-item>
          <el-form-item label="批增生效(天数)" prop="addValidDays">
          <el-form-item label="批增生效(天数)" prop="addValidDays" v-if="form.delOnlyReplace != 1">
            <div style="width: 100%; display: flex; align-items: center;">
              <el-input style="margin-left: 20px;" type="number" v-model="form.addValidDays" placeholder="请输入批增生效时间(天数)" ></el-input>
              <el-input style="margin-left: 0px;" type="number" v-model="form.addValidDays"   placeholder="请输入批增生效时间(天数)" ></el-input>
            </div>
          </el-form-item>
          <el-form-item label="批减生效(天数)" prop="delValidDays">
            <div style="width: 100%; display: flex; align-items: center;">
              <el-input style="margin-left: 20px;" type="number" v-model="form.delValidDays" placeholder="请输入批减生效时间(天数)" ></el-input>
              <el-input style="margin-left: 0px;" type="number" v-model="form.delValidDays"   placeholder="请输入批减生效时间(天数)" ></el-input>
            </div>
          </el-form-item>
            <el-form-item label="投保类型" prop="type">
@@ -166,13 +168,13 @@
                </el-table-column>
            </el-table>
            <el-form-item label="特别约定" prop="specialAgreement">
                <el-input type="textarea" v-model="form.specialAgreement" placeholder="请输入特别约定" v-trim/>
                <RichEditor   :richData="form.specialAgreement" :styleEditor="'border: 1px solid #ccc;display: inline-block;'" @getWangedditor="getWangedditor" :readonly="false"/>
            </el-form-item>
            <el-form-item label="特别说明" prop="specialInfo">
                <el-input type="textarea" v-model="form.specialInfo" placeholder="请输入特别说明" v-trim/>
              <RichEditor   :richData="form.specialInfo" :styleEditor="'border: 1px solid #ccc;display: inline-block;'" @getWangedditor="getWangedditor1" :readonly="false"/>
            </el-form-item>
            <el-form-item label="其他说明" prop="ortherInfo">
                <el-input type="textarea" v-model="form.ortherInfo" placeholder="请输入其他说明" v-trim/>
          <el-form-item label="其他说明" prop="ortherInfo">
               <RichEditor   :richData="form.ortherInfo" :styleEditor="'border: 1px solid #ccc;display: inline-block;'" @getWangedditor="getWangedditor2" :readonly="false"/>
            </el-form-item>
        </el-form>
    </GlobalWindow>
@@ -186,10 +188,12 @@
import { solutionsId } from '@/api/business/solutions'
import { pageAll as shopList } from '@/api/business/company'
import UploadFile from '@/components/common/UploadFile'
import { checkMobile, numRule } from '@/utils/form'
import RichEditor from '@/components/common/RichEditor'
export default {
  name: 'OperaSolutionsWindow',
  extends: BaseOpera,
  components: { GlobalWindow, UploadFile },
  components: { GlobalWindow, UploadFile, RichEditor },
  data () {
    var validType = (rule, value, callback) => {
      if (this.form.validType === 0 && !value) {
@@ -236,6 +240,15 @@
        name: [
          { required: true, message: '请输入方案名称' }
        ],
        delOnlyReplace: [
          { required: true, message: '请选择' }
        ],
        addValidDays: [
          { validator: numRule }
        ],
        delValidDays: [
          { validator: numRule }
        ],
        insuranceId: [
          { required: true, message: '请选择保险公司' }
        ],
@@ -246,10 +259,10 @@
          { required: true, message: '请选择投保年龄' }
        ],
        price: [
          { required: true, message: '请输入保险费用' }
          { required: true, message: '请输入方案费用' }
        ],
        insureCycle: [
          { required: true, message: '请输入投保周期' }
        insureCycleUnit: [
          { required: true, message: '请输入批改计费单位' }
        ],
        validTypeNum: [
          { required: true, validator: validType }
@@ -273,6 +286,30 @@
    })
  },
  methods: {
    getWangedditor(val){
      this.form.specialAgreement = val;
    },
    getWangedditor1(val){
      this.form.specialInfo = val;
    },
    getWangedditor2(val){
      this.form.ortherInfo = val;
    },
    handNumberInput (value) {
      const regex = /^[-+]?\d*$/
      if (!regex.test(value)) {
        // 如果输入的不是整数,则设置为上一个有效的整数值
        this.form.addValidDays = value.replace(/[^0-9]/g, '')
        this.form.addValidDays = value.replace(/[^0-9]/g, '')
        this.form.delValidDays = value.replace(/[^0-9]/g, '')
      }
    },
    changeTimeUnit () {
      if (this.form.timeUnit < this.form.insureCycleUnit) {
        this.form.insureCycleUnit = null
      }
    },
    editFanganFile (data) {
      this.form.fanganFile = data
    },