diff --git a/src/api/monitor/index.ts b/src/api/monitor/index.ts index d12f672..3901b86 100644 --- a/src/api/monitor/index.ts +++ b/src/api/monitor/index.ts @@ -1,7 +1,7 @@ // WFProcess 流程模版基本信息 import { defHttp } from '@/utils/http/axios'; -import { caseFlowLogParams , flowLogModel} from './model/index' +import { caseFlowLogParams , flowLogModel , droneCaseDealModel ,droneCaseDealParams} from './model/index' enum Api { // 获取案件详情步骤条 @@ -12,7 +12,8 @@ enum Api { GetCaseInfo = '/api/DroneCaseinfo/GetCaseInfo', // 案件列表 LoadCaseInfoList = '/api/DroneCaseinfo/LoadCaseInfoList', - + // 获取GeoJson图层 + GetDroneGeoJson='/api/DroneCaseinfo/GetDroneGeoJson' } /** @@ -24,8 +25,8 @@ enum Api { /** * @description: getCaseFlowLog */ -export function getDroneCaseDeal(params?: caseFlowLogParams) { - return defHttp.get({ url: Api.GetDroneCaseDeal, params }); +export function getDroneCaseDeal(params?: droneCaseDealParams) { + return defHttp.get({ url: Api.GetDroneCaseDeal, params }); } /** * @description: getCaseFlowLog @@ -39,4 +40,11 @@ export function getCaseInfo(params?: caseFlowLogParams) { export function getCaseInfoList(params?: caseFlowLogParams) { return defHttp.get({ url: Api.LoadCaseInfoList, params }); } +/** + * @description: getCaseFlowLog + */ +export function getDroneGeoJson(params?: caseFlowLogParams) { + return defHttp.get({ url: Api.GetDroneGeoJson, params }); +} + diff --git a/src/api/monitor/model/index.ts b/src/api/monitor/model/index.ts index 0c2f53c..726ed4f 100644 --- a/src/api/monitor/model/index.ts +++ b/src/api/monitor/model/index.ts @@ -1,6 +1,9 @@ export interface caseFlowLogParams { id?: string; } +export interface droneCaseDealParams{ + caseid?:string; +} export interface flowLog { name: string; time: string; @@ -9,3 +12,23 @@ export interface flowLog { state?:string; } export type flowLogModel = flowLog[]; + +export interface fileList{ + filePath?:string | undefined; + s_filePath?:string; +} +export type fileListModel = fileList[]; + +export type droneCaseDealModel = { + video_list?: any; + pic_info_list?: any; + after_pic_list?: any; + remove_video_list?: any; + evidence_file_list?: any; + boundary_pic_list?: any; + punish_pic_list?: any; + payment_pic_list?: any; + agree_checkout_pic_list?: any; + checkout_pic_list?: any; + +} diff --git a/src/assets/images/icon_fly2.png b/src/assets/images/icon_fly2.png new file mode 100644 index 0000000..180449d Binary files /dev/null and b/src/assets/images/icon_fly2.png differ diff --git a/src/views/demo/monitor/caselist/index.vue b/src/views/demo/monitor/caselist/index.vue index d5ab45a..c1e823d 100644 --- a/src/views/demo/monitor/caselist/index.vue +++ b/src/views/demo/monitor/caselist/index.vue @@ -39,7 +39,7 @@ import { PermissionBtn } from '@/components/PermissionBtn/index'; import { searchFormSchema, columns } from './list.data'; import { BasicModal, useModal } from '@/components/Modal'; - import { CaseView } from '../index'; + import { CaseView } from '@/views/demo/monitor/index'; const { createConfirm, createMessage } = useMessage(); const searchInfo = reactive({}); diff --git a/src/views/demo/monitor/caseview/index.vue b/src/views/demo/monitor/caseview/index.vue index 67aba88..be59a78 100644 --- a/src/views/demo/monitor/caseview/index.vue +++ b/src/views/demo/monitor/caseview/index.vue @@ -6,7 +6,6 @@ type="navigation" size="small" :style="stepStyle" - @change="setpChange" >
- - - - -
伪变化没有案件办理信息
- -
- +
+ + + + + + + + + + + + + +
伪变化没有案件办理信息
+
+ + + + + + + + + + + + + + + + + + + + + {{ detailData.drawback_description }} + + + +
+ +
@@ -44,80 +149,63 @@ // 拟拆除 202404181541067344 import { ref, onMounted, reactive, watch } from 'vue'; import { getCaseFlowLog, getCaseInfo, getDroneCaseDeal } from '@/api/monitor/index'; + import { fileListModel, fileList } from '@/api/monitor/model/index'; import { CollapseContainer } from '@/components/Container'; - import { Issue, Inspect, Audit, Dismantle } from '../index'; + import { + Issue, + Inspect, + Audit, + Dismantle, + MapDetail, + Evidence, + Investigate, + Procedure, + } from '../index'; const BASE_IMAGE_URL = ref('http://192.168.104:9011'); const current = ref(0); - const currentName = ref('下发'); const stepStyle = ref({ marginBottom: '60px', boxShadow: '0px -1px 0 0 #e8e8e8 inset', }); + const labelStyle = ref({ + width: '100px', + }); const props = defineProps({ caseId: String, }); + console.log(props); watch( () => props.caseId, (newVal, oldVal) => { - // getCaseFlowLogData(); + console.log(newVal); + getCaseFlowLogData(); loadDetailCaseInfo(); getCaseHandleInfo(); }, ); - const descriptionTitle = ref('案件下发信息'); const detailData = ref(); const caseHandleInfo = ref(); const playerOptions = ref(); //现场照片 - const threadImageList = ref([]); + const threadImageList = ref([]); // 整改后、处理后照片 - const threadAfterImageList = ref([]); + const threadAfterImageList = ref([]); // 视频 const videoOptions = ref(); //合法举证材料列表 - const evidenceFileList = ref([]); + const evidenceFileList = ref([]); // 勘测定界图 - const boundaryImageList = ref([]); + const boundaryImageList = ref([]); //处罚通知书照片 - const punishImageList = ref([]); + const punishImageList = ref([]); //交罚款通知书照片 - const paymentImageList = ref([]); + const paymentImageList = ref([]); //政府同意完善手续证明照片 - const agreeImageList = ref([]); + const agreeImageList = ref([]); //办理手续证明照片 - const checkoutImageList = ref([]); + const checkoutImageList = ref([]); - const flowLog = ref([ - { - status: 1, - name: '下发', - user_name: '孙月芝', - state: 'finish', - time: '2024-04-23 09:22:51', - }, - { - status: 1, - name: '核查', - user_name: '', - time: '', - state: 'finish', - }, - { name: '伪变化', status: 1, time: '', user_name: '', state: 'finish' }, - { - status: 1, - name: '审核', - user_name: '', - state: 'finish', - time: '', - }, - { - status: 1, - name: '归档', - user_name: '', - state: 'finish', - time: '', - }, - ]); + const flowLog = ref(); // 获取步骤条数据 async function getCaseFlowLogData() { current.value = 0; @@ -128,7 +216,7 @@ name: '伪变化', status: 1, time: '', - state: '', + state: 'finish', user_name: '', }; flowLog.value.splice(2, 0, obj); @@ -142,237 +230,20 @@ flowLog.value[index].state = 'wait'; } }); - if (current.value == 0) { - current.value = 1; + if (current.value != 0) { + current.value--; } - flowLog.value[current.value - 1].state = 'success'; } // 获取详情 async function loadDetailCaseInfo() { - // const data = await getCaseInfo({id:props.caseId}) - const data = { - lng: 118.042605, - lat: 35.10077, - work_area: '', - info: { - id: 'a310575e-9734-42cb-a3f2-e3361eb32505', - case_no: '202404221357378830', - case_name: null, - case_description: '豹窝村 疑似新增简易棚', - start_time: null, - end_time: null, - address: '', - lng: 118.042415, - lat: 35.100842, - typeid: '64560cc6-0ce9-4fc0-a6de-31d6c83892cc', - typename: '非农化-建设', - handle_status_id: 1, - handle_status_name: '待审核', - case_status_id: null, - case_status_name: null, - createtime: '2024-04-22 13:57:37', - createuser: 'f10c0e32-8e53-4ec8-8712-e93c2f07488b', - createusername: '葛孝城', - drone_no: null, - deal_userid: '356d6ae4-bf0e-4a37-8a7f-f7f291894ba2', - deal_username: '王大刚', - is_delete: 0, - countyid: 'e49b02f6-70b0-4f47-bdda-41a69002be11', - countyname: '费县', - streetid: 'c0069852-a10c-4017-b8da-3386c165968e', - streetname: '马庄镇', - communityid: 'f2b31306-655a-4558-8c0b-bc683dd2cf17', - communityname: '豹窝村', - remark: '疑似新建', - is_closed: 0, - area: '35.79', - is_illegal: 2, - close_user: null, - close_time: null, - identification_user: '许婷', - identification_time: '2024-04-22 14:11:19', - is_intact: 1, - close_userid: null, - identification_userid: '834ff436-d931-4da9-9c4f-859e5c90b369', - verifyuserid: null, - verifyuser: null, - verifytime: null, - is_improve: 0, - improve_reason: null, - is_dispense: null, - dispense_userid: null, - dispense_time: null, - dispense_username: null, - verifystatus: 0, - verifystatusname: '国土所长(乡镇)', - is_checked: null, - deal_time: '2024-04-22 16:51:32', - pre_phase_time: '2024-04-22 00:00:00', - later_phase_time: '2024-04-22 00:00:00', - pre_phase_img: '', - later_phase_img: '', - is_verification: null, - verification_userid: null, - verification_username: null, - verification_time: null, - is_drawback: null, - drawbackcount: null, - back_to_userid: null, - back_to_username: null, - drawback_type: null, - drawback_description: null, - is_tentative_complete: null, - tentative_userid: null, - tentative_username: null, - tentative_time: null, - is_examine: 1, - examiner_id: '356d6ae4-bf0e-4a37-8a7f-f7f291894ba2', - examiner_name: '王大刚', - examine_time: '2024-04-22 16:51:32', - measure_name: null, - }, - pic_list: [ - 'DroneEnforcement\\2024\\20240422\\2024042213573513520131.png', - 'DroneEnforcement\\2024\\20240422\\2024042214105714450132.jpg', - 'DroneEnforcement\\2024\\20240422\\2024042214110534770120.jpg', - ], - video_list: [], - relationCaseNo: [], - tags: [], - pics: [ - { - id: '9f94cde6-dcf9-42fe-8ed5-097ecd7d053f', - path: 'DroneEnforcement\\2024\\20240422\\2024042213573513520131.png', - type: 0, - tablename: 'drone_caseinfo', - createtime: '2024-04-22 13:57:38', - createuser: 'f10c0e32-8e53-4ec8-8712-e93c2f07488b', - createusername: '葛孝城', - is_delete: 0, - relid: 'a310575e-9734-42cb-a3f2-e3361eb32505', - latitude: null, - longitude: null, - angle: null, - tag: null, - }, - { - id: '643781da-c7ba-4591-ade7-1413630f7a6f', - path: 'DroneEnforcement\\2024\\20240422\\2024042214105714450132.jpg', - type: 0, - tablename: 'drone_caseinfo', - createtime: '2024-04-22 14:11:15', - createuser: '834ff436-d931-4da9-9c4f-859e5c90b369', - createusername: '许婷', - is_delete: 0, - relid: 'a310575e-9734-42cb-a3f2-e3361eb32505', - latitude: null, - longitude: null, - angle: null, - tag: null, - }, - { - id: 'b104cfd0-6ff1-48af-a6f4-ee960930b947', - path: 'DroneEnforcement\\2024\\20240422\\2024042214110534770120.jpg', - type: 0, - tablename: 'drone_caseinfo', - createtime: '2024-04-22 14:11:15', - createuser: '834ff436-d931-4da9-9c4f-859e5c90b369', - createusername: '许婷', - is_delete: 0, - relid: 'a310575e-9734-42cb-a3f2-e3361eb32505', - latitude: null, - longitude: null, - angle: null, - tag: null, - }, - ], - videos: [], - }; + const data = await getCaseInfo({ id: props.caseId }); console.log(data); detailData.value = data; } // 获取处理详情 async function getCaseHandleInfo() { - // const data = await getDroneCaseDeal({ id: props.caseId }); - const data = { - is_temp_save: null, - info: { - id: '44576eda-405e-4029-b0b5-afe217022a5b', - caseid: '17f33737-3d89-43be-95fe-16fdbcbe11c8', - opinion: null, - result: null, - result_name: '实地未变化', - opinion_name: null, - createtime: '2022-05-22 16:37:10', - createuser: '4370859c-7c63-4c04-9d07-90a483aa376c', - createusername: '王昌福', - is_delete: 0, - is_assist: 0, - assist_people: null, - assist_company: null, - measure_name: '其他', - illegal_contact: '王贵安', - illegal_contact_phone: '15964889218', - actual_scene_case: '烟苗培育鹏', - investigation_type: null, - investigation_result: null, - registr_number: null, - is_build_complete: null, - evidence_file_name: null, - evidence_file_number: null, - evidence_file_indate: null, - actual_use_to: null, - pseudo_change_reason: null, - illegal_contact_idcard: null, - contacts_people: null, - contacts_phone: null, - scene_verification_condition: null, - scene_deal_condition: null, - expiry_date: null, - build_structure: null, - actual_area: null, - is_have_build: null, - is_forever_build: null, - transactor_id: null, - transactor_name: null, - transact_time: null, - examiner_id: null, - examiner_name: null, - examine_time: null, - illegal_type: null, - procedure_indate: null, - is_out_boundary: null, - is_over_floor: null, - is_have_checkout_condition: null, - remark: '', - }, - pic_info_list: [ - { - filePath: 'DroneEnforcement\\2022\\20220522\\2022052216365719870132.jpeg', - latitude: '35.286084', - longitude: '117.84411', - angle: '299.34375', - }, - { - filePath: 'DroneEnforcement\\2022\\20220522\\2022052216370332790074.jpeg', - latitude: '35.286084', - longitude: '117.84411', - angle: '270.0', - }, - ], - after_pic_list: [], - evidence_file_list: [], - punish_pic_list: [], - payment_pic_list: [], - agree_checkout_pic_list: [], - checkout_pic_list: [], - boundary_pic_list: [], - video_list: [], - remove_video_list: [], - handle_status_id: 2, - is_illegal: 0, - can_verify: null, - }; + const data = await getDroneCaseDeal({ caseid: props.caseId }); + console.log(data); caseHandleInfo.value = data; if (caseHandleInfo.value.is_illegal == 0) { caseHandleInfo.value.is_illegal = '合法'; @@ -411,7 +282,6 @@ }, }; playerOptions.value.push(options); - console.log(playerOptions); }); } // 现场照片 @@ -430,16 +300,16 @@ // 处理后照片 整改后照片 恢复后照片 if (data.after_pic_list.length > 0) { - data.after_pic_list.forEach((item: { filePath: string }) => { - threadAfterImageList.value.push(item.filePath); + threadAfterImageList.value = []; + data.after_pic_list.forEach((item: fileList) => { + threadAfterImageList.value.push(BASE_IMAGE_URL + '/S_' + item.filePath); }); } - for (let i = 0; i < threadAfterImageList.value.length; i++) { - threadAfterImageList.value[i] = BASE_IMAGE_URL + '/S_' + threadAfterImageList.value[i]; - } + // 处理后视频 videoOptions.value = []; if (data.remove_video_list.length > 0) { + videoOptions.value = []; data.remove_video_list.forEach((item, index) => { let options = { playbackRates: [0.5, 1.0, 1.5, 2.0], //可选择的播放速度 @@ -467,110 +337,89 @@ }, }; videoOptions.value.push(options); - // this.videoList.push(item) - // console.log("playOptions",playerOptions.value); }); } // 合法 - 举证材料合法文件 evidence_file_list if (data.evidence_file_list.length > 0) { - data.evidence_file_list.forEach((item: { filePath: string }) => { - evidenceFileList.value.push(item.filePath); - }); - for (let i = 0; i < evidenceFileList.value.length; i++) { + evidenceFileList.value = []; + data.evidence_file_list.forEach((item: fileList) => { let obj = { - filePath: BASE_IMAGE_URL + '/' + evidenceFileList.value[i], - s_filePath: BASE_IMAGE_URL + '/' + evidenceFileList.value[i], + filePath: BASE_IMAGE_URL + '/' + item.filePath, + s_filePath: BASE_IMAGE_URL + '/' + item.filePath, }; - evidenceFileList.value[i] = obj; - } + evidenceFileList.value.push(obj); + }); } if (data.boundary_pic_list.length > 0) { + boundaryImageList.value = []; data.boundary_pic_list.forEach((item) => { - boundaryImageList.value.push(item); - }); - for (let i = 0; i < boundaryImageList.value.length; i++) { let obj = { - filePath: BASE_IMAGE_URL + '/' + boundaryImageList.value[i], - s_filePath: BASE_IMAGE_URL + '/' + boundaryImageList.value[i], + filePath: BASE_IMAGE_URL + '/' + item, + s_filePath: BASE_IMAGE_URL + '/' + item, }; - console.log('boundary', obj); - boundaryImageList.value[i] = obj; - console.log('boundary', boundaryImageList.value); - } + boundaryImageList.value.push(obj); + }); } // 违法 查处 - 处罚通知书 punish_pic_list if (data.punish_pic_list.length > 0) { + punishImageList.value = []; data.punish_pic_list.forEach((item) => { - punishImageList.value.push(item); - }); - for (let i = 0; i < punishImageList.value.length; i++) { let obj = { - filePath: BASE_IMAGE_URL + '/' + punishImageList.value[i], - s_filePath: BASE_IMAGE_URL + '/S_' + punishImageList.value[i], + filePath: BASE_IMAGE_URL + '/' + item, + s_filePath: BASE_IMAGE_URL + '/S_' + item, }; - punishImageList.value[i] = obj; - } + punishImageList.value.push(obj); + }); } // 违法 查处 - 交款通知书 payment_pic_list if (data.payment_pic_list.length > 0) { + paymentImageList.value = []; data.payment_pic_list.forEach((item) => { - paymentImageList.value.push(item); - }); - for (let i = 0; i < paymentImageList.value.length; i++) { let obj = { - filePath: BASE_IMAGE_URL + '/' + paymentImageList.value[i], - s_filePath: BASE_IMAGE_URL + '/S_' + paymentImageList.value[i], + filePath: BASE_IMAGE_URL + '/' + item, + s_filePath: BASE_IMAGE_URL + '/S_' + item, }; - paymentImageList.value[i] = obj; - } + paymentImageList.value.push(obj); + }); } // 违法 完善手续 - 政府同意完善手续证明 agree_checkout_pic_list if (data.agree_checkout_pic_list.length > 0) { + agreeImageList.value = []; data.agree_checkout_pic_list.forEach((item) => { - agreeImageList.value.push(item); - }); - for (let i = 0; i < agreeImageList.value.length; i++) { let obj = { - filePath: BASE_IMAGE_URL + '/' + agreeImageList.value[i], - s_filePath: BASE_IMAGE_URL + '/S_' + agreeImageList.value[i], + filePath: BASE_IMAGE_URL + '/' + item, + s_filePath: BASE_IMAGE_URL + '/S_' + item, }; - agreeImageList.value[i] = obj; - } + agreeImageList.value.push(obj); + }); } // 违法 完善手续 - 办理手续 checkout_pic_list if (data.checkout_pic_list.length > 0) { + checkoutImageList.value = []; data.checkout_pic_list.forEach((item) => { - checkoutImageList.value.push(item); - }); - for (let i = 0; i < checkoutImageList.value.length; i++) { let obj = { - filePath: BASE_IMAGE_URL + '/' + checkoutImageList.value[i], - s_filePath: BASE_IMAGE_URL + '/S_' + checkoutImageList.value[i], + filePath: BASE_IMAGE_URL + '/' + item, + s_filePath: BASE_IMAGE_URL + '/S_' + item, }; - checkoutImageList.value[i] = obj; - // checkoutImageList.value_a[i] =BASE_IMAGE_URL+"/"+checkoutImageList.value[i]; - // checkoutImageList.value[i] =BASE_IMAGE_URL+"/S_"+checkoutImageList.value[i]; - } + checkoutImageList.value.push(obj); + }); } } - function setpChange(current) { - currentName.value = flowLog.value[current].name; - descriptionTitle.value = '案件' + flowLog.value[current].name + '信息'; - } + onMounted(() => { - // getCaseFlowLogData(); + getCaseFlowLogData(); loadDetailCaseInfo(); getCaseHandleInfo(); }); diff --git a/src/views/demo/monitor/caseview/model.ts b/src/views/demo/monitor/caseview/model.ts index 0d9f409..a920d91 100644 --- a/src/views/demo/monitor/caseview/model.ts +++ b/src/views/demo/monitor/caseview/model.ts @@ -36,6 +36,14 @@ export interface infoObj{ build_structure?: string; illegal_type?: string; remark?: string; + transactor_name?: string; + transact_time?: string; + evidence_file_name?: string; + evidence_file_number?: string; + evidence_file_indate?: string; + illegal_contact_idcard?: string; + registr_number?: string; + procedure_indate?:string; } export interface caseHandleInfoObj { info:infoObj diff --git a/src/views/demo/monitor/caseview/src/evidence.vue b/src/views/demo/monitor/caseview/src/evidence.vue new file mode 100644 index 0000000..ac27c34 --- /dev/null +++ b/src/views/demo/monitor/caseview/src/evidence.vue @@ -0,0 +1,97 @@ + + + + \ No newline at end of file diff --git a/src/views/demo/monitor/caseview/src/inspect.vue b/src/views/demo/monitor/caseview/src/inspect.vue index 53e519d..ccc2c25 100644 --- a/src/views/demo/monitor/caseview/src/inspect.vue +++ b/src/views/demo/monitor/caseview/src/inspect.vue @@ -220,6 +220,7 @@ }, }, }); + console.log(props) caseHandleInfo.value = props.data; playerOptions.value = props.playerOptions; threadImageList.value = props.threadImageList; @@ -229,7 +230,6 @@ 'https://picsum.photos/id/68/346/216', ]); - watch( () => props.data, (newVal, oldVal) => { diff --git a/src/views/demo/monitor/caseview/src/investigate.vue b/src/views/demo/monitor/caseview/src/investigate.vue new file mode 100644 index 0000000..485af1e --- /dev/null +++ b/src/views/demo/monitor/caseview/src/investigate.vue @@ -0,0 +1,100 @@ + + + + \ No newline at end of file diff --git a/src/views/demo/monitor/caseview/src/mapDetail.vue b/src/views/demo/monitor/caseview/src/mapDetail.vue new file mode 100644 index 0000000..b769908 --- /dev/null +++ b/src/views/demo/monitor/caseview/src/mapDetail.vue @@ -0,0 +1,205 @@ + + + diff --git a/src/views/demo/monitor/caseview/src/procedure.vue b/src/views/demo/monitor/caseview/src/procedure.vue new file mode 100644 index 0000000..34b5567 --- /dev/null +++ b/src/views/demo/monitor/caseview/src/procedure.vue @@ -0,0 +1,111 @@ + + + diff --git a/src/views/demo/monitor/index.ts b/src/views/demo/monitor/index.ts index 34149ed..da7dd3a 100644 --- a/src/views/demo/monitor/index.ts +++ b/src/views/demo/monitor/index.ts @@ -1,5 +1,22 @@ +// 案件详情首页 export { default as CaseView } from './caseview/index.vue'; +// 【案件下发信息】 export { default as Issue } from './caseview/src/issue.vue'; +// 【案件核查信息】 export { default as Inspect } from './caseview/src/inspect.vue'; +// 【案件审核信息】 export { default as Audit } from './caseview/src/audit.vue'; +// 【案件办理信息-违法-拟拆除】 export { default as Dismantle } from './caseview/src/dismantle.vue'; +// 地图位置 +export { default as MapDetail } from './caseview/src/mapDetail.vue'; +// 案件办理信息-合法举证 +export { default as Evidence } from './caseview/src/evidence.vue'; +// 【案件办理信息-违法-查处】 +export { default as Investigate } from './caseview/src/investigate.vue'; +// 【案件办理信息-违法-拟完善手续】 +export { default as Procedure } from './caseview/src/procedure.vue'; + + + +