Browse Source

新增手机号机密、非行政检查部分功能

v4
Chendy 1 year ago
parent
commit
982b387f95
  1. 2
      src/api/enforce.js
  2. 9
      src/util/fileUpload.js
  3. 20
      src/views/administrative/appointment.vue
  4. 20
      src/views/administrative/appointmentEdit.vue
  5. 10
      src/views/administrative/appointmentRelaunch.vue
  6. 10
      src/views/administrative/userFilter.vue
  7. 2
      src/views/enforce/historyCheck.vue
  8. 11
      src/views/enforce/sign.vue
  9. 11
      src/views/enforce/userFilter.vue
  10. 16
      src/views/enterprise/registrationEdit.vue
  11. 791
      src/views/non-law/enterpriseWarningInfo.vue
  12. 16
      src/views/non-law/sign.vue

2
src/api/enforce.js

@ -190,6 +190,6 @@ export const queryUnionByHour = (enterpriseNumber, reason, enforcementTime, unio
//保存执法信息登记
export const addNonEnforcementRegistration = (params, success, error) => _post("/app/code/nonRegistration/add",params,success,error)
export const queryNonRegistrationList = (params, success, error) => _get("/app/code/nonRegistration/queryList",params,success,error)
export const queryNonRegistrationList = (params, success, error) => _post("/app/code/nonRegistration/queryList",params,success,error)
export const queryNonRegistrationById = (id, success, error) => _get("/app/code/nonRegistration/queryById/"+id,null,success,error)

9
src/util/fileUpload.js

@ -54,4 +54,11 @@ const nameCorrect=(name)=>{
}
}
export{uploadFile,nameCorrect};
// 手机号加密
const encryptPhone=(num)=>{
if(!/^\d{11}$/.test(num))return num;
const al= num.replace(/(\d{3})\d{4}(\d{4})/, "$1****$2");
return al;
}
export{uploadFile,nameCorrect,encryptPhone};

20
src/views/administrative/appointment.vue

@ -292,7 +292,7 @@
</template>
<script setup name="register">
import {nameCorrect} from'@/util/fileUpload';
import {nameCorrect,encryptPhone} from'@/util/fileUpload';
import {showSuccessToast} from 'vant';
import 'vant/es/toast/style';
import {
@ -484,7 +484,12 @@
data.lawCer[data.lawCerFlag].id = item.userId;
data.lawCer[data.lawCerFlag].text = item.userName;
data.lawCer[data.lawCerFlag].num = item.lawCertificateNum;
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " + item.lawCertificateNum);
if(null==item.lawCertificateNum || "" == item.lawCertificateNum){
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " + encryptPhone(item.phonenumber));
}else{
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " + item.lawCertificateNum);
}
// submitData.lawEnforcerTwo = item.userName
// submitData.lawCertificateNumTwo = item.lawCertificateNum;
@ -588,12 +593,10 @@
submitData.lawEnforcerTwoId += data.lawCer[i].id +",";
submitData.lawEnforcerTwo += data.lawCer[i].text +",";
submitData.lawCertificateNum += data.lawCer[i].num +",";
submitData.lawEnforcerTextTwo += data.lawCer[i].show +",";
}
submitData.lawEnforcerTwoId = submitData.lawEnforcerTwoId.substring(0, submitData.lawEnforcerTwoId.length - 1);
submitData.lawEnforcerTwo = submitData.lawEnforcerTwo.substring(0, submitData.lawEnforcerTwo.length - 1);
submitData.lawCertificateNum = submitData.lawCertificateNum.substring(0, submitData.lawCertificateNum.length - 1);
submitData.lawEnforcerTextTwo = submitData.lawEnforcerTextTwo.substring(0, submitData.lawEnforcerTextTwo.length - 1);
addEnterpriseLawEnforcement(submitData, success => {
data.overlayShow = false;
//跳转企业二维码地址
@ -630,12 +633,10 @@
submitData.lawEnforcerTwoId += data.lawCer[i].id +",";
submitData.lawEnforcerTwo += data.lawCer[i].text +",";
submitData.lawCertificateNum += data.lawCer[i].num +",";
submitData.lawEnforcerTextTwo += data.lawCer[i].show +",";
}
submitData.lawEnforcerTwoId = submitData.lawEnforcerTwoId.substring(0, submitData.lawEnforcerTwoId.length - 1);
submitData.lawEnforcerTwo = submitData.lawEnforcerTwo.substring(0, submitData.lawEnforcerTwo.length - 1);
submitData.lawCertificateNum = submitData.lawCertificateNum.substring(0, submitData.lawCertificateNum.length - 1);
submitData.lawEnforcerTextTwo = submitData.lawEnforcerTextTwo.substring(0, submitData.lawEnforcerTextTwo.length - 1);
editEnterpriseLawEnforcement(submitData, success => {
data.overlayShow = false;
//跳转企业二维码地址
@ -701,7 +702,12 @@
console.log(success.data)
submitData.lawEnforcer = success.data.userName;
submitData.lawCertificateNum = success.data.lawCertificateNum
submitData.lawEnforcerText = nameCorrect(submitData.lawEnforcer +" "+ submitData.lawCertificateNum)
if(null==submitData.lawCertificateNum || ""==submitData.lawCertificateNum){
submitData.lawEnforcerText = nameCorrect(submitData.lawEnforcer +" "+ encryptPhone(submitData.encryptPhone))
}else{
submitData.lawEnforcerText = nameCorrect(submitData.lawEnforcer +" "+ submitData.lawCertificateNum)
}
// submitData.lawEnforcerText = submitData.lawEnforcer
submitData.lawEnforcerId = success.data.userId;
submitData.lawEnforcement = success.data.dept.deptName;

20
src/views/administrative/appointmentEdit.vue

@ -269,7 +269,7 @@
//用户筛选弹窗
import UserPopup from './userFilter.vue';
import DeptPopup from './deptFilter.vue';
import {nameCorrect} from'@/util/fileUpload'
import {nameCorrect,encryptPhone} from'@/util/fileUpload'
const router = useRouter();
//路由参数
const route = useRoute();
@ -387,7 +387,12 @@
data.lawCer[data.lawCerFlag].id = item.userId;
data.lawCer[data.lawCerFlag].text = item.userName;
data.lawCer[data.lawCerFlag].num = item.lawCertificateNum;
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " + item.lawCertificateNum);
if(null == item.lawCertificateNum || ""==item.lawCertificateNum){
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " + item.phonenumber);
}else{
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " + item.lawCertificateNum);
}
// submitData.lawEnforcerTwo = item.userName
// submitData.lawCertificateNumTwo = item.lawCertificateNum;
@ -476,7 +481,12 @@
}
data.checkItemText =success.data['params'].checkItemText;
data.checkRequireText =success.data['params'].checkRequireText;
submitData.lawEnforcerText = nameCorrect(success.data['lawEnforcer'] +" "+ success.data['lawEnforcerText']);
if(null == success.data['lawEnforcerText'] || "" == success.data['lawEnforcerText']){
submitData.lawEnforcerText = nameCorrect(success.data['lawEnforcer'] +" "+ encryptPhone(success.data['phonenumber']));
}else{
submitData.lawEnforcerText = nameCorrect(success.data['lawEnforcer'] +" "+ success.data['lawEnforcerText']);
}
submitData.lawEnforcerTextTwo =success.data['lawEnforcerTwo'];
submitData.isSubmit =success.data['isSubmit'];
@ -556,12 +566,10 @@
submitData.lawEnforcerTwoId += data.lawCer[i].id +",";
submitData.lawEnforcerTwo += data.lawCer[i].text +",";
submitData.lawCertificateNum += data.lawCer[i].num +",";
submitData.lawEnforcerTextTwo += data.lawCer[i].show +",";
}
submitData.lawEnforcerTwoId = submitData.lawEnforcerTwoId.substring(0, submitData.lawEnforcerTwoId.length - 1);
submitData.lawEnforcerTwo = submitData.lawEnforcerTwo.substring(0, submitData.lawEnforcerTwo.length - 1);
submitData.lawCertificateNum = submitData.lawCertificateNum.substring(0, submitData.lawCertificateNum.length - 1);
submitData.lawEnforcerTextTwo = submitData.lawEnforcerTextTwo.substring(0, submitData.lawEnforcerTextTwo.length - 1);
addEnterpriseLawEnforcement(submitData,success =>{
data.overlayShow = false; // 遮罩层
//跳转企业二维码地址
@ -601,12 +609,10 @@
submitData.lawEnforcerTwoId += data.lawCer[i].id +",";
submitData.lawEnforcerTwo += data.lawCer[i].text +",";
submitData.lawCertificateNum += data.lawCer[i].num +",";
submitData.lawEnforcerTextTwo += data.lawCer[i].show +",";
}
submitData.lawEnforcerTwoId = submitData.lawEnforcerTwoId.substring(0, submitData.lawEnforcerTwoId.length - 1);
submitData.lawEnforcerTwo = submitData.lawEnforcerTwo.substring(0, submitData.lawEnforcerTwo.length - 1);
submitData.lawCertificateNum = submitData.lawCertificateNum.substring(0, submitData.lawCertificateNum.length - 1);
submitData.lawEnforcerTextTwo = submitData.lawEnforcerTextTwo.substring(0, submitData.lawEnforcerTextTwo.length - 1);
if(data.mainDeputyOrder == 0) {
editEnterpriseLawEnforcementDeputyOrder(submitData,success =>{
data.overlayShow = false; // 遮罩层

10
src/views/administrative/appointmentRelaunch.vue

@ -268,7 +268,7 @@
import { reactive, ref } from "vue";
import { getDict } from "@/api/Home";
import { queryLinkage, queryLinkageDictByValueAndParentId } from "@/api/linkage";
import {uploadFile} from "@/util/fileUpload";
import {uploadFile,encryptPhone} from "@/util/fileUpload";
import { formattedTimeYYYYmmdd } from "@/util/util";
//用户筛选弹窗
import UserPopup from './userFilter.vue';
@ -387,11 +387,15 @@
data.deptChecked = false;
}
const reciveVisible = (item) =>{
console.log(item)
data.lawCer[data.lawCerFlag].id = item.userId;
data.lawCer[data.lawCerFlag].text = item.userName;
data.lawCer[data.lawCerFlag].num = item.lawCertificateNum;
data.lawCer[data.lawCerFlag].show = item.userName + " " + item.lawCertificateNum;
if(null==item.lawCertificateNum || "" == item.lawCertificateNum){
data.lawCer[data.lawCerFlag].show = item.userName + " " + encryptPhone(item.phonenumber);
}else{
data.lawCer[data.lawCerFlag].show = item.userName + " " + item.lawCertificateNum;
}
// submitData.lawEnforcerTwo = item.userName
// submitData.lawCertificateNumTwo = item.lawCertificateNum;

10
src/views/administrative/userFilter.vue

@ -18,7 +18,7 @@
<div class="case-item" v-for="(item, index) in dataList" :key="index" @click="selectData(item)">
<div class="case-title">{{ item.userName }}</div>
<!-- <div class="case-depart">电话:{{ item.phonenumber }}</div> -->
<div class="case-time">执法证件号:{{ item.lawCertificateNum }}</div>
<div class="case-time">{{item.lawText}}</div>
</div>
</van-list>
</van-pull-refresh>
@ -30,6 +30,7 @@
<script>
import {ref} from 'vue'
import {queryUsers} from '@/api/user'
import {encryptPhone} from'@/util/fileUpload';
const {useCommon} = $globalStore
export default {
@ -112,6 +113,13 @@
return;
}
// this.dataList = success.data
success.rows.forEach(te => {
if(""!==te.lawCertificateNum && null!==te.lawCertificateNum){
te.lawText= "执法证件号:" +te.lawCertificateNum;
}else{
te.lawText= "联系电话:" +encryptPhone(te.phonenumber);
}
});
this.dataList.push(...success.rows);
}, error => {
})

2
src/views/enforce/historyCheck.vue

@ -121,7 +121,7 @@
<script setup name="registrationList">
import {queryRegistrationList, getAttr} from '../../api/enforce';
import {queryLinkage, queryLinkageById, queryLinkageDictByValueAndParentId} from "@/api/linkage";
import {nameCorrect} from'@/util/fileUpload';
import {nameCorrect,encryptPhone} from'@/util/fileUpload';
import { formattedTimeYYYYmmdd } from'@/util/util';
const {useCommon, useShopCard} = $globalStore;

11
src/views/enforce/sign.vue

@ -283,7 +283,7 @@
</template>
<script setup name="register">
import {nameCorrect} from'@/util/fileUpload';
import {nameCorrect,encryptPhone} from'@/util/fileUpload';
import {showSuccessToast} from 'vant';
import 'vant/es/toast/style';
import {
@ -574,7 +574,11 @@
queryUserInfo(useCommon.userId, success => {
if (null != success.data) {
submitData.lawEnforcer = success.data.userName
submitData.lawCertificateNumText =nameCorrect(success.data.userName + " " + success.data.lawCertificateNum);
if(""!=success.data.lawCertificateNum && null!=success.data.lawCertificateNum){
submitData.lawCertificateNumText =nameCorrect(success.data.userName + " " + success.data.lawCertificateNum);
}else{
submitData.lawCertificateNumText =nameCorrect(success.data.userName + " " + encryptPhone(success.data.phonenumber));
}
// submitData.lawCertificateNumText = success.data.userName
submitData.lawEnforcerId = success.data.userId
@ -1022,7 +1026,8 @@
const reciveData = (item) => {
data.lawCer[data.lawCerFlag].id = item.userId;
data.lawCer[data.lawCerFlag].text = item.userName;
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " + (null == item.lawCertificateNum ? "" : item.lawCertificateNum));
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " +
(null == item.lawCertificateNum || '' == item.lawCertificateNum? encryptPhone(item.phonenumber) : item.lawCertificateNum));
// submitData.lawEnforcerTwo = item.userName;
// submitData.lawCertificateNumTwoText = item.userName + " " + item.lawCertificateNum

11
src/views/enforce/userFilter.vue

@ -18,7 +18,7 @@
<div class="case-item" v-for="(item, index) in dataList" :key="index" @click="selectData(item)">
<div class="case-title">{{ item.userName }}</div>
<!-- <div class="case-depart">电话:{{ item.phonenumber }}</div> -->
<div class="case-time">执法证件号:{{ item.lawCertificateNum }}</div>
<div class="case-time" >{{ item.lawText }}</div>
</div>
</van-list>
</van-pull-refresh>
@ -30,8 +30,10 @@
<script>
import {ref} from 'vue'
import {queryUsers} from '../../api/user'
import {encryptPhone} from'@/util/fileUpload';
const {useCommon} = $globalStore
export default {
props: {
visible: {
@ -143,6 +145,13 @@
return;
}
// this.dataList = success.data
success.rows.forEach(te => {
if(""!==te.lawCertificateNum && null!==te.lawCertificateNum){
te.lawText= "执法证件号:" +te.lawCertificateNum;
}else{
te.lawText= "联系电话:" +encryptPhone(te.phonenumber);
}
});
this.dataList.push(...success.rows);
}, error => {
})

16
src/views/enterprise/registrationEdit.vue

@ -352,7 +352,7 @@ import {showFailToast, showSuccessToast} from 'vant';
import {getEnterpriseInformation} from '../../api/enterprise'
import {queryEnforcementRegistrationById, queryUnionByHour, getAttr} from '@/api/enforce'
import { reactive, ref } from "vue";
import {nameCorrect, uploadFile} from "../../util/fileUpload";
import {nameCorrect, uploadFile,encryptPhone} from "../../util/fileUpload";
import {formattedTime} from "@/util/util";
import Compressor from 'compressorjs'
import { formattedTimeYYYYmmdd } from'@/util/util';
@ -591,7 +591,11 @@ import {showFailToast, showSuccessToast} from 'vant';
queryUserInfo(useCommon.userId,success =>{
if (null != success.data) {
submitData.lawEnforcer = success.data.userName
submitData.lawCertificateNumText = nameCorrect(success.data.userName + " " + success.data.lawCertificateNum)
if(""!=success.data.lawCertificateNum && null!=success.data.lawCertificateNum){
submitData.lawCertificateNumText =nameCorrect(success.data.userName + " " + success.data.lawCertificateNum);
}else{
submitData.lawCertificateNumText =nameCorrect(success.data.userName + " " + encryptPhone(success.data.phonenumber));
}
// submitData.lawCertificateNumText = success.data.userName
submitData.lawEnforcerId = success.data.userId
submitData.lawEnforcement = success.data.dept.deptName;
@ -1163,9 +1167,15 @@ import {showFailToast, showSuccessToast} from 'vant';
data.deptChecked = false;
}
const reciveData = (item) =>{
data.lawCer[data.lawCerFlag].id = item.userId;
data.lawCer[data.lawCerFlag].text = item.userName;
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " + item.lawCertificateNum);
if(null==item.lawCertificateNum || "" ==item.lawCertificateNum){
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " + encryptPhone(item.phonenumber));
}else{
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " + item.lawCertificateNum);
}
// submitData.lawEnforcerTwo = item.userName;
// submitData.lawCertificateNumTwoText = item.userName + " " + item.lawCertificateNum

791
src/views/non-law/enterpriseWarningInfo.vue

@ -1,54 +1,115 @@
<template>
<!-- <div class="warning-rule">-->
<!-- <span><van-icon name="warning-o" /></span><span>当月累计接受行政检查三至四次为黄色提示,五至六次为橙色提示,七次及以上为红色提示。</span>-->
<!-- </div>-->
<!-- 中间 -->
<div class="shop-center">
<div class="timbox">
<div :class="'progress-box level-0'" @click="getObjById(item.id)" v-for="(item, index) in data.dataList" :key="index">
<div class="timtit">{{ item.enforcementTime }}</div>
<div class="prolist" style="font-weight: bold; font-size: 0.4rem;">{{ item.lawEnforcementItemText }}</div>
<!-- <div class="timtit">{{ item.createTime }}</div> -->
<!-- <div class="prolist"><label>检查时间:</label><span>{{ t.createTime }}</span></div> -->
<div class="prolist"><label>入企部门:</label><span>{{ item.bureauDeptName }}</span></div>
<div class="prolist"><label>入企人员:</label><span>{{ item.lawEnforcer }}</span></div>
<div class="prolist" v-for="(other, index) in item.lawEnforcerOther.split(',')" :key="index"><label></label><span>{{ other.trim() }}</span></div>
</div>
<div class="shop app_content">
<van-search v-model="searchParam.searchValue" show-action placeholder="入企事项/入企部门/入企人员" @search="onSearch">
<template #action>
<div @click="onClickButton">搜索</div>
</template>
</van-search>
<div class="search-button-list">
<van-button plain hairline :class="null==data.checkNum?'search-button active':'search-button'"
@click="searchDateType(null)" round type="primary" size="mini">
全部
</van-button>
<van-button plain hairline :class="1==data.checkNum?'search-button active':'search-button'"
@click="searchDateType(1)" round type="primary"
size="mini">本月
</van-button>
<van-button plain hairline :class="2==data.checkNum?'search-button active':'search-button'"
@click="searchDateType(2)" round type="primary"
size="mini">本季
</van-button>
<van-button plain hairline :class="3==data.checkNum?'search-button active':'search-button'"
@click="searchDateType(3)" round type="primary"
size="mini">本年
</van-button>
<van-button plain hairline :class="9==data.checkNum?'search-button active':'search-button'"
@click="selectDate" round type="primary" size="mini">筛选
</van-button>
</div>
<div class="search-button-date">
<span class="date-select" v-show="data.dateShow" @click="selectDate">{{ data.dateSearch }}</span>
<div style="border-color: black;" class="van-hairline--bottom"></div>
<van-popup v-model:show="data.showDatePicker" position="bottom">
<van-date-picker
title="选择月度"
v-model="data.currentDate"
:min-date="data.minDate"
:max-date="data.maxDate"
:columns-type="data.columnsType"
@confirm="onDateConfirm"
@cancel="cancelSelectDate"
/>
</van-popup>
</div>
<div class="shop-center">
<van-pull-refresh v-model="data.refreshing" @refresh="onRefresh">
<van-list v-model:loading="data.loading" :finished="data.finished" finished-text="没有更多了" @load="onLoad">
<div v-for="(item, index) in data?.dataList" :key="index" :class="item.isComplaint==1?'goods_box addbg':'goods_box'">
<van-swipe-cell class="swipe_cell">
<div class="card_box">
<div class="card_box_span">
<p>入企时间:{{ formattedTimeYYYYmmdd(item.enforcementTime) }}</p>
</div>
<div @click="toDetailView(item.id)">
<div class="van-hairline--bottom"></div>
<div class="card_box_span card-title">
<p>{{ item.lawEnforcementItemText }}</p>
</div>
<div class="card_box_span">
<p><label class="card_box_label">入企部门:</label> <span>{{ item.bureauDeptName }}</span></p>
</div>
<div class="card_box_span">
<p>
<label class="card_box_label">入企人员:</label>
<div>
<div>{{ nameCorrect(item.lawEnforcer) }}</div>
<div v-for="(item, index) in item.lawEnforcerOtherList">{{ nameCorrect(item) }}</div>
</div>
</p>
</div>
<div class="card_box_span">
<p><label class="card_box_label">企业名称:</label> <span>{{ item.enterpriseName }}</span></p>
</div>
</div>
<div class="card_box_action" v-if="item.comOrOpi == 1">
</div>
</div>
</van-swipe-cell>
</div>
</van-list>
</van-pull-refresh>
</div>
</div>
<!-- </div>-->
</template>
<script setup name="registrationList">
import { showToast } from "vant";
import {queryNonRegistrationList, queryRegistrationByEpId} from '@/api/enforce';
import { formattedTimeYYYYmmdd } from'@/util/util';
import {nameCorrect} from'@/util/fileUpload';
const { useCommon, useShopCard } = $globalStore;
const router = useRouter();
//路由参数
const route = useRoute();
let searchParam = reactive({
pageNum: 1,
pageSize: 6,
//执法事件
// lawEnforcementIncident:"",
//执法部门
lawEnforcement:"",
//搜索框
searchValue: ref(''),
//时间类型
dateType: 4,
dateType: null,
//是否投诉
isComplaint: null,
//企业统一信用码
enterpriseNumber: ref(useCommon.enterpriseNumber),
//搜索时间
searchDate: ref(),
beginTime: null,
endTime: null,
warnType: 1,
//用户ID
userId: useCommon.userId,
//执法部门id
bureauDeptId: useCommon.orgId,
});
const data = reactive({
@ -61,25 +122,84 @@
maxDate: new Date(2125, 5, 1),
columnsType :['year', 'month'],
checkNum: 0,
ga_columns: [],
dateShow: false,
loading: false,
finished: false,
refreshing: false,
curPage: 1,
});
const props = defineProps({
enterpriseNumber: {
type: String,
default: "",
},
enterpriseNumber: {
type: String,
default: "",
},
});
const warnListInfoList = ref([])
// 设置初始值为当前时间
onMounted(() => {
searchParam.enterpriseNumber = props.enterpriseNumber;
queryList();
data.dateSearch = nowDate(new Date());
searchDateType(null);
data.dateSearch = nowDate(new Date());
});
const onClickButton = () => {
data.curPage = 1;
data.dataList = [];
onRefresh();
}
const searchDateType = (val) => {
data.checkNum = val;
searchParam.dateSearch = null;
searchParam.dateType = val;
data.dateShow = false;
data.curPage = 1;
data.dataList = [];
onRefresh();
}
const selectDate = () => {
data.checkNum = 9
data.showDatePicker = true;
}
const onDateConfirm = (value) => {
data.dateSearch = value.selectedValues[0] + "/" + value.selectedValues[1];
data.showDatePicker = false;
//日期搜索条件
searchParam.dateSearch = value.selectedValues[0] + "-" + value.selectedValues[1];
//取消投诉
searchParam.isComplaint = null;
searchParam.dateType = null;
data.dateShow = true;
data.curPage = 1;
data.dataList = [];
onRefresh();
}
const queryList = () =>{
searchParam.pageNum = (data.curPage-1)*searchParam.pageSize;
let params = {
pageNum: (data.curPage-1)*searchParam.pageSize,
pageSize: searchParam.pageSize
}
searchParam.params = params;
queryNonRegistrationList(searchParam,success =>{
data.dataList = success.data;
data.curPage++;
data.loading = false; // 查出结果停止加载
if (success.total <= data.dataList.length) {
// 查到最后没数据
data.finished = true;
return;
}
data.dataList.push(...success.rows);
},error =>{
})
@ -110,31 +230,31 @@ const warnListInfoList = ref([])
//下拉刷新
const onRefresh = () => {
freshMap.listFinished = false;
freshMap.listLoading = true;
getGoodslist();
data.curPage = 1;
// 清空列表数据
data.dataList = [];
data.finished = false;
// 重新加载数据
// 将 loading 设置为 true,表示处于加载状态
data.loading = true;
onLoad();
};
// 触底加载
const onLoad = () => {
freshMap.listFinished = true;
getGoodslist(true);
setTimeout(() => {
if (data.refreshing) {
data.refreshing = false;
}
queryList();
}, 1000);
};
//获取分类下的商品列表
const getGoodslist = async (onLoad) => {
// const res = await useClassify.classifyGoods();
// if (res?.code === 20000) {
// goodsList = onLoad ? goodsList.concat(res?.data) : res?.data;
// freshMap.refreshLoad = false;
// freshMap.listLoading = false;
// freshMap.listFinished = res?.listFinished;
// if (goodsList.length > 50) {
// freshMap.listFinished = true;
// }
// }
freshMap.refreshLoad = false;
freshMap.listLoading = false;
freshMap.listFinished = true;
@ -175,380 +295,267 @@ const warnListInfoList = ref([])
})
}
</script>
<script>
export default {
data()
{
return {
is_show: false
}
},
computed: {
words()
{
if (this.is_show === false)
return '展开'
else if (this.is_show === true)
return '收起'
else if (this.is_show === '')
return null
else
return null
/**
* 查看执法登记详情
* @param {} id
* @param {*} name
*/
const toDetailView = (id) => {
router.push(
{
path: "/non-signDetail",
query: {
id: id,
}
});
}
},
}
</script>
<style lang="less" scoped>
.card_box_label {
color: #323233;
white-space: nowrap;
}
.shop {
height: 100%;
display: flex;
flex-direction: column;
overflow: hidden;
background-color: #ebf3fb;
.header_body {
height: 1.33rem;
}
.shop-center {
flex: 1;
overflow-y: scroll;
position: relative;
.goods_box {
display: flex;
background-color: #fff;
margin: 0.27rem;
border-radius: 0.27rem;
.swipe_cell {
width: 100%;
}
.card_box {
display: flex;
width: 100%;
padding: 0.27rem 0;
flex-direction: column;
.card_body {
background-color: #fff;
border-radius: 0.27rem;
flex: 1;
}
.card_box_span {
display: flex;
align-items: center;
margin: 2% 0;
padding: 0 3%;
color: #666;
font-size: 0.35rem;
line-height: 1.5;
p {
display: flex;
margin: 0;
height: 100%;
display: flex;
flex-direction: column;
overflow: hidden;
background-color: #ebf3fb;
.header_body {
height: 1.33rem;
}
.shop-center {
flex: 1;
overflow-y: scroll;
position: relative;
.goods_box {
display: flex;
background-color: #fff;
margin: 0.27rem;
border-radius: 0.27rem;
.swipe_cell {
width: 100%;
}
.card_box {
display: flex;
width: 100%;
padding: 0.1rem 0 0.2rem;
flex-direction: column;
.card_body {
background-color: #fff;
border-radius: 0.27rem;
flex: 1;
}
.card_box_span {
display: flex;
align-items: center;
margin: 2% 0;
padding: 0 3%;
color: #666;
font-size: 0.35rem;
line-height: 1.5;
p {
display: flex;
margin: 0;
}
}
/*.card_box_action {
position: absolute;
right: 4%;
}*/
}
}
}
.card_box_action{
position: absolute;
right: 4%;
}
}
}
}
.shop_footer_body {
//height: 2.67rem;
position: relative;
.footer-one-btn {
height: 1.33rem;
bottom: 1.34rem;
}
}
}
}
.search-button-list {
display: flex;
align-items: end;
justify-content: space-between;
flex-direction: row;
padding: 0 0.27rem;
margin: 0.35rem 0;
height: 0.85rem;
.search-button {
width: 50%;
height: 90%;
background: #fff;
border-color: #fff;
color: #4c4c4c;
font-size: 0.35rem;
line-height: 1.5;
}
.search-button.active {
position: relative;
background-color: #fff;
border-color: #fff;
color: #1367fe;
font-weight: 600;
}
.shop_footer_body {
//height: 101px;
position: relative;
.search-button.active::after {
display: block;
content: "";
position: absolute;
z-index: 10;
left: 48%;
top: 0.9rem;
transform: translate(-50%, -50%);
width: 90%;
height: 0.08rem;
background-color: #1367fe;
.footer-one-btn {
height: 1.33rem;
bottom: 1.34rem;
}
}
}
}
.search-button-date {
display: flex;
flex-direction: row;
align-items: end;
position: relative;
.date-select {
margin: 3% 0 0 4%;
color: #c1bfbf;
font-size: 0.52rem;
i {
transform: rotate(90deg);
font-size: 0.4rem;
}
}
.search-button{
width: 15%;
height: 80%;
position: absolute;
top: 1%;
right: 1%;
}
}
/deep/ .card_box {
margin: 3% 3%;
}
/deep/ .card_box_span {
display: flex;
align-items: center;
}
/deep/ .card_box_span p.warn-time {
margin: 0;
padding-left: 2%;
color: #c1bfbf;
font-size: 0.35rem;
height: 0.75rem;
line-height: 0.5rem;
}
/deep/ .card_box_span p.warn-name {
margin: 0 0 2% 0;
width: calc(100% - 1rem);
font-size: 0.40rem;
font-weight: bold;
}
/deep/ .card_box_span .van-icon {
font-size: 0.75rem;
width: 0.9rem;
}
/deep/ .card_box_span p.warn-cont {
margin: 1.5% 0;
padding-left: 0.65rem;
color: #666;
font-size: 0.35rem;
}
.goods_box {
margin: 3%;
width: 94%;
box-shadow: 0 0 0.15rem #eee;
border-radius: 0.27rem;
}
/deep/ .van-hairline--bottom {
margin: -1% 0 3% 0;
height: 0;
background-color: transparent;
border: 1px;
}
.card-title i {
font-size: 0.5rem;
width: 0.65rem;
}
.shop .shop-center .goods_box .card_box .card_box_action span {
position: absolute;
right: 0.2rem;
top: 1.2rem;
width: 1.25rem;
height: 0.6rem;
background: #1989fa;
border-radius: 30px;
box-shadow: 0 0 5px rgba(5, 99, 193, .3)
}
.card-title p {
display: block !important;
width: calc(100% - 1rem);
color: #000;
font-size: 0.40rem;
font-weight: bold;
/*white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;*/
}
.shop .shop-center .goods_box .card_box .card_box_action span button {
position: absolute;
top: 0.1rem;
left: 0.2rem;
height: 70%;
font-size: 0.3rem;
}
.warning-rule {
display: flex;
margin: 2% 0.27rem 1%;
padding: 0.2rem;
border-radius: 0.27rem;
background-color: #fff4e8;
color: #fb710b;
font-size: 0.3rem;
line-height: 1.25;
}
.search-button-list {
height: 0.7rem;
display: flex;
flex-direction: row;
padding-left: 0.27rem;
margin-top: 0.27rem;
align-items: end;
.search-button {
width: 15%;
height: 90%;
background: #ebebeb;
border-color: #ebebeb;
color: #999;
font-size: 0.3rem;
line-height: 1.5;
}
.warning-rule i {
margin: 0 0.1rem;
color: #f50;
font-size: 0.35rem;
}
.search-button.active {
background-color: #d9e6fd;
border-color: #75a5fb;
color: #1367fe;
}
}
/***折叠**/
.look_all {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 0.75rem;
font-size: 0.3rem;
color: #666;
cursor: pointer;
user-select: none;
border-radius: 0.05rem;
}
.search-button-date {
display: flex;
flex-direction: row;
align-items: end;
position: relative;
.look_all i {
margin: 0 0.2rem;
padding: 0.1rem 0.3rem 0;
color: rgba(0, 0, 0, 0.35);
font-size: 0.4rem;
height: 0.5rem;
/*background: linear-gradient(to bottom, rgba(0, 0, 0, .1), transparent);*/
border-radius: 0.2rem 0.2rem 0 0;
}
.date-select {
margin: 3% 0 0 4%;
color: #c1bfbf;
font-size: 0.52rem;
.new_detail {
padding-top: 0.3rem;
height: 100%;
transition: height 2s linear;
}
i {
transform: rotate(90deg);
font-size: 0.4rem;
}
}
.search-button {
position: absolute;
top: 1%;
right: 3%;
width: 15%;
height: 100%;
font-size: 0.3rem;
}
}
.work_detail {
padding-top: 0.3rem;
height: 0.2rem;
overflow: hidden;
}
/deep/ .van-hairline--bottom {
margin: -1% 0 3% 0;
height: 0;
background-color: transparent;
border: 1px;
}
.new_up {
position: absolute;
bottom: 0.1rem;
}
/***/
.timbox {
margin: 3% 0 3% 8%;
padding-bottom: 1rem;
width: 90%;
height: 94%;
font-size: 0.3rem;
box-sizing: border-box;
}
/deep/ .card_box_span:first-child p {
color: #c1bfbf !important;
}
.timtit {
position: relative;
top: -0.2rem;
left: 1.5%;
margin: 0.2rem 0 0;
font-size: 0.4rem;
color: #999;
}
.card-title p {
display: block !important;
color: #000;
font-size: 0.40rem;
font-weight: bold;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.progress-box {
position: relative;
float: left;
clear: both;
margin: 0 2% 0 3%;
padding: 0.1rem 0.2rem 0.3rem;
width: 95%;
}
.card_box_label {
color: #323233;
white-space: nowrap;
}
.prolist {
margin: 0 0 0 1.5%;
width: 100%;
color: #666;
line-height: 1.75;
}
/deep/ .van-search__content {
height: 0.9rem;
border: 1px solid #ececec;
border-radius: 0.15rem 0 0 0.15rem;
}
.progress-box::before {
position: absolute;
z-index: 10;
left: 0;
top: 0.1rem;
content: '';
width: 0.01rem;
height: 100%;
background-color: rgb(195, 195, 195);
}
/deep/ .van-search__action {
margin: 0 3% 0 0;
width: 10%;
height: 0.9rem;
background: #1367fe;
border: 1px solid #1367fe;
border-radius: 0 0.15rem 0.15rem 0;
color: #fff;
text-align: center;
line-height: 0.9rem;
}
.progress-box:last-child::before {
height: 0;
}
.addbg {
background: linear-gradient(90deg, rgba(251, 77, 7, .1) 20%, #fff);
border-left: 0.08rem solid #fb740d;
}
.progress-box::after {
position: absolute;
z-index: 10;
left: -0.2rem;
top: 0.1rem;
content: '';
width: 0.25rem;
height: 0.25rem;
border: 0.1rem solid #fff;
border-radius: 0.5rem;
background-color: rgb(155 155 155);
}
.btn-list {
display: flex;
align-items: center;
justify-content: flex-end;
margin: 0.3rem 3% 0;
width: 94%;
border-top: 1px solid #f4f5f6;
}
.progress-box.level-0::after {
background-color: #1989fa;
}
.btn-list a {
margin: 3% 3% 1%;
font-size: 0.35rem;
color: #1367fe;
white-space: nowrap;
}
.progress-box.level-1::after {
background-color: #ff0000;
}
.btn-list a i {
margin: 0 0.12rem;
font-size: 0.4rem;
}
.progress-box.level-2::after {
background-color: #f78b00;
}
.act-btn {
display: flex;
position: absolute;
top: 0.25rem;
right: 0;
white-space: nowrap;
}
.progress-box.level-3::after {
background-color: #f5cf08;
}
.remsty {
display: inline-block;
margin: 0 0.25rem 0 0;
padding-left: 0.5rem;
background: url(/src/assets/images/icon_remind.png) no-repeat left top 0.05rem;
background-size: auto 70%;
font-size: 0.35rem;
line-height: 1.65;
}
.prolist label {
display: inline-block;
margin-right: 0.1rem;
width: 1.5rem;
color: #323233;
white-space: nowrap;
}
/**/
.joint-mark {
display: inline-block;
margin: 0 0.25rem 0 0;
width: 0.5rem;
height: 0.5rem;
background: #2d94fa;
border-radius: 50%;
color: #fff;
font-size: 0.3rem;
line-height: 1.75;
text-align: center;
}
</style>

16
src/views/non-law/sign.vue

@ -151,7 +151,7 @@
</template>
<script setup name="register">
import {nameCorrect} from'@/util/fileUpload';
import {nameCorrect,encryptPhone} from'@/util/fileUpload';
import {showSuccessToast, showConfirmDialog} from 'vant';
import 'vant/es/toast/style';
import { addNonEnforcementRegistration, getUserInfoAndDept } from '@/api/enforce'
@ -262,7 +262,12 @@
const confirmLawCer = (item) => {
data.lawCer[data.lawCerFlag].id = item.userId;
data.lawCer[data.lawCerFlag].text = item.userName;
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " + (null == item.lawCertificateNum ? "" : item.lawCertificateNum));
if(null == item.lawCertificateNum || "" == item.lawCertificateNum){
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " + encryptPhone(item.phonenumber));
}else{
data.lawCer[data.lawCerFlag].show = nameCorrect(item.userName + " " + item.lawCertificateNum);
}
}
/** 入企类别初始化 */
const initLawType = () => {
@ -382,7 +387,12 @@
/** 查询执法部门信息 */
getUserInfoAndDept(useCommon.userId, success => {
if (null != success.data) {
data.lawCerUser_no =nameCorrect(success.data.userName + " " + success.data.lawCertificateNum);
if(null ==success.data.lawCertificateNum || ""==success.data.lawCertificateNum){
data.lawCerUser_no =nameCorrect(success.data.userName + " " + encryptPhone(success.data.phonenumber));
}else{
data.lawCerUser_no =nameCorrect(success.data.userName + " " + success.data.lawCertificateNum);
}
submitData.lawEnforcer = success.data.userName
submitData.lawEnforcerId = success.data.userId

Loading…
Cancel
Save