ludc
2024-10-22 77b00428891493e9ead0672623ce39b9b6461e13
Merge remote-tracking branch 'origin/master'
已修改8个文件
已删除1个文件
已添加5个文件
2156 ■■■■■ 文件已修改
Source/plt-web/plt-web-ui/src/api/UI/formDefine/api.js 1173 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/api/system/fileManager/index.vue 155 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/api/system/log/logBasic.js 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/authority/ui/uiAuthorization/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/fileManage/index.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/index.vue 157 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/system/fileCab/index.vue 138 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/system/log/basicConf.vue 138 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/system/log/index.vue 170 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/system/user/index.vue 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/systemModel/mangeModel/index.vue 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/systemModel/operateType/index.vue 35 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/api/UI/formDefine/api.js
@@ -58,7 +58,7 @@
}
// å¯¼å‡º
export function exportExcel (params) {
export function exportExcel(params) {
  return request({
    url: '/api/portalVIController/exportExcel',
    method: 'post',
@@ -77,688 +77,533 @@
  })
}
const obj ={
  "id": "",// ä¿®æ”¹æ—¶å€™å¿…ä¼ 
  "prm": {
  "formQtName": "", // è¡¨å•名称对应下面视图名称
    "prmItemList": [
    {
      "itemAddFilter": "",
      "itemBat": "",
      "itemCols": "0",
      "itemCtrlDisplyCol": "",
      "itemCtrlDisplyCondition": "",
      "itemCustomClass": "",
      "itemCut": "",
      "itemDateFormat": "",
      "itemDbl": "",
      "itemEQ": "",
      "itemEditCondition": "",
      "itemEditableProgram": "",
      "itemField": "anticollaboration",
      "itemFieldWidth": "",
      "itemFieldWidthList": [],
      "itemHrefConf": "",
      "itemHrefFields": "",
      "itemHttpPathField": "",
      "itemHttpVolumnPath": "",
      "itemImgWH": "",
      "itemInObj": "",
      "itemIsEditable": "1",
      "itemIsHidden": "0",
      "itemIsHttpSave": "0",
      "itemIsNavigatorExpand": "",
      "itemIsRequired": "0",
      "itemIsShowFolder": "",
      "itemKeyFieldList": [],
      "itemKeyFields": "",
      "itemListTable": "",
      "itemListTxt": "",
      "itemListVal": "",
      "itemName": "反协作标识",
      "itemOR": "",
      "itemOutFieldList": [],
      "itemOutFields": "",
      "itemOutType": "",
      "itemPageSize": "",
      "itemParentFolderName": "",
      "itemQtName": "",
      "itemQueryRefFields": "",
      "itemQuerySql": "",
      "itemRight": "",
      "itemRows": "",
      "itemScript": "",
      "itemSearchFieldList": [],
      "itemSelectoutFieldList": [],
      "itemSeniorQueryBOS": [],
      "itemSeniorQueryCols": "",
      "itemSeniorQueryColsCounts": "",
      "itemShowExpression": "",
      "itemStyle": "",
      "itemTips": "",
      "itemTrim": "",
      "itemTxf": "",
      "itemType": "text",
      "itemTypeText": "单行文本框",
      "itemValue": "N",
      "itemValueList": []
    },
    {
      "itemAddFilter": "",
      "itemBat": "",
      "itemCols": "0",
      "itemCtrlDisplyCol": "",
      "itemCtrlDisplyCondition": "",
      "itemCustomClass": "",
      "itemCut": "",
      "itemDateFormat": "",
      "itemDbl": "",
      "itemEQ": "",
      "itemEditCondition": "",
      "itemEditableProgram": "",
      "itemField": "holistic",
      "itemFieldWidth": "",
      "itemFieldWidthList": [],
      "itemHrefConf": "",
      "itemHrefFields": "",
      "itemHttpPathField": "",
      "itemHttpVolumnPath": "",
      "itemImgWH": "",
      "itemInObj": "",
      "itemIsEditable": "1",
      "itemIsHidden": "0",
      "itemIsHttpSave": "0",
      "itemIsNavigatorExpand": "",
      "itemIsRequired": "0",
      "itemIsShowFolder": "",
      "itemKeyFieldList": [],
      "itemKeyFields": "",
      "itemListTable": "",
      "itemListTxt": "",
      "itemListVal": "",
      "itemName": "整体性",
      "itemOR": "",
      "itemOutFieldList": [],
      "itemOutFields": "",
      "itemOutType": "",
      "itemPageSize": "",
      "itemParentFolderName": "",
      "itemQtName": "",
      "itemQueryRefFields": "",
      "itemQuerySql": "",
      "itemRight": "",
      "itemRows": "",
      "itemScript": "",
      "itemSearchFieldList": [],
      "itemSelectoutFieldList": [],
      "itemSeniorQueryBOS": [],
      "itemSeniorQueryCols": "",
      "itemSeniorQueryColsCounts": "",
      "itemShowExpression": "",
      "itemStyle": "",
      "itemTips": "",
      "itemTrim": "",
      "itemTxf": "",
      "itemType": "text",
      "itemTypeText": "单行文本框",
      "itemValue": "N",
      "itemValueList": []
    },
    {
      "itemAddFilter": "",
      "itemBat": "",
      "itemCols": "0",
      "itemCtrlDisplyCol": "",
      "itemCtrlDisplyCondition": "",
      "itemCustomClass": "",
      "itemCut": "",
      "itemDateFormat": "",
      "itemDbl": "",
      "itemEQ": "",
      "itemEditCondition": "",
      "itemEditableProgram": "",
      "itemField": "isproductbring",
      "itemFieldWidth": "",
      "itemFieldWidthList": [],
      "itemHrefConf": "",
      "itemHrefFields": "",
      "itemHttpPathField": "",
      "itemHttpVolumnPath": "",
      "itemImgWH": "",
      "itemInObj": "",
      "itemIsEditable": "1",
      "itemIsHidden": "0",
      "itemIsHttpSave": "0",
      "itemIsNavigatorExpand": "",
      "itemIsRequired": "0",
      "itemIsShowFolder": "",
      "itemKeyFieldList": [],
      "itemKeyFields": "",
      "itemListTable": "",
      "itemListTxt": "",
      "itemListVal": "",
      "itemName": "成品带来",
      "itemOR": "",
      "itemOutFieldList": [],
      "itemOutFields": "",
      "itemOutType": "",
      "itemPageSize": "",
      "itemParentFolderName": "",
      "itemQtName": "",
      "itemQueryRefFields": "",
      "itemQuerySql": "",
      "itemRight": "",
      "itemRows": "",
      "itemScript": "",
      "itemSearchFieldList": [],
      "itemSelectoutFieldList": [],
      "itemSeniorQueryBOS": [],
      "itemSeniorQueryCols": "",
      "itemSeniorQueryColsCounts": "",
      "itemShowExpression": "",
      "itemStyle": "",
      "itemTips": "",
      "itemTrim": "",
      "itemTxf": "",
      "itemType": "text",
      "itemTypeText": "单行文本框",
      "itemValue": "N",
      "itemValueList": []
    },
    {
      "itemAddFilter": "",
      "itemBat": "",
      "itemCols": "0",
      "itemCtrlDisplyCol": "",
      "itemCtrlDisplyCondition": "",
      "itemCustomClass": "",
      "itemCut": "",
      "itemDateFormat": "",
      "itemDbl": "",
      "itemEQ": "",
      "itemEditCondition": "",
      "itemEditableProgram": "",
      "itemField": "isforging",
      "itemFieldWidth": "",
      "itemFieldWidthList": [],
      "itemHrefConf": "",
      "itemHrefFields": "",
      "itemHttpPathField": "",
      "itemHttpVolumnPath": "",
      "itemImgWH": "",
      "itemInObj": "",
      "itemIsEditable": "1",
      "itemIsHidden": "0",
      "itemIsHttpSave": "0",
      "itemIsNavigatorExpand": "",
      "itemIsRequired": "0",
      "itemIsShowFolder": "",
      "itemKeyFieldList": [],
      "itemKeyFields": "",
      "itemListTable": "",
      "itemListTxt": "",
      "itemListVal": "",
      "itemName": "是否锻铸件",
      "itemOR": "",
      "itemOutFieldList": [],
      "itemOutFields": "",
      "itemOutType": "",
      "itemPageSize": "",
      "itemParentFolderName": "",
      "itemQtName": "",
      "itemQueryRefFields": "",
      "itemQuerySql": "",
      "itemRight": "",
      "itemRows": "",
      "itemScript": "",
      "itemSearchFieldList": [],
      "itemSelectoutFieldList": [],
      "itemSeniorQueryBOS": [],
      "itemSeniorQueryCols": "",
      "itemSeniorQueryColsCounts": "",
      "itemShowExpression": "",
      "itemStyle": "",
      "itemTips": "",
      "itemTrim": "",
      "itemTxf": "",
      "itemType": "text",
      "itemTypeText": "单行文本框",
      "itemValue": "",
      "itemValueList": []
    },
    {
      "itemAddFilter": "",
      "itemBat": "",
      "itemCols": "1",
      "itemCtrlDisplyCol": "",
      "itemCtrlDisplyCondition": "",
      "itemCustomClass": "",
      "itemCut": "",
      "itemDateFormat": "",
      "itemDbl": "",
      "itemEQ": "",
      "itemEditCondition": "",
      "itemEditableProgram": "",
      "itemField": "processremark",
      "itemFieldWidth": "",
      "itemFieldWidthList": [],
      "itemHrefConf": "",
      "itemHrefFields": "",
      "itemHttpPathField": "",
      "itemHttpVolumnPath": "",
      "itemImgWH": "",
      "itemInObj": "",
      "itemIsEditable": "1",
      "itemIsHidden": "1",
      "itemIsHttpSave": "0",
      "itemIsNavigatorExpand": "",
      "itemIsRequired": "0",
      "itemIsShowFolder": "",
      "itemKeyFieldList": [],
      "itemKeyFields": "",
      "itemListTable": "",
      "itemListTxt": "",
      "itemListVal": "",
      "itemName": "工艺备注",
      "itemOR": "",
      "itemOutFieldList": [],
      "itemOutFields": "",
      "itemOutType": "",
      "itemPageSize": "",
      "itemParentFolderName": "",
      "itemQtName": "",
      "itemQueryRefFields": "",
      "itemQuerySql": "",
      "itemRight": "",
      "itemRows": "",
      "itemScript": "",
      "itemSearchFieldList": [],
      "itemSelectoutFieldList": [],
      "itemSeniorQueryBOS": [],
      "itemSeniorQueryCols": "",
      "itemSeniorQueryColsCounts": "",
      "itemShowExpression": "",
      "itemStyle": "",
      "itemTips": "",
      "itemTrim": "",
      "itemTxf": "",
      "itemType": "text",
      "itemTypeText": "单行文本框",
      "itemValue": "",
      "itemValueList": []
    },
    {
      "itemAddFilter": "",
      "itemBat": "",
      "itemCols": "1",
      "itemCtrlDisplyCol": "",
      "itemCtrlDisplyCondition": "",
      "itemCustomClass": "",
      "itemCut": "",
      "itemDateFormat": "",
      "itemDbl": "",
      "itemEQ": "",
      "itemEditCondition": "",
      "itemEditableProgram": "",
      "itemField": "materialtype",
      "itemFieldWidth": "",
      "itemFieldWidthList": [],
      "itemHrefConf": "",
      "itemHrefFields": "",
      "itemHttpPathField": "",
      "itemHttpVolumnPath": "",
      "itemImgWH": "",
      "itemInObj": "",
      "itemIsEditable": "1",
      "itemIsHidden": "1",
      "itemIsHttpSave": "0",
      "itemIsNavigatorExpand": "",
      "itemIsRequired": "0",
      "itemIsShowFolder": "",
      "itemKeyFieldList": [],
      "itemKeyFields": "",
      "itemListTable": "",
      "itemListTxt": "",
      "itemListVal": "",
      "itemName": "物料类型",
      "itemOR": "",
      "itemOutFieldList": [],
      "itemOutFields": "",
      "itemOutType": "",
      "itemPageSize": "",
      "itemParentFolderName": "",
      "itemQtName": "",
      "itemQueryRefFields": "",
      "itemQuerySql": "",
      "itemRight": "",
      "itemRows": "",
      "itemScript": "",
      "itemSearchFieldList": [],
      "itemSelectoutFieldList": [],
      "itemSeniorQueryBOS": [],
      "itemSeniorQueryCols": "",
      "itemSeniorQueryColsCounts": "",
      "itemShowExpression": "",
      "itemStyle": "",
      "itemTips": "",
      "itemTrim": "",
      "itemTxf": "",
      "itemType": "text",
      "itemTypeText": "单行文本框",
      "itemValue": "",
      "itemValueList": []
    },
    {
      "itemAddFilter": "",
      "itemBat": "",
      "itemCols": "1",
      "itemCtrlDisplyCol": "",
      "itemCtrlDisplyCondition": "",
      "itemCustomClass": "",
      "itemCut": "",
      "itemDateFormat": "",
      "itemDbl": "",
      "itemEQ": "",
      "itemEditCondition": "",
      "itemEditableProgram": "",
      "itemField": "iscruxpart",
      "itemFieldWidth": "",
      "itemFieldWidthList": [],
      "itemHrefConf": "",
      "itemHrefFields": "",
      "itemHttpPathField": "",
      "itemHttpVolumnPath": "",
      "itemImgWH": "",
      "itemInObj": "",
      "itemIsEditable": "1",
      "itemIsHidden": "1",
      "itemIsHttpSave": "0",
      "itemIsNavigatorExpand": "",
      "itemIsRequired": "0",
      "itemIsShowFolder": "",
      "itemKeyFieldList": [],
      "itemKeyFields": "",
      "itemListTable": "",
      "itemListTxt": "",
      "itemListVal": "",
      "itemName": "是否关键件",
      "itemOR": "",
      "itemOutFieldList": [],
      "itemOutFields": "",
      "itemOutType": "",
      "itemPageSize": "",
      "itemParentFolderName": "",
      "itemQtName": "",
      "itemQueryRefFields": "",
      "itemQuerySql": "",
      "itemRight": "",
      "itemRows": "",
      "itemScript": "",
      "itemSearchFieldList": [],
      "itemSelectoutFieldList": [],
      "itemSeniorQueryBOS": [],
      "itemSeniorQueryCols": "",
      "itemSeniorQueryColsCounts": "",
      "itemShowExpression": "",
      "itemStyle": "",
      "itemTips": "",
      "itemTrim": "",
      "itemTxf": "",
      "itemType": "select",
      "itemTypeText": "下拉菜单",
      "itemValue": "N",
      "itemValueList": [
        "否{N}",
        "是{Y}"
      ]
    },
    {
      "itemAddFilter": "",
      "itemBat": "",
      "itemCols": "1",
      "itemCtrlDisplyCol": "",
      "itemCtrlDisplyCondition": "",
      "itemCustomClass": "",
      "itemCut": "",
      "itemDateFormat": "",
      "itemDbl": "",
      "itemEQ": "",
      "itemEditCondition": "",
      "itemEditableProgram": "",
      "itemField": "isimportantpart",
      "itemFieldWidth": "",
      "itemFieldWidthList": [],
      "itemHrefConf": "",
      "itemHrefFields": "",
      "itemHttpPathField": "",
      "itemHttpVolumnPath": "",
      "itemImgWH": "",
      "itemInObj": "",
      "itemIsEditable": "1",
      "itemIsHidden": "1",
      "itemIsHttpSave": "0",
      "itemIsNavigatorExpand": "",
      "itemIsRequired": "0",
      "itemIsShowFolder": "",
      "itemKeyFieldList": [],
      "itemKeyFields": "",
      "itemListTable": "",
      "itemListTxt": "",
      "itemListVal": "",
      "itemName": "是否重要件",
      "itemOR": "",
      "itemOutFieldList": [],
      "itemOutFields": "",
      "itemOutType": "",
      "itemPageSize": "",
      "itemParentFolderName": "",
      "itemQtName": "",
      "itemQueryRefFields": "",
      "itemQuerySql": "",
      "itemRight": "",
      "itemRows": "",
      "itemScript": "",
      "itemSearchFieldList": [],
      "itemSelectoutFieldList": [],
      "itemSeniorQueryBOS": [],
      "itemSeniorQueryCols": "",
      "itemSeniorQueryColsCounts": "",
      "itemShowExpression": "",
      "itemStyle": "",
      "itemTips": "",
      "itemTrim": "",
      "itemTxf": "",
      "itemType": "select",
      "itemTypeText": "下拉菜单",
      "itemValue": "N",
      "itemValueList": [
        "是{Y}",
        "否{N}"
      ]
    }
  ],
    "showCols": "2"
},
  "typeFlag": 0, // ä¸šåŠ¡ç±»åž‹0 or é“¾æŽ¥ç±»åž‹1
  "typeFlagText": "业务类型的表单",// ä¸šåŠ¡ç±»åž‹æ˜¾ç¤ºå€¼
  "typeName": "ppart",// ä¸šåŠ¡ç±»åž‹å
  "viName": "ppartProp_test3", // è§†å›¾åç§°
  "viType": 1, // è§†å›¾ç±»åž‹
  "viTypeText": "表单" // è§†å›¾ä¸­æ–‡åç§°
// å…‹éš†æŽ¥å£
export function clone(params) {
  return request({
    url: "/api/portalVIController/clone",
    method: "post",
    data: params
  })
}
const dataForm = {
  "id": "",
  "prm": {
    "formQtName": "",
    "prmItemList": [
      {
        "itemAddFilter": "",
        "itemBat": "",
        "itemCols": "",
        "itemCtrlDisplyCol": "",
        "itemCtrlDisplyCondition": "",
        "itemCustomClass": "",
        "itemCut": "",
        "itemDateFormat": "",
        "itemDbl": "3",
        "itemEQ": "",
        "itemEditCondition": "",
        "itemEditableProgram": "",
        "itemField": "",
        "itemFieldWidth": "150,150,100,80,80,80,100,100,100,100,50,100,250",
        "itemFieldWidthList": [
const cloneObj = {
  "clonePortalVIDTOList": [{
    "viName": "ppartProp",//--克隆的表单/表格名称
    "typeName": "ppart",//----克隆的业务类型,为“” åˆ™ä¸ºå½“前业务类型
    "typeFlag": "0",//--业务类型,0: ä¸šåŠ¡ç±»åž‹ï¼Œ1:链接类型
//--克隆的对象
    "oldPortalVIDTO": {
      "id": "5963B31F-287B-6B01-3544-D6ECF9CFDC96",
      "prm": {
        "formQtName": "",
        "prmItemList": [
          {
            "attributes": {},
            "key": "code",
            "value": "150"
            "itemAddFilter": "",
            "itemBat": "",
            "itemCols": "0",
            "itemCtrlDisplyCol": "",
            "itemCtrlDisplyCondition": "",
            "itemCustomClass": "",
            "itemCut": "",
            "itemDateFormat": "",
            "itemDbl": "",
            "itemEQ": "",
            "itemEditCondition": "",
            "itemEditableProgram": "",
            "itemField": "anticollaboration",
            "itemFieldWidth": "",
            "itemFieldWidthList": [],
            "itemHrefConf": "",
            "itemHrefFields": "",
            "itemHttpPathField": "",
            "itemHttpVolumnPath": "",
            "itemImgWH": "",
            "itemInObj": "",
            "itemIsEditable": "1",
            "itemIsHidden": "0",
            "itemIsHttpSave": "0",
            "itemIsNavigatorExpand": "",
            "itemIsRequired": "0",
            "itemIsShowFolder": "",
            "itemKeyFieldList": [],
            "itemKeyFields": "",
            "itemListTable": "",
            "itemListTxt": "",
            "itemListVal": "",
            "itemName": "反协作标识",
            "itemOR": "",
            "itemOutFieldList": [],
            "itemOutFields": "",
            "itemOutType": "",
            "itemPageSize": "",
            "itemParentFolderName": "",
            "itemQtName": "",
            "itemQueryRefFields": "",
            "itemQuerySql": "",
            "itemRight": "",
            "itemRows": "",
            "itemScript": "",
            "itemSearchFieldList": [],
            "itemSelectoutFieldList": [],
            "itemSeniorQueryBOS": [],
            "itemSeniorQueryCols": "",
            "itemSeniorQueryColsCounts": "",
            "itemShowExpression": "",
            "itemStyle": "",
            "itemTips": "",
            "itemTrim": "",
            "itemTxf": "",
            "itemType": "text",
            "itemTypeText": "单行文本框",
            "itemValue": "N",
            "itemValueList": []
          },
          {
            "attributes": {},
            "key": "partoid.name",
            "value": "150"
            "itemAddFilter": "",
            "itemBat": "",
            "itemCols": "0",
            "itemCtrlDisplyCol": "",
            "itemCtrlDisplyCondition": "",
            "itemCustomClass": "",
            "itemCut": "",
            "itemDateFormat": "",
            "itemDbl": "",
            "itemEQ": "",
            "itemEditCondition": "",
            "itemEditableProgram": "",
            "itemField": "holistic",
            "itemFieldWidth": "",
            "itemFieldWidthList": [],
            "itemHrefConf": "",
            "itemHrefFields": "",
            "itemHttpPathField": "",
            "itemHttpVolumnPath": "",
            "itemImgWH": "",
            "itemInObj": "",
            "itemIsEditable": "1",
            "itemIsHidden": "0",
            "itemIsHttpSave": "0",
            "itemIsNavigatorExpand": "",
            "itemIsRequired": "0",
            "itemIsShowFolder": "",
            "itemKeyFieldList": [],
            "itemKeyFields": "",
            "itemListTable": "",
            "itemListTxt": "",
            "itemListVal": "",
            "itemName": "整体性",
            "itemOR": "",
            "itemOutFieldList": [],
            "itemOutFields": "",
            "itemOutType": "",
            "itemPageSize": "",
            "itemParentFolderName": "",
            "itemQtName": "",
            "itemQueryRefFields": "",
            "itemQuerySql": "",
            "itemRight": "",
            "itemRows": "",
            "itemScript": "",
            "itemSearchFieldList": [],
            "itemSelectoutFieldList": [],
            "itemSeniorQueryBOS": [],
            "itemSeniorQueryCols": "",
            "itemSeniorQueryColsCounts": "",
            "itemShowExpression": "",
            "itemStyle": "",
            "itemTips": "",
            "itemTrim": "",
            "itemTxf": "",
            "itemType": "text",
            "itemTypeText": "单行文本框",
            "itemValue": "N",
            "itemValueList": []
          },
          {
            "attributes": {},
            "key": "validity",
            "value": "100"
            "itemAddFilter": "",
            "itemBat": "",
            "itemCols": "0",
            "itemCtrlDisplyCol": "",
            "itemCtrlDisplyCondition": "",
            "itemCustomClass": "",
            "itemCut": "",
            "itemDateFormat": "",
            "itemDbl": "",
            "itemEQ": "",
            "itemEditCondition": "",
            "itemEditableProgram": "",
            "itemField": "isproductbring",
            "itemFieldWidth": "",
            "itemFieldWidthList": [],
            "itemHrefConf": "",
            "itemHrefFields": "",
            "itemHttpPathField": "",
            "itemHttpVolumnPath": "",
            "itemImgWH": "",
            "itemInObj": "",
            "itemIsEditable": "1",
            "itemIsHidden": "0",
            "itemIsHttpSave": "0",
            "itemIsNavigatorExpand": "",
            "itemIsRequired": "0",
            "itemIsShowFolder": "",
            "itemKeyFieldList": [],
            "itemKeyFields": "",
            "itemListTable": "",
            "itemListTxt": "",
            "itemListVal": "",
            "itemName": "成品带来",
            "itemOR": "",
            "itemOutFieldList": [],
            "itemOutFields": "",
            "itemOutType": "",
            "itemPageSize": "",
            "itemParentFolderName": "",
            "itemQtName": "",
            "itemQueryRefFields": "",
            "itemQuerySql": "",
            "itemRight": "",
            "itemRows": "",
            "itemScript": "",
            "itemSearchFieldList": [],
            "itemSelectoutFieldList": [],
            "itemSeniorQueryBOS": [],
            "itemSeniorQueryCols": "",
            "itemSeniorQueryColsCounts": "",
            "itemShowExpression": "",
            "itemStyle": "",
            "itemTips": "",
            "itemTrim": "",
            "itemTxf": "",
            "itemType": "text",
            "itemTypeText": "单行文本框",
            "itemValue": "N",
            "itemValueList": []
          },
          {
            "attributes": {},
            "key": "lcstatus",
            "value": "80"
            "itemAddFilter": "",
            "itemBat": "",
            "itemCols": "0",
            "itemCtrlDisplyCol": "",
            "itemCtrlDisplyCondition": "",
            "itemCustomClass": "",
            "itemCut": "",
            "itemDateFormat": "",
            "itemDbl": "",
            "itemEQ": "",
            "itemEditCondition": "",
            "itemEditableProgram": "",
            "itemField": "isforging",
            "itemFieldWidth": "",
            "itemFieldWidthList": [],
            "itemHrefConf": "",
            "itemHrefFields": "",
            "itemHttpPathField": "",
            "itemHttpVolumnPath": "",
            "itemImgWH": "",
            "itemInObj": "",
            "itemIsEditable": "1",
            "itemIsHidden": "0",
            "itemIsHttpSave": "0",
            "itemIsNavigatorExpand": "",
            "itemIsRequired": "0",
            "itemIsShowFolder": "",
            "itemKeyFieldList": [],
            "itemKeyFields": "",
            "itemListTable": "",
            "itemListTxt": "",
            "itemListVal": "",
            "itemName": "是否锻铸件",
            "itemOR": "",
            "itemOutFieldList": [],
            "itemOutFields": "",
            "itemOutType": "",
            "itemPageSize": "",
            "itemParentFolderName": "",
            "itemQtName": "",
            "itemQueryRefFields": "",
            "itemQuerySql": "",
            "itemRight": "",
            "itemRows": "",
            "itemScript": "",
            "itemSearchFieldList": [],
            "itemSelectoutFieldList": [],
            "itemSeniorQueryBOS": [],
            "itemSeniorQueryCols": "",
            "itemSeniorQueryColsCounts": "",
            "itemShowExpression": "",
            "itemStyle": "",
            "itemTips": "",
            "itemTrim": "",
            "itemTxf": "",
            "itemType": "text",
            "itemTypeText": "单行文本框",
            "itemValue": "",
            "itemValueList": []
          },
          {
            "attributes": {},
            "key": "additionalunit",
            "value": "80"
            "itemAddFilter": "",
            "itemBat": "",
            "itemCols": "1",
            "itemCtrlDisplyCol": "",
            "itemCtrlDisplyCondition": "",
            "itemCustomClass": "",
            "itemCut": "",
            "itemDateFormat": "",
            "itemDbl": "",
            "itemEQ": "",
            "itemEditCondition": "",
            "itemEditableProgram": "",
            "itemField": "processremark",
            "itemFieldWidth": "",
            "itemFieldWidthList": [],
            "itemHrefConf": "",
            "itemHrefFields": "",
            "itemHttpPathField": "",
            "itemHttpVolumnPath": "",
            "itemImgWH": "",
            "itemInObj": "",
            "itemIsEditable": "1",
            "itemIsHidden": "1",
            "itemIsHttpSave": "0",
            "itemIsNavigatorExpand": "",
            "itemIsRequired": "0",
            "itemIsShowFolder": "",
            "itemKeyFieldList": [],
            "itemKeyFields": "",
            "itemListTable": "",
            "itemListTxt": "",
            "itemListVal": "",
            "itemName": "工艺备注",
            "itemOR": "",
            "itemOutFieldList": [],
            "itemOutFields": "",
            "itemOutType": "",
            "itemPageSize": "",
            "itemParentFolderName": "",
            "itemQtName": "",
            "itemQueryRefFields": "",
            "itemQuerySql": "",
            "itemRight": "",
            "itemRows": "",
            "itemScript": "",
            "itemSearchFieldList": [],
            "itemSelectoutFieldList": [],
            "itemSeniorQueryBOS": [],
            "itemSeniorQueryCols": "",
            "itemSeniorQueryColsCounts": "",
            "itemShowExpression": "",
            "itemStyle": "",
            "itemTips": "",
            "itemTrim": "",
            "itemTxf": "",
            "itemType": "text",
            "itemTypeText": "单行文本框",
            "itemValue": "",
            "itemValueList": []
          },
          {
            "attributes": {},
            "key": "distributeunittwo",
            "value": "80"
            "itemAddFilter": "",
            "itemBat": "",
            "itemCols": "1",
            "itemCtrlDisplyCol": "",
            "itemCtrlDisplyCondition": "",
            "itemCustomClass": "",
            "itemCut": "",
            "itemDateFormat": "",
            "itemDbl": "",
            "itemEQ": "",
            "itemEditCondition": "",
            "itemEditableProgram": "",
            "itemField": "materialtype",
            "itemFieldWidth": "",
            "itemFieldWidthList": [],
            "itemHrefConf": "",
            "itemHrefFields": "",
            "itemHttpPathField": "",
            "itemHttpVolumnPath": "",
            "itemImgWH": "",
            "itemInObj": "",
            "itemIsEditable": "1",
            "itemIsHidden": "1",
            "itemIsHttpSave": "0",
            "itemIsNavigatorExpand": "",
            "itemIsRequired": "0",
            "itemIsShowFolder": "",
            "itemKeyFieldList": [],
            "itemKeyFields": "",
            "itemListTable": "",
            "itemListTxt": "",
            "itemListVal": "",
            "itemName": "物料类型",
            "itemOR": "",
            "itemOutFieldList": [],
            "itemOutFields": "",
            "itemOutType": "",
            "itemPageSize": "",
            "itemParentFolderName": "",
            "itemQtName": "",
            "itemQueryRefFields": "",
            "itemQuerySql": "",
            "itemRight": "",
            "itemRows": "",
            "itemScript": "",
            "itemSearchFieldList": [],
            "itemSelectoutFieldList": [],
            "itemSeniorQueryBOS": [],
            "itemSeniorQueryCols": "",
            "itemSeniorQueryColsCounts": "",
            "itemShowExpression": "",
            "itemStyle": "",
            "itemTips": "",
            "itemTrim": "",
            "itemTxf": "",
            "itemType": "text",
            "itemTypeText": "单行文本框",
            "itemValue": "",
            "itemValueList": []
          },
          {
            "attributes": {},
            "key": "anticollaboration",
            "value": "100"
            "itemAddFilter": "",
            "itemBat": "",
            "itemCols": "1",
            "itemCtrlDisplyCol": "",
            "itemCtrlDisplyCondition": "",
            "itemCustomClass": "",
            "itemCut": "",
            "itemDateFormat": "",
            "itemDbl": "",
            "itemEQ": "",
            "itemEditCondition": "",
            "itemEditableProgram": "",
            "itemField": "iscruxpart",
            "itemFieldWidth": "",
            "itemFieldWidthList": [],
            "itemHrefConf": "",
            "itemHrefFields": "",
            "itemHttpPathField": "",
            "itemHttpVolumnPath": "",
            "itemImgWH": "",
            "itemInObj": "",
            "itemIsEditable": "1",
            "itemIsHidden": "1",
            "itemIsHttpSave": "0",
            "itemIsNavigatorExpand": "",
            "itemIsRequired": "0",
            "itemIsShowFolder": "",
            "itemKeyFieldList": [],
            "itemKeyFields": "",
            "itemListTable": "",
            "itemListTxt": "",
            "itemListVal": "",
            "itemName": "是否关键件",
            "itemOR": "",
            "itemOutFieldList": [],
            "itemOutFields": "",
            "itemOutType": "",
            "itemPageSize": "",
            "itemParentFolderName": "",
            "itemQtName": "",
            "itemQueryRefFields": "",
            "itemQuerySql": "",
            "itemRight": "",
            "itemRows": "",
            "itemScript": "",
            "itemSearchFieldList": [],
            "itemSelectoutFieldList": [],
            "itemSeniorQueryBOS": [],
            "itemSeniorQueryCols": "",
            "itemSeniorQueryColsCounts": "",
            "itemShowExpression": "",
            "itemStyle": "",
            "itemTips": "",
            "itemTrim": "",
            "itemTxf": "",
            "itemType": "select",
            "itemTypeText": "下拉菜单",
            "itemValue": "N",
            "itemValueList": [
              "否{N}",
              "是{Y}"
            ]
          },
          {
            "attributes": {},
            "key": "holistic",
            "value": "100"
          },
          {
            "attributes": {},
            "key": "scale",
            "value": "100"
          },
          {
            "attributes": {},
            "key": "source",
            "value": "100"
          },
          {
            "attributes": {},
            "key": "isforging",
            "value": "50"
          },
          {
            "attributes": {},
            "key": "isproductbring",
            "value": "100"
          },
          {
            "attributes": {},
            "key": "processremark",
            "value": "250"
            "itemAddFilter": "",
            "itemBat": "",
            "itemCols": "1",
            "itemCtrlDisplyCol": "",
            "itemCtrlDisplyCondition": "",
            "itemCustomClass": "",
            "itemCut": "",
            "itemDateFormat": "",
            "itemDbl": "",
            "itemEQ": "",
            "itemEditCondition": "",
            "itemEditableProgram": "",
            "itemField": "isimportantpart",
            "itemFieldWidth": "",
            "itemFieldWidthList": [],
            "itemHrefConf": "",
            "itemHrefFields": "",
            "itemHttpPathField": "",
            "itemHttpVolumnPath": "",
            "itemImgWH": "",
            "itemInObj": "",
            "itemIsEditable": "1",
            "itemIsHidden": "1",
            "itemIsHttpSave": "0",
            "itemIsNavigatorExpand": "",
            "itemIsRequired": "0",
            "itemIsShowFolder": "",
            "itemKeyFieldList": [],
            "itemKeyFields": "",
            "itemListTable": "",
            "itemListTxt": "",
            "itemListVal": "",
            "itemName": "是否重要件",
            "itemOR": "",
            "itemOutFieldList": [],
            "itemOutFields": "",
            "itemOutType": "",
            "itemPageSize": "",
            "itemParentFolderName": "",
            "itemQtName": "",
            "itemQueryRefFields": "",
            "itemQuerySql": "",
            "itemRight": "",
            "itemRows": "",
            "itemScript": "",
            "itemSearchFieldList": [],
            "itemSelectoutFieldList": [],
            "itemSeniorQueryBOS": [],
            "itemSeniorQueryCols": "",
            "itemSeniorQueryColsCounts": "",
            "itemShowExpression": "",
            "itemStyle": "",
            "itemTips": "",
            "itemTrim": "",
            "itemTxf": "",
            "itemType": "select",
            "itemTypeText": "下拉菜单",
            "itemValue": "N",
            "itemValueList": [
              "是{Y}",
              "否{N}"
            ]
          }
        ],
        "itemHrefConf": "",
        "itemHrefFields": "",
        "itemHttpPathField": "",
        "itemHttpVolumnPath": "",
        "itemImgWH": "0,0",
        "itemInObj": "A5791895-83D1-D63F-40C4-26705FF3A2BB",
        "itemIsEditable": "",
        "itemIsHidden": "",
        "itemIsHttpSave": "",
        "itemIsNavigatorExpand": "false",
        "itemIsRequired": "",
        "itemIsShowFolder": "false",
        "itemKeyFieldList": null,
        "itemKeyFields": "",
        "itemListTable": "",
        "itemListTxt": "",
        "itemListVal": "",
        "itemName": "",
        "itemOR": "",
        "itemOutFieldList": [
          "code",
          "partoid.name",
          "validity",
          "lcstatus",
          "additionalunit",
          "distributeunittwo",
          "anticollaboration",
          "holistic",
          "scale",
          "source",
          "isforging",
          "isproductbring",
          "processremark"
        ],
        "itemOutFields": "code,partoid.name,validity,lcstatus,additionalunit,distributeunittwo,anticollaboration,holistic,scale,source,isforging,isproductbring,processremark",
        "itemOutType": "",
        "itemPageSize": "",
        "itemParentFolderName": "",
        "itemQtName": "queryppartbypbom",
        "itemQueryRefFields": "",
        "itemQuerySql": "",
        "itemRight": "",
        "itemRows": "",
        "itemScript": "",
        "itemSearchFieldList": [
          "code",
          "partoid.name",
          "validity",
          "lcstatus",
          "additionalunit",
          "distributeunittwo",
          "anticollaboration",
          "holistic",
          "scale",
          "source",
          "isforging",
          "isproductbring",
          "processremark"
        ],
        "itemSelectoutFieldList": [
          "produceroute",
          "hotsurfaceroute"
        ],
        "itemSeniorQueryBOS": [],
        "itemSeniorQueryCols": "",
        "itemSeniorQueryColsCounts": "",
        "itemShowExpression": "",
        "itemStyle": "",
        "itemTips": "",
        "itemTrim": "",
        "itemTxf": "",
        "itemType": "",
        "itemTypeText": "",
        "itemValue": "",
        "itemValueList": []
      }
    ],
    "showCols": "3"
  },
  "typeFlag": 0,
  "typeFlagText": "业务类型的表格",
  "typeName": "ppart",
  "viName": "ppart_auditlist_test",
  "viType": 0,
  "viTypeText": "表格"
        "showCols": "2"
      },
      "typeFlag": 0,
      "typeFlagText": "业务类型的表单",
      "typeName": "ppart",
      "viName": "ppartProp",
      "viType": 1,
      "viTypeText": "表单"
    }
  }]
}
Source/plt-web/plt-web-ui/src/api/system/fileManager/index.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,155 @@
<template>
  <!--文件柜管理-->
  <basic-container>
    <avue-crud
      ref="fileCrud"
      :data="tableData"
      :option="option"
      :page.sync="page"
      :table-loading="tableLoading"
      @on-load="getTableList"
      @refresh-change="handleRefresh"
      @search-change="handleSearch"
      @search-reset="handleReset"
      @size-change="sizeChange"
      @current-change="currentChange"
    >
      <template slot="menuLeft" slot-scope="scope">
        <el-button icon="el-icon-download" plain size="small" type="primary" @click="allDelHandler">导出</el-button>
      </template>
    </avue-crud>
  </basic-container>
</template>
<script>
import basicOption from "@/util/basic-option";
import {getLogListByContion} from "@/api/system/log/logBasic";
export default {
  name: "index",
  data: function () {
    return {
      tableLoading: false,
      tableData: [],
      option: {
        ...basicOption,
        addBtn:false,
        editBtn: false,
        delBtn: false,
        calcHeight: -60,
        align:'left',
        headerAlign:'center',
        menu:false,
        searchMenuSpan: 6,
        searchIcon:false,
        column: [
          {
            label: '用户名',
            prop: 'truename',
            search:true,
            searchSpan: 4,
            searchLabel:'操作用户',
            type:'select',
            dicUrl:'/api/loginBasicController/getOperatingUsers',
            sortable:true,
            width: 150
          }, {
            label: '姓名',
            prop: 'username',
            sortable:true,
            width: 150
          },{
            label: '用户IP',
            prop: 'userIp',
            search:true,
            searchSpan: 4,
            sortable:true,
            width: 150
          },{
            label: '模块',
            prop: 'moduleName',
            sortable:true,
            overHidden: true,
          },{
            label: '操作',
            prop: 'type',
            sortable:true,
            width: 150
          },{
            label: '时间',
            prop: 'date',
            type:'date',
            search:true,
            searchOrder: 1,
            searchSpan: 8,
            searchRange: true,
            searchLabel:'查询日期',
            valueFormat:'yyyy-MM-dd',
            width: 160
          },{
            label: '描述',
            prop: 'result',
            overHidden: true,
            width:380,
          },
        ]
      },
      page: {
        currentPage: 1,
        pageSize: 50,
        total: 0,
        pageSizes: [10, 30, 50, 100],
      },
      searchParams: {}
    }
  },
  methods: {
    // è¡¨æ ¼è¯·æ±‚
    getTableList() {
      this.tableLoading = true;
      getLogListByContion(this.page.currentPage, this.page.pageSize, {'logType':this.$route.query.logType,...this.searchParams}).then(res => {
        this.tableData = res.data.data;
        this.page.total = res.data.total;
        this.tableLoading = false;
      })
    },
    // æœç´¢æŸ¥è¯¢
    handleSearch(params, done) {
      this.searchParams = {
        userName:params.truename,
        ipText:params.userIp,
        startDate:params.date[0],
        endDate:params.date[1]
      };
      this.getTableList();
      done();
    },
    // é‡ç½®æœç´¢æ¡ä»¶
    handleReset() {
      this.searchParams = {};
      this.getTableList();
    },
    // æ¡æ•°
    sizeChange(val) {
      this.page.pageSize = val;
    },
    // é¡µç 
    currentChange(val) {
      this.page.currentPage = val;
    },
    handleRefresh(){
      this.getTableList();
    }
  }
}
</script>
<style scoped>
</style>
Source/plt-web/plt-web-ui/src/api/system/log/logBasic.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,57 @@
import request from '@/router/axios';
// æ—¥å¿—保存期限查询
export function getPeroid(params) {
  return request({
    url: "/api/loginBasicController/getPeroid",
    method: "get",
    params
  });
}
// ä¿å­˜æœŸé™ä¿å­˜
export function savePeriod(params) {
  return request({
    url: "/api/loginBasicController/savePeriod",
    method: "post",
    params: params
  });
}
export function deleteLog(params) {
  return request({
    url: "/api/loginBasicController/deleteLog",
    method: "delete",
    params
  })
}
//获取操作用户
export function getOperatingUsers( params) {
  return request({
    url: "/api/loginBasicController/getOperatingUsers",
    method: "get",
    params
  });
}
export function getLogListByContion(page, limit, params) {
  return request({
    url: "/api/loginBasicController/getLogListByContion",
    method: "post",
    data: {
      'pageNo':page,
      'pageSize':limit,
      ...params
    }
  });
}
// å¯¼å‡º
export const exportLog = (params) => {
  return request({
    url: '/api/loginBasicController/exportLog',
    method: 'get',
    headers: {'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'},
    responseType: 'blob',
    params
  })
}
Source/plt-web/plt-web-ui/src/views/authority/ui/uiAuthorization/index.vue
@@ -274,7 +274,7 @@
        roleId: this.nodeRow.oid,
        type: this.type,
        context: this.context,
        selectTreeList: data
        selectTreeList: selectTreeList
      }
      authorizedUI(formData).then(res => {
        if (res.data.success) {
Source/plt-web/plt-web-ui/src/views/fileManage/index.vue
ÎļþÒÑɾ³ý
Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/Aciton/index.vue
@@ -718,34 +718,6 @@
  .el-scrollbar__wrap {
    overflow: auto !important;
  }
  .headerCon {
    .el-button {
      width: 82px;
    }
  }
}
.headerCon {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 5px;
  .el-button + .el-button {
    margin-left: 5px;
  }
  .el-button {
    margin-top: 5px;
  }
}
.headerCon > .el-button:nth-child(4) {
  margin-left: 0;
}
.headerCon > .el-button:nth-child(7) {
  margin-left: 0;
}
.smallBtn {
Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/index.vue
@@ -55,12 +55,6 @@
                <el-input v-model="topName" placeholder="请输入内容" size="mini" style="margin-right: 10px;"></el-input>
                <el-button plain size="mini" type="success" @click="nameSearchHandler">查询</el-button>
              </span>
              <span style="display: flex; align-items: center;">
                <p
                  style="display: flex; align-items: center; margin: 0 10px 0 0;flex-shrink: 0;font-size: 14px">克隆目标:</p>
                <el-input v-model="input" placeholder="请输入内容" size="mini" style="margin-right: 10px;"></el-input>
                <el-button plain size="mini" type="success">克隆目标</el-button>
              </span>
            </div>
          </template>
          <template slot="menu" slot-scope="scope">
@@ -72,12 +66,44 @@
        </avue-crud>
      </basic-container>
    </el-main>
    <form-dialog ref="formDialog" :TreeNodeRow="this.nodeRow" :treeRadio="treeRadio" :editRow="editRow"></form-dialog>
    <form-dialog ref="formDialog" :TreeNodeRow="this.nodeRow" :editRow="editRow" :treeRadio="treeRadio"></form-dialog>
    <table-dialog ref="tableDialog" :TreeNodeRow="this.nodeRow" :treeRadio="treeRadio"
                  @updataTable="getRightPortalVIDatas"></table-dialog>
    <!-- å¯¼å…¥ -->
    <upload-file ref="upload" :fileType="upFileType" :fileUrl="fileUrl" :tipList="tipList" title="导入"
                 @updata="getRightPortalVIDatas"></upload-file>
    <el-dialog
      v-dialogDrag
      :visible.sync="cloneVisible"
      append-to-body="true"
      class="avue-dialog"
      title="克隆"
      width="50%">
      <basic-container>
        <div ref="TreeBox" style="height: calc(100vh - 294px);!important;">
          <!-- å·¦ä¾§æ ‘ -->
          <div style="height:  calc(100vh - 370px);">
            <div style="margin-bottom: 10px;display: flex;justify-content: center">
              <el-radio v-model="cloneTreeRadio" label="0" @input="cloneTreeRadioChange">业务类型树</el-radio>
              <el-radio v-model="cloneTreeRadio" label="1" @input="cloneTreeRadioChange">链接类型树</el-radio>
            </div>
            <avue-tree ref="cloneTree" v-loading="cloneTreeLoading" :data="cloneTreeData" :option="treeOption"
                       @node-click="cloneTreeNodeClick">
          <span slot-scope="{ node, data }" class="el-tree-node__label">
           <span style="font-size: 15px">
              <i class="el-icon-s-promotion"></i>
                {{ (node || {}).label }}
            </span>
          </span>
            </avue-tree>
          </div>
        </div>
      </basic-container>
      <span slot="footer" class="dialog-footer">
         <el-button @click="cloneVisible = false">取 æ¶ˆ</el-button>
         <el-button type="primary" @click="cloneSaveHandler">ç¡® å®š</el-button>
        </span>
    </el-dialog>
  </el-container>
</template>
@@ -85,7 +111,7 @@
import basicOption from "@/util/basic-option";
import FormDialog from "@/views/modelingMenu/ui/formDefine/components/formDialog";
import TableDialog from "@/views/modelingMenu/ui/formDefine/components/tableDialog";
import {gridPortalVIDatas, getPortalVIById, deleteByIds, exportExcel} from "@/api/UI/formDefine/api";
import {gridPortalVIDatas, getPortalVIById, deleteByIds, exportExcel, clone} from "@/api/UI/formDefine/api";
import {getBizTypes} from "@/api/modeling/businessType/api";
import {gridLink} from "@/api/modeling/linkType/api";
import func from "@/util/func";
@@ -95,6 +121,11 @@
  components: {FormDialog, TableDialog},
  data() {
    return {
      cloneTreeNode: {},
      cloneTreeRadio: '0',
      cloneTreeData: [],
      cloneTreeLoading: false,
      cloneVisible: false,
      tipList: [
        "导入业务类型名称不可为空",
        "导入名称不可为空且名称只能为英文字母",
@@ -149,7 +180,7 @@
      },
      dbClickList: [],
      defaultData: [], // ç”¨äºŽæŸ¥è¯¢æ¢å¤åŽŸå§‹å€¼,
      editRow:{},
      editRow: {},
    }
  },
  created() {
@@ -190,7 +221,7 @@
        this.treeData = data;
        this.treeLoading = false;
      }).catch(error => {
        loading.close();
        this.treeLoading = false;
      });
    },
@@ -280,7 +311,7 @@
    // ç¼–辑按钮
    editBtnClick(row) {
      console.log('row',row);
      console.log('row', row);
      // è¡¨æ ¼
      if (row.viType === 0) {
        const params = {
@@ -381,12 +412,13 @@
    // åç§°æŸ¥è¯¢
    nameSearchHandler() {
      if (!this.topName) {
        this.data = this.defaultData;
        this.getRightPortalVIDatas();
        return;
      }
      const list = this.data.filter(item => item.viName.includes(this.topName.trim()));
      const list = this.defaultData.filter(item => item.viName.includes(this.topName.trim()));
      this.data = list;
      this.page.total = this.data.length;
    },
    // åˆ é™¤æŒ‰é’®
@@ -457,7 +489,7 @@
      this.$refs.upload.visible = true;
    },
    // å¯¼å‡º
    // å…‹éš†
    copyClickHandler() {
      if (this.selectList.length <= 0) {
        this.$message.error('请至少选择一条数据');
@@ -468,6 +500,103 @@
        this.$message.error('只能选择一条数据');
        return;
      }
      this.cloneVisible = true;
      this.cloneTreeLoading = true;
      getBizTypes().then(res => {
        const data = res.data.data.map(item => {
          this.processChildren(item); // å¤„理每个节点
          item.attributes.id = item.attributes.id;
          return item.attributes; // è¿”回处理后的 attributes
        });
        this.cloneTreeData = data;
        this.cloneTreeLoading = false;
      }).catch(error => {
        this.cloneTreeLoading = false;
      });
    },
    // å…‹éš†æ ‘点击
    cloneTreeNodeClick(row) {
      console.log(row);
      this.cloneTreeNode = row;
    },
    // å…‹éš†æ ‘类型切换
    cloneTreeRadioChange(val) {
      this.cloneTreeLoading = true;
      if (val === "0") {
        getBizTypes().then(res => {
          const data = res.data.data.map(item => {
            this.processChildren(item); // å¤„理每个节点
            item.attributes.id = item.attributes.id;
            return item.attributes; // è¿”回处理后的 attributes
          });
          this.cloneTreeData = data;
          this.cloneTreeLoading = false;
        });
      } else {
        gridLink().then(res => {
          const data = res.data.data.map(item => {
            item.id = item.name;
            return item;
          });
          this.cloneTreeData = data;
          this.cloneTreeLoading = false;
        })
      }
    },
    // æŸ¥è¯¢è¡¨æ ¼æ•°æ®è¯¦æƒ…
    searchDetail() {
      return new Promise((resolve, reject) => {
        const params = {
          id: this.selectList[0].id,
          viType: this.selectList[0].viType
        };
        getPortalVIById(params).then(res => {
          const obj = res.data.obj;
          resolve(obj);
        }).catch(error => {
          reject(error);
        });
      });
    },
    // å…‹éš†ä¿å­˜
    async cloneSaveHandler() {
      if (func.isEmptyObject(this.cloneTreeNode)) {
        this.$message.error('请选择一条数据进行克隆');
        return;
      }
      const obj = await this.searchDetail();
      this.$prompt('请输入克隆文件名称', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
      }).then(({value}) => {
        console.log(obj);
        const params = {
          clonePortalVIDTOList: [
            {
              viName: value,
              typeName: this.cloneTreeRadio === '0' ? this.cloneTreeNode.id : this.cloneTreeNode.name,
              typeFlag: this.cloneTreeRadio,
              oldPortalVIDTO: {...obj}
            }
          ],
        }
        clone(params).then(res => {
          if (res.data.code === 200) {
            this.$message.success('克隆成功');
            this.cloneVisible = false;
          }
        })
      }).catch(() => {
        this.$message({
          type: 'info',
          message: '取消输入'
        });
      });
    }
  }
}
Source/plt-web/plt-web-ui/src/views/system/fileCab/index.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,138 @@
<template>
  <!--文仓管理页面-->
  <basic-container>
    <avue-crud
      ref="logCrud"
      :data="tableData"
      :option="option"
      :page.sync="page"
      :table-loading="tableLoading"
      @on-load="getTableList"
      @refresh-change="handleRefresh"
      @search-change="handleSearch"
      @search-reset="handleReset"
      @size-change="sizeChange"
      @current-change="currentChange"
    >
      <template slot="menuLeft" slot-scope="scope">
        <el-button icon="el-icon-download" plain size="small" type="primary" @click="exportClickHandler">导出</el-button>
      </template>
    </avue-crud>
  </basic-container>
</template>
<script>
import {exportLog, getLogListByContion} from "@/api/system/log/logBasic";
import func from "@/util/func";
import basicOption from "@/util/basic-option";
export default {
  name: "index",
  data: function () {
    return {
      tableLoading: false,
      tableData: [],
      option: {
        ...basicOption,
        addBtn:false,
        editBtn: false,
        delBtn: false,
        calcHeight: -60,
        align:'left',
        headerAlign:'center',
        menu:false,
        searchMenuSpan: 6,
        searchIcon:false,
        column: [
          {
            label: '卷名',
            prop: 'truename',
            width: 300
          }, {
            label: '机器类型',
            prop: 'username',
            width: 150
          },{
            label: '路径名称',
            prop: 'userIp'
          },{
            label: '首选路径',
            prop: 'moduleName',
          },{
            label: '服务器',
            prop: 'type',
            width: 150
          },{
            label: '卷服务',
            prop: 'date',
          }]
      },
      page: {
        currentPage: 1,
        pageSize: 50,
        total: 0,
        pageSizes: [10, 30, 50, 100],
      },
      searchParams: {}
    }
  },
  methods: {
    // è¡¨æ ¼è¯·æ±‚
    getTableList() {
      this.tableLoading = true;
      getLogListByContion(this.page.currentPage, this.page.pageSize, {'logType':this.$route.query.logType,...this.searchParams}).then(res => {
        this.tableData = res.data.data;
        this.page.total = res.data.total;
        this.tableLoading = false;
      })
    },
    // æœç´¢æŸ¥è¯¢
    handleSearch(params, done) {
      this.searchParams = {
        userName:params.truename,
        ipText:params.userIp,
        startDate:params.date[0],
        endDate:params.date[1]
      };
      this.getTableList();
      done();
    },
    // é‡ç½®æœç´¢æ¡ä»¶
    handleReset() {
      this.searchParams = {};
      this.getTableList();
    },
    // æ¡æ•°
    sizeChange(val) {
      this.page.pageSize = val;
    },
    // é¡µç 
    currentChange(val) {
      this.page.currentPage = val;
    },
    handleRefresh(){
      this.getTableList();
    },
    // å¯¼å‡º
    exportClickHandler() {
      const loading = this.$loading({});
      exportLog().then(res => {
        func.downloadFileByBlobHandler(res);
        this.createdLoading = false
        this.$message.success('导出成功');
        loading.close();
      })
    },
  }
}
</script>
<style scoped>
</style>
Source/plt-web/plt-web-ui/src/views/system/log/basicConf.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,138 @@
<template>
  <!--日志基础配置-->
  <el-container>
    <el-main>
      <basic-container>
        <div style="margin: 0 0 10px 20px">
          <el-button v-if="form.delType==0" icon="el-icon-check" size="small" type="primary" @click="saveHandler">保存</el-button>
          <el-button v-else icon="el-icon-delete" size="small" type="danger" @click="delHandler">删除</el-button>
        </div>
        <avue-form ref="form" v-model="form" :option="formOption"></avue-form>
        <div class="tip">
          <div style="color: #D40000;margin-left: 0;">日志基础配置说明:</div>
          <div>1、日志删除包含手动删除和自动删除。</div>
          <div>2、自动删除会根据日志的保存期限来进行日志删除。</div>
          <div>3、手动删除根据选定的时间来进行日志删除。</div>
        </div>
      </basic-container>
    </el-main>
  </el-container>
</template>
<script>
import {getPeroid,savePeriod,deleteLog} from "@/api/system/log/logBasic";
export default {
  name: "basicConf",
  data: function () {
    return {
      form:{
        period:'',
      },
      periodData:[],
      formOption:{
        submitBtn: false,
        emptyBtn: false,
        column: [{
          label: '日志删除',
          prop: 'delType',
          span: 24,
          labelWidth:120,
          type: 'radio',
          value: 0,
          dicData: [
            { label: '自动删除', value: 0 },
            { label: '手动删除', value: 1 },
          ]
        }, {
          label: '保存日期',
          prop: 'period',
          type: 'select',
          labelWidth:120,
          dicData: this.periodData,
          props:{
            label:'value',
            value:'code'
          },
          rules: [{
            required: true,
            message: "请选择保存日期",
            trigger: "blur"
          }]
        }, {
          label: '请选择日期',
          prop: 'deleteDate',
          type: 'date',
          valueFormat:'yyyy-MM-dd',
          labelWidth:120,
          display: false,
          rules: [{
            required: true,
            message: "请选择日期",
            trigger: "blur"
          }]
        }]
      },
    }
  },
  created() {
    this.getPeroid();
  },
  watch: {
    'form.delType': {
      handler(newval) {
        if (newval ==0) {
          this.formOption.column[1].display=true;
          this.formOption.column[2].display=false;
        }else {
          this.formOption.column[1].display=false;
          this.formOption.column[2].display=true;
        }
      }
    },
  },
  methods:{
    getPeroid:function (){
      getPeroid().then(res => {
        this.$refs.form.updateDic('period', res.data.data);
        this.periodData=res.data.data;
        this.form.period=res.data.data.filter(item=>{
          return item.choose
        })[0].code
      }).catch(error => {
      })
    },
    saveHandler:function (){
      savePeriod({'period':this.form.period}).then(res => {
        if (res.data.success) {
          this.$message.success('保存成功')
        }
      });
    },
    delHandler() {
      this.$refs.form.validate((valid,done) => {
        if(valid){
          deleteLog({'deleteDate':this.form.deleteDate}).then(res => {
            if (res.data.success) {
              this.$message.success('删除成功')
            }
          });
          done()
        }
      })
    },
  }
}
</script>
<style scoped>
.tip{
  font-size: 12px;
  line-height: 24px;
  color: #909399;
  margin: 0 0 10px 20px;
}
.tip div{
  margin-left: 30px;
}
</style>
Source/plt-web/plt-web-ui/src/views/system/log/index.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,170 @@
<template>
  <basic-container>
    <avue-crud
      ref="logCrud"
      :data="tableData"
      :option="option"
      :page.sync="page"
      :table-loading="tableLoading"
      @on-load="getTableList"
      @refresh-change="handleRefresh"
      @search-change="handleSearch"
      @search-reset="handleReset"
      @size-change="sizeChange"
      @current-change="currentChange"
    >
      <template slot="menuLeft" slot-scope="scope">
        <el-button icon="el-icon-download" plain size="small" type="primary" @click="exportClickHandler">导出</el-button>
      </template>
    </avue-crud>
  </basic-container>
</template>
<script>
import basicOption from "@/util/basic-option";
import {getLogListByContion,getOperatingUsers,exportLog} from "@/api/system/log/logBasic";
import func from "@/util/func";
export default {
  name: "index",
  data: function () {
    return {
      tableLoading: false,
      tableData: [],
      option: {
        ...basicOption,
        addBtn: false,
        editBtn: false,
        delBtn: false,
        calcHeight: -60,
        align: 'left',
        headerAlign: 'center',
        menu: false,
        searchMenuSpan: 6,
        searchIcon: false,
        column: [
          {
            label: '用户名',
            prop: 'truename',
            search: true,
            searchSpan: 4,
            searchLabel: '操作用户',
            type: 'select',
            dicUrl: '/api/loginBasicController/getOperatingUsers',
            sortable: true,
            width: 150
          }, {
            label: '姓名',
            prop: 'username',
            sortable: true,
            width: 150
          }, {
            label: '用户IP',
            prop: 'userIp',
            search: true,
            searchSpan: 4,
            sortable: true,
            width: 150
          }, {
            label: '模块',
            prop: 'moduleName',
            sortable: true,
            overHidden: true,
          }, {
            label: '操作',
            prop: 'type',
            sortable: true,
            width: 150
          }, {
            label: '时间',
            prop: 'date',
            type: 'date',
            search: true,
            searchOrder: 1,
            searchSpan: 8,
            searchRange: true,
            searchLabel: '查询日期',
            valueFormat: 'yyyy-MM-dd',
            width: 160
          }, {
            label: '描述',
            prop: 'result',
            overHidden: true,
            width: 380,
          },
        ]
      },
      page: {
        currentPage: 1,
        pageSize: 50,
        total: 0,
        pageSizes: [10, 30, 50, 100],
      },
      searchParams: {}
    }
  },
  watch: {
    $route(to, from) {
      this.getTableList();
    }
  },
  methods: {
    // è¡¨æ ¼è¯·æ±‚
    getTableList() {
      this.tableLoading = true;
      getLogListByContion(this.page.currentPage, this.page.pageSize, {'logType': this.$route.query.logType, ...this.searchParams}).then(res => {
        this.tableData = res.data.data;
        this.page.total = res.data.total;
        this.tableLoading = false;
      })
    },
    // æœç´¢æŸ¥è¯¢
    handleSearch(params, done) {
      this.searchParams = {
        userName: params.truename,
        ipText: params.userIp,
        startDate: params.date[0],
        endDate: params.date[1]
      };
      this.getTableList();
      done();
    },
    // é‡ç½®æœç´¢æ¡ä»¶
    handleReset() {
      this.searchParams = {};
      this.getTableList();
    },
    // æ¡æ•°
    sizeChange(val) {
      this.page.pageSize = val;
    },
    // é¡µç 
    currentChange(val) {
      this.page.currentPage = val;
    },
    handleRefresh() {
      this.getTableList();
    },
    // å¯¼å‡º
    exportClickHandler() {
      const loading = this.$loading({});
      exportLog().then(res => {
        func.downloadFileByBlobHandler(res);
        this.createdLoading = false
        this.$message.success('导出成功');
        loading.close();
      })
    },
  }
}
</script>
<style scoped>
</style>
Source/plt-web/plt-web-ui/src/views/system/user/index.vue
@@ -238,9 +238,7 @@
        this.tableData = data;
        this.page.total = res.data.total;
        this.tableLoading = false;
      }).catch(err => {
        this.$message.error(err)
      });
      })
    },
    // è¡¨æ ¼å³ä¾§åˆ·æ–°å›¾æ ‡
Source/plt-web/plt-web-ui/src/views/systemModel/businessModel/index.vue
@@ -2,8 +2,8 @@
  <el-container v-loading="createdLoading">
    <el-aside>
      <basic-container>
        <div style="max-height: calc(100vh - 170px);overflow: auto">
          <avue-tree :key="refresh" ref="tree" :data="treeData" :option="treeOption" @node-click="nodeClick">
        <div style="max-height: calc(100vh - 150px);overflow: auto">
          <avue-tree :key="refresh" node-key="id" ref="tree" :data="treeData" :option="treeOption" @node-click="nodeClick">
          <span slot-scope="{ node, data }" class="el-tree-node__label">
           <span style="font-size: 15px">
              <i class="el-icon-s-promotion"></i>
@@ -17,7 +17,7 @@
    <el-main>
      <basic-container>
        <el-form ref="form" :model="form" label-width="85px" style="height: 79vh">
        <el-form ref="form" :model="form" label-width="85px" style="max-height: calc(100vh - 180px);overflow: auto;">
          <span v-if="form.childType !== 0">
            <el-form-item label="模块名:">
            <el-input v-model="form.name" placeholder="请输入模块名"></el-input>
@@ -202,6 +202,7 @@
      addStatus: false,
      editStatus: false,
      nodeRow: {},
      currentClickNode:null,
      form: {},
      treeData: [],
      treeOption: {
@@ -255,9 +256,10 @@
  },
  methods: {
    // æ ‘行点击
    nodeClick(row) {
    nodeClick(row,node) {
      this.form = {...row};
      this.nodeRow = {...row};
      this.currentClickNode=node;
      this.addStatus = false;
      this.editStatus = false;
    },
@@ -312,7 +314,7 @@
          this.addStatus = false;
          // this.resetFormValue();
          this.form.childType = null;
          this.refresh = Math.random(); // åˆ·æ–°å·¦ä¾§æ ‘
          this.handleRefreshTree('add')
        }
      })
    },
@@ -356,7 +358,7 @@
          this.editStatus = false;
          // this.resetFormValue();
          this.form.childType = null;
          this.refresh = Math.random(); // åˆ·æ–°å·¦ä¾§æ ‘
          this.handleRefreshTree('edit')
        }
      })
    },
@@ -371,7 +373,7 @@
        delModule(this.form).then(res => {
          if (res.data.code === 200) {
            this.$message.success(res.data.msg);
            this.resetFormValue();
            this.handleRefreshTree('del')
            this.addStatus = false;
            this.editStatus = false;
          }
@@ -389,8 +391,6 @@
      exportFunctionSql({isFunction: true}).then(res => {
        func.downloadFileByBlobHandler(res);
        this.$message.success('导出成功');
      }).catch(err => {
        this.$message.error(err);
      });
    },
@@ -425,12 +425,11 @@
        }
      })
      addOperationType(list).then(res => {
        console.log(res)
        if (res.data.code === 200) {
          this.methodsVisble = false;
          this.$message.success(res.data.msg);
          this.form.childType = null;
          this.refresh = Math.random(); // åˆ·æ–°å·¦ä¾§æ ‘
          this.handleRefreshTree('add') // åˆ·æ–°å·¦ä¾§æ ‘
        }
      })
    },
@@ -460,7 +459,7 @@
      updateAlias(params).then(res => {
        if (res.data.code === 200) {
          this.$message.success(res.data.msg);
          this.refresh = Math.random(); // åˆ·æ–°å·¦ä¾§æ ‘
          this.handleRefreshTree('edit')
        }
      })
    },
@@ -480,7 +479,7 @@
          console.log(res);
          if (res.data.code === 200) {
            this.$message.success(res.data.msg);
            this.resetFormValue();
            this.handleRefreshTree('del');
          }
        })
      }).catch(() => {
@@ -506,6 +505,23 @@
    // å¯¼å…¥
    upLoadClickHandler() {
      this.$refs.upload.visible = true;
    },
    handleRefreshTree(type) {
      //type:add\edit\del
      if(type=="del"){
        this.$refs.tree.remove(this.currentClickNode);
        this.currentClickNode=null;
        this.form={};
      }else{
        if (this.currentClickNode) {
          let node = this.currentClickNode.parent;
          node.loaded = false;
          node.expand();
          this.$refs.tree.setCurrentNode(this.currentClickNode);
        }else {
          this.refresh = Math.random(); // åˆ·æ–°å·¦ä¾§æ ‘
        }
      }
    }
  }
}
Source/plt-web/plt-web-ui/src/views/systemModel/mangeModel/index.vue
@@ -2,8 +2,8 @@
  <el-container v-loading="createdLoading">
    <el-aside>
      <basic-container>
        <div style="max-height: calc(100vh - 170px);overflow: auto">
          <avue-tree :key="refresh" ref="tree" :data="treeData" :option="treeOption" @node-click="nodeClick">
        <div style="max-height: calc(100vh - 150px);overflow: auto">
          <avue-tree :key="refresh" node-key="id" ref="tree" :data="treeData" :option="treeOption" @node-click="nodeClick">
          <span slot-scope="{ node, data }" class="el-tree-node__label">
           <span style="font-size: 15px">
              <i class="el-icon-s-promotion"></i>
@@ -17,7 +17,7 @@
    <el-main>
      <basic-container>
        <el-form ref="form" :model="form" label-width="85px" style="height: 79vh">
        <el-form ref="form" :model="form" label-width="85px" style="max-height: calc(100vh - 180px);overflow: auto;">
          <span v-if="form.childType !== 0">
            <el-form-item label="模块名:">
            <el-input v-model="form.name" placeholder="请输入模块名"></el-input>
@@ -202,6 +202,7 @@
      addStatus: false,
      editStatus: false,
      nodeRow: {},
      currentClickNode:null,
      form: {},
      treeData: [],
      treeOption: {
@@ -255,10 +256,11 @@
  },
  methods: {
    // æ ‘行点击
    nodeClick(row) {
    nodeClick(row,node) {
      console.log(row.childType);
      this.form = {...row};
      this.nodeRow = {...row};
      this.currentClickNode = node;
      this.addStatus = false;
      this.editStatus = false;
    },
@@ -313,7 +315,7 @@
          this.addStatus = false;
          // this.resetFormValue();
          this.form.childType = null;
          this.refresh = Math.random(); // åˆ·æ–°å·¦ä¾§æ ‘
          this.handleRefreshTree('add')
        }
      })
    },
@@ -357,7 +359,7 @@
          this.editStatus = false;
          // this.resetFormValue();
          this.form.childType = null;
          this.refresh = Math.random(); // åˆ·æ–°å·¦ä¾§æ ‘
          this.handleRefreshTree('edit')
        }
      })
    },
@@ -372,7 +374,7 @@
        delModule(this.form).then(res => {
          if (res.data.code === 200) {
            this.$message.success(res.data.msg);
            this.resetFormValue();
            this.handleRefreshTree('del')
            this.addStatus = false;
            this.editStatus = false;
          }
@@ -461,23 +463,21 @@
      updateAlias(params).then(res => {
        if (res.data.code === 200) {
          this.$message.success(res.data.msg);
          this.refresh = Math.random(); // åˆ·æ–°å·¦ä¾§æ ‘
          this.handleRefreshTree('edit')
        }
      })
    },
    // åˆ é™¤æ¨¡å—下关联的操作类型
    deleteOperationClickHandler() {
      console.log(this.form);
      const params = {
        funcId: this.form.funcId,
        operId: this.form.operId
      }
      delFuncOperation(params).then(res => {
        console.log(res);
        if (res.data.code === 200) {
          this.$message.success(res.data.msg);
          this.resetFormValue();
          this.handleRefreshTree('del');
        }
      })
    },
@@ -489,14 +489,29 @@
        func.downloadFileByBlobHandler(res);
        this.createdLoading = false
        this.$message.success('导出成功');
      }).catch(err => {
        this.$message.error(err);
      })
    },
    // å¯¼å…¥
    upLoadClickHandler() {
      this.$refs.upload.visible = true;
    },
    handleRefreshTree(type) {
      //type:add\edit\del
      if(type=="del"){
        this.$refs.tree.remove(this.currentClickNode);
        this.currentClickNode=null;
        this.form={};
      }else{
        if (this.currentClickNode) {
          let node = this.currentClickNode.parent;
          node.loaded = false;
          node.expand();
          this.$refs.tree.setCurrentNode(this.currentClickNode);
        }else {
          this.refresh = Math.random(); // åˆ·æ–°å·¦ä¾§æ ‘
        }
      }
    }
  }
}
Source/plt-web/plt-web-ui/src/views/systemModel/operateType/index.vue
@@ -2,8 +2,8 @@
  <el-container>
    <el-aside>
      <basic-container>
        <div style="max-height: calc(100vh - 170px);overflow: auto">
          <avue-tree :key="refresh" ref="tree" :data="treeData" :option="treeOption" @node-click="nodeClick">
        <div style="max-height: calc(100vh - 150px);overflow: auto">
          <avue-tree :key="refresh" node-key="id" ref="tree" :data="treeData" :option="treeOption" @node-click="nodeClick">
          <span slot-scope="{ node, data }" class="el-tree-node__label">
           <span style="font-size: 15px">
              <i class="el-icon-s-promotion"></i>
@@ -17,7 +17,7 @@
    <el-main>
      <basic-container>
        <el-form ref="form" :model="form" label-width="85px" style="height: 79vh">
        <el-form ref="form" :model="form" label-width="85px" style="max-height: calc(100vh - 180px);overflow: auto;">
          <el-form-item label="名称:">
            <el-input v-model="form.name" placeholder="请输入名称"></el-input>
          </el-form-item>
@@ -73,6 +73,7 @@
      editStatus:false,
      addStatus: false,
      nodeRow: {},
      currentClickNode:null,
      form: {},
      treeData: [],
      treeOption: {
@@ -111,10 +112,11 @@
  },
  methods: {
    // æ ‘行点击
    nodeClick(row) {
    nodeClick(row,node) {
      console.log(row);
      this.form = {...row};
      this.nodeRow = {...row};
      this.currentClickNode=node;
      this.addStatus = false;
      this.editStatus = false;
    },
@@ -173,7 +175,7 @@
      addOperationType(params).then(res => {
        if(res.data.code === 200){
          this.$message.success(res.data.msg);
          this.refresh = Math.random(); // åˆ·æ–°å·¦ä¾§æ ‘
          this.handleRefreshTree('add')
          this.addStatus = false;
        }
      })
@@ -227,7 +229,7 @@
      updateOperationType(params).then(res => {
        if(res.data.code === 200){
          this.$message.success(res.data.msg);
          this.refresh = Math.random(); // åˆ·æ–°å·¦ä¾§æ ‘
          this.handleRefreshTree('edit')
          this.editStatus = false;
        }
      })
@@ -243,7 +245,7 @@
        delOperationType(this.form).then(res => {
          if (res.data.code === 200) {
            this.$message.success(res.data.msg);
            this.resetFormValue();
            this.handleRefreshTree('del')
            this.addStatus = false;
            this.editStatus = false;
            this.nodeRow = {};
@@ -262,10 +264,25 @@
      exportFunctionSql({isFunction: false}).then(res => {
        func.downloadFileByBlobHandler(res);
        this.$message.success('导出成功');
      }).catch(err => {
        this.$message.error(err);
      });
    },
    handleRefreshTree(type) {
      //type:add\edit\del
      if(type=="del"){
        this.$refs.tree.remove(this.currentClickNode);
        this.currentClickNode=null;
        this.form={};
      }else{
        if (this.currentClickNode) {
          let node = this.currentClickNode.parent;
          node.loaded = false;
          node.expand();
          this.$refs.tree.setCurrentNode(this.currentClickNode);
        }else {
          this.refresh = Math.random(); // åˆ·æ–°å·¦ä¾§æ ‘
        }
      }
    }
  }
}
</script>