{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xq-web-bpm\\src\\components\\form\\customView\\CustomViewEdit.vue?vue&type=template&id=52dd9650&scoped=true&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\src\\components\\form\\customView\\CustomViewEdit.vue","mtime":1675071992069},{"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<el-dialog\n  :visible=\"dialogVisible\"\n  class=\"cv-edit__dialog\"\n  :before-close=\"beforeClose\"\n  :show-close=\"false\"\n  :close-on-click-modal=\"false\"\n  fullscreen\n>\n  <template v-slot:title>\n    <div class=\"flex\" style=\"justify-content: space-between\" >\n      <el-page-header @back=\"close\" :content=\"title\"></el-page-header>\n      <el-button-group>\n        <el-button\n                type=\"primary\"\n                @click=\"saveData\"\n                :disabled=\"disabled\"\n        >{{$t(\"eip.common.save\")}}</el-button>\n        <el-button @click=\"refresh\" v-if=\"id\">刷新字段</el-button>\n      </el-button-group>\n    </div>\n  </template>\n  <el-dialog\n    width=\"1040px\"\n    top=\"8vh\"\n    title=\"SQL生成器\"\n    :visible=\"dialogSQLVisible\"\n    :before-close=\"handleClose\"\n    :close-on-click-modal=\"false\"\n    append-to-body\n  >\n    <el-button\n      class=\"btn-padding\"\n      icon=\"el-icon-plus\"\n      style=\"margin-bottom: 5px;\"\n      @click=\"addSqlList\"\n      >添加关联表</el-button\n    >\n    <div style=\"width:100%;height: 550px;overflow: auto;\">\n        <div v-for=\"(sql, indexSql) in sqlList\" :key=\"indexSql\">\n          <table\n            class=\"form-table  choiceType-table\"\n            style=\"margin-bottom: 1px;\"\n            cellspacing=\"0\"\n            cellpadding=\"0\"\n            border=\"0\"\n          >\n            <tbody>\n              <tr style=\"background-color:#cccccc24\">\n                <th width=\"110px\">关联表:</th>\n                <td>\n                  <el-select v-if=\"indexSql==0\" v-model=\"sql.related\" ref =\"related\"\n                    @click.native=\"getDivision(sql.related,indexSql,'related')\"\n                    @change=\"changeSql(sql.related,indexSql,'related')\"\n                    filterable  placeholder=\"请选择\">\n                    <el-option\n                      v-for=\"item in tableList\"\n                      :key=\"item.name\"\n                      :label=\"item.comment\"\n                      :value=\"item.name\">\n                    </el-option>\n                  </el-select>\n                  <el-select v-if=\"indexSql!=0\" v-model=\"sql.related\" ref =\"related\"\n                    @click.native=\"getDivision(sql.related,indexSql,'related')\"\n                    @change=\"changeSql(sql.related,indexSql,'related')\"\n                    filterable  placeholder=\"请选择\">\n                    <el-option\n                      v-for=\"item in tableList.filter(tab => tab.type === '2')\"\n                      :key=\"item.name\"\n                      :label=\"item.comment\"\n                      :value=\"item.name\">\n                    </el-option>\n                  </el-select>\n                  <el-button\n                    v-if=\"!sql.related\"\n                    type=\"danger\"\n                    class=\"btn-padding\"\n                    icon=\"el-icon-delete\"\n                    style=\"margin-left: 10px;\"\n                    @click=\"removeSqlList(indexSql)\"\n                  ></el-button>\n                </td>\n                <th v-if=\"sql.related\" width=\"110px\">被关联表:</th>\n                <td  v-if=\"sql.related\" >\n                  <el-select v-model=\"sql.connected\" ref =\"connected\"\n                    @click.native=\"getDivision(sql.related,indexSql,'connected')\"\n                    @change=\"changeSql(sql.connected,indexSql,'connected')\"\n                    filterable  placeholder=\"请选择\">\n                    <el-option\n                      v-for=\"item in tableList\"\n                      :key=\"item.name\"\n                      :label=\"item.comment\"\n                      :value=\"item.name\">\n                    </el-option>\n                  </el-select>\n                  <el-button\n                    type=\"danger\"\n                    class=\"btn-padding\"\n                    icon=\"el-icon-delete\"\n                    style=\"margin-left: 10px;\"\n                    @click=\"removeSqlList(indexSql)\"\n                  ></el-button>\n                </td>\n              </tr>\n              <tr v-if=\"sql.connected\">\n                <th width=\"110px\">关联关系:</th>\n                <td colspan=\"3\">\n                  <table\n                    class=\"form-table  choiceType-table\"\n                    style=\"margin-bottom: 1px;\"\n                    cellspacing=\"0\"\n                    cellpadding=\"0\"\n                    border=\"0\"\n                  >\n                    <tbody>\n                      <tr v-for=\"(item, indexRelation) in sql.relation\" :key=\"indexRelation\">\n                        <td>{{sql.related}}.\n                         <ht-select\n                          clearable\n                          filterable\n                          v-model=\"item.relatedBind\"\n                          :options=\"sql.fieldRelatedList\"\n                          :props=\"{key:'key',value:'value'}\"\n                        />&nbsp;&nbsp; = &nbsp;&nbsp;\n                      {{sql.connected}}.\n                        <ht-select\n                          clearable\n                          filterable\n                          v-model=\"item.connectedBind\"\n                          :options=\"sql.fieldConnectedList\"\n                          :props=\"{key:'key',value:'value'}\"\n                        />\n                        <el-button\n                          class=\"btn-padding\"\n                          icon=\"el-icon-plus\"\n                          style=\"margin-left: 10px;\"\n                          @click=\"sql.relation.push({})\"\n                        ></el-button>\n                        <el-button\n                          v-if=\"sql.relation.length>1\"\n                          type=\"danger\"\n                          class=\"btn-padding\"\n                          icon=\"el-icon-delete\"\n                          style=\"margin-left: 10px;\"\n                          @click=\"sql.relation.remove(item)\"\n                        ></el-button>\n                      </td>\n                      </tr>\n                    </tbody>\n                  </table>\n                </td>\n              </tr>\n            </tbody>\n          </table>\n        </div>\n      </div>\n      <div slot=\"footer\" class=\"dialog-footer\">\n        <el-button\n          type=\"primary\"\n          @click=\"sqlOk\"\n          size=\"small\"\n          >确 认</el-button>\n        <el-button\n          @click=\"dialogSQLVisible = false\"\n          size=\"small\"\n          >返 回</el-button>\n      </div>\n  </el-dialog>\n  <el-tabs v-model=\"tabStatus\"  v-if=\"dialogVisible\">\n    <el-tab-pane label=\"sql配置\" name=\"sql\">\n      <el-form data-vv-scope=\"customViewEdit\">\n        <ht-form-item label=\"名称\">\n          <ht-input v-model=\"data.name\" :validate=\"{required:true}\" :maxlength=\"50\" :showWordLimit=\"true\"/>\n        </ht-form-item>\n        <ht-form-item label=\"别名\">\n          <ht-input v-model=\"data.alias\" :disabled=\"data.id?true:false\" :maxlength=\"50\" :showWordLimit=\"true\" @change=\"changeAlias\" name=\"dataAlias\" \n                    :validate=\"{\n                    required: true,\n                    regex: {\n                      exp: '^[a-zA-Z][a-zA-Z0-9_]*$',\n                      message: '只能输入字母、数字、下划线，且以字母开头'\n                    }\n                  }\" v-pinyin=\"data.name\"/>\n        </ht-form-item>\n        <ht-form-item label=\"数据源\">\n          <ht-select\n            v-model=\"data.dsName\"\n            :options=\"dataSources\"\n            :props=\"{key:'alias',value:'name'}\"\n          />\n          &nbsp;&nbsp;<el-button @click=\"generateSql\">SQL生成</el-button>\n        </ht-form-item>\n        <ht-form-item label=\"sql语句\">\n          <span slot=\"label\">\n            <el-tooltip content=\"系统不支持在联表查询SQL中使用别名，需要指定字段时，请使用表名作前缀\" placement=\"top\" effect=\"dark\">\n              <!-- content to trigger tooltip here -->\n              <i class=\"el-icon-question\"></i>\n            </el-tooltip>\n            sql语句\n          </span>\n          <ht-input\n            type=\"textarea\"\n            :disabled=\"data.id?true:false\"\n            v-model=\"data.sql\"\n            :autosize=\"{ minRows: 10, maxRows: 10}\"\n          />\n            <el-button type=\"primary\" @click=\"getTenantCode\" v-if=\"!data.id\" style=\"margin-left: 5px\">复制租户别名</el-button>\n          &nbsp;&nbsp;<el-button type=\"primary\" @click=\"checkSql\" v-if=\"!data.id\">验证SQL</el-button>\n        </ht-form-item>\n      </el-form>\n    </el-tab-pane>\n    <el-tab-pane label=\"按钮配置\" name=\"btn\">\n      <el-button type=\"primary\" @click=\"addButton\" style=\"margin: 5px 0;\">添加</el-button>\n      <el-table border :data=\"buttonDef\" ref=\"table\">\n        <el-table-column label=\"名称\">\n          <template slot-scope=\"scope\">\n            <ht-input v-model=\"scope.row.name\" :disabled=\"scope.row.isDefault==='1'\" :maxlength=\"50\" :showWordLimit=\"true\" />\n          </template>\n        </el-table-column>\n        <el-table-column prop=\"inRow\" label=\"行内按钮\">\n          <template slot-scope=\"scope\">\n            <el-switch v-model=\"scope.row.inRow\" active-color=\"#13ce66\" inactive-color=\"#ff4949\" />\n          </template>\n        </el-table-column>\n        <el-table-column label=\"按钮图标\">\n          <template slot-scope=\"scope\">\n            <span :class=\"'cv-icon icon iconfont '+scope.row.icon\" />\n            <icon-dialog\n              @selected=\"selectIcon($event,scope.$index,scope.row)\"\n              v-if=\"!scope.row.inRow\"\n              class=\"cv-icon__dialog\"\n            />\n          </template>\n        </el-table-column>\n        <el-table-column label=\"事件类型\">\n          <template slot-scope=\"scope\">\n            <ht-select\n              v-model=\"scope.row.triggerType\"\n              :props=\"{key:'key',value:'value'}\"\n              :options=\"[{key:'onclick',value:'onclick'},{key:'href',value:'href'}]\"\n              :disabled=\"scope.row.isDefault==='1'\"\n            />\n          </template>\n        </el-table-column>\n        <el-table-column prop=\"urlPath\" label=\"url路径\">\n           <template slot=\"header\">\n            URL\n            <el-tooltip class=\"item\" effect=\"dark\" placement=\"top-start\">\n              <div slot=\"content\">\n                1.事件类型:onclick\n                <br />可直接调用front\\src\\components\\querySql\\DynamicView.vue 文件中的函数(可在此文件自定义新增函数)\n                <br />例:exports()\n              <br />2.事件类型:href\n                <br />可跳转到其他页面\n                <br />例:https://www.baidu.com/\n              </div>\n              <i class=\"el-icon-warning\"></i>\n            </el-tooltip>\n          </template>\n          <template slot-scope=\"scope\">\n            <ht-input v-model=\"scope.row.urlPath\" :disabled=\"scope.row.isDefault==='1'\" />\n          </template>\n        </el-table-column>\n        <el-table-column label=\"管理\">\n          <template slot-scope=\"scope\">\n            <el-button\n              type=\"info\"\n              icon=\"el-icon-arrow-up\"\n              @click=\"arrayMove('buttonDef',scope.row,'up')\"\n            />\n            <el-button\n              type=\"info\"\n              icon=\"el-icon-arrow-down\"\n              @click=\"arrayMove('buttonDef',scope.row,'down')\"\n            />\n            <el-button\n              type=\"danger\"\n              icon=\"el-icon-delete\"\n              @click=\"deleteRow(scope.$index,buttonDef)\"\n              v-if=\"scope.row.isDefault!=='1'\"\n            />\n          </template>\n        </el-table-column>\n      </el-table>\n    </el-tab-pane>\n    <el-tab-pane label=\"字段设置\" v-if=\"id!==''\" name=\"field\">\n      <el-table :data=\"data.metafields\" border>\n        <el-table-column prop=\"name\" label=\"列名\" width=\"160\" />\n        <el-table-column prop=\"dataType\" label=\"类型\" width=\"65\" />\n        <el-table-column label=\"实际列名\">\n          <template slot-scope=\"scope\">\n            <ht-input v-model=\"scope.row.fieldName\" :maxlength=\"50\" :disabled=\"true\"/>\n          </template>\n        </el-table-column>\n        <el-table-column label=\"描述\">\n          <template slot-scope=\"scope\">\n            <ht-input v-model=\"scope.row.fieldDesc\" :maxlength=\"50\" />\n          </template>\n        </el-table-column>\n        <el-tooltip class=\"item\" effect=\"dark\" content=\"Top Right 提示文字\" placement=\"top-end\">\n          <el-table-column width=\"150\">\n            <template slot=\"header\">\n              宽度(px)\n              <el-tooltip class=\"item\" effect=\"dark\" content=\"为0表示自适应\" placement=\"top-start\">\n                <i class=\"el-icon-warning\"></i>\n              </el-tooltip>\n            </template>\n            <template slot-scope=\"scope\">\n              <ht-input v-model=\"scope.row.width\" :maxlength=\"50\" />\n            </template>\n          </el-table-column>\n        </el-tooltip>\n        <el-table-column prop=\"controlTypeDesc\" label=\"控件类型\" width=\"90\" />\n        <el-table-column label=\"URL\">\n          <template slot=\"header\">\n            URL\n            <el-tooltip class=\"item\" effect=\"dark\" placement=\"top-start\">\n              <div slot=\"content\">\n                url 写法规则如下(写法遵循JS规范,使用前请自行检查语句):\n                <br />1.打开新窗口:onclick=\"window.open('http://www.hotent.com')\"\n                <br />2.本页面VUE路由跳转: @click=\"routerPush('/home')\"\n                <br />3.获取变量做跳转地址拼接，用法如下：\n                @click=\"routerPush('/urlTest/test/'+scope.row.id_)\"\n                <br />4.使用行数据的方式为:scope.row.实际列名\n                <br />\n              </div>\n              <i class=\"el-icon-warning\"></i>\n            </el-tooltip>\n\n          </template>\n          <template slot-scope=\"scope\">\n            <ht-input v-model=\"scope.row.url\" />\n          </template>\n        </el-table-column>\n        <el-table-column label=\"显示\" width=\"70\">\n          <template slot-scope=\"scope\">\n            <el-switch\n              v-model=\"scope.row.isShow\"\n              active-color=\"#13ce66\"\n              inactive-color=\"#ff4949\"\n              :active-value=\"1\"\n              :inactive-value=\"0\"\n            />\n          </template>\n        </el-table-column>\n        <el-table-column label=\"查询\" width=\"70\">\n          <template slot-scope=\"scope\">\n            <el-switch\n              v-model=\"scope.row.isSearch\"\n              active-color=\"#13ce66\"\n              inactive-color=\"#ff4949\"\n              :active-value=\"1\"\n              :inactive-value=\"0\"\n            />\n          </template>\n        </el-table-column>\n        <el-table-column label=\"合并查询\" width=\"70\">\n          <template slot-scope=\"scope\">\n            <el-switch\n              v-model=\"scope.row.isCombine\"\n              active-color=\"#13ce66\"\n              inactive-color=\"#ff4949\"\n              :active-value=\"1\"\n              :inactive-value=\"0\"\n              v-if=\"scope.row.isSearch\"\n            />\n          </template>\n        </el-table-column>\n        <!--<el-table-column label=\"虚拟列\" width=\"60\">\n          <template slot-scope=\"scope\">\n            <el-tag v-if=\"scope.row.isVirtual\">是</el-tag>\n            <el-tag type=\"danger\" v-if=\"!scope.row.isVirtual\">否</el-tag>\n          </template>\n        </el-table-column>-->\n        <el-table-column label=\"排序\" width=\"120\">\n          <template slot-scope=\"scope\">\n            <el-button\n              type=\"info\"\n              icon=\"el-icon-arrow-up\"\n              @click=\"arrayMove('metafields',scope.row,'up')\"\n            />\n            <el-button\n              type=\"info\"\n              icon=\"el-icon-arrow-down\"\n              @click=\"arrayMove('metafields',scope.row,'down')\"\n            />\n          </template>\n        </el-table-column>\n        <el-table-column label=\"管理\" width=\"180\">\n          <template slot-scope=\"scope\">\n            <el-button\n              v-if=\"scope.row.isVirtual===0\"\n              :type=\"scope.row.controlType==='onetext'?'info':'warning'\"\n              @click=\"fieldDialog('K',scope.row)\"\n            >控</el-button>\n            <el-button\n              :type=\"((scope.row.alarmSetting!=null&&scope.row.alarmSetting.length>0)||(scope.row.formater!=null&&scope.row.formater!==''))?'warning':'info'\"\n              @click=\"fieldDialog('B',scope.row)\"\n            >报</el-button>\n            <!--<el-button\n              v-if=\"scope.row.isVirtual===0\"\n              :type=\"checkHasX(scope.row)?'warning':'info'\"\n              @click=\"fieldDialog('X',scope.row)\"\n            >虚</el-button>-->\n            <el-button\n              v-if=\"scope.row.isVirtual===1\"\n              type=\"danger\"\n              @click=\"fieldDialog('P',scope.row)\"\n            >配</el-button>\n          </template>\n        </el-table-column>\n      </el-table>\n    </el-tab-pane>\n  </el-tabs>\n  <div slot=\"footer\" class=\"dialog-footer\"></div>\n  <field-dialog\n    :type=\"type\"\n    :item=\"item\"\n    ref=\"fieldDialog\"\n    @select=\"select\"\n    @after-save=\"fieldSaveX\"\n  />\n</el-dialog>\n",null]}