cz 1 gadu atpakaļ
vecāks
revīzija
5bfe2d73b5

+ 1 - 1
src/components/notice/index.vue

@@ -319,7 +319,7 @@ const getPushInfo = (flag) => {
         .then((res) => {
           emit("changeNum", res.total * 1);
         });
-    }, 1100);
+    }, 600);
   });
 };
 onMounted(() => {

+ 1 - 1
src/utils/request.js

@@ -66,7 +66,7 @@ service.interceptors.request.use(config => {
       const s_url = sessionObj.url; // 请求地址
       const s_data = sessionObj.data; // 请求数据
       const s_time = sessionObj.time; // 请求时间
-      const interval = 1000; // 间隔时间(ms),小于此时间视为重复提交
+      const interval = 550; // 间隔时间(ms),小于此时间视为重复提交
       if (s_data === requestObj.data && requestObj.time - s_time < interval && s_url === requestObj.url) {
         const message = '数据正在处理,请勿重复提交';
         // console.warn(`[${s_url}]: ` + message)

+ 16 - 2
src/views/WDLY/outInBound/waitOutBound/index.vue

@@ -863,9 +863,23 @@ const outBound = (row) => {
       }));
       res.businessType = res.businessType + "";
       formData.data = res;
-      formData.data.countryId = "44";
-      getCityData(formData.data.countryId, "20");
       dialogVisible.value = true;
+      proxy
+        .post("/orderInfo/detail", {
+          id: row.businessId,
+        })
+        .then((res) => {
+          formData.data.countryId = res.countryId ? res.countryId : "44";
+          getCityData(formData.data.countryId, "20");
+          formData.data.provinceId = res.provinceId ? res.provinceId : "";
+          formData.data.cityId = res.cityId ? res.cityId : "";
+          formData.data.areaDetail = res.detailedAddress
+            ? res.detailedAddress
+            : "";
+          if (formData.data.provinceId) {
+            getCityData(formData.data.provinceId, "30");
+          }
+        });
     });
   }
 };

+ 70 - 20
src/views/index.vue

@@ -2,14 +2,18 @@
   <div class="app-container home">
     <div class="stat-warp">
       <ul>
-        <li class="theme1">
+        <li class="theme1" @click="toUrl('Backlog', 1)" style="cursor: pointer">
           <div class="num">{{ toBeProcessedData.total }}</div>
           <div class="label">我的待审批</div>
           <div class="icon-box">
             <i class="icon iconfont icon-iconm_waixht"></i>
           </div>
         </li>
-        <li class="theme2">
+        <li
+          class="theme2"
+          @click="toUrl('DealWith', 2)"
+          style="cursor: pointer"
+        >
           <div class="num">{{ haveInitiatedData.total }}</div>
           <div class="label">我的发起(未结束)</div>
           <div class="icon-box">
@@ -17,7 +21,7 @@
           </div>
         </li>
         <li class="theme3">
-          <div class="num">3</div>
+          <div class="num">{{ pushInfo.total }}</div>
           <div class="label">未读消息</div>
           <div class="icon-box">
             <i class="icon iconfont icon-iconm_unread"></i>
@@ -29,11 +33,11 @@
       <div class="card">
         <div class="commons-title">我的待审批</div>
         <el-table :data="toBeProcessedData.rows" style="width: 100%">
-          <el-table-column prop="flowName" label="流程类型" />
+          <el-table-column prop="flowName" label="流程类型" width="100" />
           <el-table-column prop="title" label="流程标题" />
-          <el-table-column prop="createUserName" label="发起人" />
-          <el-table-column prop="createTime" label="发起时间" />
-          <el-table-column fixed="right" label="操作" width="120">
+          <el-table-column prop="createUserName" label="发起人" width="100" />
+          <el-table-column prop="createTime" label="发起时间" width="160" />
+          <el-table-column fixed="right" label="操作" width="60">
             <template #default="scope">
               <el-button
                 link
@@ -53,17 +57,17 @@
       <div class="card">
         <div class="commons-title">我的发起(未结束)</div>
         <el-table :data="haveInitiatedData.rows" style="width: 100%">
-          <el-table-column prop="flowName" label="流程类型" />
+          <el-table-column prop="flowName" label="流程类型" width="100" />
           <el-table-column prop="title" label="流程标题" />
-          <el-table-column prop="createUserName" label="审批人" />
-          <el-table-column prop="createTime" label="发起时间" />
-          <el-table-column fixed="right" label="操作" width="120">
+          <el-table-column prop="createUserName" label="审批人" width="100" />
+          <el-table-column prop="createTime" label="发起时间" width="160" />
+          <el-table-column fixed="right" label="操作" width="60">
             <template #default="scope">
               <el-button
                 link
                 type="primary"
                 size="small"
-                @click="pushProcessApproval(scope.row)"
+                @click="pushProcessApprovalOne(scope.row)"
               >
                 查看
               </el-button>
@@ -145,7 +149,27 @@ const pushProcessApproval = (row) => {
     }
   });
 };
+
+const pushProcessApprovalOne = (row) => {
+  proxy.$router.push({
+    path: "/platform_manage/process/processApproval",
+    query: {
+      flowKey: row.flowKey,
+      id: row.id,
+      businessId: row.businessId,
+      processType: 20,
+      version: row.version,
+    },
+  });
+  return;
+};
+
 const { proxy } = getCurrentInstance();
+const pushInfo = ref({
+  total: 0,
+  rows: [],
+});
+
 const getData = () => {
   proxy
     .post("flowExample/getToBeProcessedPage", {
@@ -165,16 +189,42 @@ const getData = () => {
     .then((res) => {
       haveInitiatedData.value = res;
     });
-  // proxy
-  //   .post("sendMeg/page", {
-  //     pageNum: 1,
-  //     pageSize: 3,
-  //   })
-  //   .then((res) => {
-  //     sendMegData.value = res;
-  //   });
+  proxy
+    .post("pushAnnouncement/page", {
+      pageNum: 1,
+      pageSize: 3,
+    })
+    .then((res) => {
+      sendMegData.value = res;
+    });
+  proxy
+    .post("pushInfo/page", {
+      pageNum: 1,
+      pageSize: 3,
+      pushRead: 0,
+    })
+    .then((res) => {
+      pushInfo.value = res;
+    });
 };
 getData();
+const toUrl = (name, type) => {
+  //获取name为name的路由的基础信息
+  // const route = proxy.$router.resolve({ name: name, params: {} });
+  if (type === 1) {
+    proxy.$router.push({
+      name,
+      query: {},
+    });
+  } else if (type === 2) {
+    proxy.$router.push({
+      name,
+      query: {
+        type: 1,
+      },
+    });
+  }
+};
 // ​
 onMounted(() => {});
 </script>

+ 358 - 0
src/views/process/dealWith/backlog.vue

@@ -0,0 +1,358 @@
+
+<!-- 2无缓存,只展示代办数据 -->
+<template>
+  <div class="tenant">
+    <!-- <Banner /> -->
+    <div class="content">
+      <byTable
+        :source="sourceList.data"
+        :pagination="sourceList.pagination"
+        :config="config"
+        :loading="loading"
+        highlight-current-row
+        :selectConfig="selectConfig"
+        :table-events="{
+          //element talbe事件都能传
+          select: select,
+        }"
+        @get-list="getList"
+      >
+        <template #slotName="{ item }">
+          {{ item.createTime }}
+        </template>
+      </byTable>
+    </div>
+    <el-dialog
+      :title="modalType == 'add' ? '新增' : '编辑'"
+      v-model="dialogVisible"
+      width="400"
+      v-loading="loading"
+    >
+      <byForm
+        :formConfig="formConfig"
+        :formOption="formOption"
+        v-model="formData.data"
+        :rules="rules"
+        ref="byform"
+      >
+      </byForm>
+      <template #footer>
+        <el-button @click="dialogVisible = false" size="large">取 消</el-button>
+        <el-button
+          type="primary"
+          @click="submitForm('byform')"
+          size="large"
+          :loading="submitLoading"
+        >
+          确 定
+        </el-button>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+    
+  <script setup >
+/* eslint-disable vue/no-unused-components */
+import { ElMessage, ElMessageBox } from "element-plus";
+import byTable from "@/components/byTable/index";
+import byForm from "@/components/byForm/index";
+import { computed, defineComponent, ref } from "vue";
+const loading = ref(false);
+const submitLoading = ref(false);
+const dictCommonModal = ref(false);
+const sourceList = ref({
+  data: [],
+  pagination: {
+    total: 3,
+    pageNum: 1,
+    pageSize: 10,
+    status: 1,
+  },
+});
+let dialogVisible = ref(false);
+let roomDialogVisible = ref(false);
+let modalType = ref("add");
+let rules = ref({
+  classifyName: [
+    { required: true, message: "请输入功能模块", trigger: "blur" },
+  ],
+  flowKey: [{ required: true, message: "请输入流程标识", trigger: "blur" }],
+  flowName: [{ required: true, message: "请输入流程名称", trigger: "blur" }],
+});
+const { proxy } = getCurrentInstance();
+const selectConfig = computed(() => {
+  return [
+    {
+      label: "流程类型",
+      prop: "flowInfoId",
+      data: [],
+    },
+  ];
+});
+const config = computed(() => {
+  return [
+    {
+      attrs: {
+        label: "流程类型",
+        prop: "flowName",
+      },
+    },
+    {
+      attrs: {
+        label: "流程标题",
+        prop: "title",
+      },
+    },
+
+    {
+      attrs: {
+        label: "流程状态",
+        width: 100,
+        prop: "status",
+      },
+      render(status) {
+        return status == 0 || status == 1
+          ? "待处理"
+          : status == 2
+          ? "已通过"
+          : "已驳回";
+      },
+    },
+    {
+      attrs: {
+        label: "发起人",
+        prop: "createUserName",
+      },
+    },
+    {
+      attrs: {
+        label: "发起时间",
+        prop: "createTime",
+      },
+    },
+    {
+      attrs: {
+        label: "操作",
+        width: "200",
+        align: "right",
+      },
+      // 渲染 el-button,一般用在最后一列。
+      renderHTML(row) {
+        return [
+          {
+            attrs: {
+              label: row.status == 0 || row.status == 1 ? "办理" : "查看",
+              type: "primary",
+              text: true,
+              bg: true,
+              disabled: false,
+            },
+            el: "button",
+            click() {
+              if (row.status != 1 && row.status != 0) {
+                proxy.$router.push({
+                  path: "/platform_manage/process/processApproval",
+                  query: {
+                    flowKey: row.flowKey,
+                    id: row.id,
+                    processType: 20,
+                    version: row.version,
+                    businessId: row.businessId,
+                    submitType: "10",
+                  },
+                });
+                return;
+              }
+              proxy
+                .post("flowExample/getApprovalRecord", { id: row.id })
+                .then((res) => {
+                  if (res.recordList.length > 0) {
+                    let data = res.recordList.filter(
+                      (item) => item.status === 2
+                    );
+                    let nodeType = 0;
+                    if (data && data.length > 0) {
+                      nodeType = data[0].nodeType;
+                    }
+                    proxy.$router.push({
+                      path: "/platform_manage/process/processApproval",
+                      query: {
+                        flowKey: row.flowKey,
+                        id: row.id,
+                        processType: nodeType == 1 ? 30 : 10,
+                        businessId: row.businessId,
+                        version: row.version,
+                        submitType: "10",
+                      },
+                    });
+                  }
+                });
+            },
+          },
+        ];
+      },
+    },
+  ];
+});
+let dtlData = reactive({
+  data: {},
+});
+let formData = reactive({
+  data: {},
+  treeData: [],
+});
+const formOption = reactive({
+  inline: true,
+  labelWidth: 100,
+  itemWidth: 100,
+  rules: [],
+});
+const byform = ref(null);
+const treeData = ref([]);
+const formConfig = computed(() => {
+  return [
+    {
+      type: "input",
+      prop: "classifyName",
+      label: "功能模块",
+    },
+    {
+      type: "input",
+      prop: "flowKey",
+      label: "流程标识",
+      isHide: modalType.value == "edit",
+    },
+    {
+      type: "input",
+      prop: "flowName",
+      label: "流程名称",
+    },
+  ];
+});
+
+const flowJump = (row, type) => {
+  proxy
+    .post("/flowProcess/jump", {
+      flowId: row.id,
+      handleType: type,
+      version: row.version,
+      data: {},
+    })
+    .then((message) => {
+      console.log(message);
+      if (message) {
+        ElMessage.success("操作成功");
+        getList();
+      }
+    });
+};
+
+const getFlowType = () => {
+  proxy.post("/flowExample/getFlowType").then((message) => {
+    console.log(message);
+    selectConfig.value[0].data = message.map((item) => {
+      return {
+        label: item.flowName,
+        value: item.id,
+      };
+    });
+  });
+};
+getFlowType();
+const getUrlObj = {
+  1: "/flowExample/getToBeProcessedPage",
+  2: "/flowExample/getHaveInitiatedPage",
+  3: "/flowExample/getProcessedPage",
+};
+const getList = async (req) => {
+  sourceList.value.pagination = { ...sourceList.value.pagination, ...req };
+  loading.value = true;
+  proxy
+    .post(
+      getUrlObj[sourceList.value.pagination.status],
+      sourceList.value.pagination
+    )
+    .then((message) => {
+      console.log(message);
+      sourceList.value.data = message.rows;
+      sourceList.value.pagination.total = message.total;
+      setTimeout(() => {
+        loading.value = false;
+      }, 200);
+    });
+};
+
+const openModal = () => {
+  dialogVisible.value = true;
+  modalType.value = "add";
+  formData.data = {};
+};
+const selection = ref({
+  data: [],
+});
+const select = (_selection, row) => {
+  selection.value.data = _selection;
+  console.log(_selection.length);
+};
+
+const tree = ref(null);
+const submitTree = () => {
+  proxy
+    .post("/tenantInfo/bindingMenu", {
+      tenantId: selection.value.data[0].tenantId,
+      menuIdList: tree.value.getCheckedKeys(),
+    })
+    .then((res) => {
+      ElMessage({
+        message: "保存成功",
+        type: "success",
+      });
+      roomDialogVisible.value = false;
+    });
+};
+
+const submitForm = () => {
+  byform.value.handleSubmit((valid) => {
+    submitLoading.value = true;
+    proxy.post("/flowInfo/" + modalType.value, formData.data).then((res) => {
+      ElMessage({
+        message: modalType.value == "add" ? "添加成功" : "编辑成功",
+        type: "success",
+      });
+      dialogVisible.value = false;
+      submitLoading.value = false;
+      getList();
+    });
+  });
+};
+
+const getDtl = (row) => {
+  formData.data = { ...row };
+  modalType.value = "edit";
+  dialogVisible.value = true;
+};
+
+const changeStatus = (row) => {
+  modalType.value = "edit";
+  proxy
+    .post("/flowInfo/edit", { ...row, status: row.status === 0 ? 1 : 0 })
+    .then((res) => {
+      ElMessage({
+        message: "操作成功",
+        type: "success",
+      });
+      getList();
+    });
+};
+onMounted(() => {
+  const route = useRoute();
+  sourceList.value.pagination.status = route.query.type ? route.query.type : 1;
+  getList();
+});
+</script>
+    
+  <style lang="scss" scoped>
+.tenant {
+  padding: 20px;
+}
+</style>

+ 189 - 320
src/views/process/dealWith/index.vue

@@ -1,338 +1,207 @@
 <template>
-	<div class="tenant">
-		<!-- <Banner /> -->
-		<div class="content">
-			<byTable
-				:source="sourceList.data"
-				:pagination="sourceList.pagination"
-				:config="config"
-				:loading="loading"
-				highlight-current-row
-				:selectConfig="selectConfig"
-				:table-events="{
-					//element talbe事件都能传
-					select: select,
-				}"
-				@get-list="getList"
-			>
-				<template #slotName="{ item }">
-					{{ item.createTime }}
-				</template>
-			</byTable>
-		</div>
-		<el-dialog
-			:title="modalType == 'add' ? '新增' : '编辑'"
-			v-model="dialogVisible"
-			width="400"
-			v-loading="loading"
-		>
-			<byForm
-				:formConfig="formConfig"
-				:formOption="formOption"
-				v-model="formData.data"
-				:rules="rules"
-				ref="byform"
-			>
-			</byForm>
-			<template #footer>
-				<el-button @click="dialogVisible = false" size="large"
-					>取 消</el-button
-				>
-				<el-button
-					type="primary"
-					@click="submitForm('byform')"
-					size="large"
-					:loading="submitLoading"
-				>
-					确 定
-				</el-button>
-			</template>
-		</el-dialog>
-	</div>
+  <div class="tenant">
+    <!-- <Banner /> -->
+    <div class="content">
+      <byTable
+        :source="sourceList.data"
+        :pagination="sourceList.pagination"
+        :config="config"
+        :loading="loading"
+        highlight-current-row
+        :selectConfig="selectConfig"
+        :table-events="{
+          //element talbe事件都能传
+        }"
+        @get-list="getList"
+        ref="table"
+      >
+        <template #slotName="{ item }">
+          {{ item.createTime }}
+        </template>
+      </byTable>
+    </div>
+  </div>
 </template>
     
-  <script setup>
-/* eslint-disable vue/no-unused-components */
-import { ElMessage, ElMessageBox } from 'element-plus'
-import byTable from '@/components/byTable/index'
-import byForm from '@/components/byForm/index'
-import { computed, defineComponent, ref } from 'vue'
-const loading = ref(false)
-const submitLoading = ref(false)
-const dictCommonModal = ref(false)
+<script setup name="DealWith">
+import byTable from "@/components/byTable/index";
+import { computed, defineComponent, ref } from "vue";
+const loading = ref(false);
 const sourceList = ref({
-	data: [],
-	pagination: {
-		total: 3,
-		pageNum: 1,
-		pageSize: 10,
-        status:1,
-	},
-})
-let dialogVisible = ref(false)
-let roomDialogVisible = ref(false)
-let modalType = ref('add')
-let rules = ref({
-	classifyName: [
-		{ required: true, message: '请输入功能模块', trigger: 'blur' },
-	],
-	flowKey: [{ required: true, message: '请输入流程标识', trigger: 'blur' }],
-	flowName: [{ required: true, message: '请输入流程名称', trigger: 'blur' }],
-})
-const { proxy } = getCurrentInstance()
+  data: [],
+  pagination: {
+    total: 3,
+    pageNum: 1,
+    pageSize: 10,
+    status: 1,
+  },
+});
+
+const { proxy } = getCurrentInstance();
 const selectConfig = computed(() => {
-	return [
+  return [
+    {
+      label: "流程类型",
+      prop: "flowInfoId",
+      data: [],
+    },
+    {
+      label: "流程状态",
+      prop: "status",
+      isShowAll: false,
+      data: [
         {
-			label: '流程类型',
-			prop: 'flowInfoId',
-			data: [],
-		},
-		{
-			label: '流程状态',
-			prop: 'status',
-			data: [
-				{
-					label: '待处理',
-					value: '1',
-				},
-				{
-					label: '已发起',
-					value: '2',
-				},
-                {
-                    label: '已处理',
-                    value: '3',
-                },
-			],
-		},
-	]
-})
+          label: "已发起(未结束)",
+          value: "1",
+        },
+        {
+          label: "已发起(已结束)",
+          value: "2",
+        },
+        {
+          label: "已办理",
+          value: "3",
+        },
+      ],
+    },
+  ];
+});
 const config = computed(() => {
-	return [
-		{
-			attrs: {
-				label: '流程类型',
-				prop: 'flowName',
-			},
-		},
-		{
-			attrs: {
-				label: '流程标题',
-				prop: 'title',
-			},
-		},
-
-		{
-			attrs: {
-				label: '处理类型',
-				width: 100,
-				prop: 'status',
-			},
-			render(status) {
-				return status == 0 || status == 1 ? '待处理' : status == 2 ? '已通过' : '已驳回'
-			},
-		},
-		{
-			attrs: {
-				label: '发起人',
-				prop: 'createUserName',
-			},
-		},
-		{
-			attrs: {
-				label: '发起时间',
-				prop: 'createTime',
-			},
-		},
-		{
-			attrs: {
-				label: '操作',
-				width: '200',
-				align: 'right',
-			},
-			// 渲染 el-button,一般用在最后一列。
-			renderHTML(row) {
-				return [
-					{
-                        attrs: {
-                            label: row.status == 0 || row.status == 1 ? '办理' : '查看',
-                            type: 'primary',
-                            text: true,
-                            bg: true,
-                            disabled: false,
-                        },
-                        el: 'button',
-                        click() {
-                            proxy.$router.replace({
-                                path: "/platform_manage/process/processApproval",
-                                query: {
-                                    flowKey: row.flowKey,
-                                    id: row.id,
-																		businessId: row.businessId,
-									processType:10,
-									version:row.version
-                                },
-                            });
-                            
-                        },
-                    } 
-						
-				]
-			},
-		},
-	]
-})
-let dtlData = reactive({
-	data: {},
-})
-let formData = reactive({
-	data: {},
-	treeData: [],
-})
-const formOption = reactive({
-	inline: true,
-	labelWidth: 100,
-	itemWidth: 100,
-	rules: [],
-})
-const byform = ref(null)
-const treeData = ref([])
-const formConfig = computed(() => {
-	return [
-		{
-			type: 'input',
-			prop: 'classifyName',
-			label: '功能模块',
-		},
-		{
-			type: 'input',
-			prop: 'flowKey',
-			label: '流程标识',
-			isHide: modalType.value == 'edit',
-		},
-		{
-			type: 'input',
-			prop: 'flowName',
-			label: '流程名称',
-		},
-	]
-})
+  return [
+    {
+      attrs: {
+        label: "流程类型",
+        prop: "flowName",
+      },
+    },
+    {
+      attrs: {
+        label: "流程标题",
+        prop: "title",
+      },
+    },
 
-const flowJump = (row,type) => {
-    proxy.post('/flowProcess/jump', {flowId:row.id,handleType:type,version:row.version,data:{}}).then((message) => {
-        console.log(message)
-        if(message){
-            ElMessage.success('操作成功')
-            getList()
-        }
-    })
-}
+    {
+      attrs: {
+        label: "流程状态",
+        width: 100,
+        prop: "status",
+      },
+      render(status) {
+        return status == 0 || status == 1
+          ? "待办理"
+          : status == 2
+          ? "已通过"
+          : "已驳回";
+      },
+    },
+    {
+      attrs: {
+        label: "发起人",
+        prop: "createUserName",
+      },
+    },
+    {
+      attrs: {
+        label: "发起时间",
+        prop: "createTime",
+      },
+    },
+    {
+      attrs: {
+        label: "操作",
+        width: "200",
+        align: "right",
+      },
+      // 渲染 el-button,一般用在最后一列。
+      renderHTML(row) {
+        return [
+          {
+            attrs: {
+              label: "查看",
+              type: "primary",
+              text: true,
+              bg: true,
+              disabled: false,
+            },
+            el: "button",
+            click() {
+              proxy.$router.push({
+                path: "/platform_manage/process/processApproval",
+                query: {
+                  flowKey: row.flowKey,
+                  id: row.id,
+                  processType: 20,
+                  version: row.version,
+                  businessId: row.businessId,
+                  submitType: "10",
+                },
+              });
+            },
+          },
+        ];
+      },
+    },
+  ];
+});
 
 const getFlowType = () => {
-    proxy
-        .post('/flowExample/getFlowType')
-            .then((message) => {
-                console.log(message)
-                selectConfig.value[0].data = message.map((item) => {
-                    return {
-                        label: item.flowName,
-                        value: item.id,
-                    }
-                })
-            })
-        
-}
-getFlowType()
+  proxy.post("/flowExample/getFlowType").then((message) => {
+    selectConfig.value[0].data = message.map((item) => {
+      return {
+        label: item.flowName,
+        value: item.id,
+      };
+    });
+  });
+};
+getFlowType();
+
 const getUrlObj = {
-    1:'/flowExample/getToBeProcessedPage',
-    2:'/flowExample/getHaveInitiatedPage',
-    3:'/flowExample/getProcessedPage',
-}
+  1: "/flowExample/getHaveInitiatedPage",
+  2: "/flowExample/getHaveInitiatedPage",
+  3: "/flowExample/getProcessedPage",
+};
 const getList = async (req) => {
-	sourceList.value.pagination = { ...sourceList.value.pagination, ...req }
-	loading.value = true
-	proxy
-		.post( getUrlObj[sourceList.value.pagination.status], sourceList.value.pagination)
-		.then((message) => {
-			console.log(message)
-			sourceList.value.data = message.rows
-			sourceList.value.pagination.total = message.total
-			setTimeout(() => {
-				loading.value = false
-			}, 200)
-		})
-}
-
-const openModal = () => {
-	dialogVisible.value = true
-	modalType.value = 'add'
-	formData.data = {}
-}
-const selection = ref({
-	data: [],
-})
-const select = (_selection, row) => {
-	selection.value.data = _selection
-	console.log(_selection.length)
-}
-
-const tree = ref(null)
-const submitTree = () => {
-	proxy
-		.post('/tenantInfo/bindingMenu', {
-			tenantId: selection.value.data[0].tenantId,
-			menuIdList: tree.value.getCheckedKeys(),
-		})
-		.then((res) => {
-			ElMessage({
-				message: '保存成功',
-				type: 'success',
-			})
-			roomDialogVisible.value = false
-		})
-}
-
-const submitForm = () => {
-	byform.value.handleSubmit((valid) => {
-		submitLoading.value = true
-		proxy
-			.post('/flowInfo/' + modalType.value, formData.data)
-			.then((res) => {
-				ElMessage({
-					message: modalType.value == 'add' ? '添加成功' : '编辑成功',
-					type: 'success',
-				})
-				dialogVisible.value = false
-				submitLoading.value = false
-				getList()
-			})
-	})
-}
-
-const getDtl = (row) => {
-	formData.data = { ...row }
-	modalType.value = 'edit'
-	dialogVisible.value = true
-}
-
-const changeStatus = (row) => {
-	modalType.value = 'edit'
-	proxy
-		.post('/flowInfo/edit', { ...row, status: row.status === 0 ? 1 : 0 })
-		.then((res) => {
-			ElMessage({
-				message: '操作成功',
-				type: 'success',
-			})
-			getList()
-		})
-}
-
-getList()
+  sourceList.value.pagination = { ...sourceList.value.pagination, ...req };
+  loading.value = true;
+  proxy
+    .post(
+      getUrlObj[sourceList.value.pagination.status] ||
+        "/flowExample/getHaveInitiatedPage",
+      sourceList.value.pagination
+    )
+    .then((message) => {
+      sourceList.value.data = message.rows;
+      sourceList.value.pagination.total = message.total;
+      setTimeout(() => {
+        loading.value = false;
+      }, 200);
+    });
+};
+const table = ref(null);
+const searchItemSelct = () => {
+  // 默认选中的方法
+  table.value.searchItemSelct(
+    selectConfig.value[1].data[2],
+    selectConfig.value[1]
+  );
+};
+onMounted(() => {
+  const route = useRoute();
+  if (route.query && route.query.type) {
+    table.value.searchItemSelct(
+      selectConfig.value[1].data[0],
+      selectConfig.value[1]
+    );
+  } else {
+    searchItemSelct();
+  }
+});
 </script>
     
   <style lang="scss" scoped>
 .tenant {
-	padding: 20px;
+  padding: 20px;
 }
 </style>

+ 338 - 0
src/views/process/dealWith1/index.vue

@@ -0,0 +1,338 @@
+<template>
+	<div class="tenant">
+		<!-- <Banner /> -->
+		<div class="content">
+			<byTable
+				:source="sourceList.data"
+				:pagination="sourceList.pagination"
+				:config="config"
+				:loading="loading"
+				highlight-current-row
+				:selectConfig="selectConfig"
+				:table-events="{
+					//element talbe事件都能传
+					select: select,
+				}"
+				@get-list="getList"
+			>
+				<template #slotName="{ item }">
+					{{ item.createTime }}
+				</template>
+			</byTable>
+		</div>
+		<el-dialog
+			:title="modalType == 'add' ? '新增' : '编辑'"
+			v-model="dialogVisible"
+			width="400"
+			v-loading="loading"
+		>
+			<byForm
+				:formConfig="formConfig"
+				:formOption="formOption"
+				v-model="formData.data"
+				:rules="rules"
+				ref="byform"
+			>
+			</byForm>
+			<template #footer>
+				<el-button @click="dialogVisible = false" size="large"
+					>取 消</el-button
+				>
+				<el-button
+					type="primary"
+					@click="submitForm('byform')"
+					size="large"
+					:loading="submitLoading"
+				>
+					确 定
+				</el-button>
+			</template>
+		</el-dialog>
+	</div>
+</template>
+    
+  <script setup>
+/* eslint-disable vue/no-unused-components */
+import { ElMessage, ElMessageBox } from 'element-plus'
+import byTable from '@/components/byTable/index'
+import byForm from '@/components/byForm/index'
+import { computed, defineComponent, ref } from 'vue'
+const loading = ref(false)
+const submitLoading = ref(false)
+const dictCommonModal = ref(false)
+const sourceList = ref({
+	data: [],
+	pagination: {
+		total: 3,
+		pageNum: 1,
+		pageSize: 10,
+        status:1,
+	},
+})
+let dialogVisible = ref(false)
+let roomDialogVisible = ref(false)
+let modalType = ref('add')
+let rules = ref({
+	classifyName: [
+		{ required: true, message: '请输入功能模块', trigger: 'blur' },
+	],
+	flowKey: [{ required: true, message: '请输入流程标识', trigger: 'blur' }],
+	flowName: [{ required: true, message: '请输入流程名称', trigger: 'blur' }],
+})
+const { proxy } = getCurrentInstance()
+const selectConfig = computed(() => {
+	return [
+        {
+			label: '流程类型',
+			prop: 'flowInfoId',
+			data: [],
+		},
+		{
+			label: '流程状态',
+			prop: 'status',
+			data: [
+				{
+					label: '待处理',
+					value: '1',
+				},
+				{
+					label: '已发起',
+					value: '2',
+				},
+                {
+                    label: '已处理',
+                    value: '3',
+                },
+			],
+		},
+	]
+})
+const config = computed(() => {
+	return [
+		{
+			attrs: {
+				label: '流程类型',
+				prop: 'flowName',
+			},
+		},
+		{
+			attrs: {
+				label: '流程标题',
+				prop: 'title',
+			},
+		},
+
+		{
+			attrs: {
+				label: '处理类型',
+				width: 100,
+				prop: 'status',
+			},
+			render(status) {
+				return status == 0 || status == 1 ? '待处理' : status == 2 ? '已通过' : '已驳回'
+			},
+		},
+		{
+			attrs: {
+				label: '发起人',
+				prop: 'createUserName',
+			},
+		},
+		{
+			attrs: {
+				label: '发起时间',
+				prop: 'createTime',
+			},
+		},
+		{
+			attrs: {
+				label: '操作',
+				width: '200',
+				align: 'right',
+			},
+			// 渲染 el-button,一般用在最后一列。
+			renderHTML(row) {
+				return [
+					{
+                        attrs: {
+                            label: row.status == 0 || row.status == 1 ? '办理' : '查看',
+                            type: 'primary',
+                            text: true,
+                            bg: true,
+                            disabled: false,
+                        },
+                        el: 'button',
+                        click() {
+                            proxy.$router.replace({
+                                path: "/platform_manage/process/processApproval",
+                                query: {
+                                    flowKey: row.flowKey,
+                                    id: row.id,
+																		businessId: row.businessId,
+									processType:10,
+									version:row.version
+                                },
+                            });
+                            
+                        },
+                    } 
+						
+				]
+			},
+		},
+	]
+})
+let dtlData = reactive({
+	data: {},
+})
+let formData = reactive({
+	data: {},
+	treeData: [],
+})
+const formOption = reactive({
+	inline: true,
+	labelWidth: 100,
+	itemWidth: 100,
+	rules: [],
+})
+const byform = ref(null)
+const treeData = ref([])
+const formConfig = computed(() => {
+	return [
+		{
+			type: 'input',
+			prop: 'classifyName',
+			label: '功能模块',
+		},
+		{
+			type: 'input',
+			prop: 'flowKey',
+			label: '流程标识',
+			isHide: modalType.value == 'edit',
+		},
+		{
+			type: 'input',
+			prop: 'flowName',
+			label: '流程名称',
+		},
+	]
+})
+
+const flowJump = (row,type) => {
+    proxy.post('/flowProcess/jump', {flowId:row.id,handleType:type,version:row.version,data:{}}).then((message) => {
+        console.log(message)
+        if(message){
+            ElMessage.success('操作成功')
+            getList()
+        }
+    })
+}
+
+const getFlowType = () => {
+    proxy
+        .post('/flowExample/getFlowType')
+            .then((message) => {
+                console.log(message)
+                selectConfig.value[0].data = message.map((item) => {
+                    return {
+                        label: item.flowName,
+                        value: item.id,
+                    }
+                })
+            })
+        
+}
+getFlowType()
+const getUrlObj = {
+    1:'/flowExample/getToBeProcessedPage',
+    2:'/flowExample/getHaveInitiatedPage',
+    3:'/flowExample/getProcessedPage',
+}
+const getList = async (req) => {
+	sourceList.value.pagination = { ...sourceList.value.pagination, ...req }
+	loading.value = true
+	proxy
+		.post( getUrlObj[sourceList.value.pagination.status], sourceList.value.pagination)
+		.then((message) => {
+			console.log(message)
+			sourceList.value.data = message.rows
+			sourceList.value.pagination.total = message.total
+			setTimeout(() => {
+				loading.value = false
+			}, 200)
+		})
+}
+
+const openModal = () => {
+	dialogVisible.value = true
+	modalType.value = 'add'
+	formData.data = {}
+}
+const selection = ref({
+	data: [],
+})
+const select = (_selection, row) => {
+	selection.value.data = _selection
+	console.log(_selection.length)
+}
+
+const tree = ref(null)
+const submitTree = () => {
+	proxy
+		.post('/tenantInfo/bindingMenu', {
+			tenantId: selection.value.data[0].tenantId,
+			menuIdList: tree.value.getCheckedKeys(),
+		})
+		.then((res) => {
+			ElMessage({
+				message: '保存成功',
+				type: 'success',
+			})
+			roomDialogVisible.value = false
+		})
+}
+
+const submitForm = () => {
+	byform.value.handleSubmit((valid) => {
+		submitLoading.value = true
+		proxy
+			.post('/flowInfo/' + modalType.value, formData.data)
+			.then((res) => {
+				ElMessage({
+					message: modalType.value == 'add' ? '添加成功' : '编辑成功',
+					type: 'success',
+				})
+				dialogVisible.value = false
+				submitLoading.value = false
+				getList()
+			})
+	})
+}
+
+const getDtl = (row) => {
+	formData.data = { ...row }
+	modalType.value = 'edit'
+	dialogVisible.value = true
+}
+
+const changeStatus = (row) => {
+	modalType.value = 'edit'
+	proxy
+		.post('/flowInfo/edit', { ...row, status: row.status === 0 ? 1 : 0 })
+		.then((res) => {
+			ElMessage({
+				message: '操作成功',
+				type: 'success',
+			})
+			getList()
+		})
+}
+
+getList()
+</script>
+    
+  <style lang="scss" scoped>
+.tenant {
+	padding: 20px;
+}
+</style>