Commit 5daf7c58 authored by 姬鋆屾's avatar 姬鋆屾
parents dc4dba71 39e6d56a
...@@ -95,6 +95,17 @@ ...@@ -95,6 +95,17 @@
<artifactId>gson</artifactId> <artifactId>gson</artifactId>
</dependency> </dependency>
<dependency>
<groupId>com.rabbitmq</groupId>
<artifactId>amqp-client</artifactId>
<version>4.8.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
</dependencies> </dependencies>
......
package com.mortals.xhx.common.keys;
/**
* rabbit 队列key定义
*/
public class QueueKey {
public static final String ACCESS_LOG_QUEUE = "ACCESS_LOG_QUEUE";
public static final String BIZ_LOG_QUEUE = "BIZ_LOG_QUEUE";
public static final String ERROR_LOG_QUEUE = "ERROR_LOG_QUEUE";
public static final String OPERATION_LOG_QUEUE = "OPERATION_LOG_QUEUE";
public static final String EXCHANGE = "LOG";
public static final String ROUTING_KEY = "LOG_ROUTING_KEY";
}
package com.mortals.xhx.system;
import com.alibaba.fastjson.JSON;
import com.mortals.framework.model.AccessLogPdu;
import com.mortals.framework.model.BizLogPdu;
import com.mortals.framework.model.ErrorLogPdu;
import com.mortals.framework.model.OperateLogPdu;
import com.mortals.framework.service.IMessageProduceService;
import com.mortals.xhx.common.keys.QueueKey;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Component;
@Component
@Primary
@Slf4j
public class MessageProducer implements IMessageProduceService {
@Autowired
private RabbitTemplate rabbitTemplate;
public void syncAccessSend(AccessLogPdu accessLogPdu) {
//new Message(JSON.toJSONString(accessLogPdu).getBytes(StandardCharsets.UTF_8))
//rabbitTemplate.send(QueueKey.EXCHANGE, QueueKey.ACCESS_LOG_QUEUE,new Message(JSON.toJSONString(accessLogPdu).getBytes(StandardCharsets.UTF_8)));
rabbitTemplate.convertAndSend(QueueKey.EXCHANGE, QueueKey.ACCESS_LOG_QUEUE, JSON.toJSONString(accessLogPdu));
//rabbitTemplate.convertAndSend(QueueKey.EXCHANGE, QueueKey.ACCESS_LOG_QUEUE, accessLogPdu);
}
@Override
public void syncBizSend(BizLogPdu bizLogPdu) {
rabbitTemplate.convertAndSend(QueueKey.EXCHANGE, QueueKey.BIZ_LOG_QUEUE, JSON.toJSONString(bizLogPdu));
}
@Override
public void syncErrorSend(ErrorLogPdu errorLogPdu) {
rabbitTemplate.convertAndSend(QueueKey.EXCHANGE, QueueKey.ERROR_LOG_QUEUE, JSON.toJSONString(errorLogPdu));
}
@Override
public void syncOperSend(OperateLogPdu operLogPdu) {
rabbitTemplate.convertAndSend(QueueKey.EXCHANGE, QueueKey.OPERATION_LOG_QUEUE, JSON.toJSONString(operLogPdu));
}
}
...@@ -228,7 +228,7 @@ Content-Type: multipart/form-data ...@@ -228,7 +228,7 @@ Content-Type: multipart/form-data
参数名称|类型|必填|描述 参数名称|类型|必填|描述
:---|:---|:---|:------ :---|:---|:---|:------
page|Integer|否|当前页 page|Integer|否|当前页
size|Integer|否|每页条数,值为-1,查询所有记录 size|Integer|否|每页条数,值为-1,查询所有记录
**请求样例:** **请求样例:**
......
...@@ -14,6 +14,9 @@ export default { ...@@ -14,6 +14,9 @@ export default {
}, },
watch: { watch: {
'$route'(route) { '$route'(route) {
if(route.path=='/device/electron/list'||route.path=='/device/meet/list'){
this.changePath("device")
}
this.query = Object.assign({}, this.query, route.query); this.query = Object.assign({}, this.query, route.query);
this.getData(); this.getData();
} }
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
@sort-change="handleSortChange" @sort-change="handleSortChange"
@row-click="handleRowClick" @row-click="handleRowClick"
height="560" height="520"
:row-class-name="tableRowClassName" :row-class-name="tableRowClassName"
:empty-text="emptyText" :empty-text="emptyText"
border border
......
...@@ -28,7 +28,6 @@ export default { ...@@ -28,7 +28,6 @@ export default {
}, },
watch: { watch: {
'$route'(route) { '$route'(route) {
this.initPage(route.query); this.initPage(route.query);
} }
}, },
...@@ -42,7 +41,13 @@ export default { ...@@ -42,7 +41,13 @@ export default {
this.currSize = parseInt(query['size']) || this.prePageResult; this.currSize = parseInt(query['size']) || this.prePageResult;
}, },
changeHash(key, val) { changeHash(key, val) {
console.log("$route:",this.$route)
let {path, query} = this.$route; let {path, query} = this.$route;
console.log("path",path)
// if(path=="/device/meet/list"||path=="/device/electron/list"){
// path="/device/list"
// }
this.$router.push({ this.$router.push({
path: path, path: path,
query: Object.assign({}, query, {[`${key}`]: val}) query: Object.assign({}, query, {[`${key}`]: val})
......
...@@ -253,7 +253,7 @@ export default { ...@@ -253,7 +253,7 @@ export default {
} }
}); });
this.form = Object.assign({}, this.form, newFormData); this.form = Object.assign({}, this.form, newFormData);
this.form = Object.assign({}, this.form, data); //this.form = Object.assign({}, this.form, data);
}, },
cleanForm() { cleanForm() {
this.clean(); this.clean();
......
...@@ -4,80 +4,134 @@ ...@@ -4,80 +4,134 @@
:title="title" :title="title"
:visible.sync="open" :visible.sync="open"
:direction="direction" :direction="direction"
size="60%"> size="60%"
>
<el-form ref="form" :model="form" :rules="rules" label-width="180px"> <el-form ref="form" :model="form" :rules="rules" label-width="180px">
<el-row> <el-row>
<Field :span="20" label="电子门牌信息"> <Field :span="20" label="电子门牌信息">
<el-checkbox <el-checkbox true-label="1" false-label="0" v-model="form.showPhoto"
true-label="1" >照片</el-checkbox
false-label="0" >
v-model="form.showPhoto"
>照片</el-checkbox>
<el-checkbox <el-checkbox true-label="1" false-label="0" v-model="form.showName"
true-label="1" >姓名</el-checkbox
false-label="0" >
v-model="form.showName"
>姓名</el-checkbox>
<el-checkbox <el-checkbox true-label="1" false-label="0" v-model="form.showPost"
true-label="1" >职位</el-checkbox
false-label="0" >
v-model="form.showPost"
>职位</el-checkbox>
<el-checkbox <el-checkbox true-label="1" false-label="0" v-model="form.showWork"
true-label="1" >在岗状态</el-checkbox
false-label="0" >
v-model="form.showWork"
>在岗状态</el-checkbox>
<el-checkbox
true-label="1"
false-label="0"
v-model="form.showPhone"
>电话</el-checkbox>
<el-checkbox true-label="1" false-label="0" v-model="form.showPhone"
>电话</el-checkbox
>
</Field> </Field>
<Field :span="20" label="电子门牌底部信息设置" prop="showElect" v-model="form.showElect" type="radio" :enumData="dict.showElect" placeholder="请选择显示电子门牌信息"/> <Field
<Field :span="20" label="自定义内容" v-if="form.showElect==1" prop="showElectDesc" type="textarea" v-model="form.showElectDesc" placeholder="请输入显示电子门牌信息自定义内容"/> :span="20"
<Field :span="20" label="会议室门牌底部信息设置" prop="showMeet" v-model="form.showMeet" type="radio" :enumData="dict.showMeet" placeholder="请选择显示会议室门牌信息"/> label="电子门牌底部信息设置"
<Field :span="20" label="自定义内容" v-if="form.showMeet==1" type="textarea" prop="showMeetDesc" v-model="form.showMeetDesc" placeholder="请输入显示会议室门牌信息自定义内容"/> prop="showElect"
<Field :span="20" label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/> v-model="form.showElect"
type="radio"
:enumData="dict.showElect"
placeholder="请选择显示电子门牌信息"
/>
<Field
:span="20"
label="自定义内容"
v-if="form.showElect == 1"
prop="showElectDesc"
type="textarea"
v-model="form.showElectDesc"
placeholder="请输入显示电子门牌信息自定义内容"
/>
<Field
:span="20"
label="会议室门牌底部信息设置"
prop="showMeet"
v-model="form.showMeet"
type="radio"
:enumData="dict.showMeet"
placeholder="请选择显示会议室门牌信息"
/>
<Field
:span="20"
label="自定义内容"
v-if="form.showMeet == 1"
type="textarea"
prop="showMeetDesc"
v-model="form.showMeetDesc"
placeholder="请输入显示会议室门牌信息自定义内容"
/>
<Field
:span="20"
label="备注"
prop="remark"
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-row> </el-row>
<el-divider content-position="center">状态设置信息</el-divider> <el-divider content-position="center">状态设置信息</el-divider>
<br/> <br />
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAddBasicStatus">添加</el-button> <el-button
type="primary"
icon="el-icon-plus"
size="mini"
@click="handleAddBasicStatus"
>添加</el-button
>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="danger" icon="el-icon-delete" size="mini" @click="handleDeleteBasicStatus">删除</el-button> <el-button
type="danger"
icon="el-icon-delete"
size="mini"
@click="handleDeleteBasicStatus"
>删除</el-button
>
</el-col> </el-col>
</el-row> </el-row>
<el-table :data="basicStatusList" :row-class-name="rowBasicStatusIndex" @selection-change="handleBasicStatusSelectionChange" ref="basicStatus"> <el-table
:data="basicStatusList"
:row-class-name="rowBasicStatusIndex"
@selection-change="handleBasicStatusSelectionChange"
ref="basicStatus"
height="520"
>
<el-table-column type="selection" width="50" align="center" /> <el-table-column type="selection" width="50" align="center" />
<el-table-column label="序号" align="center" prop="index" width="50"/> <el-table-column label="序号" align="center" prop="index" width="50" />
<el-table-column label="状态名称" prop="statusName"> <el-table-column label="状态名称" prop="statusName">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.statusName" placeholder="请输入状态名称" /> <el-input
v-model="scope.row.statusName"
placeholder="请输入状态名称"
/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="状态颜色值" prop="statusColor"> <el-table-column label="状态颜色值" prop="statusColor">
<template slot-scope="scope"> <template slot-scope="scope">
<el-color-picker v-model="scope.row.statusColor" placeholder="请输入状态颜色值"></el-color-picker> <el-color-picker
v-model="scope.row.statusColor"
placeholder="请输入状态颜色值"
></el-color-picker>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<form-buttons @submit='submitForm' v-if="pageInfo.type!='view'" noCancelBtn /> <form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form> </el-form>
</el-drawer> </el-drawer>
</template> </template>
...@@ -86,11 +140,9 @@ import form from "@/assets/mixins/formdialog"; ...@@ -86,11 +140,9 @@ import form from "@/assets/mixins/formdialog";
export default { export default {
name: "BasicSetDetail", name: "BasicSetDetail",
mixins: [form], mixins: [form],
components: { components: {},
},
created() { created() {
this.changePath("basic/set") this.changePath("basic/set");
}, },
data() { data() {
return { return {
...@@ -104,8 +156,8 @@ export default { ...@@ -104,8 +156,8 @@ export default {
title: "基础设置", title: "基础设置",
// 是否显示弹出层 // 是否显示弹出层
open: false, open: false,
direction:"rtl", direction: "rtl",
toString:[ toString: [
"showPhoto", "showPhoto",
"showName", "showName",
"showPost", "showPost",
...@@ -114,14 +166,11 @@ export default { ...@@ -114,14 +166,11 @@ export default {
"showElect", "showElect",
"showMeet", "showMeet",
], ],
toDate:[ toDate: [],
],
// 表单校验 // 表单校验
rules: { rules: {
createTime: [ createTime: [{ required: true, message: "请选择创建时间" }],
{required: true,message: "请选择创建时间" }, },
],
}
}; };
}, },
...@@ -145,7 +194,9 @@ export default { ...@@ -145,7 +194,9 @@ export default {
/** 状态设置删除按钮操作 */ /** 状态设置删除按钮操作 */
handleDeleteBasicStatus() { handleDeleteBasicStatus() {
if (this.checkedBasicStatus.length == 0) { if (this.checkedBasicStatus.length == 0) {
this.$alert("请先选择要删除的状态设置数据", "提示", { confirmButtonText: "确定", }); this.$alert("请先选择要删除的状态设置数据", "提示", {
confirmButtonText: "确定",
});
} else { } else {
this.basicStatusList.splice(this.checkedBasicStatus[0].index - 1, 1); this.basicStatusList.splice(this.checkedBasicStatus[0].index - 1, 1);
} }
...@@ -161,35 +212,35 @@ export default { ...@@ -161,35 +212,35 @@ export default {
}, },
// 渲染前置处理 // 渲染前置处理
beforeRender(data) { beforeRender(data) {
if(data.entity.basicStatusList) { if (data.entity.basicStatusList) {
this.basicStatusList = data.entity.basicStatusList; this.basicStatusList = data.entity.basicStatusList;
} }
return data return data;
}, },
/** 编辑 */ /** 编辑 */
edit(row) { edit(row) {
this.reset() this.reset();
this.query = { id: row.id }; this.query = { id: row.id };
this.urls.currUrl ="basic/set/edit"; this.urls.currUrl = "basic/set/edit";
this.getData(); this.getData();
this.pageInfo.type="edit" this.pageInfo.type = "edit";
this.title = "修改基础设置"; this.title = "修改基础设置";
}, },
/** 新增 */ /** 新增 */
add(row) { add(row) {
this.reset() this.reset();
this.urls.currUrl = "basic/set/add"; this.urls.currUrl = "basic/set/add";
this.getData(); this.getData();
this.pageInfo.type="add" this.pageInfo.type = "add";
this.title = "新增基础设置"; this.title = "新增基础设置";
}, },
/** 查看*/ /** 查看*/
view(row) { view(row) {
this.reset() this.reset();
this.query = { id: row.id }; this.query = { id: row.id };
this.urls.currUrl ="basic/set/view"; this.urls.currUrl = "basic/set/view";
this.getData(); this.getData();
this.pageInfo.type="view" this.pageInfo.type = "view";
this.title = "基础设置详细"; this.title = "基础设置详细";
}, },
/**取消按钮 */ /**取消按钮 */
...@@ -209,16 +260,16 @@ export default { ...@@ -209,16 +260,16 @@ export default {
// 表单重置 // 表单重置
reset() { reset() {
this.form = { this.form = {
showPhoto : 0, showPhoto: 0,
showName : 0, showName: 0,
showPost : 0, showPost: 0,
showWork : 0, showWork: 0,
showPhone : 0, showPhone: 0,
showElect : 0, showElect: 0,
showElectDesc : "", showElectDesc: "",
showMeet : 0, showMeet: 0,
showMeetDesc : "", showMeetDesc: "",
remark : "", remark: "",
}; };
this.resetForm("form"); this.resetForm("form");
}, },
......
...@@ -68,6 +68,7 @@ ...@@ -68,6 +68,7 @@
</template> </template>
<script> <script>
<<<<<<< HEAD
/** 表单弹出框模式需引入 */ /** 表单弹出框模式需引入 */
import drawerShow from "./drawershow"; import drawerShow from "./drawershow";
import table from "@/assets/mixins/table"; import table from "@/assets/mixins/table";
...@@ -121,6 +122,22 @@ export default { ...@@ -121,6 +122,22 @@ export default {
"/device/exportExcel", "/device/exportExcel",
{ {
idList: this.selection, idList: this.selection,
=======
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
name: "DeviceList",
components: {
drawerShow
},
mixins: [table],
created() {
console.log("route",this.$route)
this.changePath("/device")
console.log("this.pageInfo.list000",this.pageInfo.list)
this.query = Object.assign({}, this.query, {productCode:"dzmp"});
>>>>>>> 39e6d56acbefe19665a6d0358d3730be6122fa01
}, },
{ type: "excel" } { type: "excel" }
) )
......
...@@ -68,6 +68,7 @@ ...@@ -68,6 +68,7 @@
</template> </template>
<script> <script>
<<<<<<< HEAD
/** 表单弹出框模式需引入 */ /** 表单弹出框模式需引入 */
import drawerShow from "./drawershow"; import drawerShow from "./drawershow";
import table from "@/assets/mixins/table"; import table from "@/assets/mixins/table";
...@@ -121,6 +122,21 @@ export default { ...@@ -121,6 +122,21 @@ export default {
"/device/exportExcel", "/device/exportExcel",
{ {
idList: this.selection, idList: this.selection,
=======
/** 表单弹出框模式需引入 */
import drawerShow from "./drawershow";
import table from "@/assets/mixins/table";
export default {
name: "DeviceList",
components: {
drawerShow
},
mixins: [table],
created() {
console.log("route111",this.$route)
this.changePath("/device")
this.query = Object.assign({}, this.query, {productCode:"hysdzmp"});
>>>>>>> 39e6d56acbefe19665a6d0358d3730be6122fa01
}, },
{ type: "excel" } { type: "excel" }
) )
......
...@@ -14,16 +14,40 @@ ...@@ -14,16 +14,40 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<!--<Field label="ID" prop="id" v-model="form.id" v-if='pageInfo.type !== "add"' disabled />--> <!--<Field label="ID" prop="id" v-model="form.id" v-if='pageInfo.type !== "add"' disabled />-->
<Field label="名称" prop="name" v-model="form.name"/> <Field label="名称" prop="name" v-model="form.name" />
<Field label="权限类型" prop="authType" v-model="form.authType" :enumData='dict.authType' type='select' /> <Field
label="权限类型"
prop="authType"
v-model="form.authType"
:enumData="dict.authType"
type="select"
/>
<Field label="访问地址" prop="url" v-model="form.url" /> <Field label="访问地址" prop="url" v-model="form.url" />
<Field label="状态" prop="status" v-model="form.status" :enumData='dict.status' type='radio' /> <Field
<Field class="radio-group-container" label="图标" prop="imgPath" :span='24'> label="状态"
<el-radio-group v-model="form.imgPath" class='form-el-radio-group'> prop="status"
<el-radio-button style="width: 180px" label="">不需要图标</el-radio-button> v-model="form.status"
<el-radio-button style="width: 180px" v-for='(icon, index) in icons' :key='index' :label="icon"> :enumData="dict.status"
<i :class="'el-icon-'+icon" style="font-size: 20px"></i> type="radio"
{{icon}} />
<Field
class="radio-group-container"
label="图标"
prop="imgPath"
:span="24"
>
<el-radio-group v-model="form.imgPath" class="form-el-radio-group">
<el-radio-button style="width: 180px" label=""
>不需要图标</el-radio-button
>
<el-radio-button
style="width: 180px"
v-for="(icon, index) in icons"
:key="index"
:label="icon"
>
<i :class="'el-icon-' + icon" style="font-size: 20px"></i>
{{ icon }}
</el-radio-button> </el-radio-button>
</el-radio-group> </el-radio-group>
</Field> </Field>
...@@ -40,7 +64,7 @@ ...@@ -40,7 +64,7 @@
import form from "@/assets/mixins/formdialog"; import form from "@/assets/mixins/formdialog";
import Treeselect from "@riophae/vue-treeselect"; import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css"; import "@riophae/vue-treeselect/dist/vue-treeselect.css";
import axios from 'axios' import axios from "axios";
export default { export default {
mixins: [form], mixins: [form],
components: { components: {
...@@ -48,16 +72,43 @@ export default { ...@@ -48,16 +72,43 @@ export default {
}, },
data() { data() {
return { return {
fileContent:"", fileContent: "",
id:null, id: null,
icons: [ icons: [
'info', 'error', 'success', 'warning', 'question', "info",
'tickets', 'document', 'goods', 'sold-out', 'news', "error",
'message', 'date', 'printer', 'time', 'bell', "success",
'mobile-phone', 'service', 'view', 'menu', 'star-on', "warning",
'location', 'phone', 'picture', 'delete', 'search', "question",
'edit', 'rank', 'refresh', 'share', 'setting', "tickets",
'upload', 'upload2', 'download', 'loading', "document",
"goods",
"sold-out",
"news",
"message",
"date",
"printer",
"time",
"bell",
"mobile-phone",
"service",
"view",
"menu",
"star-on",
"location",
"phone",
"picture",
"delete",
"search",
"edit",
"rank",
"refresh",
"share",
"setting",
"upload",
"upload2",
"download",
"loading",
], ],
menuOptions: [], menuOptions: [],
// 遮罩层 // 遮罩层
...@@ -66,44 +117,36 @@ export default { ...@@ -66,44 +117,36 @@ export default {
title: "菜单信息", title: "菜单信息",
// 是否显示弹出层 // 是否显示弹出层
open: false, open: false,
toString:[ toString: ["status", "linkType", "commMenu", "menuType", "authType"],
"status",
"linkType",
"commMenu",
"menuType",
"authType",
],
// 表单校验 // 表单校验
rules: { rules: {},
}
}; };
}, },
created() { created() {
axios.get('/icon.txt') axios.get("/icon.txt").then((response) => {
.then(response => { this.fileContent = response.data;
this.fileContent = response.data this.icons = this.fileContent.split("\n");
this.icons = this.fileContent.split('\n') });
})
}, },
methods: { methods: {
/** 编辑 */ /** 编辑 */
edit(row, menuOptions) { edit(row, menuOptions) {
this.reset() this.reset();
this.query = { id: row.id }; this.query = { id: row.id };
this.urls.currUrl =this.pageInfo.editUrl;; this.urls.currUrl = this.pageInfo.editUrl;
this.getData(); this.getData();
this.menuOptions = menuOptions; this.menuOptions = menuOptions;
this.title = "修改菜单信息"; this.title = "修改菜单信息";
}, },
/** 新增 */ /** 新增 */
add(row, menuOptions) { add(row, menuOptions) {
this.reset() this.reset();
this.query = { id: row.id }; this.query = { id: row.id };
this.urls.currUrl = this.pageInfo.addUrl; this.urls.currUrl = this.pageInfo.addUrl;
this.getData(); this.getData();
if(row.id){ if (row.id) {
this.id=row.id this.id = row.id;
this.form.parentId=row.id this.form.parentId = row.id;
} }
this.menuOptions = menuOptions; this.menuOptions = menuOptions;
this.title = "新增菜单信息"; this.title = "新增菜单信息";
...@@ -111,7 +154,7 @@ export default { ...@@ -111,7 +154,7 @@ export default {
/** 查看*/ /** 查看*/
view(row, menuOptions) { view(row, menuOptions) {
this.query = { id: row.id }; this.query = { id: row.id };
this.urls.currUrl =this.pageInfo.viewUrl;; this.urls.currUrl = this.pageInfo.viewUrl;
this.getData(); this.getData();
this.menuOptions = menuOptions; this.menuOptions = menuOptions;
this.title = "菜单信息详细"; this.title = "菜单信息详细";
...@@ -122,8 +165,8 @@ export default { ...@@ -122,8 +165,8 @@ export default {
}, },
/**获取数据后弹框 */ /**获取数据后弹框 */
afterRender(data) { afterRender(data) {
if(this.id){ if (this.id) {
this.form.parentId=this.id this.form.parentId = this.id;
} }
this.open = true; this.open = true;
}, },
...@@ -147,28 +190,27 @@ export default { ...@@ -147,28 +190,27 @@ export default {
reset() { reset() {
this.resetForm("form"); this.resetForm("form");
this.form = { this.form = {
name : "", name: "",
url : null, url: null,
ancestors : null, ancestors: null,
parentId : null, parentId: null,
orderId : null, orderId: null,
status : 1, status: 1,
linkType : 0, linkType: 0,
groupId : 1, groupId: 1,
groupName : null, groupName: null,
imgPath : null, imgPath: null,
buttonImgPath : null, buttonImgPath: null,
imgCommPath : null, imgCommPath: null,
commMenu : 0, commMenu: 0,
menuType : 0, menuType: 0,
authType : 3, authType: 3,
createUserName : null, createUserName: null,
}; };
}, },
resetForm(refName) { resetForm(refName) {
if (this.$refs[refName]) { if (this.$refs[refName]) {
console.log("重置表单") console.log("重置表单");
this.$refs[refName].resetFields(); this.$refs[refName].resetFields();
} }
}, },
...@@ -196,10 +238,10 @@ export default { ...@@ -196,10 +238,10 @@ export default {
box-shadow: none; box-shadow: none;
} }
.el-radio-button__orig-radio:checked+.el-radio-button__inner { .el-radio-button__orig-radio:checked + .el-radio-button__inner {
background: rgba(0, 0, 0, 0); background: rgba(0, 0, 0, 0);
border: 1px solid #3E7BFA !important; border: 1px solid #3e7bfa !important;
color: #3E7BFA; color: #3e7bfa;
line-height: 14px; line-height: 14px;
outline: none; outline: none;
box-shadow: none; box-shadow: none;
......
<template> <template>
<div className="page"> <div
class="page"
style="padding: 0 !important;height: 81% !important; min-height: 81% !important;"
>
<el-card> <el-card>
<LayoutTable <LayoutTable
notPagination notPagination
...@@ -161,12 +164,20 @@ export default { ...@@ -161,12 +164,20 @@ export default {
{ {
prop: "parentId", prop: "parentId",
label: "父ID", label: "父ID",
<<<<<<< HEAD
formatter: (row) => (row.parentId ? row.parentId : "--"), formatter: (row) => (row.parentId ? row.parentId : "--"),
=======
width: 160,
>>>>>>> 39e6d56acbefe19665a6d0358d3730be6122fa01
}, },
{ {
prop: "url", prop: "url",
label: "地址", label: "地址",
<<<<<<< HEAD
formatter: (row) => (row.url ? row.url : "--"), formatter: (row) => (row.url ? row.url : "--"),
=======
width: 160,
>>>>>>> 39e6d56acbefe19665a6d0358d3730be6122fa01
}, },
{ {
prop: "status", prop: "status",
......
...@@ -210,6 +210,7 @@ export default { ...@@ -210,6 +210,7 @@ export default {
{ type: "selection", width: 60 }, { type: "selection", width: 60 },
{ type: "index", label: "序号", width: 50 }, { type: "index", label: "序号", width: 50 },
<<<<<<< HEAD
{ {
label: "照片", label: "照片",
prop: "photoPath", prop: "photoPath",
...@@ -225,6 +226,75 @@ export default { ...@@ -225,6 +226,75 @@ export default {
); );
}, },
}, },
=======
},
data() {
return {
loginName:null,
newPwd:null,
// 用户导入参数
upload: {
// 是否显示弹出层(工作人员导入)
open: false,
// 弹出层标题(工作人员导入)
title: "导入工作人员数据",
// 是否禁用上传
isUploading: false,
// 是否更新已经存在的数据
updateSupport: 0,
// 上传的地址
url: "/office/workman/importData",
},
user: {
// 是否显示弹出层(工作人员导入)
open: false,
// 弹出层标题(工作人员导入)
title: "修改密码",
},
isExport: false,
config: {
search: [
{
name: "name",
type: "text",
label: "姓名",
fuzzy: true
},
{
name: "roomId",
type: "select",
label: "所属房间"
},
{
name: "workStatus",
type: "select",
label: "工作状态"
}
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{width: 100,label: "照片", prop: "photoPath",formatter: (row) => {
return row.photoPath != "" ? (
<el-image
style="width: 70px; height: 100px"
src={row.photoPath}
preview-src-list={[row.photoPath]}
></el-image>
) : (
"--"
);
},},
{label: "姓名", prop: "name"},
{label: "所属部门", prop: "deptName"},
{label: "所属房间", prop: "roomName"},
{label: "职位", prop: "userPost"},
>>>>>>> 39e6d56acbefe19665a6d0358d3730be6122fa01
{ {
label: "姓名", label: "姓名",
......
...@@ -47,6 +47,11 @@ ...@@ -47,6 +47,11 @@
<profiles.nacos.server-addr>192.168.0.252:8848</profiles.nacos.server-addr> <profiles.nacos.server-addr>192.168.0.252:8848</profiles.nacos.server-addr>
<profiles.nacos.group>DEFAULT_GROUP</profiles.nacos.group> <profiles.nacos.group>DEFAULT_GROUP</profiles.nacos.group>
<profiles.nacos.namespace>smart-gov</profiles.nacos.namespace> <profiles.nacos.namespace>smart-gov</profiles.nacos.namespace>
<profiles.rabbitmq.host>192.168.0.251</profiles.rabbitmq.host>
<profiles.rabbitmq.port>5672</profiles.rabbitmq.port>
<profiles.rabbitmq.username>root_mq</profiles.rabbitmq.username>
<profiles.rabbitmq.password>xhx@2022</profiles.rabbitmq.password>
<profiles.rabbitmq.virtualhost>/</profiles.rabbitmq.virtualhost>
<profiles.log.path>/home/mortals/app/logs</profiles.log.path> <profiles.log.path>/home/mortals/app/logs</profiles.log.path>
<profiles.log.level>INFO</profiles.log.level> <profiles.log.level>INFO</profiles.log.level>
<package.environment>test</package.environment> <package.environment>test</package.environment>
...@@ -63,6 +68,11 @@ ...@@ -63,6 +68,11 @@
<profiles.nacos.server-addr>172.15.28.120:8848</profiles.nacos.server-addr> <profiles.nacos.server-addr>172.15.28.120:8848</profiles.nacos.server-addr>
<profiles.nacos.group>DEFAULT_GROUP</profiles.nacos.group> <profiles.nacos.group>DEFAULT_GROUP</profiles.nacos.group>
<profiles.nacos.namespace>smart-gov</profiles.nacos.namespace> <profiles.nacos.namespace>smart-gov</profiles.nacos.namespace>
<profiles.rabbitmq.host>172.15.28.115</profiles.rabbitmq.host>
<profiles.rabbitmq.port>5672</profiles.rabbitmq.port>
<profiles.rabbitmq.username>taxi_mq</profiles.rabbitmq.username>
<profiles.rabbitmq.password>admin@2020</profiles.rabbitmq.password>
<profiles.rabbitmq.virtualhost>/</profiles.rabbitmq.virtualhost>
<profiles.log.path>/home/mortals/app/logs</profiles.log.path> <profiles.log.path>/home/mortals/app/logs</profiles.log.path>
<profiles.log.level>info</profiles.log.level> <profiles.log.level>info</profiles.log.level>
<profiles.publish.path>/home/publish</profiles.publish.path> <profiles.publish.path>/home/publish</profiles.publish.path>
......
...@@ -4,6 +4,8 @@ import java.util.Date; ...@@ -4,6 +4,8 @@ import java.util.Date;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import com.mortals.framework.model.OperateLogPdu;
import com.mortals.framework.service.IMessageProduceService;
import org.aspectj.lang.JoinPoint; import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.AfterReturning; import org.aspectj.lang.annotation.AfterReturning;
import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Aspect;
...@@ -35,14 +37,29 @@ public class OperlogAspect extends FileLogServiceImpl implements ILogService { ...@@ -35,14 +37,29 @@ public class OperlogAspect extends FileLogServiceImpl implements ILogService {
@Autowired @Autowired
private OperLogService operLogService; private OperLogService operLogService;
@Autowired
private IMessageProduceService messageProduceService;
@Override @Override
public void doHandlerLog(String platformMark, Long userId, String userName, String loginName, String requestUrl, public void doHandlerLog(String platformMark, Long userId, String userName, String loginName, String requestUrl,
String content, String ip, Date logDate) { String content, String ip, Date logDate) {
super.doHandlerLog(platformMark, userId, userName, loginName, requestUrl, content, ip, logDate); super.doHandlerLog(platformMark, userId, userName, loginName, requestUrl, content, ip, logDate);
//用户id不为空才记录操作日志 //用户id不为空才记录操作日志
if(ObjectUtils.isEmpty(userId)){ if (ObjectUtils.isEmpty(userId)) return;
operLogService.insertOperLog(ip, requestUrl, userId, userName, loginName, content); operLogService.insertOperLog(ip, requestUrl, userId, userName, loginName, content);
} OperateLogPdu operateLogPdu = new OperateLogPdu();
operateLogPdu.initAttrValue();
operateLogPdu.setIp(ip);
operateLogPdu.setRequestUrl(requestUrl);
operateLogPdu.setUserId(userId);
operateLogPdu.setUserName(userName);
operateLogPdu.setLoginName(loginName);
operateLogPdu.setPlatformMark(platformMark);
operateLogPdu.setLogDate(logDate);
operateLogPdu.setContent(content);
operateLogPdu.setOperType(1);
messageProduceService.syncOperSend(operateLogPdu);
} }
@Override @Override
......
...@@ -89,13 +89,14 @@ public class OperLogServiceImpl extends AbstractCRUDServiceImpl<OperLogDao,OperL ...@@ -89,13 +89,14 @@ public class OperLogServiceImpl extends AbstractCRUDServiceImpl<OperLogDao,OperL
break; break;
case DELETE: case DELETE:
formatterLogContent(operLogEntity, content, id, operType); formatterLogContent(operLogEntity, content, id, operType);
case SEARCH:
formatterLogContent(operLogEntity, content, id, operType);
break; break;
default: default:
operLogEntity.setOperType(OperTypeEnum.UPDATE.getValue()); operLogEntity.setOperType(OperTypeEnum.UPDATE.getValue());
operLogEntity.setContent(StringUtils.isBlank(id) ? content : content + "id:" + id); operLogEntity.setContent(StringUtils.isBlank(id) ? content : content + "id:" + id);
break; break;
} }
super.save(operLogEntity, null); super.save(operLogEntity, null);
} }
......
package com.mortals.xhx.busiz.web; package com.mortals.xhx.busiz.web;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.mortals.framework.annotation.UnAuth; import com.mortals.framework.annotation.UnAuth;
import com.mortals.framework.common.Rest; import com.mortals.framework.common.Rest;
...@@ -11,6 +12,8 @@ import com.mortals.xhx.common.pdu.device.DeviceReq; ...@@ -11,6 +12,8 @@ import com.mortals.xhx.common.pdu.device.DeviceReq;
import com.mortals.xhx.module.device.model.DeviceEntity; import com.mortals.xhx.module.device.model.DeviceEntity;
import com.mortals.xhx.module.device.model.DeviceQuery; import com.mortals.xhx.module.device.model.DeviceQuery;
import com.mortals.xhx.module.device.service.DeviceService; import com.mortals.xhx.module.device.service.DeviceService;
import com.mortals.xhx.module.room.model.RoomDeviceEntity;
import com.mortals.xhx.module.room.service.RoomDeviceService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
...@@ -19,7 +22,9 @@ import org.springframework.web.bind.annotation.RequestBody; ...@@ -19,7 +22,9 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.Arrays;
import java.util.Date; import java.util.Date;
import java.util.List;
import static com.mortals.xhx.common.key.ErrorCode.*; import static com.mortals.xhx.common.key.ErrorCode.*;
...@@ -30,6 +35,8 @@ public class DeviceCallbackController { ...@@ -30,6 +35,8 @@ public class DeviceCallbackController {
@Autowired @Autowired
private DeviceService deviceService; private DeviceService deviceService;
@Autowired
private RoomDeviceService roomDeviceService;
@PostMapping("callback") @PostMapping("callback")
@UnAuth @UnAuth
...@@ -59,6 +66,12 @@ public class DeviceCallbackController { ...@@ -59,6 +66,12 @@ public class DeviceCallbackController {
case STOP: case STOP:
deviceStop(req); deviceStop(req);
break; break;
case ONLINE:
deviceOnline(req);
break;
case OFFLINE:
deviceOffline(req);
break;
} }
} catch (Exception e) { } catch (Exception e) {
log.error("接收数据失败", e); log.error("接收数据失败", e);
...@@ -105,7 +118,7 @@ public class DeviceCallbackController { ...@@ -105,7 +118,7 @@ public class DeviceCallbackController {
if (ObjectUtils.isEmpty(deviceEntity)) { if (ObjectUtils.isEmpty(deviceEntity)) {
//不存在设备 则新增 //不存在设备 则新增
this.deviceAdd(req); this.deviceAdd(req);
}else{ } else {
log.info("设备更新~"); log.info("设备更新~");
deviceEntity.setDeviceName(req.getDeviceName()); deviceEntity.setDeviceName(req.getDeviceName());
deviceEntity.setDeviceCode(req.getDeviceCode()); deviceEntity.setDeviceCode(req.getDeviceCode());
...@@ -135,6 +148,11 @@ public class DeviceCallbackController { ...@@ -135,6 +148,11 @@ public class DeviceCallbackController {
//根据设备编码查询设备 //根据设备编码查询设备
DeviceEntity deviceEntity = checkDeviceExist(req); DeviceEntity deviceEntity = checkDeviceExist(req);
deviceService.remove(new Long[]{deviceEntity.getId()}, null); deviceService.remove(new Long[]{deviceEntity.getId()}, null);
//关联删除
RoomDeviceEntity condition = new RoomDeviceEntity();
condition.setDeviceId(deviceEntity.getId());
roomDeviceService.getDao().delete(condition);
} }
...@@ -175,6 +193,29 @@ public class DeviceCallbackController { ...@@ -175,6 +193,29 @@ public class DeviceCallbackController {
deviceService.update(deviceEntity); deviceService.update(deviceEntity);
} }
private void deviceOnline(DeviceReq req) throws AppException {
log.info("【设备上线】【请求体】--> " + JSONObject.toJSONString(req));
DeviceEntity deviceEntity = checkDeviceExist(req);
deviceEntity.setDeviceStatus(DeviceStatusEnum.在线.getValue());
deviceEntity.setUpdateTime(new Date());
deviceEntity.setUpdateUserId(1L);
deviceEntity.setUpdateTime(new Date());
deviceEntity.setUpdateUserId(1L);
deviceService.update(deviceEntity);
}
private void deviceOffline(DeviceReq req) throws AppException {
log.info("【设备离线】【请求体】--> " + JSONObject.toJSONString(req));
DeviceEntity deviceEntity = checkDeviceExist(req);
deviceEntity.setDeviceStatus(DeviceStatusEnum.离线.getValue());
deviceEntity.setUpdateTime(new Date());
deviceEntity.setUpdateUserId(1L);
deviceEntity.setUpdateTime(new Date());
deviceEntity.setUpdateUserId(1L);
deviceService.update(deviceEntity);
}
private DeviceEntity checkDeviceExist(DeviceReq req) { private DeviceEntity checkDeviceExist(DeviceReq req) {
if (ObjectUtils.isEmpty(req.getDeviceCode())) { if (ObjectUtils.isEmpty(req.getDeviceCode())) {
throw new AppException(DEVICE_CODE_IS_EMPTY, DEVICE_CODE_IS_EMPTY_CONTENT); throw new AppException(DEVICE_CODE_IS_EMPTY, DEVICE_CODE_IS_EMPTY_CONTENT);
......
...@@ -11,6 +11,7 @@ public enum OperTypeEnum { ...@@ -11,6 +11,7 @@ public enum OperTypeEnum {
SAVE(0,"添加"), SAVE(0,"添加"),
UPDATE(1,"更新"), UPDATE(1,"更新"),
DELETE(2,"删除"), DELETE(2,"删除"),
SEARCH(3,"查询"),
OTHER(-1,"其它"); OTHER(-1,"其它");
private int value; private int value;
......
...@@ -10,7 +10,9 @@ import com.mortals.xhx.common.pdu.LoginForm; ...@@ -10,7 +10,9 @@ import com.mortals.xhx.common.pdu.LoginForm;
import com.mortals.xhx.common.pdu.device.DeviceReq; import com.mortals.xhx.common.pdu.device.DeviceReq;
import com.mortals.xhx.feign.device.IDeviceFeign; import com.mortals.xhx.feign.device.IDeviceFeign;
import com.mortals.xhx.module.device.model.DeviceQuery; import com.mortals.xhx.module.device.model.DeviceQuery;
import com.mortals.xhx.module.room.model.RoomDeviceEntity;
import com.mortals.xhx.module.room.model.RoomQuery; import com.mortals.xhx.module.room.model.RoomQuery;
import com.mortals.xhx.module.room.service.RoomDeviceService;
import com.mortals.xhx.module.room.service.RoomService; import com.mortals.xhx.module.room.service.RoomService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
...@@ -51,6 +53,8 @@ public class DeviceController extends BaseCRUDJsonBodyMappingController<DeviceSe ...@@ -51,6 +53,8 @@ public class DeviceController extends BaseCRUDJsonBodyMappingController<DeviceSe
@Autowired @Autowired
private RoomService roomService; private RoomService roomService;
@Autowired
private RoomDeviceService roomDeviceService;
@Autowired @Autowired
private IDeviceFeign deviceFeign; private IDeviceFeign deviceFeign;
...@@ -179,9 +183,11 @@ public class DeviceController extends BaseCRUDJsonBodyMappingController<DeviceSe ...@@ -179,9 +183,11 @@ public class DeviceController extends BaseCRUDJsonBodyMappingController<DeviceSe
deviceReq.setDeviceCode(entity.getDeviceCode()); deviceReq.setDeviceCode(entity.getDeviceCode());
Rest<String> rest = deviceFeign.deviceCall(deviceReq, token); Rest<String> rest = deviceFeign.deviceCall(deviceReq, token);
log.info("删除结果:{}", JSON.toJSONString(rest)); log.info("删除结果:{}", JSON.toJSONString(rest));
//关联删除
RoomDeviceEntity condition = new RoomDeviceEntity();
condition.setDeviceId(entity.getId());
roomDeviceService.getDao().delete(condition);
} }
} }
private String getToken() { private String getToken() {
......
package com.mortals.xhx.module.room.service.impl; package com.mortals.xhx.module.room.service.impl;
import com.mortals.framework.model.PageInfo;
import com.mortals.xhx.module.device.model.DeviceEntity; import com.mortals.xhx.module.device.model.DeviceEntity;
import com.mortals.xhx.module.device.model.DeviceQuery; import com.mortals.xhx.module.device.model.DeviceQuery;
import com.mortals.xhx.module.device.service.DeviceService; import com.mortals.xhx.module.device.service.DeviceService;
import com.mortals.xhx.module.workman.model.WorkmanQuery;
import com.mortals.xhx.module.workman.service.WorkmanService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl; import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException; import com.mortals.framework.exception.AppException;
...@@ -19,6 +22,7 @@ import org.springframework.util.ObjectUtils; ...@@ -19,6 +22,7 @@ import org.springframework.util.ObjectUtils;
import java.util.Date; import java.util.Date;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -37,7 +41,20 @@ public class RoomServiceImpl extends AbstractCRUDServiceImpl<RoomDao, RoomEntity ...@@ -37,7 +41,20 @@ public class RoomServiceImpl extends AbstractCRUDServiceImpl<RoomDao, RoomEntity
private RoomDeviceService roomDeviceService; private RoomDeviceService roomDeviceService;
@Autowired @Autowired
private DeviceService deviceService; private DeviceService deviceService;
@Autowired
private WorkmanService workmanService;
@Override
protected void findAfter(RoomEntity params, PageInfo pageInfo, Context context, List<RoomEntity> list) throws AppException {
super.findAfter(params, pageInfo, context, list);
Map<Long, Long> collect = workmanService.find(new WorkmanQuery()).stream().collect(Collectors.groupingBy(x -> x.getRoomId(), Collectors.counting()));
list.forEach(item->{
item.setCountPerson(collect.getOrDefault(item.getId(),item.getCountPerson()));
});
}
@Override @Override
protected void saveAfter(RoomEntity entity, Context context) throws AppException { protected void saveAfter(RoomEntity entity, Context context) throws AppException {
......
...@@ -121,6 +121,11 @@ public class WorkmanServiceImpl extends AbstractCRUDServiceImpl<WorkmanDao, Work ...@@ -121,6 +121,11 @@ public class WorkmanServiceImpl extends AbstractCRUDServiceImpl<WorkmanDao, Work
uploadDeviceReq.setAction("refreshWorkman"); uploadDeviceReq.setAction("refreshWorkman");
log.info("downMsg:{}", JSON.toJSONString(uploadDeviceReq)); log.info("downMsg:{}", JSON.toJSONString(uploadDeviceReq));
messageFeign.downMsg(uploadDeviceReq); messageFeign.downMsg(uploadDeviceReq);
RoomQuery roomQuery = new RoomQuery();
roomQuery.setId(roomEntity.getId());
roomQuery.setCountPersonIncrement(-1L);
roomService.update(roomQuery,context);
} }
}); });
......
...@@ -21,6 +21,12 @@ spring: ...@@ -21,6 +21,12 @@ spring:
default-property-inclusion: NON_NULL default-property-inclusion: NON_NULL
time-zone: GMT+8 time-zone: GMT+8
date-format: yyyy-MM-dd HH:mm:ss date-format: yyyy-MM-dd HH:mm:ss
rabbitmq:
host: @profiles.rabbitmq.host@
port: @profiles.rabbitmq.port@
username: @profiles.rabbitmq.username@
password: @profiles.rabbitmq.password@
virtualHost: @profiles.rabbitmq.virtualhost@
dao: dao:
exceptiontranslation: exceptiontranslation:
enabled: false enabled: false
......
...@@ -64,13 +64,11 @@ client.global.set("Device_id", JSON.parse(response.body).data.id); ...@@ -64,13 +64,11 @@ client.global.set("Device_id", JSON.parse(response.body).data.id);
%} %}
###设备管理查看 ###设备管理查看
GET {{baseUrl}}/device/info?id={{Device_id}} GET {{baseUrl}}/device/info?id=17
Authorization: {{authToken}}
Accept: application/json Accept: application/json
###设备管理编辑 ###设备管理编辑
GET {{baseUrl}}/device/edit?id={{Device_id}} GET {{baseUrl}}/device/edit?id=17
Authorization: {{authToken}}
Accept: application/json Accept: application/json
......
...@@ -19,8 +19,7 @@ Content-Type: application/json ...@@ -19,8 +19,7 @@ Content-Type: application/json
{ {
"page":1, "page":1,
"size":-1, "size":-1
"deviceCode":"11-22-33-44"
} }
...@@ -30,16 +29,16 @@ Authorization: {{authToken}} ...@@ -30,16 +29,16 @@ Authorization: {{authToken}}
Content-Type: application/json Content-Type: application/json
{ {
"meetName":"he54lk", "meetName":"he54lk1",
"meetDate":"1684684800000", "meetDate":"2023-06-02 15:30:00",
"meetTimeStart":"1684684800000", "meetTimeStart":"2023-06-02 15:30:00",
"meetTimeEnd":"1684684800000", "meetTimeEnd":"2023-06-02 15:30:00",
"roomId":101, "roomId":101,
"roomName":"7o0iut", "roomName":"7o0iut",
"meetDeptName":"k6be71", "meetDeptName":"k6be71",
"meetStatus":0, "meetStatus":0,
"finishMethod":0, "finishMethod":0,
"remark":"lk9hlk", "remark":"lk9hlk"
} }
> {% > {%
...@@ -47,9 +46,7 @@ client.global.set("MettingRecord_id", JSON.parse(response.body).data.id); ...@@ -47,9 +46,7 @@ client.global.set("MettingRecord_id", JSON.parse(response.body).data.id);
%} %}
###会议记录查看 ###会议记录查看
GET {{baseUrl}}/metting/record/info?id={{MettingRecord_id}} GET {{baseUrl}}/metting/record/info?id=12
Authorization: {{authToken}}
Accept: application/json
###会议记录编辑 ###会议记录编辑
GET {{baseUrl}}/metting/record/edit?id={{MettingRecord_id}} GET {{baseUrl}}/metting/record/edit?id={{MettingRecord_id}}
...@@ -58,7 +55,7 @@ Accept: application/json ...@@ -58,7 +55,7 @@ Accept: application/json
###会议记录删除 ###会议记录删除
GET {{baseUrl}}/metting/record/delete?id={{MettingRecord_id}} GET {{baseUrl}}/metting/record/delete?id=12
Authorization: {{authToken}} Authorization: {{authToken}}
Accept: application/json Accept: application/json
......
...@@ -19,8 +19,7 @@ Content-Type: application/json ...@@ -19,8 +19,7 @@ Content-Type: application/json
{ {
"page":1, "page":1,
"size":1, "size":1
"deviceCode":"0E-B7-8C-0F-6E-9B"
} }
...@@ -44,7 +43,7 @@ client.global.set("Room_id", JSON.parse(response.body).data.id); ...@@ -44,7 +43,7 @@ client.global.set("Room_id", JSON.parse(response.body).data.id);
%} %}
###房间管理查看 ###房间管理查看
GET {{baseUrl}}/room/info?id={{Room_id}} GET {{baseUrl}}/room/info?id=4
Authorization: {{authToken}} Authorization: {{authToken}}
Accept: application/json Accept: application/json
......
POST http://192.168.0.252:18001/sm/file/commonupload
Content-Type: multipart/form-data; boundary=WebAppBoundary
--WebAppBoundary
Content-Disposition: form-data; name="file"; filename="file.txt"
< F://user.xlsx
--WebAppBoundary--
###
###登录 ###登录
POST {{baseUrl}}/login/login POST {{baseUrl}}/login/login
......
...@@ -20,7 +20,7 @@ Content-Type: application/json ...@@ -20,7 +20,7 @@ Content-Type: application/json
{ {
"page":1, "page":1,
"size":-1, "size":-1,
"deviceCode":"24-4C-B8-3D-56-B3" "deviceCode":"a0-9f-10-5a-e0-10"
} }
...@@ -48,8 +48,7 @@ client.global.set("Workman_id", JSON.parse(response.body).data.id); ...@@ -48,8 +48,7 @@ client.global.set("Workman_id", JSON.parse(response.body).data.id);
%} %}
###工作人员查看 ###工作人员查看
GET {{baseUrl}}/workman/info?id={{Workman_id}} GET {{baseUrl}}/workman/info?id=1
Authorization: {{authToken}}
Accept: application/json Accept: application/json
###工作人员编辑 ###工作人员编辑
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment