k94314517
2025-05-26 c1785f39c1b6a2e3cd2380de1dd6c87a684215b1
company/src/components/business/OperaSolutionsBaseWindow.vue
@@ -126,6 +126,40 @@
                    </u-table-column>
                </u-table>
            </div>
            <el-form-item label="风险设置" prop="risk">
                <div class="tx">
                    <div class="tx_item">
                        <div class="tx_item_head">
                            <span>延迟报案提醒</span>
                            <el-switch :active-value="1" :inactive-value="0" v-model="form.riskDelayStatus"></el-switch>
                        </div>
                        <div class="tx_item_content">
                            <span>规则设置:当报案时间超过案发时间</span>
                            <el-input-number style="margin: 0 15px;" :disabled="form.riskDelayStatus === 0" v-model="form.riskDelayTime" :min="1"></el-input-number>
                            <el-select v-model="form.riskDelayUnit" :disabled="form.riskDelayStatus === 0" style="width: 100px; margin-right: 15px;" placeholder="请选择">
                                <el-option label="分钟" :value="0"></el-option>
                                <el-option label="小时" :value="1"></el-option>
                                <el-option label="天" :value="2"></el-option>
                            </el-select>
                            <span>时,进行提醒。</span>
                        </div>
                    </div>
                    <div class="tx_item">
                        <div class="tx_item_head">
                            <span>允许对新员工已投保未生效保险进行保障</span>
                            <el-switch :active-value="1" :inactive-value="0" v-model="form.riskNewUserStatus"></el-switch>
                        </div>
                        <div class="tx_item_content">
                            <span>规则设置:允许出险时间在保单生效前</span>
                            <el-input-number style="margin: 0 15px;" v-model="form.riskNewUserTime" :min="1"></el-input-number>
                            <el-select v-model="form.riskNewUserUnit" style="width: 100px; margin-right: 15px;" placeholder="请选择">
                                <el-option label="小时" :value="1"></el-option>
                                <el-option label="天" :value="2"></el-option>
                            </el-select>
                        </div>
                    </div>
                </div>
            </el-form-item>
            <el-form-item label="特别约定" prop="specialAgreement">
                <RichEditor :richData="form.specialAgreement" :styleEditor="'border: 1px solid #ccc;display: inline-block;'" @getWangedditor="getWangedditor" :readonly="false"/>
            </el-form-item>
@@ -171,6 +205,19 @@
        }
        callback()
      }
      var riskRule = (rule, value, callback) => {
          if (this.form.riskDelayStatus === '1') {
              if (!this.form.riskDelayTime || !this.form.riskDelayUnit) {
                  return callback(new Error('请完善内容'))
              }
          }
          if (this.form.riskNewUserStatus === '1') {
              if (!this.form.riskNewUserTime || !this.form.riskNewUserUnit) {
                  return callback(new Error('请完善内容'))
              }
          }
          callback()
      }
      return {
        // 表单数据
        form: {
@@ -192,8 +239,17 @@
          delOnlyReplace: 0,
          canAdd: 0,
          correctWarnTime: '',
          worktypeIdList: []
          worktypeIdList: [],
            riskDelayStatus: 0,
            riskDelayTime: 1,
            riskDelayUnit: 0,
            riskNewUserStatus: 0,
            riskNewUserTime: 1,
            riskNewUserUnit: 1
        },
          value: '',
          options: [],
        worktypeId: [],
        // 验证规则
        rules: {
@@ -209,6 +265,9 @@
          delValidDays: [
            { required: true, validator: numRule }
          ],
            risk: [
                { required: true, validator: riskRule }
            ],
          insuranceId: [
            { required: true, message: '请选择保险公司' }
          ],
@@ -455,3 +514,40 @@
    }
  }
</script>
<style lang="scss" scoped>
    .tx {
        width: 100%;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        .tx_item {
            width: 50%;
            padding: 20px 20px;
            box-sizing: border-box;
            background-color: #ffffff;
            border: 1px solid #ececec;
            margin-bottom: 20px;
            .tx_item_head {
                display: flex;
                align-items: center;
                span {
                    color: rgba(16,16,16,1);
                    font-size: 16px;
                    font-weight: bold;
                    margin-right: 15px;
                }
            }
            .tx_item_content {
                display: flex;
                align-items: start;
                margin-top: 10px;
                span {
                    flex-shrink: 0;
                    color: rgba(16,16,16,1);
                    font-size: 14px;
                }
            }
        }
    }
</style>