{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xq-web-bpm\\src\\views\\portal\\PortalDataSensitiveManager.vue?vue&type=template&id=550906cb&scoped=true&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\src\\views\\portal\\PortalDataSensitiveManager.vue","mtime":1675071993053},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\vue-loader\\lib\\loaders\\templateLoader.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["\n<div class=\"fullheight\">\n  <ht-table\n    @load=\"loadData\"\n    :data=\"data\"\n    :pageResult=\"pageResult\"\n    :selection=\"true\"\n    quick-search-props=\"dataSourceAlias,tableName\"\n    :show-export=\"false\"\n    :show-custom-column=\"false\"\n    ref=\"htTable\"\n    @row-click=\"rowClick\"\n  >\n    <template v-slot:toolbar>\n     \n        <el-button size=\"small\" \n        @click=\"showDialog()\" icon=\"el-icon-plus\"\n        type=\"primary\"\n          >添加</el-button\n        >\n        <ht-delete-button\n          style=\"margin-left:10px\"\n          url=\"${portal}/portal/portalDataSensitive/v1/remove\"\n          :htTable=\"$refs.htTable\"\n          >删除</ht-delete-button\n        >\n     \n    </template>\n    <template>\n      <ht-table-column type=\"index\" width=\"50\" align=\"center\" label=\"序号\" />\n      <ht-table-column\n        prop=\"tableName\"\n        label=\"表名\"\n        :sortable=\"true\"\n        :show-overflow-tooltip=\"true\"\n      >\n        <template v-slot=\"{row}\">\n          <el-link\n            type=\"primary\"\n            @click=\"showDialog(row.id)\"\n            title=\"查看详情\"\n            >{{ row.tableName }}</el-link\n          >\n        </template>\n      </ht-table-column>\n      <ht-table-column\n        prop=\"reulesRemark\"\n        label=\"脱敏规则说明\"\n        :sortable=\"true\"\n        :show-overflow-tooltip=\"true\"\n      >\n      </ht-table-column>\n    </template>\n  </ht-table>\n  <el-dialog\n    width=\"1240px\"\n    title=\"表字段脱敏处理\"\n    class=\"sp-manager__dialog\"\n    :visible=\"dialogVisible\"\n    :before-close=\"beforeCloseDialog\"\n    :close-on-click-modal=\"false\"\n  >\n    <el-form v-form data-vv-scope=\"portalDataSensitiveForm\">\n      <ht-form-item label=\"表名\">\n        <template slot=\"label\">\n          <el-tooltip\n            content=\"数据库表名,小写，如果是建模生成的实体则为w_ + 实体名称 如: w_userinfo\"\n          >\n            <i class=\"property-tip icon-question\" />\n          </el-tooltip>\n          <span>表名</span>\n        </template>\n        <ht-input\n          v-model=\"portalDataSensitive.tableName\"\n          validate=\"required|alpha_dash\"\n        />\n        <span style=\"color: red\"\n          >注:表名为已经存在数据库中的表名，表名不存在配置无法生效</span\n        >\n      </ht-form-item>\n      <ht-form-item label=\"脱敏规则\">\n        <el-table\n          :data=\"portalDataSensitive.desensitizationRulesArr\"\n          style=\"width: 100%\"\n        >\n          <el-table-column prop=\"fieldName\" label width=\"120\">\n            <template slot=\"header\">\n              <el-button\n                type=\"primary\"\n                size=\"mini\"\n                icon=\"el-icon-plus\"\n                circle\n                @click=\"addField\"\n                title=\"添加\"\n              ></el-button\n              ><span class=\"is-required\">字段</span>\n              <el-tooltip\n                content=\"数据库表的字段,忽略大小写，如果是建模生成的则为F_ + 字段名称,如： F_mobile\"\n                placement=\"right\"\n              >\n                <i class=\"icon-question\" style=\"margin-right: 8px\" />\n              </el-tooltip>\n            </template>\n            <template slot-scope=\"scope\">\n              <ht-input\n                v-model=\"scope.row.fieldName\"\n                autocomplete=\"off\"\n                validate=\"required\"\n                placeholder=\"字段\"\n              ></ht-input>\n            </template>\n          </el-table-column>\n          <el-table-column prop=\"fieldName\" label width=\"120\">\n            <template slot=\"header\">\n              <span class=\"is-required\">掩码处理方式</span>\n            </template>\n            <template slot-scope=\"scope\">\n              <ht-select\n                v-model=\"scope.row.calType\"\n                autocomplete=\"off\"\n                validate=\"required\"\n                :options=\"[\n                  {key: '1', value: '掩码规则'},\n                  {key: '2', value: '自定义'},\n                ]\"\n                placeholder=\"请选择\"\n              ></ht-select>\n            </template>\n          </el-table-column>\n          <el-table-column prop=\"rules\" label width=\"280\">\n            <template slot=\"header\">\n              <span class=\"is-required\">掩码规则</span>\n              <el-tooltip\n                content=\"掩码规则,将该字段的开始位置到结束位置的根据填字符替换\"\n                placement=\"right\"\n              >\n                <i class=\"icon-question\" style=\"margin-right: 8px\" />\n              </el-tooltip>\n            </template>\n            <template slot-scope=\"scope\">\n              <el-form\n                :inline=\"true\"\n                class=\"demo-form-inline\"\n                style=\"margin-top: 13px\"\n                v-show=\"scope.row.calType == '1'\"\n              >\n                <el-form-item>\n                  <el-tooltip content=\"掩码开始位置\" placement=\"top\">\n                    <ht-input\n                      type=\"number\"\n                      v-model=\"scope.row.rules.startPosition\"\n                      autocomplete=\"off\"\n                      :min=\"1\"\n                      validate=\"required\"\n                      placeholder=\"开始位置\"\n                    ></ht-input>\n                  </el-tooltip>\n                </el-form-item>\n                <el-form-item>\n                  <el-tooltip content=\"掩码结束位置\" placement=\"top\">\n                    <ht-input\n                      type=\"number\"\n                      v-model=\"scope.row.rules.endPosition\"\n                      autocomplete=\"off\"\n                      :min=\"1\"\n                      validate=\"required\"\n                      placeholder=\"结束位置\"\n                    ></ht-input>\n                  </el-tooltip>\n                </el-form-item>\n                <el-form-item>\n                  <el-tooltip content=\"掩码填充符\" placement=\"top\">\n                    <ht-select\n                      v-model=\"scope.row.rules.pad\"\n                      autocomplete=\"off\"\n                      :options=\"[\n                        {key: '*', value: '*'},\n                        {key: '_', value: '_'},\n                        {key: '.', value: '.'},\n                        {key: '#', value: '#'},\n                      ]\"\n                      placeholder=\"填充字符默认为*\"\n                    />\n                  </el-tooltip>\n                </el-form-item>\n              </el-form>\n            </template>\n          </el-table-column>\n          <el-table-column prop=\"groovyScript\" label width=\"auto\">\n            <template slot=\"header\">\n              <span class=\"is-required\">自定义脚本</span>\n              <el-tooltip\n                content=\"自定义脚本处理当前字段的掩码规则如：com.hotent.base.util.StringUtil.wordMask(F_sjhm, 1, 5, '#') F_sjhm为字段名\"\n                placement=\"right\"\n              >\n                <i class=\"icon-question\" style=\"margin-right: 8px\" />\n              </el-tooltip>\n            </template>\n            <template slot-scope=\"scope\">\n              <div v-show=\"scope.row.calType == '2'\">\n                <ht-input\n                  type=\"textarea\"\n                  v-model=\"scope.row.groovyScript\"\n                ></ht-input>\n              </div>\n            </template>\n          </el-table-column>\n          <el-table-column prop=\"rights\" label width=\"auto\">\n            <template slot=\"header\">\n              <span>白名单</span>\n            </template>\n            <template v-slot=\"{row, $index}\">\n              <el-table :data=\"row.rights\">\n                <el-table-column prop=\"title\">\n                  <template slot=\"header\">\n                    <el-button\n                      type=\"primary\"\n                      size=\"mini\"\n                      icon=\"el-icon-plus\"\n                      @click=\"showAuthDialog(row.rights, $index)\"\n                      >选择</el-button\n                    >\n                  </template>\n                </el-table-column>\n                <el-table-column prop=\"name\" label=\"授权给\"></el-table-column>\n              </el-table>\n            </template>\n          </el-table-column>\n          <el-table-column label=\"操作\" width=\"80\">\n            <template v-slot=\"{$index}\">\n              <el-button\n                type=\"danger\"\n                icon=\"el-icon-delete\"\n                circle\n                @click=\"\n                  portalDataSensitive.desensitizationRulesArr.remove(\n                    portalDataSensitive.desensitizationRulesArr[$index]\n                  )\n                \"\n              ></el-button>\n            </template>\n          </el-table-column>\n        </el-table>\n      </ht-form-item>\n      <ht-form-item label=\"脱敏说明\">\n        <ht-input\n          type=\"textarea\"\n          v-model=\"portalDataSensitive.reulesRemark\"\n          validate=\"required\"\n        />\n      </ht-form-item>\n    </el-form>\n    <div slot=\"footer\" style=\"text-align: center\">\n      <!--        <ht-submit-button-->\n      <!--          url=\"${portal}/portal/portalDataSensitive/v1/save\"-->\n      <!--          :model=\"saveData\"-->\n      <!--          scope-name=\"portalDataSensitiveForm\"-->\n      <!--          :is-submit=\"isSubmit\"-->\n      <!--          @before-save-data=\"beforeSaveData\"-->\n      <!--          @after-save-data=\"afterSaveData\"-->\n      <!--        >{{$t(\"eip.common.save\")}}</ht-submit-button>-->\n      <el-button @click=\"save\" type=\"primary\">{{\n        $t('eip.common.save')\n      }}</el-button>\n      <el-button @click=\"beforeCloseDialog\">{{\n        $t('eip.common.cancel')\n      }}</el-button>\n    </div>\n  </el-dialog>\n  <!-- 选择对话框  -->\n  <eip-auth-dialog\n    ref=\"eipAuthDialog\"\n    name=\"eipAuthDialog\"\n    @onConfirm=\"dialogOnConfirm\"\n    append-to-body\n  />\n</div>\n",null]}