|
@@ -68,17 +68,17 @@
|
|
|
|
|
|
<el-table v-loading="loading" :data="recordList" @selection-change="handleSelectionChange">
|
|
<el-table v-loading="loading" :data="recordList" @selection-change="handleSelectionChange">
|
|
<el-table-column type="selection" width="55" align="center"/>
|
|
<el-table-column type="selection" width="55" align="center"/>
|
|
- <el-table-column label="任务ID" align="center" prop="id"/>
|
|
|
|
<el-table-column label="任务类型" align="center" prop="jobType"/>
|
|
<el-table-column label="任务类型" align="center" prop="jobType"/>
|
|
- <el-table-column label="任务创建人ID" align="center" prop="creatorId"/>
|
|
|
|
<el-table-column label="任务创建人姓名" align="center" prop="creatorName"/>
|
|
<el-table-column label="任务创建人姓名" align="center" prop="creatorName"/>
|
|
- <el-table-column label="任务创建部门ID" align="center" prop="deptId"/>
|
|
|
|
<el-table-column label="任务创建部门名称" align="center" prop="deptName"/>
|
|
<el-table-column label="任务创建部门名称" align="center" prop="deptName"/>
|
|
- <el-table-column label="地区ID" align="center" prop="areaId"/>
|
|
|
|
<el-table-column label="任务名称" align="center" prop="jobName"/>
|
|
<el-table-column label="任务名称" align="center" prop="jobName"/>
|
|
|
|
+ <el-table-column label="任务状态" align="center" prop="gender">
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <dict-tag :options="dict.type.lawenforcement_type" :value="scope.row.recordStatus"/>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
<el-table-column label="任务检查类型" align="center" prop="checkType"/>
|
|
<el-table-column label="任务检查类型" align="center" prop="checkType"/>
|
|
<el-table-column label="检查对象类型" align="center" prop="checkObjectType"/>
|
|
<el-table-column label="检查对象类型" align="center" prop="checkObjectType"/>
|
|
- <el-table-column label="检查对象ID" align="center" prop="checkObjectId"/>
|
|
|
|
<el-table-column label="检查对象代码" align="center" prop="checkObjectCode"/>
|
|
<el-table-column label="检查对象代码" align="center" prop="checkObjectCode"/>
|
|
<el-table-column label="检查对象名称" align="center" prop="checkObjectName"/>
|
|
<el-table-column label="检查对象名称" align="center" prop="checkObjectName"/>
|
|
<el-table-column label="检查对象联系电话" align="center" prop="checkObjectPhone"/>
|
|
<el-table-column label="检查对象联系电话" align="center" prop="checkObjectPhone"/>
|
|
@@ -86,32 +86,34 @@
|
|
<el-table-column label="检查结束时间" align="center" prop="checkEndTime"/>
|
|
<el-table-column label="检查结束时间" align="center" prop="checkEndTime"/>
|
|
<el-table-column label="检查子项数量" align="center" prop="subitemCount"/>
|
|
<el-table-column label="检查子项数量" align="center" prop="subitemCount"/>
|
|
<el-table-column label="备注" align="center" prop="remark"/>
|
|
<el-table-column label="备注" align="center" prop="remark"/>
|
|
- <el-table-column label="是否核验(0未核验 1已核验 2无法核验)" align="center" prop="verify"/>
|
|
|
|
- <el-table-column label="无法核验原因" align="center" prop="unableVerifyReason"/>
|
|
|
|
- <el-table-column label="扫码人身份证号" align="center" prop="scanId"/>
|
|
|
|
- <el-table-column label="扫码人姓名" align="center" prop="scanName"/>
|
|
|
|
- <el-table-column label="扫码时间" align="center" prop="scanTime"/>
|
|
|
|
- <el-table-column label="核验人ID" align="center" prop="verifyPeopleId"/>
|
|
|
|
- <el-table-column label="核验人姓名" align="center" prop="verifyPeopleName"/>
|
|
|
|
- <el-table-column label="核验时间" align="center" prop="verifyTime"/>
|
|
|
|
- <el-table-column label="评价(0待评价 1 好评 2一般 3差评)" align="center" prop="evaluation"/>
|
|
|
|
- <el-table-column label="评价内容" align="center" prop="evaluationContent"/>
|
|
|
|
- <el-table-column label="评价时间" align="center" prop="evaluationTime"/>
|
|
|
|
- <el-table-column label="是否有检查结果(0未填 1已填)" align="center" prop="result"/>
|
|
|
|
- <el-table-column label="检查结果录入时间" align="center" prop="resultTime"/>
|
|
|
|
- <el-table-column label="检查结果录入人员" align="center" prop="resultPersonId"/>
|
|
|
|
- <el-table-column label="任务状态(1待核验 2待填报 3已完成)" align="center" prop="status"/>
|
|
|
|
- <el-table-column label="是否延续检查" align="center" prop="isLast"/>
|
|
|
|
- <el-table-column label="原任务Id" align="center" prop="jobId"/>
|
|
|
|
- <el-table-column label="延续任务类型" align="center" prop="lastJobType"/>
|
|
|
|
- <el-table-column label="数据来源" align="center" prop="source"/>
|
|
|
|
- <el-table-column label="创建方式(1自建,2API对接;3数据同步)" align="center" prop="createMethod"/>
|
|
|
|
- <el-table-column label="是否跨部门" align="center" prop="isCrossDept"/>
|
|
|
|
- <el-table-column label="设备id" align="center" prop="deviceId"/>
|
|
|
|
- <el-table-column label="设备名称" align="center" prop="deviceName"/>
|
|
|
|
|
|
+ <el-table-column label="创建方式" align="center">
|
|
|
|
+ <template v-slot="scope">
|
|
|
|
+ <span v-if="scope.row.createMethod === 1">自建</span>
|
|
|
|
+ <span v-else-if="scope.row.createMethod === 2">API对接</span>
|
|
|
|
+ <span v-else-if="scope.row.createMethod === 3">数据同步</span>
|
|
|
|
+ <span v-else>未知方式</span>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
<el-button
|
|
<el-button
|
|
|
|
+ v-if="scope.row.recordStatus === 'lawenforcement_type_1' || scope.row.recordStatus === 'lawenforcement_type_3'"
|
|
|
|
+ size="mini"
|
|
|
|
+ type="text"
|
|
|
|
+ icon="el-icon-paper-plus"
|
|
|
|
+ @click="showDispatchDialog(scope.row)"
|
|
|
|
+ >派发
|
|
|
|
+ </el-button>
|
|
|
|
+ <el-button
|
|
|
|
+ v-if="scope.row.recordStatus === 'lawenforcement_type_6'"
|
|
|
|
+ size="mini"
|
|
|
|
+ type="text"
|
|
|
|
+ icon="el-icon-paper-plus"
|
|
|
|
+ @click="showBindDeviceDialog(scope.row)"
|
|
|
|
+ >绑定设备
|
|
|
|
+ </el-button>
|
|
|
|
+ <el-button
|
|
|
|
+ v-if="scope.row.createMethod === 1"
|
|
size="mini"
|
|
size="mini"
|
|
type="text"
|
|
type="text"
|
|
icon="el-icon-edit"
|
|
icon="el-icon-edit"
|
|
@@ -120,6 +122,7 @@
|
|
>修改
|
|
>修改
|
|
</el-button>
|
|
</el-button>
|
|
<el-button
|
|
<el-button
|
|
|
|
+ v-if="scope.row.createMethod === 1"
|
|
size="mini"
|
|
size="mini"
|
|
type="text"
|
|
type="text"
|
|
icon="el-icon-delete"
|
|
icon="el-icon-delete"
|
|
@@ -253,14 +256,81 @@
|
|
<el-button @click="cancel">取 消</el-button>
|
|
<el-button @click="cancel">取 消</el-button>
|
|
</div>
|
|
</div>
|
|
</el-dialog>
|
|
</el-dialog>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <!-- 派发事件弹窗 -->
|
|
|
|
+ <el-dialog :visible.sync="dialogVisible" title="派发任务">
|
|
|
|
+ <el-form :model="form">
|
|
|
|
+ <el-form-item label="选择部门">
|
|
|
|
+<!-- <el-select v-model="dispatchForm.department" placeholder="请选择部门">
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="item in departments"
|
|
|
|
+ :key="item.id"
|
|
|
|
+ :label="item.name"
|
|
|
|
+ :value="item.id"
|
|
|
|
+ />
|
|
|
|
+ </el-select>-->
|
|
|
|
+ </el-form-item>
|
|
|
|
+
|
|
|
|
+ <el-form-item label="选择人员">
|
|
|
|
+<!-- <el-select v-model="dispatchForm.person" placeholder="请选择人员">
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="item in personnel"
|
|
|
|
+ :key="item.id"
|
|
|
|
+ :label="item.name"
|
|
|
|
+ :value="item.id"
|
|
|
|
+ />
|
|
|
|
+ </el-select>-->
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-form>
|
|
|
|
+ <div slot="footer">
|
|
|
|
+ <el-button @click="dialogVisible = false">取消</el-button>
|
|
|
|
+ <el-button type="primary" @click="handleDispatch">确定</el-button>
|
|
|
|
+ </div>
|
|
|
|
+ </el-dialog>
|
|
|
|
+
|
|
|
|
+ <!-- 绑定设备弹窗 -->
|
|
|
|
+ <el-dialog :visible.sync="bindDialogVisible" title="绑定设备">
|
|
|
|
+ <el-form>
|
|
|
|
+ <el-form-item label="任务名称" prop="jobName">
|
|
|
|
+ <el-input v-model="form.jobName" placeholder="请输入任务名称"/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="设备信息" prop="deviceId">
|
|
|
|
+ <el-select v-model="form.deviceId" @change="onDeviceChange" placeholder="请选择设备">
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="item in deviceList"
|
|
|
|
+ :key="item.cameraCode"
|
|
|
|
+ :label="item.cameraName"
|
|
|
|
+ :value="item.cameraCode"
|
|
|
|
+ />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-form>
|
|
|
|
+ <div slot="footer">
|
|
|
|
+ <el-button @click="bindDialogVisible = false">取消</el-button>
|
|
|
|
+ <el-button type="primary" @click="submitBindHandle">确定</el-button>
|
|
|
|
+ </div>
|
|
|
|
+ </el-dialog>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
-import {addRecord, delRecord, getRecord, listRecord, updateRecord} from "@/api/lawenforcement/record";
|
|
|
|
|
|
+import {
|
|
|
|
+ addRecord, addRecordLog,
|
|
|
|
+ delRecord,
|
|
|
|
+ getDeivceList,
|
|
|
|
+ getPersonsList,
|
|
|
|
+ getRecord,
|
|
|
|
+ listRecord,
|
|
|
|
+ updateRecord
|
|
|
|
+} from "@/api/lawenforcement/record";
|
|
|
|
+import dict from "@/utils/dict";
|
|
|
|
|
|
export default {
|
|
export default {
|
|
name: "Record",
|
|
name: "Record",
|
|
|
|
+ dicts: [
|
|
|
|
+ 'lawenforcement_type'
|
|
|
|
+ ],
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
// 遮罩层
|
|
// 遮罩层
|
|
@@ -281,54 +351,20 @@ export default {
|
|
title: "",
|
|
title: "",
|
|
// 是否显示弹出层
|
|
// 是否显示弹出层
|
|
open: false,
|
|
open: false,
|
|
|
|
+ dialogVisible: false,
|
|
|
|
+ bindDialogVisible: false,
|
|
// 查询参数
|
|
// 查询参数
|
|
queryParams: {
|
|
queryParams: {
|
|
pageNum: 1,
|
|
pageNum: 1,
|
|
pageSize: 10,
|
|
pageSize: 10,
|
|
- jobType: null,
|
|
|
|
- creatorId: null,
|
|
|
|
- creatorName: null,
|
|
|
|
- deptId: null,
|
|
|
|
- deptName: null,
|
|
|
|
- areaId: null,
|
|
|
|
- jobName: null,
|
|
|
|
- checkType: null,
|
|
|
|
- checkObjectType: null,
|
|
|
|
- checkObjectId: null,
|
|
|
|
- checkObjectCode: null,
|
|
|
|
- checkObjectName: null,
|
|
|
|
- checkObjectPhone: null,
|
|
|
|
- checkStartTime: null,
|
|
|
|
- checkEndTime: null,
|
|
|
|
- subitemCount: null,
|
|
|
|
- verify: null,
|
|
|
|
- unableVerifyReason: null,
|
|
|
|
- scanId: null,
|
|
|
|
- scanName: null,
|
|
|
|
- scanTime: null,
|
|
|
|
- verifyPeopleId: null,
|
|
|
|
- verifyPeopleName: null,
|
|
|
|
- verifyTime: null,
|
|
|
|
- evaluation: null,
|
|
|
|
- evaluationContent: null,
|
|
|
|
- evaluationTime: null,
|
|
|
|
- result: null,
|
|
|
|
- resultTime: null,
|
|
|
|
- resultPersonId: null,
|
|
|
|
- status: null,
|
|
|
|
- isLast: null,
|
|
|
|
- jobId: null,
|
|
|
|
- lastJobType: null,
|
|
|
|
- source: null,
|
|
|
|
- createMethod: null,
|
|
|
|
- isCrossDept: null,
|
|
|
|
- deviceId: null,
|
|
|
|
- deviceName: null
|
|
|
|
|
|
+ jobName: null
|
|
},
|
|
},
|
|
// 表单参数
|
|
// 表单参数
|
|
form: {},
|
|
form: {},
|
|
// 表单校验
|
|
// 表单校验
|
|
- rules: {}
|
|
|
|
|
|
+ rules: {},
|
|
|
|
+ // 执法设备列表
|
|
|
|
+ deviceList: []
|
|
};
|
|
};
|
|
},
|
|
},
|
|
created() {
|
|
created() {
|
|
@@ -466,6 +502,48 @@ export default {
|
|
this.download('lawenforcement/record/export', {
|
|
this.download('lawenforcement/record/export', {
|
|
...this.queryParams
|
|
...this.queryParams
|
|
}, `record_${new Date().getTime()}.xlsx`)
|
|
}, `record_${new Date().getTime()}.xlsx`)
|
|
|
|
+ },
|
|
|
|
+ /** 派发按钮事件*/
|
|
|
|
+ showDispatchDialog(row) {
|
|
|
|
+ // getPersonsList(row).then(res=>{
|
|
|
|
+ console.log("派发工单")
|
|
|
|
+ // res.data
|
|
|
|
+ this.dialogVisible = true;
|
|
|
|
+ // })
|
|
|
|
+ },
|
|
|
|
+ /** 派发工单提交 */
|
|
|
|
+ handleDispatch() {
|
|
|
|
+ // 处理派发逻辑,这里可以写你的逻辑,比如保存数据或者提交请求
|
|
|
|
+ console.log("派发信息");
|
|
|
|
+ this.dialogVisible = false;
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ /** 绑定设备事件 */
|
|
|
|
+ showBindDeviceDialog(row){
|
|
|
|
+ /* 根据部门id获取执法设备 */
|
|
|
|
+ getDeivceList().then(res=>{
|
|
|
|
+ this.deviceList = res.data
|
|
|
|
+ this.form.id = row.id
|
|
|
|
+ this.form.jobName = row.jobName
|
|
|
|
+ this.bindDialogVisible = true;
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ /** 选中设备事件 */
|
|
|
|
+ onDeviceChange(value){
|
|
|
|
+ const selectedDevice = this.deviceList.find(item => item.cameraCode === value);
|
|
|
|
+ this.form.deviceName = selectedDevice ? selectedDevice.cameraName : ''; // 更新设备名称
|
|
|
|
+ // this.form.deviceId = selectedDevice.cameraCode
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ /** 绑定设备提交 */
|
|
|
|
+ submitBindHandle(){
|
|
|
|
+ console.log(this.form)
|
|
|
|
+ this.bindDialogVisible = false;
|
|
|
|
+ addRecordLog(this.form).then(res=>{
|
|
|
|
+ console.log(res)
|
|
|
|
+ })
|
|
}
|
|
}
|
|
}
|
|
}
|
|
};
|
|
};
|