Browse Source

计划加入查询条件

master
蟑螂恶霸 2 years ago
parent
commit
a8f6a0b87d
  1. 206
      src/views/enforce/enforcementPlan.vue

206
src/views/enforce/enforcementPlan.vue

@ -1,4 +1,3 @@
<template> <template>
<div class="shop app_content"> <div class="shop app_content">
<!-- 导航栏 --> <!-- 导航栏 -->
@ -19,15 +18,24 @@
<div @click="onClickButton">搜索</div> <div @click="onClickButton">搜索</div>
</template> </template>
</van-search> </van-search>
<!-- <div class="search-button-list"> <div class="search-button-list">
<van-button plain hairline class="search-button" @click="searchDateType()" round type="primary" size="mini">全部</van-button> <van-button plain hairline class="search-button" @click="searchDateType()" round type="primary" size="mini">
<van-button plain hairline class="search-button" @click="searchDateType(2)" round type="primary" size="mini">本月</van-button> 全部
<van-button plain hairline class="search-button" @click="searchDateType(3)" round type="primary" size="mini">本季度</van-button> </van-button>
<van-button plain hairline class="search-button" @click="searchDateType(1)" round type="primary" size="mini">本年度</van-button> <van-button plain hairline class="search-button" @click="searchDateType(1)" round type="primary"
<van-button plain hairline class="search-button" @click="searchComplaint(1)" round type="primary" size="mini">投诉</van-button> size="mini">本月
</div> --> </van-button>
<van-button plain hairline class="search-button" @click="searchDateType(2)" round type="primary"
size="mini">本季
</van-button>
<van-button plain hairline class="search-button" @click="searchDateType(3)" round type="primary"
size="mini">本年
</van-button>
<van-button plain hairline class="search-button" @click="selectDate" round type="primary" size="mini">筛选
</van-button>
</div>
<div class="search-button-date"> <div class="search-button-date">
<span class="date-select" @click="selectDate">{{ data.dateSearch }}</span> <span class="date-select" v-show="data.dateShow" @click="selectDate">{{ data.dateSearch }}</span>
<div style="border-color: black;" class="van-hairline--bottom"></div> <div style="border-color: black;" class="van-hairline--bottom"></div>
<van-button class="search-button" type="primary" size="mini" @click="openPlanAddView">创建</van-button> <van-button class="search-button" type="primary" size="mini" @click="openPlanAddView">创建</van-button>
<van-popup v-model:show="data.showDatePicker" position="bottom"> <van-popup v-model:show="data.showDatePicker" position="bottom">
@ -49,8 +57,9 @@
<refresh-list v-model:freshMap="freshMap" @refresh="onRefresh" @onLoad="onLoad" <refresh-list v-model:freshMap="freshMap" @refresh="onRefresh" @onLoad="onLoad"
:resetScroll="resetScroll" class="refresh_box"> :resetScroll="resetScroll" class="refresh_box">
<div class="refresh_content" v-if="data?.dataList.length"> <div class="refresh_content" v-if="data?.dataList.length">
<!-- <div class="goods_box" v-for="(item, index) in data?.dataList" :key="index" @click="toPdfView(item.fileObject.fileUrl)">--> <!-- <div class="goods_box" v-for="(item, index) in data?.dataList" :key="index" @click="toPdfView(item.fileObject.fileUrl)">-->
<div class="goods_box" v-for="(item, index) in data?.dataList" :key="index" @click="toPdfView(null!=item.fileObject?item.fileObject.fileUrl:null)"> <div class="goods_box" v-for="(item, index) in data?.dataList" :key="index"
@click="toPdfView(null!=item.fileObject?item.fileObject.fileUrl:null)">
<van-swipe-cell class="swipe_cell"> <van-swipe-cell class="swipe_cell">
<div class="card_box"> <div class="card_box">
<div class="card_box_span"> <div class="card_box_span">
@ -66,10 +75,12 @@
<p><span class="card_box_label">执法区域:</span> {{ item.enforcementArea }}</p> <p><span class="card_box_label">执法区域:</span> {{ item.enforcementArea }}</p>
</div> </div>
<div class="card_box_span"> <div class="card_box_span">
<p><span class="card_box_label">执法部门:</span> {{ item.enforcementDepartment }}</p> <p><span class="card_box_label">执法部门:</span> {{ item.enforcementDepartment }}
</p>
</div> </div>
<div class="card_box_span"> <div class="card_box_span">
<p><span class="card_box_label">执法计划:</span> <a style="color: green;">{{ null!=item.fileObject?item.fileObject.fileName:"" }}</a></p> <p><span class="card_box_label">执法计划:</span> <a style="color: green;">{{
null!=item.fileObject?item.fileObject.fileName:"" }}</a></p>
</div> </div>
<!-- <div class="card_box_span"> <!-- <div class="card_box_span">
<p><span class="card_box_label">执法计划:</span> {{ item.fileObject.fileName }}</p> <p><span class="card_box_label">执法计划:</span> {{ item.fileObject.fileName }}</p>
@ -78,7 +89,7 @@
</van-swipe-cell> </van-swipe-cell>
</div> </div>
</div> </div>
<van-empty v-else class="no_data" description="暂无数据" /> <van-empty v-else class="no_data" description="暂无数据"/>
</refresh-list> </refresh-list>
</lodding-card> </lodding-card>
</div> </div>
@ -91,16 +102,17 @@
</template> </template>
<script setup name="enforcementInspectionProgram"> <script setup name="enforcementInspectionProgram">
import {queryEnforcementInspectionProgramList} from "@/api/enforce"; import {queryEnforcementInspectionProgramList} from "@/api/enforce";
import { setGoodsNum } from "@/util/util"; import {setGoodsNum} from "@/util/util";
import { showFailToast } from 'vant'; import {showFailToast} from 'vant';
const { useCommon, useShopCard } = $globalStore;
const router = useRouter(); const {useCommon, useShopCard} = $globalStore;
let allchecked = ref(false); // 是否全选
let refreshLoad = ref(false); // 是否加载中
let searchParam = reactive({ const router = useRouter();
let allchecked = ref(false); // 是否全选
let refreshLoad = ref(false); // 是否加载中
let searchParam = reactive({
//搜索框 //搜索框
searchText: ref(''), searchText: ref(''),
//日期查询 //日期查询
@ -108,21 +120,22 @@ let searchParam = reactive({
// 用户id // 用户id
dataScopeId: "", dataScopeId: "",
// dataScopeId: "1731", // dataScopeId: "1731",
}); });
const data = reactive({ const data = reactive({
cartList: [], cartList: [],
dataList: [], dataList: [],
dateSearch: ref(), dateSearch: ref(),
showDatePicker:false, showDatePicker: false,
currentDate:ref(['2024', '01']), currentDate: ref(['2024', '01']),
minDate: new Date(2020, 0, 1), minDate: new Date(2020, 0, 1),
maxDate: new Date(2125, 5, 1), maxDate: new Date(2125, 5, 1),
columnsType :['year', 'month'], columnsType: ['year', 'month'],
}); dateShow: false
});
// 设置初始值为当前时间 // 设置初始值为当前时间
onMounted(() => { onMounted(() => {
console.log(useCommon.enterpriseNumber); console.log(useCommon.enterpriseNumber);
console.log(useCommon.userId); console.log(useCommon.userId);
// getCard(); // getCard();
@ -131,39 +144,38 @@ onMounted(() => {
console.log(useCommon.enterpriseNumber) console.log(useCommon.enterpriseNumber)
queryList(); queryList();
data.dateSearch = nowDate(new Date()); data.dateSearch = nowDate(new Date());
}); });
const queryList = () =>{ const queryList = () => {
queryEnforcementInspectionProgramList(searchParam,success =>{ queryEnforcementInspectionProgramList(searchParam, success => {
console.log(success)
data.dataList = success.data; data.dataList = success.data;
freshMap.refreshLoad = false; freshMap.refreshLoad = false;
freshMap.listLoading = false; freshMap.listLoading = false;
freshMap.listFinished = true; freshMap.listFinished = true;
isLodding.value = false; isLodding.value = false;
},error =>{ }, error => {
}) })
} }
const onSearch = (val) => { const onSearch = (val) => {
queryEnforcementInspectionProgramList( queryEnforcementInspectionProgramList(
{ {
"searchText": searchParam.searchText "searchText": searchParam.searchText
} }
,success =>{ , success => {
console.log(success) console.log(success)
data.dataList = success.data; data.dataList = success.data;
},error =>{ }, error => {
}) })
}; };
const onClickButton = () =>{ const onClickButton = () => {
console.log(searchParam.searchText) console.log(searchParam.searchText)
queryList(); queryList();
} }
const toPdfView = (url) =>{ const toPdfView = (url) => {
if(null!=url) { if (null != url) {
router.push( router.push(
{ {
path: "/pdfView", path: "/pdfView",
@ -174,46 +186,45 @@ const toPdfView = (url) =>{
} else { } else {
showFailToast("没有执行计划") showFailToast("没有执行计划")
} }
} }
onActivated(() => { onActivated(() => {
}); });
onDeactivated(() => { onDeactivated(() => {
}); });
// 返回 // 返回
const goBack = () => { const goBack = () => {
router.go(-1); router.go(-1);
}; };
let resetScroll = ref(0); // 滚动记录 let resetScroll = ref(0); // 滚动记录
let isLodding = ref(true); // 是否加载中 let isLodding = ref(true); // 是否加载中
let freshMap = reactive({ let freshMap = reactive({
refreshLoad: false, // 是否刷新 refreshLoad: false, // 是否刷新
listLoading: false, // 是否加载中 listLoading: false, // 是否加载中
listFinished: false, // 是否加载完成标识 listFinished: false, // 是否加载完成标识
}); });
//下拉刷新 //下拉刷新
const onRefresh = () => { const onRefresh = () => {
freshMap.listFinished = false; freshMap.listFinished = false;
freshMap.listLoading = true; freshMap.listLoading = true;
// getGoodslist(); // getGoodslist();
queryList(); queryList();
}; };
// 触底加载 // 触底加载
const onLoad = () => { const onLoad = () => {
freshMap.listFinished = true; freshMap.listFinished = true;
freshMap.loading = false; freshMap.loading = false;
}; };
//获取分类下的商品列表
//获取分类下的商品列表 const getGoodslist = async (onLoad) => {
const getGoodslist = async (onLoad) => {
// const res = await useClassify.classifyGoods(); // const res = await useClassify.classifyGoods();
// if (res?.code === 20000) { // if (res?.code === 20000) {
// goodsList = onLoad ? goodsList.concat(res?.data) : res?.data; // goodsList = onLoad ? goodsList.concat(res?.data) : res?.data;
@ -228,9 +239,9 @@ const getGoodslist = async (onLoad) => {
freshMap.listLoading = false; freshMap.listLoading = false;
freshMap.listFinished = true; freshMap.listFinished = true;
isLodding.value = false; isLodding.value = false;
}; };
onMounted(async () => { onMounted(async () => {
// let res = await getClassify(); // let res = await getClassify();
// if (res && res?.length) { // if (res && res?.length) {
// classifyId = res?.[0]?.id; // classifyId = res?.[0]?.id;
@ -240,24 +251,21 @@ onMounted(async () => {
// } // }
queryList(); queryList();
isLodding.value = false; isLodding.value = false;
}); });
const selectDate = () =>{ const selectDate = () => {
data.showDatePicker = true; data.showDatePicker = true;
console.log(data.showDatePicker) console.log(data.showDatePicker)
} }
const onDateConfirm = (value)=> { const onDateConfirm = (value) => {
console.log(value);
value.selectedValues.forEach((item,index) => {
console.log(item);
});
data.dateSearch = value.selectedValues[0] + "/" + value.selectedValues[1] data.dateSearch = value.selectedValues[0] + "/" + value.selectedValues[1]
data.showDatePicker = false;
searchParam.dateSearch = value.selectedValues[0] + "-" + value.selectedValues[1]; searchParam.dateSearch = value.selectedValues[0] + "-" + value.selectedValues[1];
data.showDatePicker = false;
data.dateShow = true;
queryList(); queryList();
} }
const nowDate = (time) => { const nowDate = (time) => {
var year = time.getFullYear(); // 年 var year = time.getFullYear(); // 年
var month = (time.getMonth() + 1).toString().padStart(2, '0'); // 月 var month = (time.getMonth() + 1).toString().padStart(2, '0'); // 月
var date = time.getDate().toString().padStart(2, '0'); // 日 var date = time.getDate().toString().padStart(2, '0'); // 日
@ -267,31 +275,33 @@ const nowDate = (time) => {
return ( return (
year + "/" + month year + "/" + month
) )
} }
const searchDateType = (val) =>{ const searchDateType = (val) => {
searchParam.dateSearch = null;
searchParam.dateType = val; searchParam.dateType = val;
searchParam.isComplaint = null; searchParam.isComplaint = null;
data.dateShow = false;
queryList(); queryList();
} }
const searchComplaint = (val) =>{ const searchComplaint = (val) => {
searchParam.isComplaint = val; searchParam.isComplaint = val;
searchParam.dateType = null; searchParam.dateType = null;
queryList(); queryList();
} }
const openPlanAddView = () =>{ const openPlanAddView = () => {
router.push( router.push(
{ {
path: "/enforce/enforcementPlanAdd", path: "/enforce/enforcementPlanAdd",
query: {} query: {}
}); });
} }
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.shop { .shop {
height: 100%; height: 100%;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
@ -322,11 +332,13 @@ const openPlanAddView = () =>{
width: 100%; width: 100%;
padding: 10px 0px; padding: 10px 0px;
flex-direction: column; flex-direction: column;
.card_body { .card_body {
background-color: #fff; background-color: #fff;
border-radius: 10px; border-radius: 10px;
flex: 1; flex: 1;
} }
.card_box_span { .card_box_span {
display: flex; display: flex;
align-items: center; align-items: center;
@ -339,7 +351,8 @@ const openPlanAddView = () =>{
margin: 0; margin: 0;
} }
} }
.card_box_action{
.card_box_action {
position: absolute; position: absolute;
right: 4%; right: 4%;
} }
@ -350,26 +363,29 @@ const openPlanAddView = () =>{
.shop_footer_body { .shop_footer_body {
height: 101px; height: 101px;
position: relative; position: relative;
.footer-one-btn { .footer-one-btn {
height: 50px; height: 50px;
bottom: 51px; bottom: 51px;
} }
} }
} }
.search-button-list{ .search-button-list {
height: 3%; height: 3%;
display: flex; display: flex;
flex-direction: row; flex-direction: row;
padding-left: 10px; padding-left: 10px;
margin-top: 6px; margin-top: 6px;
align-items: end; align-items: end;
.search-button{
.search-button {
width: 15%; width: 15%;
height: 80%; height: 80%;
} }
} }
.search-button-date{
.search-button-date {
height: 3%; height: 3%;
display: flex; display: flex;
flex-direction: row; flex-direction: row;
@ -377,17 +393,19 @@ const openPlanAddView = () =>{
margin-top: 15px; margin-top: 15px;
align-items: end; align-items: end;
position: relative; position: relative;
.date-select{
.date-select {
font-size: 20px; font-size: 20px;
margin-left: 2%; margin-left: 2%;
} }
.search-button{
.search-button {
width: 15%; width: 15%;
height: 80%; height: 80%;
position: absolute; position: absolute;
top: 1%; top: 1%;
right: 1%; right: 1%;
} }
} }
</style> </style>

Loading…
Cancel
Save