Browse Source

场所录入页面修改,添加列表页,详情页,其他页面的样式修改

guoqing 1 năm trước cách đây
mục cha
commit
55fa0b1bed

+ 8 - 1
src/api/placeRegister/placeRegister.js

@@ -29,8 +29,15 @@ export default class placeRegister {
     };
     //机构
     treeDate2(params) {
+            return request.get(
+                `/sys/office/treeData`,
+                params
+            )
+        }
+        //场所列表
+    religiousList(params) {
         return request.get(
-            `/sys/office/treeData`,
+            `/religioussites/siteinfo/religiousSitesInfo/list`,
             params
         )
     }

+ 8 - 9
src/config/index.js

@@ -1,17 +1,16 @@
 var defaultConfig = {
 
     //baseUrl : 'http://2.142.215.98:8010',
-	
-	//baseUrl : 'http://192.168.1.102:3000',
-	
-	baseUrl : 'http://localhost:3000',
-  
-    timeout : '50000',
+
+    //baseUrl : 'http://192.168.1.102:3000',
+
+    baseUrl: 'http://localhost:3000',
+
+    timeout: '50000',
 
     //api_key : '8C21178A017E712134B0FA9642F1ECDD049C13808219AF7EA4C8AFB0FF56AECA',
 
-    ContentType : 'Content-Type'
+    ContentType: 'Content-Type'
 }
 
-export default defaultConfig;
-
+export default defaultConfig;

+ 30 - 12
src/router/index.js

@@ -32,7 +32,7 @@ const routes = [{
         meta: {
             isShowTarbar: false,
         }
-    },{
+    }, {
         path: '/tab_a',
         name: 'tab_a',
         component: () =>
@@ -56,7 +56,7 @@ const routes = [{
         meta: {
             isShowTarbar: true,
         }
-    },{
+    }, {
         path: '/siteInspectionInfo',
         name: 'siteInspectionInfo',
         component: () =>
@@ -72,7 +72,7 @@ const routes = [{
         meta: {
             isShowTarbar: true,
         }
-    },{
+    }, {
         path: '/securityFacilitiesErrList',
         name: 'securityFacilitiesErrList',
         component: () =>
@@ -88,7 +88,7 @@ const routes = [{
         meta: {
             isShowTarbar: true,
         }
-    },{
+    }, {
         path: '/religiousConferenceView',
         name: 'religiousConferenceView',
         component: () =>
@@ -96,7 +96,7 @@ const routes = [{
         meta: {
             isShowTarbar: true,
         }
-    },{
+    }, {
         path: '/religiousConferenceList',
         name: 'religiousConferenceList',
         component: () =>
@@ -120,7 +120,7 @@ const routes = [{
         meta: {
             isShowTarbar: true,
         }
-    },{
+    }, {
         path: '/nonReligiousInformationList',
         name: 'nonReligiousInformationList',
         component: () =>
@@ -128,7 +128,7 @@ const routes = [{
         meta: {
             isShowTarbar: true,
         }
-    },{
+    }, {
         path: '/nonReligiousInformationInfo',
         name: 'nonReligiousInformationInfo',
         component: () =>
@@ -254,7 +254,7 @@ const routes = [{
         path: '/placePerson',
         name: 'placePerson',
         component: () =>
-            import ('../views/placeManage/placePerson.vue'),
+            import ('../views/placeManage/placePerson/placePerson.vue'),
         meta: {
             isShowTarbar: false,
         }
@@ -263,7 +263,7 @@ const routes = [{
         path: '/placePersoninfo',
         name: 'placePersoninfo',
         component: () =>
-            import ('../views/placeManage/placePersoninfo.vue'),
+            import ('../views/placeManage/placePerson/placePersoninfo.vue'),
         meta: {
             isShowTarbar: false,
         }
@@ -272,7 +272,25 @@ const routes = [{
         path: '/placeRegister',
         name: 'placeRegister',
         component: () =>
-            import ('../views/placeManage/placeRegister.vue'),
+            import ('../views/placeManage/placeRegister/placeRegister.vue'),
+        meta: {
+            isShowTarbar: false,
+        }
+    },
+    {
+        path: '/placeRegisterList',
+        name: 'placeRegisterList',
+        component: () =>
+            import ('../views/placeManage/placeRegister/placeRegisterList.vue'),
+        meta: {
+            isShowTarbar: false,
+        }
+    },
+    {
+        path: '/placeRegisterInfo',
+        name: 'placeRegisterInfo',
+        component: () =>
+            import ('../views/placeManage/placeRegister/placeRegisterInfo.vue'),
         meta: {
             isShowTarbar: false,
         }
@@ -281,7 +299,7 @@ const routes = [{
         path: '/placeTablet',
         name: 'placeTablet',
         component: () =>
-            import ('../views/placeManage/placeTablet.vue'),
+            import ('../views/placeManage/placeTablet/placeTablet.vue'),
         meta: {
             isShowTarbar: false,
         }
@@ -290,7 +308,7 @@ const routes = [{
         path: '/placeTabletInfo',
         name: 'placeTabletInfo',
         component: () =>
-            import ('../views/placeManage/placeTabletInfo.vue'),
+            import ('../views/placeManage/placeTablet/placeTabletInfo.vue'),
         meta: {
             isShowTarbar: false,
         }

+ 19 - 2
src/views/placeManage/placePerson.vue → src/views/placeManage/placePerson/placePerson.vue

@@ -29,7 +29,8 @@
       </van-search>
     </div>
     <div class="PersonList" v-if="value1 == 0 || value == ''">
-      <div
+      <div v-if="dataList.length>0">
+        <div
         class="PersonItem"
         v-for="item in dataList"
         :key="item.id"
@@ -81,9 +82,14 @@
           </van-col>
         </van-row>
       </div>
+      </div>
+      <div style="position: relative;width:100%;text-align:center;height:100%" v-if="PersonList.length<=0" >
+        <span class="tishi">暂无人员信息</span>
+      </div>
     </div>
     <div class="PersonList" v-if="value1 != 0 && value != ''">
-      <div
+      <div v-if="PersonList.length>0">
+        <div
         class="PersonItem"
         v-for="item in PersonList"
         :key="item.id"
@@ -135,6 +141,10 @@
           </van-col>
         </van-row>
       </div>
+      </div>
+      <div style="position: relative;width:100%;text-align:center;height:100%" v-if="PersonList.length<=0" >
+        <span class="tishi">暂无人员信息</span>
+      </div>
     </div>
   </div>
 </template>
@@ -255,10 +265,17 @@ html {
   padding: 0;
   background-color: #f2f2f2;
 }
+.tishi{
+  position: absolute;
+  left: 50%;
+  color: #D3D3D3;
+  transform: translate(-50%);
+}
 .van-nav-bar {
   background-color: #36a7f3;
   .van-nav-bar__title {
     color: #fff;
+    
   }
   .van-badge__wrapper {
     color: #fff;

+ 1 - 1
src/views/placeManage/placePersoninfo.vue → src/views/placeManage/placePerson/placePersoninfo.vue

@@ -8,7 +8,7 @@
   />
   <div class="main">
     <div class="banner">
-      <img src="../../../public/loginbg/banner.jpg" alt="" />
+      <img src="../../../../public/loginbg/banner.jpg" alt="" />
     </div>
     <div class="info">
       <p class="miniTitle">个人信息-{{ data.data.name }}</p>

+ 49 - 39
src/views/placeManage/placeRegister.vue → src/views/placeManage/placeRegister/placeRegister.vue

@@ -1,7 +1,12 @@
 <template>
-    <van-nav-bar fixed title="场所录入" left-arrow @click-left="onClickLeft" :style="{ 'background-color': selectColor }"/>
+  <van-nav-bar
+    fixed
+    title="场所录入"
+    left-arrow
+    @click-left="onClickLeft"
+    :style="{ 'background-color': selectColor }"
+  />
   <div class="main">
-    <!-- <p class="title">宗教场所录入</p> -->
     <div class="formArea">
       <p class="miniTitle">场所信息</p>
       <van-cell-group>
@@ -80,8 +85,11 @@
           label="详细场所"
           placeholder="请填写详细场所"
           input-align="right"
-          right-icon="location"
-        />
+        >
+          <template #right-icon>
+            <van-icon name="location" @click="getLocation" />
+          </template>
+        </van-field>
       </van-cell-group>
       <van-cell-group>
         <van-field
@@ -219,8 +227,8 @@
 
 <script>
 import { reactive, ref } from "vue";
-import ManageList from "../placeManage/ManageList.vue";
-import ManageList2 from "../placeManage/ManageList2.vue";
+import ManageList from "../ManageList.vue";
+import ManageList2 from "../ManageList2.vue";
 import PlaceRegister from "@/api/placeRegister/placeRegister";
 import tools from "@/api/sys/tools";
 export default {
@@ -245,30 +253,28 @@ export default {
         constructionStage: "", //场所建设阶段
         nature: "", //场所性质
         religiousDeptManaUser: "", //宗教部门管理人员id
-        
-        securityDeptManaUser: "", //公安部门管理人员id
-        
-        peopleThreshold: "", //场所活动人数
-        approvalProcedures:"",//场所建设审批手续
-        etiquetteSpace:"",//宗教礼仪空间(附件)
-        filingNo:"",//场所备案号
-        latitude:"",//经度
-        longitude:"",//维度
-        mainRoads:"",//出入口主要道路
-        placeSelectType3:"",
-        placeSelectType4:"",
-        placeSelectType5:"",
-        placeSelectType6:"",
-        plan:"",//场所规划
-        publicArea:"",//外围公共区域
-        religiousName:"",//教别名称
-        remake:"",//备注
-        scenesImage:"",//内外景图片地址
-        tyshxydm:"",//统一社会代码
-        website:"",//网址
-        state:"1",//状态
 
+        securityDeptManaUser: "", //公安部门管理人员id
 
+        peopleThreshold: "", //场所活动人数
+        approvalProcedures: "", //场所建设审批手续
+        etiquetteSpace: "", //宗教礼仪空间(附件)
+        filingNo: "", //场所备案号
+        latitude: "", //经度
+        longitude: "", //维度
+        mainRoads: "", //出入口主要道路
+        placeSelectType3: "",
+        placeSelectType4: "",
+        placeSelectType5: "",
+        placeSelectType6: "",
+        plan: "", //场所规划
+        publicArea: "", //外围公共区域
+        religiousName: "", //教别名称
+        remake: "", //备注
+        scenesImage: "", //内外景图片地址
+        tyshxydm: "", //统一社会代码
+        website: "", //网址
+        state: "1", //状态
       },
       religiousDeptManaUserName: "", //宗教部门管理人员
       securityDeptManaUserName: "", //公安部门管理人员
@@ -335,10 +341,9 @@ export default {
           data.name = decodeURIComponent(
             data.url.substring(data.url.lastIndexOf("/") + 1)
           );
-          placeActivity.placeData.scenesImage += ""+data.url
+          placeActivity.placeData.scenesImage += "" + data.url;
           fileImg.value.push(data);
         });
-      
     };
     const fjdelete = (file) => {
       //删除文件操作
@@ -351,6 +356,12 @@ export default {
         }
       }
     };
+    //详细地址定位
+    const getLocation = () => {
+      xm.getLocation().then((data) => {
+        placeActivity.placeData.place = data.POIName;
+      });
+    };
     // 地区选择
     let placeAddress = ref("");
     const customFieldName = {
@@ -378,9 +389,9 @@ export default {
         selectedOptions[1].id +
         "/" +
         selectedOptions[2].id;
-      placeActivity.placeData.placeSelectType3 = selectedOptions[0].id
-      placeActivity.placeData.placeSelectType4 = selectedOptions[1].id
-      placeActivity.placeData.placeSelectType5 = selectedOptions[2].id
+      placeActivity.placeData.placeSelectType3 = selectedOptions[0].id;
+      placeActivity.placeData.placeSelectType4 = selectedOptions[1].id;
+      placeActivity.placeData.placeSelectType5 = selectedOptions[2].id;
       placeActivity.placeData.placeSelectId = placeAddress.value;
     };
     //人员选择
@@ -405,14 +416,12 @@ export default {
       placeActivity.religiousDeptManaUserName = list.value.name;
     };
     const reselected2 = () => {
-        placeActivity.placeData.securityDeptManaUser = list2.value.id;
-        placeActivity.securityDeptManaUserName = list2.value.name;
+      placeActivity.placeData.securityDeptManaUser = list2.value.id;
+      placeActivity.securityDeptManaUserName = list2.value.name;
     };
     //数据提交
     const submit = () => {
-      console.log(placeActivity.placeData);
       new PlaceRegister().sava(placeActivity.placeData).then((res) => {
-        console.log("提交成功", res);
         router.push({
           path: "/tabAll",
         });
@@ -444,6 +453,8 @@ export default {
       fjdelete,
       // 返回
       onClickLeft,
+      // 详细地址定位
+      getLocation,
       // 地区选择
       placeAddress,
       customFieldName,
@@ -459,13 +470,12 @@ export default {
       reselected2,
       //数据提交
       submit,
-      selectColor
+      selectColor,
     };
   },
 };
 </script>
 <style lang="less">
-
 .subbtn {
   margin: 20px;
   text-align: center;

+ 152 - 0
src/views/placeManage/placeRegister/placeRegisterInfo.vue

@@ -0,0 +1,152 @@
+<template>
+  <van-nav-bar
+    fixed
+    title="场所详细信息"
+    left-arrow
+    @click-left="onClickLeft"
+    :style="{ 'background-color': selectColor }"
+  />
+  <div class="main">
+    <div class="banner">
+      <img src="../../../../public/loginbg/banner.jpg" alt="" />
+    </div>
+    <div class="info">
+      <p class="miniTitle">场所信息</p>
+      <van-row justify="space-between">
+        <van-col span="24">
+          <van-row class="item">
+            <van-col span="24">
+              <van-row justify="space-between">
+                <van-field
+                  v-model="dataitem.brandName"
+                  center
+                  readonly
+                  clearable
+                  label="场所名称:"
+                  input-align="right"
+                />
+              </van-row>
+            </van-col>
+          </van-row>
+          <van-row class="item">
+            <van-col span="24">
+              <van-row justify="space-between">
+                <van-field
+                  v-model="data.siteName.name"
+                  center
+                  readonly
+                  clearable
+                  label="宗教类型:"
+                  input-align="right"
+                />
+              </van-row>
+            </van-col>
+          </van-row>
+          <van-row class="item">
+            <van-col span="24">
+              <van-row justify="space-between">
+                <van-field
+                  v-model="dataitem.memorialTabletHolder"
+                  center
+                  readonly
+                  clearable
+                  label="场所联系人:"
+                  input-align="right"
+                />
+              </van-row>
+            </van-col>
+          </van-row>
+        </van-col>
+      </van-row>
+      <van-row class="item">
+        <van-col span="24">
+          <van-row justify="space-between">
+            <van-field
+              v-model="dataitem.memorialTabletHolderPhone"
+              center
+              readonly
+              clearable
+              label="联系电话:"
+              input-align="right"
+            />
+          </van-row>
+        </van-col>
+      </van-row>
+      <van-row class="item">
+        <van-col span="24">
+          <van-row justify="space-between">
+            <van-field
+              v-model="dataitem.contactInformation"
+              center
+              readonly
+              clearable
+              label="场所地址:"
+              input-align="right"
+            />
+          </van-row>
+        </van-col>
+      </van-row>
+      <van-row class="item">
+        <van-col span="24">
+          <van-row justify="space-between">
+            <van-field
+              v-model="dataitem.siteContact"
+              center
+              readonly
+              clearable
+              label="信用代码:"
+              input-align="right"
+            />
+          </van-row>
+        </van-col>
+      </van-row>
+    </div>
+  </div>
+</template>
+
+<script>
+import { useRouter } from "vue-router";
+import { onMounted, reactive, ref } from "vue";
+import $base from "@/utils/config";
+export default {
+  setup() {
+    const data = reactive({
+      siteName: {},
+      pic: [],
+    });
+    // 导航栏颜色
+    const selectColor = ref(window.localStorage.getItem("MZ_COLOR"));
+    //牌位数据
+    let dataitem = ref({});
+    //数据接收
+    const router = useRouter();
+    onMounted(() => {
+      var item = JSON.parse(router.currentRoute.value.query.data);
+      dataitem.value = item;
+      data.siteName = dataitem.value.siteName;
+      let pic = [];
+      pic = dataitem.value.pic.split("|");
+      dataitem.value.pic = pic;
+      data.pic = dataitem.value.pic;
+      let picList = [];
+      data.pic.forEach((item1) => {
+        picList.push(`${$base}` + item1);
+      });
+      data.pic = picList;
+    });
+    //返回
+    const onClickLeft = () => {
+      history.back();
+    };
+    return {
+      onClickLeft,
+      data,
+      dataitem,
+      selectColor,
+    };
+  },
+};
+</script>
+
+<style lang="less">
+</style>

+ 217 - 0
src/views/placeManage/placeRegister/placeRegisterList.vue

@@ -0,0 +1,217 @@
+<template>
+  <van-nav-bar
+    fixed
+    title="场所管理"
+    left-text=""
+    left-arrow
+    @click-left="onClickLeft"
+    @click-right="onClickright"
+    :style="{ 'background-color': selectColor }"
+  >
+    <template #right>
+      <van-icon name="plus" size="18" />
+    </template>
+  </van-nav-bar>
+  <div class="main">
+    <van-search
+      v-model="searchVal"
+      readonly="true"
+      clearable
+      show-action
+      shape="round"
+      placeholder="请输入场所名称"
+      label="场所名称"
+      input-align="center"
+      @search="onSearch"
+      @cancel="onCancel"
+      @click-input="showPlace = true"
+    />
+      <van-list
+        v-model:loading="loading"
+        :finished="finished"
+        finished-text="没有更多了"
+        @load="onLoad"
+      >
+        <van-swipe-cell v-for="item in list" :key="item">
+          <div class="list-item">
+            <div class="item_top">
+              <div class="item_top_left">
+                {{ item.name }}
+              </div>
+              <div class="item_top_right">
+                <span v-if="item.religious_type == 1">伊斯兰教</span>
+                <span v-if="item.religious_type == 2">基督教</span>
+                <span v-if="item.religious_type == 3">天主教</span>
+                <span v-if="item.religious_type == 4">佛教</span>
+                <span v-if="item.religious_type == 5">道教</span>
+              </div>
+            </div>
+            <div class="item_center">
+              {{ item.place }}
+            </div>
+            <div class="item_down">
+              <div class="item_down_left">
+                {{ item.contact }}
+              </div>
+              <div class="item_down_right">
+                {{ item.contact_number }}
+              </div>
+            </div>
+          </div>
+        </van-swipe-cell>
+      </van-list>
+  </div>
+</template>
+
+<script>
+import { reactive, ref } from "vue";
+import { useRouter } from "vue-router";
+import PlaceRegister from "@/api/placeRegister/placeRegister";
+export default {
+  setup() {
+    //暂时列表数据
+    const list = [
+      {
+        name: "盐城市盐都区金航财富大厦",
+        place: "金航财富大厦",
+        religious_type: 2,
+        contact: "郭**",
+        contact_number: "15730232627",
+      },
+      {
+        name: "盐城市盐都区金航财富大厦",
+        place: "金航财富大厦",
+        religious_type: 2,
+        contact: "郭**",
+        contact_number: "15730232627",
+      },
+      {
+        name: "盐城市盐都区金航财富大厦",
+        place: "金航财富大厦",
+        religious_type: 2,
+        contact: "郭**",
+        contact_number: "15730232627",
+      },
+    ];
+
+    // 导航栏颜色
+    const selectColor = ref(window.localStorage.getItem("MZ_COLOR"));
+    //返回取消按钮
+    const onClickLeft = () => {
+      history.back();
+    };
+    //跳转
+    let router = useRouter();
+    //进入场所录入页面
+    const onClickright = () => {
+      router.push("/placeRegister");
+    };
+    const loading = ref(false);
+    const finished = ref(false);
+    const onLoad = () => {
+      loading.value = true;
+      finished.value = false;
+      // 异步更新数据
+      new PlaceRegister().religiousList().then((res) => {
+        list.value.push(...res.records);
+        // 加载状态结束
+      });
+      loading.value = false;
+        // 数据全部加载完成
+      finished.value = true;
+    };
+    // 搜索
+    let searchShow = ref(false);
+    let searchList = ref([]);
+    const searchVal = ref("");
+    const searchValId = ref("");    
+    const onSearch = () => {
+      searchShow.value = true;
+      searchList.value = [];
+      
+    };
+    const onCancel = () => {
+      searchVal.value = "";
+      searchValId.value = "";
+      searchShow.value = false;
+
+      finished.value = false;
+      list.value = [];
+      loading.value = true;
+      onLoad();
+    };
+    return {
+      //返回取消按钮
+      onClickLeft,
+      //进入添加页面
+      onClickright,
+      //背景色
+      selectColor,
+      list,
+      loading,
+      finished,
+      onLoad,
+      //搜索
+      searchShow,
+      searchVal,
+      searchValId,
+      searchList,
+      onSearch,
+      onCancel, 
+    };
+  },
+};
+</script>
+
+<style lang='less'>
+body,
+html {
+  margin: 0;
+  padding: 0;
+  background-color: #f2f2f2;
+}
+.main {
+   
+  .list-item {
+    background-color: #fff;
+    padding: 10px;
+    margin-bottom: 5px;
+    overflow: hidden;
+    .item_top {
+      width: 100%;
+      overflow: hidden;
+      .item_top_left {
+        float: left;
+        width: 80%;
+        font-size: 16px;
+      }
+      .item_top_right {
+        float: right;
+        width: 20%;
+        font-size: 14px;
+      }
+    }
+    .item_center {
+      width: 100%;
+      font-size: 12px;
+      color: #808080;
+      text-align: left;
+      overflow: hidden;
+    }
+    .item_down {
+        overflow: hidden;
+      width: 100%;
+      font-size: 12px;
+      .item_down_left {
+        width: 70%;
+        float: left;
+      }
+      .item_down_right {
+        width: 30%;
+        text-align: center;
+        float: left;
+      }
+    }
+  }
+}
+</style>

+ 0 - 0
src/views/placeManage/placeTablet.vue → src/views/placeManage/placeTablet/placeTablet.vue


+ 1 - 1
src/views/placeManage/placeTabletInfo.vue → src/views/placeManage/placeTablet/placeTabletInfo.vue

@@ -8,7 +8,7 @@
   />
   <div class="main">
     <div class="banner">
-      <img src="../../../public/loginbg/banner.jpg" alt="" />
+      <img src="../../../../public/loginbg/banner.jpg" alt="" />
     </div>
     <div class="info">
       <p class="miniTitle">牌位信息-{{ dataitem.brandName }}</p>

+ 1 - 1
src/views/tab_a/tabAll.vue

@@ -114,7 +114,7 @@ import $base from "@/utils/config";
             },
 			// 场所登记跳转
 			goPlaceRegister() {
-              this.$router.push("/placeRegister");
+              this.$router.push("/placeRegisterList");
             },
 			// 人员档案跳转
 			goPlacePerson() {

+ 155 - 45
src/views/toBeDone/toBeDone.vue

@@ -1,6 +1,11 @@
 <template>
   <div>
-    <van-nav-bar title="我的待办" left-arrow @click-left="onClickLeft" :style="{ 'background-color': selectColor }"/>
+    <van-nav-bar
+      title="我的待办"
+      left-arrow
+      @click-left="onClickLeft"
+      :style="{ 'background-color': selectColor }"
+    />
   </div>
   <van-tabs
     v-model:active="active"
@@ -8,8 +13,63 @@
     title-active-color="#36a7f3"
   >
     <van-tab title="待处理">
+      <van-list
+          v-model:loading="loading"
+          :finished="finished"
+          finished-text="没有更多了"
+          @load="onLoad1"
+        >
+          <van-swipe-cell v-for="item in toBeDone.toBeDoneList" :key="item.id">
+            <div class="list-item" @click="goToBeDoneinfo(item)">
+              <van-col span="6" class="list-item-left">
+                <div>
+                  <p style="color: #a3a3a3">
+                    {{ item.createDate.split(" ")[0] }}
+                  </p>
+                  <p style="color: #a3a3a3">
+                    {{ item.createDate.split(" ")[1] }}
+                  </p>
+                </div>
+                <p
+                  v-if="item.assignState == 1"
+                  style="color: red; margin-top: 10px"
+                >
+                  已发起
+                </p>
+                <p
+                  v-else-if="item.assignState == 2"
+                  style="color: red; margin-top: 10px"
+                >
+                  待办中
+                </p>
+                <p
+                  v-if="item.assignState == 5"
+                  style="color: red; margin-top: 10px"
+                >
+                  已超期
+                </p>
+              </van-col>
+              <van-col
+                span="18"
+                style="border-left: 1px solid #e3e3e3"
+                class="list-item-right"
+              >
+                <van-row>
+                  <van-col span="24" style="height: 50px; overflow: hidden">
+                    <span v-html="item.problemContent"></span>
+                  </van-col>
+                </van-row>
+                <van-row justify="space-between">
+                  <van-col span="12">{{ item.areaSelectName }}</van-col>
+                  <van-col span="8">{{ item.assignTypeName }}</van-col>
+                </van-row>
+              </van-col>
+            </div>
+          </van-swipe-cell>
+        </van-list>
       <div class="list1">
-        <van-row
+        
+        <!-- <van-row
           class="list-item"
           v-for="item in toBeDone.toBeDoneList"
           :key="item.id"
@@ -54,50 +114,68 @@
               <van-col span="8">{{ item.assignTypeName }}</van-col>
             </van-row>
           </van-col>
-        </van-row>
+        </van-row> -->
       </div>
     </van-tab>
     <van-tab title="已处理">
       <div class="list1">
+        <van-list
+          v-model:loading="loading"
+          :finished="finished"
+          finished-text="没有更多了"
+          @load="onLoad2"
+        >
+          <van-swipe-cell
+            v-for="item in toBeDone.toBeDoneList2"
+            :key="item.id"
+          >
+          <div class="list-item" @click="goToBeDoneinfo(item)">
+            <van-col span="6" class="list-item-left">
+              <div>
+                <p style="color: #a3a3a3">
+                  {{ item.createDate.split(" ")[0] }}
+                </p>
+                <p style="color: #a3a3a3">
+                  {{ item.createDate.split(" ")[1] }}
+                </p>
+              </div>
+              <p
+                v-if="item.assignState == 3"
+                style="color: red; margin-top: 10px"
+              >
+                已反馈
+              </p>
+              <p
+                v-if="item.assignState == 4"
+                style="color: red; margin-top: 10px"
+              >
+                已归档
+              </p>
+            </van-col>
+            <van-col
+              span="18"
+              style="border-left: 1px solid #e3e3e3"
+              class="list-item-right"
+            >
+              <van-row>
+                <van-col span="24" style="height: 50px; overflow: hidden">
+                  <span v-html="item.problemContent"></span>
+                </van-col>
+              </van-row>
+              <van-row justify="space-between">
+                <van-col span="12">{{ item.areaSelectName }}</van-col>
+                <van-col span="8">{{ item.assignTypeName }}</van-col>
+              </van-row>
+            </van-col>
+          </div>
+          </van-swipe-cell>
+        </van-list>
         <van-row
           class="list-item"
           v-for="item in toBeDone.toBeDoneList2"
           :key="item.id"
           @click="goToBeDoneinfo(item)"
         >
-          <van-col span="6" class="list-item-left">
-            <div>
-              <p style="color: #a3a3a3">{{ item.createDate.split(" ")[0] }}</p>
-              <p style="color: #a3a3a3">{{ item.createDate.split(" ")[1] }}</p>
-            </div>
-            <p
-              v-if="item.assignState == 3"
-              style="color: red; margin-top: 10px"
-            >
-              已反馈
-            </p>
-            <p
-              v-if="item.assignState == 4"
-              style="color: red; margin-top: 10px"
-            >
-              已归档
-            </p>
-          </van-col>
-          <van-col
-            span="18"
-            style="border-left: 1px solid #e3e3e3"
-            class="list-item-right"
-          >
-            <van-row>
-              <van-col span="24" style="height: 50px; overflow: hidden">
-                <span v-html="item.problemContent"></span>
-              </van-col>
-            </van-row>
-            <van-row justify="space-between">
-              <van-col span="12">{{ item.areaSelectName }}</van-col>
-              <van-col span="8">{{ item.assignTypeName }}</van-col>
-            </van-row>
-          </van-col>
         </van-row>
       </div>
     </van-tab>
@@ -116,16 +194,41 @@ export default {
       //已处理
       toBeDoneList2: [],
     });
+    const loading = ref(false);
+    const finished = ref(false);
     const active = ref(0);
-    //获取待办列表
     let workDBList = ref([]);
-    new ToBeDone().list({}).then((res) => {
-      workDBList.value.push(...res.records);
-      toBeDone.toBeDoneList = workDBList;
-    });
-    new ToBeDone().list2({}).then((res) => {
-      toBeDone.toBeDoneList2.push(...res.records);
-    });
+    //获取待办列表
+    const onLoad1 = () => {
+      // 异步更新数据
+      new ToBeDone().list({}).then((res) => {
+        workDBList.value.push(...res.records);
+        toBeDone.toBeDoneList = workDBList;
+        // 加载状态结束
+        loading.value = false;
+        // 数据全部加载完成
+        if (list.value.length >= 40) {
+          finished.value = true;
+        }
+      });
+      new ToBeDone().list2({}).then((res) => {
+        toBeDone.toBeDoneList2.push(...res.records);
+      });
+    };
+    //获取待办列表
+    const onLoad2 = () => {
+      // 异步更新数据
+      new ToBeDone().list2({}).then((res) => {
+        toBeDone.toBeDoneList2.push(...res.records);
+        // 加载状态结束
+        loading.value = false;
+        // 数据全部加载完成
+        if (list.value.length >= 40) {
+          finished.value = true;
+        }
+      });
+    };
+
     //跳转
     let router = useRouter();
     // 导航栏颜色
@@ -152,7 +255,9 @@ export default {
       toBeDone,
       goToBeDoneinfo,
       active,
-      selectColor
+      selectColor,
+      onLoad1,
+      onLoad2,
     };
   },
 };
@@ -165,6 +270,11 @@ html {
   padding: 0;
   background-color: #f2f2f2;
 }
+.listbox {
+  background: #fff;
+  color: #c0c0c0;
+  text-align: center;
+}
 .van-nav-bar {
   background-color: #36a7f3;
   .van-nav-bar__title {