Veronique 1 rok pred
rodič
commit
922c9710ac

+ 2 - 0
.env.development

@@ -6,3 +6,5 @@ VITE_APP_PORT = 9992
 
 # 代理前缀
 VITE_APP_BASE_API = '/apis10'
+
+VITE_DESIGN_MODULE_URL = 'http://192.168.1.44:9191/'

+ 1 - 0
.env.production

@@ -4,3 +4,4 @@ NODE_ENV='production'
 # 代理前缀
 VITE_APP_BASE_API = '/apis10'
 
+VITE_DESIGN_MODULE_URL = 'http://47.104.169.21:9191/'

+ 0 - 81
src/components/WangEditor/index.vue

@@ -1,81 +0,0 @@
-<template>
-  <div class="editor-wrapper">
-    <!-- 工具栏 -->
-    <Toolbar
-      id="toolbar-container"
-      :editor="editorRef"
-      :default-config="toolbarConfig"
-      :mode="mode"
-    />
-    <!-- 编辑器 -->
-    <Editor
-      id="editor-container"
-      v-model="modelValue"
-      :default-config="editorConfig"
-      :mode="mode"
-      @on-change="handleChange"
-      @on-created="handleCreated"
-    />
-  </div>
-</template>
-
-<script setup lang="ts">
-import { Editor, Toolbar } from "@wangeditor/editor-for-vue";
-
-// API 引用
-import { uploadFileApi } from "@/api/product";
-
-const props = defineProps({
-  modelValue: {
-    type: [String],
-    default: "",
-  },
-});
-
-const emit = defineEmits(["update:modelValue"]);
-
-const modelValue = useVModel(props, "modelValue", emit);
-
-const editorRef = shallowRef(); // 编辑器实例,必须用 shallowRef
-const mode = ref("default"); // 编辑器模式
-const toolbarConfig = ref({}); // 工具条配置
-// 编辑器配置
-const editorConfig = ref({
-  placeholder: "请输入内容...",
-  uploadImgMaxSize:307200,
-  MENU_CONF: {
-    uploadImage: {
-      // 自定义图片上传
-      async customUpload(file: any, insertFn: any) {
-        uploadFileApi(file).then((response) => {
-          // console.log(file);
-          // console.log(response);
-          if (file.size > 307200) {
-            ElMessage.warning('图片大小不能大于300KB,请您注意图片的长和宽,网页图片的分辨率为72');
-            return
-          }
-          const url = response.data.url;
-          insertFn(url);
-        });
-      },
-    },
-  },
-});
-
-const handleCreated = (editor: any) => {
-  editorRef.value = editor; // 记录 editor 实例,重要!
-};
-
-function handleChange(editor: any) {
-  modelValue.value = editor.getHtml();
-}
-
-// 组件销毁时,也及时销毁编辑器
-onBeforeUnmount(() => {
-  const editor = editorRef.value;
-  if (editor == null) return;
-  editor.destroy();
-});
-</script>
-
-<style src="@wangeditor/editor/dist/css/style.css"></style>

+ 37 - 33
src/store/modules/user.ts

@@ -1,22 +1,22 @@
 // @ts-nocheck
-import {defineStore} from "pinia";
+import { defineStore } from "pinia";
 
-import {getRouterApi, loginApi} from "@/api/auth";
-import {resetRouter} from "@/router";
-import {store} from "@/store";
+import { getRouterApi, loginApi } from "@/api/auth";
+import { resetRouter } from "@/router";
+import { store } from "@/store";
 
-import {LoginData} from "@/api/auth/types";
+import { LoginData } from "@/api/auth/types";
 
 // import { useStorage } from "@vueuse/core";
-import {getToken, setToken, removeToken} from '@/utils/js-cookie'
+import { getToken, setToken, removeToken } from "@/utils/js-cookie";
 
 export const useUserStore = defineStore("user", () => {
   const user = {
     token: getToken("Access-Token"), // 登录token
-    init: false,//判断是否获取过路由
+    init: false, //判断是否获取过路由
     roles: [],
     perms: [],
-    userInfo: null // 用户信息
+    userInfo: null, // 用户信息
   };
 
   // removeToken("Access-Token")//清除token
@@ -28,21 +28,23 @@ export const useUserStore = defineStore("user", () => {
    * @returns
    */
   function login(loginData: LoginData) {
-    const loginInfo = JSON.parse(JSON.stringify(loginData))
+    const loginInfo = JSON.parse(JSON.stringify(loginData));
     const user = {
       loginName: loginInfo.username,
       password: loginInfo.password,
-    }
+    };
     const parms = {
-      'user': JSON.stringify(user),
-      'supplierId': getToken('supplierId'),
+      user: JSON.stringify(user),
+      supplierId: getToken("supplierId"),
     };
     return new Promise<void>((resolve, reject) => {
       loginApi(parms)
         .then((response) => {
-          const {data} = response
+          const { data } = response;
           this.token = data.accessToken;
-          setToken("Access-Token", data.accessToken)
+          setToken("Access-Token", data.accessToken);
+          // 当前设计站用户侧需要
+          setToken("ow", data.accessToken);
           resolve();
         })
         .catch((error) => {
@@ -54,27 +56,29 @@ export const useUserStore = defineStore("user", () => {
   // 获取信息(用户昵称、头像、角色集合、权限集合)
   function getUserInfo() {
     return new Promise((resolve, reject) => {
-      getRouterApi().then((response) => {
-        const {data} = response
-        this.userInfo = data.user;
-        resolve(data)
-      }).catch(error => {
-        console.log(error);
-        this.init = false
-        reject(error)
-      })
+      getRouterApi()
+        .then((response) => {
+          const { data } = response;
+          this.userInfo = data.user;
+          resolve(data);
+        })
+        .catch((error) => {
+          console.log(error);
+          this.init = false;
+          reject(error);
+        });
     });
   }
 
   // user logout
   function logout() {
     return new Promise<void>((resolve, reject) => {
-      removeToken("Access-Token")//清除token
-      removeToken("dataBaseAlias")//清除dataBaseAlias
-      removeToken("shardingKey")//清除shardingKey
-      removeToken("supplierId")//清除supplierId
-      this.user.token = ""
-      this.user.init = false
+      removeToken("Access-Token"); //清除token
+      removeToken("dataBaseAlias"); //清除dataBaseAlias
+      removeToken("shardingKey"); //清除shardingKey
+      removeToken("supplierId"); //清除supplierId
+      this.user.token = "";
+      this.user.init = false;
       location.reload(); // 清空路由
       resolve();
     });
@@ -83,10 +87,10 @@ export const useUserStore = defineStore("user", () => {
   // remove token
   function resetToken() {
     return new Promise<void>((resolve) => {
-      this.user.token = ""
-      removeToken("Access-Token")//清除token
-      removeToken("dataBaseAlias")//清除dataBaseAlias
-      removeToken("shardingKey")//清除shardingKey
+      this.user.token = "";
+      removeToken("Access-Token"); //清除token
+      removeToken("dataBaseAlias"); //清除dataBaseAlias
+      removeToken("shardingKey"); //清除shardingKey
       resetRouter();
       resolve();
     });

+ 0 - 220
src/views/baseInfo/machineInfo/compt/childDialog.vue

@@ -1,220 +0,0 @@
-<template>
-  <div class="dialog">
-    <el-dialog
-      v-model="dialogVisible"
-      :title="dialogTitle"
-      width="500"
-      draggable
-      @close="closeDialog()"
-    >
-      <el-form
-        ref="formRef"
-        :model="formData"
-        :rules="rules"
-        label-width="150"
-      >
-        <el-row>
-          <el-col :span="24">
-            <el-form-item prop="machineName" label="机台名称">
-              <el-input v-model="formData.machineName"/>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="24">
-            <el-form-item prop="machineSize" label="机台规格">
-              <el-input v-model="formData.machineSize"/>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="24">
-            <el-form-item prop="psSize" label="ps版规格">
-              <el-input v-model="formData.psSize"/>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="24">
-            <el-form-item prop="psSize" label="默认版芯">
-              <el-select v-model="formData.idDefaultPlateTemplate" placeholder="请选择" style="width: 320px">
-                <el-option
-                  v-for="type in optionsList"
-                  :key="type.id"
-                  :label="type.name"
-                  :value="type.id">
-                </el-option>
-              </el-select>
-            </el-form-item>
-
-          </el-col>
-        </el-row>
-
-<!--        <el-row>-->
-<!--          <el-col :span="24">-->
-<!--            <el-form-item prop="idMachineType" label="机型">-->
-<!--              <el-select v-model="formData.idMachineType">-->
-<!--                <el-option-->
-<!--                  v-for="item in machineTypes"-->
-<!--                  :key="item.id"-->
-<!--                  :label="item.typeName"-->
-<!--                  :value="item.id"-->
-<!--                />-->
-<!--              </el-select>-->
-<!--            </el-form-item>-->
-<!--          </el-col>-->
-<!--        </el-row>-->
-<!--        <el-row>-->
-<!--          <el-col :span="24">-->
-<!--            <el-form-item prop="systemType" label="机台类型">-->
-<!--              <el-radio-group v-model="formData.systemType">-->
-<!--                <el-radio :value="0">彩色</el-radio>-->
-<!--                <el-radio :value="1">单色</el-radio>-->
-<!--              </el-radio-group>-->
-<!--            </el-form-item>-->
-<!--          </el-col>-->
-<!--        </el-row>-->
-        <el-row>
-          <el-col :span="24">
-            <el-form-item prop="calcBurdenFlag" label="参与机台负荷统计">
-              <el-radio-group v-model="formData.calcBurdenFlag">
-                <el-radio :value="0">否</el-radio>
-                <el-radio :value="1">是</el-radio>
-              </el-radio-group>
-            </el-form-item>
-          </el-col>
-        </el-row>
-      </el-form>
-
-      <template #footer>
-        <div class="dialog-footer">
-          <el-button v-throttle type="primary" @click="handleSubmit">确 定</el-button>
-          <el-button @click="closeDialog()">取 消</el-button>
-        </div>
-      </template>
-    </el-dialog>
-  </div>
-</template>
-<script setup lang="ts">
-import type {FormInstance} from 'element-plus'
-import {addMachineInfo, getMachineInfo, updateMachineInfo,getPlateSizeTemplateSelectList} from "@/api/baseInfo/machineInfo";
-import {getAllEnableMachineType} from "@/api/baseInfo/machineType";
-
-let dialogVisible = ref(false)
-let dialogTitle = ref("")
-const formRef = ref<FormInstance>()
-let optionsList = ref(new Array<any>())
-const emit = defineEmits(['dialogChange'])
-const formData = reactive({
-  calcBurdenFlag: 1,
-  idMachineType: 0,
-  machineSize:"",
-  idDefaultPlateTemplate:"",
-  psSize:"",
-  machineName: '',
-  systemType: 0,
-  id: ""
-})
-const rules = reactive({
-  machineName: [{required: true, message: "请输入机台名称", trigger: "blur"}],
-});
-const machineTypes = ref([]);
-
-function initMachineTypes() {
-  getAllEnableMachineType({}).then(response => {
-    if (response.httpCode == 200) {
-      const data = response.data
-      Object.assign(machineTypes.value, data);
-    }
-  })
-}
-
-function handleSubmit() {
-  formRef.value.validate((valid: any) => {
-    if (valid) {
-      const itemId = formData.id;
-      if (itemId) {
-        //修改
-        const postData = JSON.stringify(formData)
-        const params = {
-          "machineInfo": postData,
-        }
-        updateMachineInfo(params).then((response) => {
-          dialogVisible.value = false
-          if (response.httpCode == 200) {
-            emit('dialogChange');
-            ElMessage.success("操作成功");
-          }
-        })
-      } else {
-        //增加
-        const postData = JSON.stringify(formData)
-        const params = {
-          "machineInfo": postData,
-        }
-        addMachineInfo(params).then((response) => {
-          dialogVisible.value = false
-          if (response.httpCode == 200) {
-            emit('dialogChange');
-            ElMessage.success("操作成功");
-          }
-        })
-      }
-    }
-  });
-}
-
-/**  重置表单 */
-function resetForm() {
-  formRef.value.resetFields();
-  formData.id = ''
-}
-
-/**关闭弹窗 */
-function closeDialog() {
-  dialogVisible.value = false
-  formRef.value.resetFields();
-  formData.id = undefined;
-}
-
-function getItemData(item) {
-  const data = {
-    idMachineInfo: item
-  }
-  getMachineInfo(data).then(response => {
-    if (response.httpCode == 200) {
-      const data = response.data
-      Object.assign(formData, {...data});
-    }
-  })
-}
-//获取版心档案
-function getOptionsList() {
-  const data = {}
-  getPlateSizeTemplateSelectList(data).then((response) => {
-    if (response.httpCode == 200) {
-      console.log("5445",response);
-      const { data } = response
-      optionsList.value = data
-    }
-  })
-}
-onMounted(() => {
-  initMachineTypes();
-  if(optionsList.value.length<=0){
-    getOptionsList()
-  }
-})
-
-defineExpose({
-  dialogVisible,
-  dialogTitle,
-  getItemData,
-  resetForm
-})
-</script>
-
-
-<style scoped lang="scss">
-
-</style>

+ 0 - 169
src/views/baseInfo/machineInfo/index.vue

@@ -1,169 +0,0 @@
-<template>
-  <div class="app-container">
-    <div class="filter-container">
-      <el-input @keyup.enter="handleSearch" class="w200px mr5px" v-model="queryForm.keyWord" placeholder="关键字搜索"/>
-      <el-button type="primary" @click="handleSearch">
-        <i-ep-search/>
-        搜索
-      </el-button>
-      <div class="w100px ml10px" style="display: inline-block;">
-        <el-checkbox style="position: absolute;top: 11px" v-model="disableLock" label="已禁用"
-                     border></el-checkbox>
-      </div>
-      <el-button @click="openDialog()" color="#11a983">
-        <i-ep-plus/>
-        增加机台档案
-      </el-button>
-      <el-button type="primary" @click="refreshTableInfo">
-        <i-ep-refresh/>
-      </el-button>
-    </div>
-    <div class="table-con">
-      <el-table
-        :max-height="tableHeight"
-        v-loading="loading"
-        :data="tableData"
-        highlight-current-row
-        border
-      >
-        <el-table-column label="操作" width="140">
-          <template #default="{row}">
-            <el-button link @click="openDialog(row.id)" type="primary">
-              <i-ep-edit/>
-              编辑
-            </el-button>
-            <el-button v-if="row.voidFlag==0" link @click="handleDisable(row.id,1)" type="warning">禁用</el-button>
-            <el-button v-if="row.voidFlag==1" type="success" link @click="handleDisable(row.id,0)">启用</el-button>
-          </template>
-        </el-table-column>
-        <el-table-column
-          type="index"
-          label="#"
-          width="50">
-          <template #default="scope">
-            <span>{{ scope.$index + 1 }}</span>
-          </template>
-        </el-table-column>
-<!--        <el-table-column prop="systemType" width="150" label="机台类型">-->
-<!--          <template #default="{row}">-->
-<!--            {{ row.systemType == 0 ? '彩色' : '单色' }}-->
-<!--          </template>-->
-<!--        </el-table-column>-->
-        <el-table-column prop="machineName" width="280" label="机台名称"/>
-        <el-table-column prop="machineSize" width="150" label="机台规格"/>
-        <el-table-column prop="psSize" width="150" label="ps版规格"/>
-        <el-table-column
-          prop="status"
-          width="100"
-          label="状态">
-          <template #default="{row}">
-            <el-tag v-if="row.voidFlag==0" type="success">
-              正常
-            </el-tag>
-            <el-tag v-else="row.voidFlag==1" type="danger">
-              停用
-            </el-tag>
-          </template>
-        </el-table-column>
-        <el-table-column
-          prop="createTime"
-          label="创建时间"
-          width="180">
-          <template #default="{row}">
-          <span v-if="row.createTime">
-           {{ $filters.getTime(row.createTime) }}
-          </span>
-          </template>
-        </el-table-column>
-      </el-table>
-      <pagination
-        v-if="total > 0"
-        v-model:total="total"
-        v-model:page="queryPage.pageIndex"
-        v-model:limit="queryPage.pageSize"
-        @pagination="getTableData"
-      />
-    </div>
-    <child-dialog ref="childDialog" @dialogChange="dialogChange"></child-dialog>
-  </div>
-</template>
-<script setup lang="ts">
-import ChildDialog from './compt/childDialog.vue'
-import {useTable} from '@/hooks/useTable'
-import {queryMachineInfo, voidMachineInfo} from "@/api/baseInfo/machineInfo";
-
-let disableLock = ref('')
-const childDialog = ref<any>()
-
-//增加编辑
-function openDialog(item?: any) {
-  childDialog.value.dialogVisible = true;
-  if (item) {
-    childDialog.value.dialogTitle = "编辑";
-    nextTick(() => {
-      childDialog.value.getItemData(item)
-    });
-  } else {
-    nextTick(() => {
-      childDialog.value.dialogTitle = "增加";
-      childDialog.value.resetForm()
-    })
-  }
-}
-
-//禁用删除
-function handleDisable(id, status) {
-  ElMessageBox.confirm("确认操作?", "警告", {
-    confirmButtonText: "确定",
-    cancelButtonText: "取消",
-    type: "warning",
-  }).then(() => {
-    const postData = {
-      id: id,
-      voidFlag: status
-    }
-    const params = {
-      "machineInfo": JSON.stringify(postData)
-    }
-    voidMachineInfo(params).then((response) => {
-      if (response.httpCode == 200) {
-        ElMessage.success("操作成功");
-        getTableData();
-      }
-
-    })
-  })
-}
-
-//修改成功后传递事件
-function dialogChange() {
-  getTableData()
-}
-
-const queryForm = reactive({
-  keyWord: '',
-  voidFlag: 0
-})
-watch(
-  () => disableLock.value,
-  (disableLock) => {
-    if (disableLock) {
-      queryForm.voidFlag = 1
-      getTableData()
-    } else {
-      queryForm.voidFlag = 0
-      getTableData()
-    }
-  }
-);
-const {
-  tableData,
-  queryPage,
-  total,
-  loading,
-  getTableData,
-  tableHeight,
-  handleSearch,//搜索
-  refreshTableInfo,//刷新
-} = useTable(queryMachineInfo, queryForm);
-</script>

+ 0 - 19
src/views/demo/wang-editor.vue

@@ -1,19 +0,0 @@
-<!-- wangEditor富文本编辑器示例 -->
-<script setup lang="ts">
-import Editor from "@/components/WangEditor/index.vue";
-
-const value = ref("初始内容");
-</script>
-
-<template>
-  <div class="app-container">
-    <el-link
-      href="https://gitee.com/youlaiorg/vue3-element-admin/blob/master/src/views/demo/wang-editor.vue"
-      type="primary"
-      target="_blank"
-      class="mb-[20px]"
-      >示例源码 请点击>>>></el-link
-    >
-    <editor v-model="value" style="height: calc(100vh - 180px)" />
-  </div>
-</template>

+ 19 - 2
src/views/design/designTemplate/index.vue

@@ -136,15 +136,32 @@ function openDialog(item?: any) {
 
 function openDesignModule(item?: any) {
   //todo 转跳外部模板编辑地址
+
+  console.log(import.meta.env.VITE_DESIGN_MODULE_URL);
   const param = {
     virtualCode: generateUUID(),
   };
   saveCurrentUserTokenInfo(param).then((response) => {
     if (response.httpCode == 200) {
       if (item) {
-        window.open("http://192.168.1.44:9191/?runMode=1&virtualCode=" + param.virtualCode + "&template=" + item, "_blank");
+        //todo 换ip
+        window.open(
+          // "http://47.104.169.21:9191/?runMode=1&virtualCode=" +
+          import.meta.env.VITE_DESIGN_MODULE_URL +
+            "?runMode=1&virtualCode=" +
+            param.virtualCode +
+            "&template=" +
+            item,
+          "_blank"
+        );
       } else {
-        window.open("http://192.168.1.44:9191/?runMode=1&virtualCode=" + param.virtualCode, "_blank");
+        window.open(
+          // "http://47.104.169.21:9191/?runMode=1&virtualCode=" +
+          import.meta.env.VITE_DESIGN_MODULE_URL +
+            "?runMode=1&virtualCode=" +
+            param.virtualCode,
+          "_blank"
+        );
       }
     }
   });

+ 10 - 4
src/views/designFront/index.vue

@@ -107,7 +107,7 @@
         id="iframe"
         ref="iframe"
         :src="iframeSrc"
-        style="width: 1200px; height: 600px"
+        style="width: 1200px; height: 700px"
       ></iframe>
     </div>
   </div>
@@ -143,8 +143,9 @@ const bannerFontColorOptions = [
   { label: "白色", color: "rgba(255,255,255,1)" },
 ];
 const bannerFontFamilyOptions = ref([]);
-
-const designModuleUrl = "http://192.168.1.44:9191/?runMode=0";
+// todo 换ip
+// const designModuleUrl = "http://47.104.169.21:9191/?runMode=0";
+const designModuleUrl = import.meta.env.VITE_DESIGN_MODULE_URL + "?runMode=0";
 const outerSessionId = getToken("Access-Token"); //这个地方需要传入的是当前会话的唯一标识
 const iframeSrc = ref("");
 const iframe = ref();
@@ -194,7 +195,12 @@ onMounted(() => {
 const handleChangeProduct = (tab: TabsPaneContext, event: Event) => {
   console.log(tab);
   currentProduct = products.value.find((x) => x.name == tab.props.name);
-  iframeSrc.value = designModuleUrl + "?template=" + currentProduct.templateId;
+  iframeSrc.value =
+    designModuleUrl +
+    "&template=" +
+    currentProduct.templateId +
+    "&sessionId=" +
+    outerSessionId;
 };
 
 const buildTemplateParams = () => {

+ 0 - 169
src/views/system/contentList/compt/childDialog.vue

@@ -1,169 +0,0 @@
-<template>
-  <div class="dialog">
-    <el-dialog
-        v-model="dialogVisible"
-        :title="dialogTitle"
-        width="1200px"
-        @close="closeDialog()"
-    >
-      <el-form
-          ref="formRef"
-          :model="formData"
-          :rules="rules"
-          label-width="90px"
-      >
-        <el-row>
-          <el-col :span="24">
-            <el-form-item prop="groupName" label="分组名称">
-              <el-input style="width: 250px;" v-model="formData.groupName"/>
-            </el-form-item>
-          </el-col>
-          <el-col :span="24">
-            <el-form-item prop="caption" label="标题">
-              <el-input style="width: 250px;" v-model="formData.caption"/>
-            </el-form-item>
-          </el-col>
-          <el-col :span="24">
-            <el-form-item label="标签">
-              <el-radio-group v-model="formData.siteLabel">
-                <el-radio label="头部" value="头部"></el-radio>
-                <el-radio label="底部" value="底部"></el-radio>
-                <el-radio label="首页内容" value="首页内容"></el-radio>
-              </el-radio-group>
-              <div style="width: 100%;display: block;height: 20px">
-                <span class="text-star">* </span>
-                <span>头部(头部导航),底部(底部导航),首页内容(轮播图下面内容),<span style="color: #e4493c">定义首页内容请注意</span>图片大小,网页图片的分辨率为72,图片大小不能大于300KB,图片太大会导致首页加载缓慢!</span>
-              </div>
-            </el-form-item>
-          </el-col>
-          <el-col :span="24" >
-            <el-form-item prop="sortIndex" label="排序">
-              <el-input-number controls-position="right" v-model="formData.sortIndex" :min="1"/>
-            </el-form-item>
-          </el-col>
-          <el-col :span="24">
-            <el-form-item prop="sortIndex" label="内容">
-              <div class="editor-con">
-                <editor v-model="formData.content" style="height: calc(100vh - 160px);width: 950px;padding-bottom: 50px"/>
-              </div>
-            </el-form-item>
-          </el-col>
-        </el-row>
-
-      </el-form>
-
-      <template #footer>
-        <div class="dialog-footer">
-          <el-button v-throttle type="primary" @click="handleSubmit">确 定</el-button>
-          <el-button @click="closeDialog()">取 消</el-button>
-        </div>
-      </template>
-    </el-dialog>
-  </div>
-</template>
-<script setup lang="ts">
-import {callSite} from "@/api/system";
-import type {FormInstance} from 'element-plus'
-import Editor from "@/components/WangEditor/index.vue";
-let dialogVisible = ref(false)
-let dialogTitle = ref("")
-const formRef = ref<FormInstance>()
-const emit = defineEmits(['dialogChange'])
-const formData = reactive({
-  siteLabel:'',
-  groupName:'',
-  caption:'',
-  content:'',
-  sortIndex:undefined,
-  id: ""
-})
-const rules = reactive({
-  groupName: [{required: true, message: "请输入分组名称", trigger: "blur"}],
-  caption: [{required: true, message: "请输入标题名称", trigger: "blur"}],
-  siteLabel: [{required: true, message: "请输入标签", trigger: "blur"}],
-});
-function handleSubmit() {
-  formRef.value.validate((valid: any) => {
-    if (valid) {
-      const itemId = formData.id;
-      if (itemId) {
-        //修改
-        const postData = JSON.stringify(formData)
-        const params = {
-          "businessMethod":'SiteContent_Update',
-          "params":postData
-        };
-        callSite(params).then((response) => {
-          dialogVisible.value = false
-          if (response.httpCode == 200) {
-            emit('dialogChange');
-            ElMessage.success("操作成功");
-          }
-        })
-      } else {
-        //增加
-        const postData = JSON.stringify(formData)
-        const params = {
-          "businessMethod":'SiteContent_Add',
-          "params":postData
-        };
-        callSite(params).then((response) => {
-          dialogVisible.value = false
-          if (response.httpCode == 200) {
-            emit('dialogChange');
-            ElMessage.success("操作成功");
-          }
-        })
-      }
-    }
-  });
-}
-
-function getItemData(item) {
-  formData.siteLabel = ""
-  const postData = {
-    "businessMethod":'SiteContent_Get',
-    "params":JSON.stringify({
-      "id": item
-    })
-  };
-  callSite(postData).then(response => {
-    if (response.httpCode == 200) {
-      const data = JSON.parse(response.data);
-      console.log(data);
-      formData.siteLabel = data.siteLabel
-      Object.assign(formData, {...data});
-    }
-  })
-}
-
-/**  重置表单 */
-function resetForm() {
-  formData.content = "";
-  formRef.value.resetFields();
-  formData.id = ''
-}
-
-/**关闭弹窗 */
-function closeDialog() {
-  dialogVisible.value = false
-  formRef.value.resetFields();
-  formData.id = undefined;
-}
-defineExpose({
-  dialogVisible,
-  dialogTitle,
-  getItemData,
-  resetForm
-})
-</script>
-<style scoped lang="scss">
-.text-star {
-  color: var(--el-color-primary);
-}
-.editor-con{
-  width: 1000px;
-  border: 1px solid #ddd;
-  margin-bottom: 20px;
-}
-</style>

+ 0 - 135
src/views/system/contentList/index.vue

@@ -1,135 +0,0 @@
-<template>
-  <div class="app-container">
-    <div class="filter-container">
-      <el-input @keyup.enter="handleSearch" class="w200px mr5px" v-model="queryForm.keyWord" placeholder="关键字搜索"/>
-      <el-button v-throttle type="primary" @click="handleSearch">
-        <i-ep-search/>
-        搜索
-      </el-button>
-      <el-button v-throttle @click="openDialog()" color="#11a983">
-        <i-ep-plus/>
-        增加
-      </el-button>
-      <el-button v-throttle type="primary" @click="refreshTableInfo">
-        <i-ep-refresh/>
-      </el-button>
-    </div>
-    <div class="table-con">
-      <el-table
-          :max-height="tableHeight"
-          v-loading="loading"
-          :data="tableData"
-          highlight-current-row
-          border
-      >
-        <el-table-column label="操作" width="140">
-          <template #default="{row}">
-            <el-button link @click="openDialog(row.id)" type="primary">
-              <i-ep-edit/>
-              编辑
-            </el-button>
-            <el-button  link @click="handleDisable(row.id)" type="warning">删除</el-button>
-          </template>
-        </el-table-column>
-        <el-table-column
-            type="index"
-            label="#"
-            width="50">
-          <template #default="scope">
-            <span>{{ scope.$index + 1 }}</span>
-          </template>
-        </el-table-column>
-        <el-table-column prop="groupName" width="150" label="分组名称"/>
-        <el-table-column prop="caption" width="150" label="标题名称"/>
-        <el-table-column prop="siteLabel" width="150" label="标签"/>
-        <el-table-column prop="sortIndex" width="150" label="排序"/>
-        <el-table-column
-            prop="createTime"
-            label="创建时间"
-            >
-          <template #default="{row}">
-          <span v-if="row.createTime">
-           {{ $filters.formatDate(row.createTime)}}
-          </span>
-          </template>
-        </el-table-column>
-      </el-table>
-      <pagination
-          v-if="total > 0"
-          v-model:total="total"
-          v-model:page="queryPage.pageIndex"
-          v-model:limit="queryPage.pageSize"
-          @pagination="getTableData"
-      />
-    </div>
-    <child-dialog ref="childDialog" @dialogChange="dialogChange"></child-dialog>
-  </div>
-</template>
-<script setup lang="ts">
-import {callSite} from "@/api/system";
-import ChildDialog from './compt/childDialog.vue'
-import {useTable} from '@/hooks/useTable'
-import {formatDate} from "@/utils/filters";
-
-const childDialog = ref<any>()
-
-//增加编辑
-function openDialog(item?: any) {
-  childDialog.value.dialogVisible = true;
-  if (item) {
-    childDialog.value.dialogTitle = "编辑";
-    nextTick(() => {
-      childDialog.value.getItemData(item)
-    });
-  } else {
-    nextTick(() => {
-      childDialog.value.dialogTitle = "增加";
-      childDialog.value.resetForm()
-    })
-  }
-}
-
-//禁用删除
-function handleDisable(id) {
-  ElMessageBox.confirm("确认操作?", "警告", {
-    confirmButtonText: "确定",
-    cancelButtonText: "取消",
-    type: "warning",
-  }).then(() => {
-    const params = {
-      "businessMethod":'SiteContent_Delete',
-      "params":JSON.stringify({
-        "id": id
-      })
-    };
-    callSite(params).then((response) => {
-      if (response.httpCode == 200) {
-        ElMessage.success("操作成功");
-        getTableData();
-      }
-
-    })
-  })
-}
-
-//修改成功后传递事件
-function dialogChange() {
-  getTableData()
-}
-
-const queryForm = reactive({
-  keyWord: '',
-  voidFlag: 0
-})
-const {
-  tableData,
-  queryPage,
-  total,
-  loading,
-  getTableData,
-  tableHeight,
-  handleSearch,//搜索
-  refreshTableInfo,//刷新
-} = useTable(callSite, queryForm,'SiteContent_List');
-</script>
-