From c51a11039f7e82695877e7d4face1006be63d6cc Mon Sep 17 00:00:00 2001
From: Lou <luzhiping@qqyjz.com>
Date: Tue, 27 Feb 2024 17:33:59 +0800
Subject: [PATCH] 场所检查页面调整
---
subPackage/workbench/views/editCscj.vue | 3
pages/home/index.vue | 8 +
subPackage/workbench/views/cscj.vue | 57 +++++++---
common/setting.js | 4
subPackage/house/houseNumber/siteInspect.vue | 212 +++++++++++++++++++++++++++++++++++++++++
5 files changed, 259 insertions(+), 25 deletions(-)
diff --git a/common/setting.js b/common/setting.js
index 1fe3904..97a0c9e 100644
--- a/common/setting.js
+++ b/common/setting.js
@@ -10,8 +10,8 @@
version: '2.0.0',
// 开发环境接口Url
// devUrl: 'http://z4042833u6.wicp.vip',
- // devUrl: 'http://192.168.2.109:9528',
- devUrl: 'https://srgdjczzxtpt.com:2080/api',
+ devUrl: 'http://192.168.2.140:9528',
+ // devUrl: 'https://srgdjczzxtpt.com:2080/api',
// devUrl: 'https://kt39592615.goho.co',
minioBaseUrl: "https://srgdjczzxtpt.com:2080/gminio/jczz/",
// minioBaseUrl: "http://192.168.0.101:9528/",
diff --git a/pages/home/index.vue b/pages/home/index.vue
index 499b8f8..0843bea 100644
--- a/pages/home/index.vue
+++ b/pages/home/index.vue
@@ -114,6 +114,14 @@
<text class="grid-text f-24 fw mt-10">{{item.name}}</text>
</view>
</u-grid-item>
+ <!-- <u-grid-item @click="navigatorPage('/subPackage/house/houseNumber/siteInspect')"
+ :customStyle="{paddingTop:20+'rpx'}">
+ <view class="grid-item flex f-d-c a-i-c"
+ style="background:linear-gradient(133deg, #F9FAFE 0%, rgba(249,250,254,0) 100%)">
+ <u-icon name="/static/icon/menu-02.png" width="60rpx" height="60rpx"></u-icon>
+ <text class="grid-text f-24 fw mt-10">场所检查</text>
+ </view>
+ </u-grid-item> -->
</u-grid>
</view>
diff --git a/subPackage/house/houseNumber/siteInspect.vue b/subPackage/house/houseNumber/siteInspect.vue
index 56f2fa2..9d326be 100644
--- a/subPackage/house/houseNumber/siteInspect.vue
+++ b/subPackage/house/houseNumber/siteInspect.vue
@@ -1,5 +1,50 @@
<template>
<view class="wrap">
+
+
+ <view class="info mt-20 bgc-ff" v-if="from == 'home'">
+ <view class="info-row flex j-c-s-b a-i-c" @click="isShowPopup = true">
+ <text class="f-28">场所名称</text>
+ <view class="flex">
+ <text class="mr-10">{{selectedPlace.placeName}}</text>
+ <u-icon name="arrow-right"></u-icon>
+ </view>
+ </view>
+
+ <block v-if="selectedPlace.houseCode">
+ <view class="info-row flex j-c-s-b a-i-c">
+ <text class="f-28">场所标签</text>
+ <text>{{categoryValue}}</text>
+ </view>
+ <view class="info-row flex j-c-s-b a-i-c">
+ <text class="f-28">九小场所</text>
+ <text>{{selectedPlace.isNine == 1?"是":"否"}}</text>
+ </view>
+ <view class="info-row flex j-c-s-b a-i-c" v-if="selectedPlace.isNine == 1">
+ <text class="f-28">九小场所类型</text>
+ <text>{{nineTypeValue}}</text>
+ </view>
+ <view class="info-row flex j-c-s-b a-i-c">
+ <text class="f-28">场所负责人</text>
+ <text>{{selectedPlace.principal}}</text>
+ </view>
+ <view class="info-row flex j-c-s-b a-i-c">
+ <text class="f-28">手机号</text>
+ <text>{{selectedPlace.principalPhone}}</text>
+ </view>
+ <view class="info-row flex j-c-s-b a-i-c">
+ <text class="f-28">身份证号</text>
+ <text>{{selectedPlace.principalIdCard}}</text>
+ </view>
+ <view class="info-row flex j-c-s-b a-i-c">
+ <text class="f-28">标准地址</text>
+ <text class="info-row-right">{{selectedPlace.location}}</text>
+ </view>
+ </block>
+
+ </view>
+
+
<view class="section mb-20">
<u-collapse :value="itemIndex" ref="collapse">
<u-collapse-item :title="item.title" :name="index" v-for="(item,index) in questionList">
@@ -123,6 +168,33 @@
</view>
</u-popup>
+
+
+ <u-popup :show="isShowPopup" mode="bottom" :round="10" closeable="true" @close="isShowPopup = false">
+ <view class="popup-content">
+ <view class="popup-title f-30">选择场所</view>
+ <u-search placeholder="请输入场所名称" :showAction="true" actionText="搜索" :animation="true" v-model="placeName"
+ @search="searchPlace" @custom="searchPlace" @clear="clearKeyword"></u-search>
+ <scroll-view class="popup-list" :scroll-y="true">
+ <view class="popup-list-item" v-for="(i,k) in placeList" :key="k" @click="selectPlace(i)">
+ <view class="flex a-i-c mb-10">
+ <text class="f-28 fw mr-20">{{i.placeName}}</text>
+ <text class="f-26" v-if="i.phoneNumber">{{i.phoneNumber}}</text>
+ </view>
+ <!--
+ <view class="f-28">
+ {{i.townStreetName}}{{i.neiName}}{{i.aoiName}}{{i.address || ""}}
+ </view> -->
+ <view class="check-icon" v-if="i.houseCode == info.houseCode">
+ <u-icon name="checkbox-mark" color="#017BFC" size="30"></u-icon>
+ </view>
+
+
+ </view>
+ </scroll-view>
+ </view>
+ </u-popup>
+
<view class="blank"></view>
</view>
</template>
@@ -131,8 +203,14 @@
import uploadMixin from "@/mixin/uploadMixin";
import {
addPlaceCheckTwo,
- getPlaceCheckItem
+ getPlaceCheckItem,
+ getLocationRecord,
+ getPlaceDetail
} from "@/api/place/place.js"
+ import {
+ bizDictionary,
+ bizDictionaryTree
+ } from '@/api/system/dict.js'
export default {
mixins: [uploadMixin],
data() {
@@ -185,17 +263,68 @@
],
time: Number(new Date()),
showSelectDate: false,
- dangerCount: 0 //隐患项数量
+ dangerCount: 0, //隐患项数量
+ isShowPopup: false,
+ placeList: [],
+ placeName: "",
+ selectedPlace: {},
+ nineTypeValue: "",
+ from: "",
+ categoryValue: ""
}
},
onLoad(option) {
- this.info.houseCode = option.code;
- this.info.placeName = option.name;
+ if (option.code) {
+ this.info.houseCode = option.code;
+ this.info.placeName = option.name;
+ } else {
+ this.from = "home"
+ this.getPlaceList();
+ }
+
this.getItem();
+
},
methods: {
+
+ getNineTypeList(callback) {
+ bizDictionaryTree({
+ code: "nineType"
+ }).then(res => {
+ console.log(res.data);
+ callback(res.data)
+ })
+ },
+
+ getPlaceList() {
+ getLocationRecord({
+ roleName: uni.getStorageSync('activeRole').roleName,
+ current: 1,
+ size: 10,
+ isPerfect: 2,
+ placeName: this.placeName
+ }).then(res => {
+ this.placeList = res.data.records;
+ })
+ },
+
+
+ getPlaceInfo(id) {
+ getPlaceDetail({
+ id
+ }).then(res => {
+ let labelList = res.data.placePoiLabelVOList;
+ let tempLabelList = [];
+ for (let i of labelList) { //过滤一级数据
+ if (i.type != 1) {
+ tempLabelList.push(i)
+ }
+ }
+ this.categoryValue = tempLabelList[1].labelName;
+ })
+ },
getItem() {
@@ -220,6 +349,33 @@
this.count = count;
this.itemIndex = arr;
})
+ },
+
+
+
+ searchPlace() {
+ this.getPlaceList()
+ },
+
+ clearKeyword() {
+ this.placeName = ""
+ this.getPlaceList()
+ },
+
+ selectPlace(item) {
+ this.selectedPlace = item;
+ this.info.houseCode = item.houseCode;
+ this.isShowPopup = false;
+ this.getPlaceInfo(item.id);
+ if (item.isNine == 1) {
+ this.getNineTypeList(res => {
+ let {
+ name
+ } = this.$getIndex(res, item.nineType, "key", "title");
+ this.nineTypeValue = name;
+ })
+ }
+
},
changeStatus(value, item, fIndex, cIndex) {
@@ -408,6 +564,26 @@
margin: 20rpx 20rpx 0;
background-color: #fff;
}
+
+ .info {
+ margin: 20rpx 20rpx 0;
+ padding: 0 40rpx;
+
+ .info-row {
+ padding: 20rpx 0;
+ border-bottom: 1px solid #f5f5f5;
+
+ }
+
+ .info-row:last-child {
+ border: none;
+ }
+
+ .info-row-right {
+ width: 70%;
+ text-align: right;
+ }
+ }
}
.top {
@@ -545,4 +721,32 @@
width: 100%;
height: 140rpx;
}
+
+ .popup-content {
+ width: 100%;
+ padding: 0 30rpx 30rpx;
+ box-sizing: border-box;
+
+ .popup-title {
+ padding: 30rpx 0;
+ text-align: center;
+ font-weight: bold;
+ }
+
+ .popup-list {
+ height: 650rpx;
+ }
+
+ .popup-list-item {
+ padding: 20rpx 0;
+ border-bottom: 1px solid #f1f1f1;
+ position: relative;
+ }
+
+ .check-icon {
+ position: absolute;
+ right: 20rpx;
+ top: 20rpx;
+ }
+ }
</style>
\ No newline at end of file
diff --git a/subPackage/workbench/views/cscj.vue b/subPackage/workbench/views/cscj.vue
index 8b7d3aa..a4ee605 100644
--- a/subPackage/workbench/views/cscj.vue
+++ b/subPackage/workbench/views/cscj.vue
@@ -21,12 +21,18 @@
</view>
</u-form-item>
- <u-form-item @click="popup" class="form-item" labelWidth="100" label="标签:" :required="true"
- :disabled="isDisabled" prop="label">
- <u-input border="none" v-model="categoryValue" disabled disabledColor="#ffffff"
- placeholder="请选择">
- </u-input>
- <u-icon slot="right" name="arrow-right"></u-icon>
+ <u-form-item class="form-item" labelWidth="100" label="标签:" :required="true" :disabled="isDisabled"
+ prop="label">
+ <view class="flex j-c-s-b a-i-c" @click="popup" v-if="!currentId">
+ <u-input border="none" v-model="categoryValue" disabled disabledColor="#ffffff"
+ placeholder="请选择">
+ </u-input>
+ <u-icon slot="right" name="arrow-right"></u-icon>
+ </view>
+ <view class="f-30" v-if="currentId">
+ {{categoryValue}}
+ </view>
+
</u-form-item>
<u-form-item label="九小场所:" labelWidth="100" prop="isNine" :required="isRequired">
<u-radio-group v-model="form.isNine" v-if="!currentId">
@@ -38,12 +44,18 @@
{{form.isNine == 1?"是":"否"}}
</view>
</u-form-item>
- <u-form-item v-if="form.isNine == 1" @click="showNineTypeSelector" class="form-item"
- labelWidth="100" label="九小场所类型:" :required="isRequired" :disabled="isDisabled" prop="nineType">
- <u-input border="none" v-model="nineTypeValue" disabled disabledColor="#ffffff"
- placeholder="请选择">
- </u-input>
- <u-icon slot="right" name="arrow-right"></u-icon>
+ <u-form-item v-if="form.isNine == 1" class="form-item" labelWidth="100" label="九小场所类型:"
+ :required="isRequired" :disabled="isDisabled" prop="nineType">
+ <view class="flex j-c-s-b a-i-c" v-if="!currentId" @click="showNineTypeSelector">
+ <u-input border="none" v-model="nineTypeValue" disabled disabledColor="#ffffff"
+ placeholder="请选择">
+ </u-input>
+ <u-icon slot="right" name="arrow-right"></u-icon>
+ </view>
+ <view class="f-30" v-if="currentId">
+ {{nineTypeValue}}
+ </view>
+
</u-form-item>
<u-form-item label="阵地:" labelWidth="100" prop="isFront" :required="isRequired">
<u-radio-group v-model="form.isFront" v-if="!currentId">
@@ -55,12 +67,18 @@
{{form.isFront == 1?"是":"否"}}
</view>
</u-form-item>
- <u-form-item v-if="form.isFront == 1" @click="showFrontTypePicker = true" class="form-item"
- labelWidth="100" label="阵地类型:" :required="isRequired" :disabled="isDisabled" prop="frontType">
- <u-input border="none" v-model="frontTypeValue" disabled disabledColor="#ffffff"
- placeholder="请选择">
- </u-input>
- <u-icon slot="right" name="arrow-right"></u-icon>
+ <u-form-item v-if="form.isFront == 1" class="form-item" labelWidth="100" label="阵地类型:"
+ :required="isRequired" :disabled="isDisabled" prop="frontType">
+ <view class="flex j-c-s-b a-i-c" @click="showFrontTypePicker = true" v-if="!currentId">
+ <u-input border="none" v-model="frontTypeValue" disabled disabledColor="#ffffff"
+ placeholder="请选择">
+ </u-input>
+ <u-icon slot="right" name="arrow-right"></u-icon>
+ </view>
+ <view class="f-30" v-if="currentId">
+ {{frontTypeValue}}
+ </view>
+
</u-form-item>
<u-form-item class="form-item" labelWidth="100" label="备注:" prop="remark">
@@ -916,6 +934,9 @@
this.$showTips("请选择阵地类型")
return
}
+
+ this.form.lng = Number(this.form.lng).toFixed(8)
+ this.form.lat = Number(this.form.lat).toFixed(8)
delete this.form.images;
add(this.form).then(res => {
uni.showToast({
diff --git a/subPackage/workbench/views/editCscj.vue b/subPackage/workbench/views/editCscj.vue
index 9b71b5d..4896d91 100644
--- a/subPackage/workbench/views/editCscj.vue
+++ b/subPackage/workbench/views/editCscj.vue
@@ -841,9 +841,10 @@
this.$showTips("请选择阵地类型")
return
}
+ this.form.lng = Number(this.form.lng).toFixed(8)
+ this.form.lat = Number(this.form.lat).toFixed(8)
delete this.form.images;
-
add(this.form).then(res => {
this.$showTips("提交成功", "success");
setTimeout(() => {
--
Gitblit v1.9.3