whx 4 月之前
父节点
当前提交
7b4ceaaa49
共有 68 个文件被更改,包括 315 次插入243 次删除
  1. 34 7
      virgo.wzfrontend/console/src/components/website/reservation.vue
  2. 13 188
      virgo.wzfrontend/console/src/components/work/operation/remind/detail.vue
  3. 21 8
      virgo.wzfrontend/console/src/components/work/operation/remind/edit.vue
  4. 16 1
      virgo.wzfrontend/console/src/config/field.js
  5. 13 2
      virgo.wzfrontend/console/src/httpApi/operation.js
  6. 7 0
      virgo.wzfrontend/console/src/router/modules/operation.js
  7. 1 1
      virgo.wzfrontend/console/src/uitls/chat.js
  8. 1 2
      virgo.wzfrontend/console/src/views/website/homeDetail.vue
  9. 168 0
      virgo.wzfrontend/console/src/views/work/operation/meeting/remind.vue
  10. 6 2
      virgo.wzfrontend/console/src/views/work/operation/remind/remind.vue
  11. 1 1
      virgo.wzfrontend/src/main/resources/static/console/index.html
  12. 0 0
      virgo.wzfrontend/src/main/resources/static/console/static/css/6106.33fb573b.css
  13. 0 0
      virgo.wzfrontend/src/main/resources/static/console/static/css/7403.33fb573b.css
  14. 0 0
      virgo.wzfrontend/src/main/resources/static/console/static/css/8042.7e28460d.css
  15. 0 0
      virgo.wzfrontend/src/main/resources/static/console/static/css/8158.7e28460d.css
  16. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/1597.c80bc252.js
  17. 0 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/2036-legacy.c1089e2e.js
  18. 0 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/2036.2ba3db66.js
  19. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/2386-legacy.41c95147.js
  20. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/2386.544befa1.js
  21. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/2632-legacy.07157fb1.js
  22. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/2658-legacy.568c190c.js
  23. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/2658.f9276061.js
  24. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/2695-legacy.6dc4f4ce.js
  25. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/2695.faa253bc.js
  26. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/2776-legacy.b7ba0908.js
  27. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/2966-legacy.1c5bcecd.js
  28. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/2966.22ab1d04.js
  29. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/3022.44e92e60.js
  30. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/3036-legacy.080f4b39.js
  31. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/3036.94ad2db5.js
  32. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/3602-legacy.dbc25713.js
  33. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/3602.fb5cd175.js
  34. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/3794.bfdfffa1.js
  35. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/3855-legacy.0c62b4bc.js
  36. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/3855-legacy.6fb7b797.js
  37. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/3855.b5ddb0fd.js
  38. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/3855.bcd4ff67.js
  39. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/3975-legacy.86329189.js
  40. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/3975-legacy.eb804d70.js
  41. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/3975.48f9af7d.js
  42. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/3975.e8feacc4.js
  43. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/4470-legacy.c1817590.js
  44. 0 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/5338-legacy.94b28bfb.js
  45. 0 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/5338.7b9c8ed9.js
  46. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/6106.3a4da4a1.js
  47. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/6280-legacy.27cabbef.js
  48. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/6843-legacy.867bf6aa.js
  49. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/6843.da17bfce.js
  50. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/6959-legacy.bbb7bd56.js
  51. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/7403-legacy.7771ee29.js
  52. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/8042.3045ffa0.js
  53. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/8158-legacy.e5d121c8.js
  54. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/8260-legacy.69757c59.js
  55. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/8260-legacy.79a527b4.js
  56. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/8260.615f1ef6.js
  57. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/8260.7f56196e.js
  58. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/8386-legacy.3f16f6c2.js
  59. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/8386.50ad317d.js
  60. 1 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/8409.152f8784.js
  61. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/9696-legacy.261fcf53.js
  62. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/977.1c11d866.js
  63. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/9816-legacy.a9988d70.js
  64. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/9816.1d0cdf92.js
  65. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/app-legacy.40abb2d3.js
  66. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/app-legacy.b9838c1c.js
  67. 0 1
      virgo.wzfrontend/src/main/resources/static/console/static/js/app.019422ef.js
  68. 1 0
      virgo.wzfrontend/src/main/resources/static/console/static/js/app.f84b20d2.js

+ 34 - 7
virgo.wzfrontend/console/src/components/website/reservation.vue

@@ -8,7 +8,7 @@
 				<el-form-item label="联系方式" prop="phone" :rules="[{required: true, message: '请选择联系方式'}]">
 				<el-form-item label="联系方式" prop="phone" :rules="[{required: true, message: '请选择联系方式'}]">
 					<el-input type="text" v-model="form.phone" placeholder="请输入联系方式" disabled></el-input>
 					<el-input type="text" v-model="form.phone" placeholder="请输入联系方式" disabled></el-input>
 				</el-form-item>
 				</el-form-item>
-				<el-form-item label="预约时间" prop="date" :rules="[{required: true, message: '请选择预约时间'}]">
+				<el-form-item label="预约时间" prop="date" :rules="dateRules">
 					<el-date-picker v-model="form.date" type="datetime" placeholder="预约时间" format="yyyy-MM-dd HH:mm">
 					<el-date-picker v-model="form.date" type="datetime" placeholder="预约时间" format="yyyy-MM-dd HH:mm">
 					</el-date-picker>
 					</el-date-picker>
 				</el-form-item>
 				</el-form-item>
@@ -25,19 +25,36 @@
 	import {
 	import {
 		insertReservation
 		insertReservation
 	} from '@/httpApi/space'
 	} from '@/httpApi/space'
+	import {
+		insertReminder
+	} from '@/httpApi/operation'
 	export default {
 	export default {
-		props: ['houseId', 'projectId', 'chargePersonId'],
+		props: ['house'],
 		data() {
 		data() {
 			return {
 			return {
 				form: {
 				form: {
 					name: '',
 					name: '',
 					phone: '',
 					phone: '',
 					date: ''
 					date: ''
-				}
+				},
+				dateRules: [{
+					required: true,
+					message: '请选择预约时间'
+				}, {
+					validator: (rule, value, callback) => {
+						//获取下一分钟的时间
+						const nextMinute = this.$dayjs().add(5, 'minute');
+						if (new Date(value).getTime() <= new Date(nextMinute).getTime()) {
+							callback(new Error("预约时间应至少设置当前时间的5分钟之后"));
+						} else {
+							callback();
+						}
+					}
+				}]
 			}
 			}
 		},
 		},
 		created() {
 		created() {
-			this.form['date'] = this.$dayjs().format('YYYY-MM-DD HH:mm');
+			this.form['date'] = this.$dayjs().add(10, 'minute').format('YYYY-MM-DD HH:mm');
 			this.form['name'] = this.$store.getters.user.userName;
 			this.form['name'] = this.$store.getters.user.userName;
 			this.form['phone'] = this.$store.getters.user.phone;
 			this.form['phone'] = this.$store.getters.user.phone;
 		},
 		},
@@ -47,12 +64,22 @@
 					if (valid) {
 					if (valid) {
 						insertReservation({
 						insertReservation({
 							userId: this.$store.getters.user.userId,
 							userId: this.$store.getters.user.userId,
-							projectItemTargetRoomId: this.houseId,
+							projectItemTargetRoomId: this.house.id,
 							date: this.$dayjs(this.form.date).format('YYYY-MM-DD HH:mm'),
 							date: this.$dayjs(this.form.date).format('YYYY-MM-DD HH:mm'),
-							projectId: this.projectId,
-							chargePersonId: this.chargePersonId
+							projectId: this.house.projectId,
+							chargePersonId: this.house.chargePersonId
 						}).then(res => {
 						}).then(res => {
 							if (res.state) {
 							if (res.state) {
+								insertReminder({
+									name: '看房提醒',
+									date: this.form.date,
+									content: `${this.$store.getters.user.name}预约${this.$dayjs(this.form.date).format('YYYY-MM-DD HH:mm')}看房`,
+									type: 3,
+									creator: this.house.chargePersonId,
+									projectId: this.projectId,
+									attachment: JSON.stringify([]),
+									userList: JSON.stringify([])
+								})
 								this.$message.success('预约成功');
 								this.$message.success('预约成功');
 								this.$emit('callback');
 								this.$emit('callback');
 							}
 							}

+ 13 - 188
virgo.wzfrontend/console/src/components/work/operation/remind/detail.vue

@@ -5,54 +5,20 @@
 				<div class="hui-detail-title">基础信息</div>
 				<div class="hui-detail-title">基础信息</div>
 				<div class="hui-detail-content">
 				<div class="hui-detail-content">
 					<div class="hui-detail-item">
 					<div class="hui-detail-item">
-						<div class="hui-detail-label">工单日期</div>
-						<div class="hui-detail-value">{{detail.date}}</div>
-					</div>
-					<div class="hui-detail-item">
-						<div class="hui-detail-label">工单名称</div>
+						<div class="hui-detail-label">提醒名称</div>
 						<div class="hui-detail-value">{{detail.name}}</div>
 						<div class="hui-detail-value">{{detail.name}}</div>
 					</div>
 					</div>
-					<div class="hui-detail-item hui-detail-item-top">
-						<div class="hui-detail-label">楼宇房号</div>
-						<div class="hui-detail-value">
-							<div class="hui-ellipsis" v-for="(item,index) in detail.roomMap" :key="index">
-								{{item}}
-							</div>
-						</div>
-					</div>
-					<div class="hui-detail-item">
-						<div class="hui-detail-label">关联租客</div>
-						<div class="hui-detail-value">
-							{{detail.tenantType === 1 ? detail.merchantName: detail.clientName}}
-						</div>
-					</div>
 					<div class="hui-detail-item">
 					<div class="hui-detail-item">
-						<div class="hui-detail-label">跟进人</div>
-						<div class="hui-detail-value">{{detail.followUpPersonName}}</div>
+						<div class="hui-detail-label">提醒类型</div>
+						<div class="hui-detail-value">{{$field.findTypeName('remindType',detail.type)}}</div>
 					</div>
 					</div>
 					<div class="hui-detail-item">
 					<div class="hui-detail-item">
-						<div class="hui-detail-label">联系方式</div>
-						<div class="hui-detail-value">{{detail.followUpPersonPhone}}</div>
-					</div>
-					<div class="hui-detail-item" v-if="detail.type != 3">
-						<div class="hui-detail-label">服务方式</div>
-						<div class="hui-detail-value" v-if="detail.type === 1">
-							{{$field.findTypeName('serviceWorkWay',detail.workWay)}}
-						</div>
-						<div class="hui-detail-value" v-if="detail.type === 2">
-							{{$field.findTypeName('clearWorkWay',detail.workWay)}}
-						</div>
-						<div class="hui-detail-value" v-if="detail.type === 4">
-							{{$field.findTypeName('patrolWorkWay',detail.workWay)}}
-						</div>
+						<div class="hui-detail-label">提醒时间</div>
+						<div class="hui-detail-value">{{$dayjs(detail.date).format('YYYY-MM-DD HH:mm:ss')}}</div>
 					</div>
 					</div>
-					<div class="hui-detail-item">
-						<div class="hui-detail-label">关联租客</div>
-						<div class="hui-detail-value">{{detail.merchantName || detail.clientName}}</div>
-					</div>
-					<div class="hui-detail-item">
-						<div class="hui-detail-label">摘要</div>
-						<div class="hui-detail-value">{{detail.compendious}}</div>
+					<div class="hui-detail-item hui-detail-item-top">
+						<div class="hui-detail-label">提醒内容</div>
+						<div class="hui-detail-value">{{detail.content}}</div>
 					</div>
 					</div>
 				</div>
 				</div>
 				<div class="hui-detail-title">图片</div>
 				<div class="hui-detail-title">图片</div>
@@ -60,63 +26,21 @@
 					<upload ref="upload" :list="detail.attachment ? JSON.parse(detail.attachment) : []" type="preview">
 					<upload ref="upload" :list="detail.attachment ? JSON.parse(detail.attachment) : []" type="preview">
 					</upload>
 					</upload>
 				</div>
 				</div>
-				<div v-if="detail.data && detail.data != '[]'">
-					<div class="hui-detail-title">自定义信息</div>
-					<div class="hui-detail-content">
-						<div class="hui-detail-item" v-for="(item,index) in JSON.parse(detail.data)" :key="index">
-							<div class="hui-detail-label">{{item.keyName}}</div>
-							<div class="hui-detail-value">{{item.value}}</div>
-						</div>
-					</div>
-				</div>
-				<div class="hui-detail-title" v-if="detail.workOrderProcessList.length > 0">工单过程</div>
-				<process :process="detail.workOrderProcessList" v-if="detail.workOrderProcessList.length > 0">
-				</process>
 			</div>
 			</div>
 		</div>
 		</div>
-		<div class="hui-drawer-submit" v-if="actionButton.length > 0">
-			<el-button size="medium" type="primary" v-for="(item,index) in actionButton" :key="index"
-				@click="actionClick(item.type)">
-				{{item.name}}
-			</el-button>
-		</div>
-		<el-dialog :close-on-click-modal="false" :title="type == 1 ? '选择指派人员':'处理工单'" :visible.sync="visible"
-			width="880px" :append-to-body="true">
-			<select-user @callback="callBack" v-if="visible && type == 1" :maxLen="1"></select-user>
-			<action @callback="callBack" v-if="visible && type == 2" :operationId="operation.id"></action>
-		</el-dialog>
 	</div>
 	</div>
 </template>
 </template>
 
 
 <script>
 <script>
 	import {
 	import {
-		getOrderDetailById,
-		updateOrder,
-		insertOrderProcess
-	} from '@/httpApi/order'
+		getReminderDetailById
+	} from '@/httpApi/operation'
 	import upload from '@/components/common/upload'
 	import upload from '@/components/common/upload'
-	import selectUser from '@/components/common/selectUser'
-	import process from '@/components/work/order/process'
-	import action from '@/components/work/order/action'
 	export default {
 	export default {
 		props: ['detailId'],
 		props: ['detailId'],
 		data() {
 		data() {
 			return {
 			return {
-				detail: {
-					name: '',
-					projectItemTargetRoomIds: '',
-					tenantType: 1,
-					merchantId: '',
-					clientId: '',
-					followUpPerson: '',
-					followUpPersonPhone: '',
-					workWay: '',
-					workOrderProcessList: []
-				},
-				visible: false,
-				type: 1,
-				operation: {},
-				actionButton: []
+				detail: {}
 			}
 			}
 		},
 		},
 		created() {
 		created() {
@@ -124,114 +48,15 @@
 		},
 		},
 		methods: {
 		methods: {
 			init() {
 			init() {
-				getOrderDetailById(this.detailId).then(res => {
+				getReminderDetailById(this.detailId).then(res => {
 					if (res.state) {
 					if (res.state) {
 						this.detail = res.data;
 						this.detail = res.data;
-						this.role();
-					}
-				})
-			},
-			role() {
-				let user = this.$store.getters.user,
-					button = [];
-				if (this.detail.userId === user.userId) { //创建者
-					if (!this.detail.status) button.push({
-						type: 1,
-						name: '提交工单'
-					})
-				}
-				let data = this.detail.workOrderProcessList.filter(node => !node.status);
-				if (data.length > 0) { //未处理工单过程
-					this.operation = data[0];
-					//处理工单人员
-					if (this.operation.operatorId === user.userId) button.push({
-						type: 2,
-						name: '处理工单'
-					})
-				}
-				if (this.detail.followUpPerson === user.userId) { //跟进人
-					if (this.detail.status === 1) button.push({
-						type: 3,
-						name: '开始工单'
-					})
-					if (this.detail.status === 2) button.push({
-						type: 4,
-						name: '指派人员'
-					})
-					if (data.length === 0 && this.detail.status === 2) button.push({
-						type: 5,
-						name: '完成工单'
-					})
-				}
-				this.actionButton = button;
-			},
-			actionClick(type) {
-				switch (type) {
-					case 1:
-						this.submitOrder('是否提交工单,提交后将不能再修改?', 1);
-						break;
-					case 2:
-						this.operationClick(2)
-						break;
-					case 3:
-						this.submitOrder('是否开始工单?', 2);
-						break;
-					case 4:
-						this.operationClick(1)
-						break;
-					case 5:
-						this.submitOrder('是否完成工单?', 3);
-						break;
-					default:
-						break;
-				}
-			},
-			submitOrder(msg, status) {
-				this.$confirm(msg, () => {
-					this.update(status);
-				});
-			},
-			update(status) {
-				updateOrder({
-					id: this.detail.id,
-					status: status
-				}).then(res => {
-					if (res.state) {
-						this.init();
-						this.$message.success('操作成功');
-						this.$emit('callback', 'init')
-					}
-				})
-			},
-			callBack(data) {
-				if (!data) return this.visible = false;
-				if (data == 'init') {
-					this.init();
-					return this.visible = false;
-				}
-				insertOrderProcess({
-					operatorId: data[0].id,
-					workOrderId: this.detailId,
-					status: 0,
-					attachment: '[]'
-				}).then(res => {
-					if (res.state) {
-						this.init();
-						this.visible = false;
-						this.$message.success('操作成功');
 					}
 					}
 				})
 				})
-			},
-			operationClick(type) {
-				this.type = type;
-				this.visible = true;
 			}
 			}
 		},
 		},
 		components: {
 		components: {
-			upload,
-			selectUser,
-			process,
-			action
+			upload
 		},
 		},
 	}
 	}
 </script>
 </script>

+ 21 - 8
virgo.wzfrontend/console/src/components/work/operation/remind/edit.vue

@@ -5,7 +5,7 @@
 				<el-form-item label="提醒名称" prop="name" :rules="[{required: true, message: '请输入提醒名称'}]">
 				<el-form-item label="提醒名称" prop="name" :rules="[{required: true, message: '请输入提醒名称'}]">
 					<el-input type="text" v-model="form.name" placeholder="请输入提醒名称"></el-input>
 					<el-input type="text" v-model="form.name" placeholder="请输入提醒名称"></el-input>
 				</el-form-item>
 				</el-form-item>
-				<el-form-item label="提醒时间" prop="date" :rules="[{required: true, message: '请选择提醒时间'}]">
+				<el-form-item label="提醒时间" prop="date" :rules="dateRules">
 					<el-date-picker v-model="form.date" type="datetime" placeholder="预约时间" format="yyyy-MM-dd HH:mm">
 					<el-date-picker v-model="form.date" type="datetime" placeholder="预约时间" format="yyyy-MM-dd HH:mm">
 					</el-date-picker>
 					</el-date-picker>
 				</el-form-item>
 				</el-form-item>
@@ -32,7 +32,7 @@
 	import {
 	import {
 		insertReminder,
 		insertReminder,
 		updateReminder,
 		updateReminder,
-		getReminderListByQuery
+		getReminderDetailById
 	} from '@/httpApi/operation'
 	} from '@/httpApi/operation'
 	import upload from '@/components/common/upload'
 	import upload from '@/components/common/upload'
 	import cc from '@/components/common/cc'
 	import cc from '@/components/common/cc'
@@ -47,21 +47,34 @@
 				},
 				},
 				responsibility: [],
 				responsibility: [],
 				ccList: [],
 				ccList: [],
-				loading: false
+				loading: false,
+				dateRules: [{
+					required: true,
+					message: '请选择提醒时间'
+				}, {
+					validator: (rule, value, callback) => {
+						//获取下一分钟的时间
+						const nextMinute = this.$dayjs().add(5, 'minute');
+						if (new Date(value).getTime() <= new Date(nextMinute).getTime()) {
+							callback(new Error("提醒时间应至少设置当前时间的5分钟之后"));
+						} else {
+							callback();
+						}
+					}
+				}]
 			}
 			}
 		},
 		},
 		created() {
 		created() {
 			if (!this.isUpdate) {
 			if (!this.isUpdate) {
 				this.form['organizationId'] = this.$store.getters.organization.id;
 				this.form['organizationId'] = this.$store.getters.organization.id;
 				this.form['projectId'] = this.$store.getters.project.id;
 				this.form['projectId'] = this.$store.getters.project.id;
-				this.form['userId'] = this.$store.getters.user.userId;
+				this.form['creator'] = this.$store.getters.user.userId;
+				//1-重要提醒 2.会议提醒 3.看房提醒
 				this.form['type'] = this.type;
 				this.form['type'] = this.type;
 			} else {
 			} else {
-				getReminderListByQuery({
-					id: this.detailId
-				}).then(res => {
+				getReminderDetailById(this.detailId).then(res => {
 					if (res.state) {
 					if (res.state) {
-						this.form = res.data[0];
+						this.form = res.data;
 						if (this.form.attachment) this.responsibility = JSON.parse(this.form.attachment);
 						if (this.form.attachment) this.responsibility = JSON.parse(this.form.attachment);
 					}
 					}
 				})
 				})

+ 16 - 1
virgo.wzfrontend/console/src/config/field.js

@@ -315,6 +315,20 @@ const contractType = [{
 	name: '设备租赁'
 	name: '设备租赁'
 }];
 }];
 
 
+const remindType = [{
+	id: 1,
+	name: '重要提醒'
+}, {
+	id: 2,
+	name: '会议提醒'
+}, {
+	id: 3,
+	name: '收费提醒'
+}, {
+	id: 4,
+	name: '看房提醒'
+}];
+
 const findItem = (type, id) => {
 const findItem = (type, id) => {
 	return eval(type).find(node => node.id == id) || {
 	return eval(type).find(node => node.id == id) || {
 		id: 0,
 		id: 0,
@@ -349,7 +363,8 @@ export default {
 		supportingFacilities,
 		supportingFacilities,
 		modelType,
 		modelType,
 		sealType,
 		sealType,
-		contractType
+		contractType,
+		remindType
 	},
 	},
 	findTypeName(type, id) {
 	findTypeName(type, id) {
 		return findItem(type, id).name;
 		return findItem(type, id).name;

+ 13 - 2
virgo.wzfrontend/console/src/httpApi/operation.js

@@ -230,13 +230,24 @@ export function insertReminder(data) {
 		data: data
 		data: data
 	})
 	})
 }
 }
+/* 
+ * 获取提醒详情
+ * 
+ * 
+ */
+export function getReminderDetailById(id) {
+	return request({
+		url: `/api/reminder/${id}`,
+		method: 'get'
+	})
+}
 /* 
 /* 
  * 更新提醒
  * 更新提醒
  * 
  * 
  */
  */
 export function updateReminder(data) {
 export function updateReminder(data) {
 	return request({
 	return request({
-		url: `/api/reminder`,
+		url: `/api/reminder/update`,
 		method: 'put',
 		method: 'put',
 		data: data
 		data: data
 	})
 	})
@@ -248,7 +259,7 @@ export function updateReminder(data) {
  */
  */
 export function deleteReminderById(id) {
 export function deleteReminderById(id) {
 	return request({
 	return request({
-		url: `/api/reminder/${id}`,
+		url: `/api/reminder/delete/${id}`,
 		method: 'delete'
 		method: 'delete'
 	})
 	})
 }
 }

+ 7 - 0
virgo.wzfrontend/console/src/router/modules/operation.js

@@ -19,6 +19,13 @@ const operation = [{
 	meta: {
 	meta: {
 		title: '会议设置'
 		title: '会议设置'
 	}
 	}
+}, {
+	path: 'operation/meeting/remind',
+	component: () => import('@/views/work/operation/meeting/remind'),
+	name: '会议提醒',
+	meta: {
+		title: '会议提醒'
+	}
 }, {
 }, {
 	path: 'operation/week/organization',
 	path: 'operation/week/organization',
 	component: () => import('@/views/work/operation/week/organization'),
 	component: () => import('@/views/work/operation/week/organization'),

+ 1 - 1
virgo.wzfrontend/console/src/uitls/chat.js

@@ -64,7 +64,6 @@ const $chat = {
 		});
 		});
 	},
 	},
 	connect() {
 	connect() {
-		console.log(localStorage.getItem('chatToken'));
 		if (!localStorage.getItem('chatToken')) {
 		if (!localStorage.getItem('chatToken')) {
 			logins()
 			logins()
 		} else {
 		} else {
@@ -123,6 +122,7 @@ const $chat = {
 			//监听会话列表更新
 			//监听会话列表更新
 			YeIMUniSDK.getInstance().addEventListener(YeIMUniSDKDefines.EVENT.CONVERSATION_LIST_CHANGED, (
 			YeIMUniSDK.getInstance().addEventListener(YeIMUniSDKDefines.EVENT.CONVERSATION_LIST_CHANGED, (
 				list) => {
 				list) => {
+				console.log(list);
 				store.dispatch('app/changeChatList', list);
 				store.dispatch('app/changeChatList', list);
 			});
 			});
 		})
 		})

+ 1 - 2
virgo.wzfrontend/console/src/views/website/homeDetail.vue

@@ -109,8 +109,7 @@
 		<house-foot></house-foot>
 		<house-foot></house-foot>
 		<el-dialog :close-on-click-modal="false" title="预约看房" :visible.sync="visible" width="900px"
 		<el-dialog :close-on-click-modal="false" title="预约看房" :visible.sync="visible" width="900px"
 			:append-to-body="true">
 			:append-to-body="true">
-			<reservation v-if="visible" @callback="visible = false" :houseId="detail.id" :projectId="detail.projectId"
-				:chargePersonId="detail.chargePersonId">
+			<reservation v-if="visible" @callback="visible = false" :house="detail">
 			</reservation>
 			</reservation>
 		</el-dialog>
 		</el-dialog>
 		<el-dialog title="预览" :visible.sync="fileVisible" width="900px" :append-to-body="true">
 		<el-dialog title="预览" :visible.sync="fileVisible" width="900px" :append-to-body="true">

+ 168 - 0
virgo.wzfrontend/console/src/views/work/operation/meeting/remind.vue

@@ -0,0 +1,168 @@
+<template>
+	<div class="hui-flex hui-content">
+		<div class="hui-flex">
+			<div class="hui-content-title">
+				<div class="hui-title-item active">会议提醒</div>
+			</div>
+			<div class="hui-flex-box hui-flex hui-table">
+				<div class="hui-content-insert">
+					<el-button v-permission="'/work/order/clear/add'" type="primary" size="medium"
+						@click="insert">新增提醒</el-button>
+				</div>
+				<div class="hui-flex-box">
+					<el-table :data="tableData" row-key="id" border height="100%">
+						<el-table-column label="序号" width="50">
+							<template slot-scope="scope">
+								<div style="text-align: center;">{{scope.$index + 1}}</div>
+							</template>
+						</el-table-column>
+						<el-table-column label="提醒名称" prop="name"></el-table-column>
+						<el-table-column label="提醒内容" prop="content"></el-table-column>
+						<el-table-column label="提醒时间" prop="date">
+							<template slot-scope="scope">
+								<span>{{$dayjs(scope.row.date).format('YYYY-MM-DD HH:mm:ss')}}</span>
+							</template>
+						</el-table-column>
+						<el-table-column label="状态">
+							<template slot-scope="scope">
+								<div class="hui-table-tag">
+									<div class="hui-tag hui-tag-info" v-if="!scope.row.status">待提醒</div>
+									<div class="hui-tag" v-else-if="scope.row.status === 1">待处理</div>
+									<div class="hui-tag hui-tag-warning" v-else-if="scope.row.status === 2">处理中</div>
+									<div class="hui-tag hui-tag-success" v-else>已处理</div>
+								</div>
+							</template>
+						</el-table-column>
+						<el-table-column label="操作" width="150">
+							<template slot-scope="scope">
+								<div class="hui-table-operation">
+									<span class="table-operation" v-permission="'/work/order/clear/detail'"
+										@click="detailItem(scope.row)">
+										详情
+									</span>
+									<span class="table-operation" v-permission="'/work/order/clear/update'"
+										v-if="!scope.row.status" @click="updateItem(scope.row)">
+										编辑
+									</span>
+									<span class="table-operation" v-permission="'/work/order/clear/delete'"
+										v-if="!scope.row.status" @click="deleteItem(scope.row)">
+										删除
+									</span>
+								</div>
+							</template>
+						</el-table-column>
+						<template slot="empty">
+							<empty description="暂无数据"></empty>
+						</template>
+					</el-table>
+				</div>
+				<div class="hui-content-pagination">
+					<el-pagination :page-size="pageSize" :pager-count="9" layout="prev, pager, next" :total="totalCount"
+						@current-change="currentChange">
+					</el-pagination>
+				</div>
+			</div>
+		</div>
+		<el-dialog :close-on-click-modal="false" :title="isUpdate?'编辑':'新增'" :visible.sync="visible" width="900px"
+			:append-to-body="true">
+			<edit v-if="visible" @callback="callback" :isUpdate="isUpdate" :detailId="detailId" :type="type"></edit>
+		</el-dialog>
+		<el-drawer title="提醒详情" :visible.sync="drawer" :size="400" :append-to-body="true">
+			<detail v-if="drawer" :detailId="detailId" @callback="callback"></detail>
+		</el-drawer>
+	</div>
+</template>
+
+<script>
+	import edit from '@/components/work/operation/remind/edit'
+	import detail from '@/components/work/operation/remind/detail'
+
+	import {
+		getReminderListByQuery,
+		deleteReminderById
+	} from '@/httpApi/operation'
+	export default {
+		data() {
+			return {
+				tableData: [],
+				currPage: 1,
+				pageSize: 10,
+				totalCount: 0,
+				detailId: '',
+				filterOption: {},
+				isUpdate: false,
+				visible: false,
+				drawer: false,
+				type: 2
+			}
+		},
+		created() {
+			this.init();
+		},
+		methods: {
+			init() {
+				if (!this.auth('/work/order/clear/list')) return;
+				let postData = {
+					currPage: this.currPage,
+					pageSize: this.pageSize,
+					projectId: this.$store.getters.project.id,
+					type: this.type
+				}
+				postData = Object.assign(postData, this.filterOption);
+				getReminderListByQuery(postData).then(res => {
+					if (res.state) {
+						this.tableData = res.data.dataList;
+						this.totalCount = res.data.totalCount;
+					}
+				})
+			},
+			filterInit(option) {
+				this.filterOption = option;
+				this.currPage = 1;
+				this.init();
+			},
+			insert() {
+				this.detailId = '';
+				this.isUpdate = false;
+				this.visible = true;
+			},
+			currentChange(currPage) {
+				this.currPage = currPage;
+				this.init();
+			},
+			detailItem(item) {
+				this.detailId = item.id;
+				this.drawer = true;
+			},
+			updateItem(item) {
+				this.detailId = item.id;
+				this.isUpdate = true;
+				this.visible = true;
+			},
+			deleteItem(item) {
+				this.$confirm('确定要删除该提醒?', () => {
+					deleteReminderById(item.id).then(res => {
+						if (res.state) {
+							this.$message({
+								type: 'success',
+								message: '操作成功'
+							})
+							this.init();
+						}
+					})
+				});
+			},
+			callback(type) {
+				if (type === 'init') this.init();
+				this.visible = false;
+			}
+		},
+		components: {
+			edit,
+			detail
+		},
+	}
+</script>
+
+<style>
+</style>

+ 6 - 2
virgo.wzfrontend/console/src/views/work/operation/remind/remind.vue

@@ -18,11 +18,15 @@
 						</el-table-column>
 						</el-table-column>
 						<el-table-column label="提醒名称" prop="name"></el-table-column>
 						<el-table-column label="提醒名称" prop="name"></el-table-column>
 						<el-table-column label="提醒内容" prop="content"></el-table-column>
 						<el-table-column label="提醒内容" prop="content"></el-table-column>
-						<el-table-column label="提醒时间" prop="date"></el-table-column>
+						<el-table-column label="提醒时间" prop="date">
+							<template slot-scope="scope">
+								<span>{{$dayjs(scope.row.date).format('YYYY-MM-DD HH:mm')}}</span>
+							</template>
+						</el-table-column>
 						<el-table-column label="状态">
 						<el-table-column label="状态">
 							<template slot-scope="scope">
 							<template slot-scope="scope">
 								<div class="hui-table-tag">
 								<div class="hui-table-tag">
-									<div class="hui-tag hui-tag-info" v-if="!scope.row.status">待提交</div>
+									<div class="hui-tag hui-tag-info" v-if="!scope.row.status">待提</div>
 									<div class="hui-tag" v-else-if="scope.row.status === 1">待处理</div>
 									<div class="hui-tag" v-else-if="scope.row.status === 1">待处理</div>
 									<div class="hui-tag hui-tag-warning" v-else-if="scope.row.status === 2">处理中</div>
 									<div class="hui-tag hui-tag-warning" v-else-if="scope.row.status === 2">处理中</div>
 									<div class="hui-tag hui-tag-success" v-else>已处理</div>
 									<div class="hui-tag hui-tag-success" v-else>已处理</div>

文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/index.html


virgo.wzfrontend/src/main/resources/static/console/static/css/6280.33fb573b.css → virgo.wzfrontend/src/main/resources/static/console/static/css/6106.33fb573b.css


virgo.wzfrontend/src/main/resources/static/console/static/css/977.33fb573b.css → virgo.wzfrontend/src/main/resources/static/console/static/css/7403.33fb573b.css


virgo.wzfrontend/src/main/resources/static/console/static/css/1770.7e28460d.css → virgo.wzfrontend/src/main/resources/static/console/static/css/8042.7e28460d.css


virgo.wzfrontend/src/main/resources/static/console/static/css/4470.7e28460d.css → virgo.wzfrontend/src/main/resources/static/console/static/css/8158.7e28460d.css


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/1597.c80bc252.js


virgo.wzfrontend/src/main/resources/static/console/static/js/2036-legacy.16fef521.js → virgo.wzfrontend/src/main/resources/static/console/static/js/2036-legacy.c1089e2e.js


virgo.wzfrontend/src/main/resources/static/console/static/js/2036.ac791410.js → virgo.wzfrontend/src/main/resources/static/console/static/js/2036.2ba3db66.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/2386-legacy.41c95147.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/2386.544befa1.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/2632-legacy.07157fb1.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/2658-legacy.568c190c.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/2658.f9276061.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/2695-legacy.6dc4f4ce.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/2695.faa253bc.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/2776-legacy.b7ba0908.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/2966-legacy.1c5bcecd.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/2966.22ab1d04.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/3022.44e92e60.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/3036-legacy.080f4b39.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/3036.94ad2db5.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/3602-legacy.dbc25713.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/3602.fb5cd175.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/3794.bfdfffa1.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/3855-legacy.0c62b4bc.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/3855-legacy.6fb7b797.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/3855.b5ddb0fd.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/3855.bcd4ff67.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/3975-legacy.86329189.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/3975-legacy.eb804d70.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/3975.48f9af7d.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/3975.e8feacc4.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/4470-legacy.c1817590.js


virgo.wzfrontend/src/main/resources/static/console/static/js/5338-legacy.97400b99.js → virgo.wzfrontend/src/main/resources/static/console/static/js/5338-legacy.94b28bfb.js


virgo.wzfrontend/src/main/resources/static/console/static/js/5338.bd774ddb.js → virgo.wzfrontend/src/main/resources/static/console/static/js/5338.7b9c8ed9.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/6106.3a4da4a1.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/6280-legacy.27cabbef.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/6843-legacy.867bf6aa.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/6843.da17bfce.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/6959-legacy.bbb7bd56.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/7403-legacy.7771ee29.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/8042.3045ffa0.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/8158-legacy.e5d121c8.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/8260-legacy.69757c59.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/8260-legacy.79a527b4.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/8260.615f1ef6.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/8260.7f56196e.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/8386-legacy.3f16f6c2.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/8386.50ad317d.js


文件差异内容过多而无法显示
+ 1 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/8409.152f8784.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/9696-legacy.261fcf53.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/977.1c11d866.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/9816-legacy.a9988d70.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/9816.1d0cdf92.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/app-legacy.40abb2d3.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/app-legacy.b9838c1c.js


文件差异内容过多而无法显示
+ 0 - 1
virgo.wzfrontend/src/main/resources/static/console/static/js/app.019422ef.js


文件差异内容过多而无法显示
+ 1 - 0
virgo.wzfrontend/src/main/resources/static/console/static/js/app.f84b20d2.js