From 618a646f4e3f2db6c4e5c400f24af244bf9f5b7f Mon Sep 17 00:00:00 2001 From: wangzenghua <1048523306@qq.com> Date: Thu, 6 Mar 2025 08:16:59 +0000 Subject: [PATCH 1/6] =?UTF-8?q?feat:=E6=BA=AF=E6=BA=90=E5=92=8C=E5=9C=9F?= =?UTF-8?q?=E5=9C=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/router/index.js | 10 +- .../src/router/modules/annualplan.js | 4 +- .../src/router/modules/resource.js | 11 +- .../src/router/modules/statisticAnalysis.js | 29 +- .../src/router/modules/statistics.js | 32 --- .../{plantingAndBreeding.js => trace.js} | 45 ++- .../statisticAnalysis/agriculture/index.vue | 194 +++++++++++++ .../statisticAnalysis/environment/index.vue | 206 ++++++++++++++ .../statisticAnalysis/land/index.vue | 0 .../component/agriculture/index.vue | 261 ----------------- .../component/environment/index.vue | 265 ------------------ .../component/utilizePlan/index.vue | 187 ------------ .../src/views/statistics/index.vue | 19 -- 13 files changed, 445 insertions(+), 818 deletions(-) delete mode 100644 sub-government-affairs-service/src/router/modules/statistics.js rename sub-government-affairs-service/src/router/modules/{plantingAndBreeding.js => trace.js} (70%) create mode 100644 sub-government-affairs-service/src/views/resource/statisticAnalysis/agriculture/index.vue create mode 100644 sub-government-affairs-service/src/views/resource/statisticAnalysis/environment/index.vue rename sub-government-affairs-service/src/views/{ => resource}/statisticAnalysis/land/index.vue (100%) delete mode 100644 sub-government-affairs-service/src/views/statistics/component/agriculture/index.vue delete mode 100644 sub-government-affairs-service/src/views/statistics/component/environment/index.vue delete mode 100644 sub-government-affairs-service/src/views/statistics/component/utilizePlan/index.vue delete mode 100644 sub-government-affairs-service/src/views/statistics/index.vue diff --git a/sub-government-affairs-service/src/router/index.js b/sub-government-affairs-service/src/router/index.js index 1b373f4..7af98b6 100644 --- a/sub-government-affairs-service/src/router/index.js +++ b/sub-government-affairs-service/src/router/index.js @@ -3,16 +3,14 @@ * @Author: zenghua.wang * @Date: 2023-06-20 11:48:41 * @LastEditors: zenghua.wang - * @LastEditTime: 2025-03-04 10:42:19 + * @LastEditTime: 2025-03-06 16:11:29 */ import { createRouter, createWebHistory } from 'vue-router'; import Layout from '@/layouts/index.vue'; import resourceRouter from './modules/resource'; -import plantingAndBreedingRouter from './modules/plantingAndBreeding'; +import traceRouter from './modules/trace'; import landsRoutes from './modules/lands'; -import annualplanRoutes from './modules/annualplan'; -import statisticsRoutes from './modules/statisticAnalysis'; import dictRoutes from './modules/dict'; export const constantRoutes = [ @@ -44,10 +42,8 @@ export const constantRoutes = [ ], }, ...resourceRouter, - ...plantingAndBreedingRouter, - ...annualplanRoutes, + ...traceRouter, ...landsRoutes, - ...statisticsRoutes, ...dictRoutes, ]; diff --git a/sub-government-affairs-service/src/router/modules/annualplan.js b/sub-government-affairs-service/src/router/modules/annualplan.js index 61ee2b6..93fc336 100644 --- a/sub-government-affairs-service/src/router/modules/annualplan.js +++ b/sub-government-affairs-service/src/router/modules/annualplan.js @@ -1,10 +1,10 @@ -import Layout from '@/layouts/index.vue'; +import Views from '@/layouts/Views.vue'; const annualplanRoutes = [ { path: '/sub-government-affairs-service/annualPlan', name: 'annualPlan', - component: Layout, + component: Views, redirect: '/sub-government-affairs-service/annualPlans', meta: { title: '年度计划', icon: 'Document' }, children: [ diff --git a/sub-government-affairs-service/src/router/modules/resource.js b/sub-government-affairs-service/src/router/modules/resource.js index 7925448..52a5eac 100644 --- a/sub-government-affairs-service/src/router/modules/resource.js +++ b/sub-government-affairs-service/src/router/modules/resource.js @@ -1,5 +1,6 @@ import Layout from '@/layouts/index.vue'; -import Views from '@/layouts/Views.vue'; +import annualplanRouters from './annualplan'; +import statisticsRoutes from './statisticAnalysis'; export default [ { @@ -15,12 +16,8 @@ export default [ name: 'grid', meta: { title: '网格化管理', icon: 'Document' }, }, - // { - // path: '/annual-plan', - // component: () => import('@/views/resource/plan/index.vue'), - // name: 'annual-plan', - // meta: { title: '年度计划', icon: 'Document' }, - // }, + ...annualplanRouters, + ...statisticsRoutes, ], }, ]; diff --git a/sub-government-affairs-service/src/router/modules/statisticAnalysis.js b/sub-government-affairs-service/src/router/modules/statisticAnalysis.js index 764d159..0b94663 100644 --- a/sub-government-affairs-service/src/router/modules/statisticAnalysis.js +++ b/sub-government-affairs-service/src/router/modules/statisticAnalysis.js @@ -1,32 +1,31 @@ -import Layout from '@/layouts/index.vue'; import Views from '@/layouts/Views.vue'; export default [ { path: '/sub-government-affairs-service/analysis', name: 'analysis', - component: Layout, + component: Views, redirect: '/sub-government-affairs-service/analysis-land', meta: { title: '统计分析', icon: 'icon-test' }, children: [ { path: '/sub-government-affairs-service/analysis-land', - component: () => import('@/views/statisticAnalysis/land/index.vue'), + component: () => import('@/views/resource/statisticAnalysis/land/index.vue'), name: 'analysis-land', meta: { title: '土地利用与规划分析', icon: 'Document' }, }, - // { - // path: '/sub-government-affairs-service/analysis-agriculture', - // name: 'analysis-agriculture', - // component: () => import('@/views/statisticAnalysis/agriculture/index.vue'), - // meta: { title: '农业生产效率分析', icon: 'Document' }, - // }, - // { - // path: '/sub-government-affairs-service/analysis-environment', - // name: 'analysis-environment', - // component: () => import('@/views/statisticAnalysis/environment/index.vue'), - // meta: { title: '环境影响与经济效益分析', icon: 'Document' }, - // }, + { + path: '/sub-government-affairs-service/analysis-agriculture', + name: 'analysis-agriculture', + component: () => import('@/views/resource/statisticAnalysis/agriculture/index.vue'), + meta: { title: '农业生产效率分析', icon: 'Document' }, + }, + { + path: '/sub-government-affairs-service/analysis-environment', + name: 'analysis-environment', + component: () => import('@/views/resource/statisticAnalysis/environment/index.vue'), + meta: { title: '环境影响与经济效益分析', icon: 'Document' }, + }, ], }, ]; diff --git a/sub-government-affairs-service/src/router/modules/statistics.js b/sub-government-affairs-service/src/router/modules/statistics.js deleted file mode 100644 index 3982a11..0000000 --- a/sub-government-affairs-service/src/router/modules/statistics.js +++ /dev/null @@ -1,32 +0,0 @@ -import Layout from '@/layouts/index.vue'; - -const statisticsRoutes = [ - { - path: '/sub-government-affairs-service/statistics', - name: 'statistics', - component: Layout, - redirect: '/sub-government-affairs-service/utilizePlan', - meta: { title: '统计分析', icon: 'Document' }, - children: [ - { - path: '/sub-government-affairs-service/utilizePlan', - name: 'utilizePlan', - component: () => import('@/views/statistics/component/utilizePlan/index.vue'), - meta: { title: '土地利用与规划分析', icon: 'Document' }, - }, - { - path: '/sub-government-affairs-service/agriculture', - name: 'agriculture', - component: () => import('@/views/statistics/component/agriculture/index.vue'), - meta: { title: '农业生产效率分析', icon: 'Document' }, - }, - { - path: '/sub-government-affairs-service/environment', - name: 'environment', - component: () => import('@/views/statistics/component/environment/index.vue'), - meta: { title: '环境影响与经济效益分析', icon: 'Document' }, - }, - ], - }, -]; -export default statisticsRoutes; diff --git a/sub-government-affairs-service/src/router/modules/plantingAndBreeding.js b/sub-government-affairs-service/src/router/modules/trace.js similarity index 70% rename from sub-government-affairs-service/src/router/modules/plantingAndBreeding.js rename to sub-government-affairs-service/src/router/modules/trace.js index 2c328d0..13d871c 100644 --- a/sub-government-affairs-service/src/router/modules/plantingAndBreeding.js +++ b/sub-government-affairs-service/src/router/modules/trace.js @@ -3,11 +3,11 @@ import Views from '@/layouts/Views.vue'; export default [ { - path: '/sub-government-affairs-service/plantingAndBreeding', - name: 'plantingAndBreeding', + path: '/sub-government-affairs-service/trace', + name: 'trace', component: Layout, redirect: '/sub-government-affairs-service/breeding', - meta: { title: '种养殖管理', icon: 'Document' }, + meta: { title: '溯源管理', icon: 'Document' }, children: [ { path: '/sub-government-affairs-service/planting', @@ -51,27 +51,26 @@ export default [ }, ], }, - ], - }, - { - path: '/sub-government-affairs-service/trace', - name: 'trace', - component: Layout, - redirect: '/sub-government-affairs-service/trace-search', - meta: { title: '溯源查询', icon: 'Document' }, - children: [ { - path: '/sub-government-affairs-service/trace-search', - name: 'trace-search', - component: () => import('@/views/trace/search/index.vue'), - meta: { title: '溯源查询', icon: 'Document' }, - }, - { - path: '/sub-government-affairs-service/trace-info', - name: 'trace-info', - component: () => import('@/views/trace/search/info.vue'), - meta: { title: '溯源详情', icon: 'Document' }, - hidden: true, + path: '/sub-government-affairs-service/trace-manage', + name: 'trace-manage', + component: Views, + meta: { title: '溯源查询和统计', icon: 'Document' }, + children: [ + { + path: '/sub-government-affairs-service/trace-search', + name: 'trace-search', + component: () => import('@/views/trace/search/index.vue'), + meta: { title: '溯源查询', icon: 'Document' }, + }, + { + path: '/sub-government-affairs-service/trace-info', + name: 'trace-info', + component: () => import('@/views/trace/search/info.vue'), + meta: { title: '溯源详情', icon: 'Document' }, + hidden: true, + }, + ], }, ], }, diff --git a/sub-government-affairs-service/src/views/resource/statisticAnalysis/agriculture/index.vue b/sub-government-affairs-service/src/views/resource/statisticAnalysis/agriculture/index.vue new file mode 100644 index 0000000..bb7bd67 --- /dev/null +++ b/sub-government-affairs-service/src/views/resource/statisticAnalysis/agriculture/index.vue @@ -0,0 +1,194 @@ + + + diff --git a/sub-government-affairs-service/src/views/resource/statisticAnalysis/environment/index.vue b/sub-government-affairs-service/src/views/resource/statisticAnalysis/environment/index.vue new file mode 100644 index 0000000..696eb0d --- /dev/null +++ b/sub-government-affairs-service/src/views/resource/statisticAnalysis/environment/index.vue @@ -0,0 +1,206 @@ + + + diff --git a/sub-government-affairs-service/src/views/statisticAnalysis/land/index.vue b/sub-government-affairs-service/src/views/resource/statisticAnalysis/land/index.vue similarity index 100% rename from sub-government-affairs-service/src/views/statisticAnalysis/land/index.vue rename to sub-government-affairs-service/src/views/resource/statisticAnalysis/land/index.vue diff --git a/sub-government-affairs-service/src/views/statistics/component/agriculture/index.vue b/sub-government-affairs-service/src/views/statistics/component/agriculture/index.vue deleted file mode 100644 index a68e56c..0000000 --- a/sub-government-affairs-service/src/views/statistics/component/agriculture/index.vue +++ /dev/null @@ -1,261 +0,0 @@ - - - - diff --git a/sub-government-affairs-service/src/views/statistics/component/environment/index.vue b/sub-government-affairs-service/src/views/statistics/component/environment/index.vue deleted file mode 100644 index 544f578..0000000 --- a/sub-government-affairs-service/src/views/statistics/component/environment/index.vue +++ /dev/null @@ -1,265 +0,0 @@ - - - - - diff --git a/sub-government-affairs-service/src/views/statistics/component/utilizePlan/index.vue b/sub-government-affairs-service/src/views/statistics/component/utilizePlan/index.vue deleted file mode 100644 index 8f7bfe0..0000000 --- a/sub-government-affairs-service/src/views/statistics/component/utilizePlan/index.vue +++ /dev/null @@ -1,187 +0,0 @@ - - - - diff --git a/sub-government-affairs-service/src/views/statistics/index.vue b/sub-government-affairs-service/src/views/statistics/index.vue deleted file mode 100644 index d7d9c29..0000000 --- a/sub-government-affairs-service/src/views/statistics/index.vue +++ /dev/null @@ -1,19 +0,0 @@ - - - - - From 1ad5d1a430ded26a55e15421e3bc61024ba51be3 Mon Sep 17 00:00:00 2001 From: lzc Date: Thu, 6 Mar 2025 16:20:26 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E7=A7=8D=E6=A4=8D=E8=A7=84=E5=88=92?= =?UTF-8?q?=E5=B7=B2=E7=BB=8F=E8=A1=8C=E6=94=BF=E4=BF=A1=E6=81=AF=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/apis/land.js | 12 +- .../views/dict/component/dictCrop/index.vue | 255 +++++------------- .../component/landCassification/index.vue | 129 ++++----- .../src/views/dict/component/region/index.vue | 105 +++----- .../landManage/component/landPartol/index.vue | 145 +++++++++- .../landManage/component/plantPlan/index.vue | 105 +------- 6 files changed, 325 insertions(+), 426 deletions(-) diff --git a/sub-government-affairs-service/src/apis/land.js b/sub-government-affairs-service/src/apis/land.js index e1425e4..242ed92 100644 --- a/sub-government-affairs-service/src/apis/land.js +++ b/sub-government-affairs-service/src/apis/land.js @@ -209,9 +209,17 @@ export function savelandInspection(data) { }); } -export function editlandInspection(data = {}) { - return request('land-resource/landInspection/update', { +export function enrolllandInspection(data = {}) { + return request('land-resource/landInspection/registrationResult', { method: 'PUT', data, }); } + +export function exportlandInspection(params = {}) { + return request('/land-resource/landInspection/export', { + method: 'GET', + params, + responseType: 'blob', + }); +} diff --git a/sub-government-affairs-service/src/views/dict/component/dictCrop/index.vue b/sub-government-affairs-service/src/views/dict/component/dictCrop/index.vue index feddd81..86a48c9 100644 --- a/sub-government-affairs-service/src/views/dict/component/dictCrop/index.vue +++ b/sub-government-affairs-service/src/views/dict/component/dictCrop/index.vue @@ -34,7 +34,7 @@ 种植阶段详情
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -140,6 +87,7 @@ const { VITE_APP_BASE_API } = import.meta.env; const app = useApp(); const UserStore = useUserStore(); const crudRef = ref(null); +const stateCrudRef = ref(null); const handleLandChange = async (value, form, done) => { if (!value || !value.item || !value.item.id) return; // 如果没有选择任何地块,则直接返回 let val = {}; @@ -157,17 +105,21 @@ const handleLandChange = async (value, form, done) => { state.form.address = val?.county + val?.town + val?.village || value.item?.address; }; -const jobTypeOptions = reactive([ - { label: '施肥', value: '0' }, - { label: '杀虫', value: '1' }, - { label: '灌溉', value: '2' }, -]); - const stageOptions = reactive([ { value: '0', label: '苗期' }, { value: '1', label: '花果期' }, { value: '2', label: '采收期' }, ]); + +const stageObj = reactive({ + 0: '苗期', + 1: '花果期', + 2: '采收期', +}); +const workOptions = reactive([ + { planName: '作业计划1', id: '000001' }, + { planName: '作业计划2', id: '000002' }, +]); const state = reactive({ loading: false, query: { @@ -246,21 +198,6 @@ const state = reactive({ data: [], currentRow: {}, }); -const infoVisible = ref(false); -const infoRef = ref(); -const infoData = reactive({ - num: '', - name: '', - member: [], - type: '', - mark: '', - target: '', -}); - -const infoRules = reactive({ - num: [{ required: true, message: '请选择是否违法', trigger: 'blur' }], - mark: [{ required: true, message: '请输入巡查情况', trigger: 'blur' }], -}); const stageState = reactive({ loading: false, @@ -286,9 +223,20 @@ const stageState = reactive({ trigger: 'blur', }, }, - { label: '作业计划', prop: 'area', disabled: true }, - { label: '作业时间', prop: 'coordinate', disabled: true }, - { label: '结束时间', prop: 'createTime', disabled: true }, + { + label: '作业计划', + prop: 'workId', + type: 'select', + search: true, + dicData: workOptions, + rules: { + required: true, + message: '请选择', + trigger: 'blur', + }, + }, + { label: '作业时间', prop: 'coordinate', disabled: true, addDisplay: false, editDisplay: false }, + { label: '结束时间', prop: 'createTime', disabled: true, addDisplay: false, editDisplay: false }, ], actions: [ { @@ -313,32 +261,6 @@ const stageState = reactive({ currentRow: {}, }); -const stageObj = reactive({ - 0: '苗期', - 1: '花果期', - 2: '采收期', -}); -const workOptions = reactive([ - { planName: '作业计划1', id: '000001' }, - { planName: '作业计划2', id: '000002' }, -]); - -let stageInfoVisible = ref(false); -const stageInfoRef = ref(); -let stageInfoData = reactive({ - landId: '', //土地主键id - planId: '', //种植规划主键id - crop: '', //种植产物 - stage: '', //所属阶段 - workId: '', //作业计划Id - landName: '', //地块 -}); - -const stageInfoRules = reactive({ - stage: [{ required: true, message: '请选择所属阶段', trigger: 'blur' }], - workId: [{ required: true, message: '请选择作业计划', trigger: 'blur' }], -}); - // 加载 const loadData = () => { // state.loading = true; @@ -444,27 +366,6 @@ const onExport = () => { // }); }; -const subMitInfo = (formEl) => { - if (!formEl) return; - formEl.validate((valid) => { - if (valid) { - infoHide(); - console.log('submit!'); - } else { - console.log('error submit!'); - } - }); -}; - -const infoCancel = () => { - infoHide(); -}; - -const infoHide = () => { - infoRef.value && infoRef.value.resetFields(); - infoVisible.value = false; -}; - const rowUpdate = (row, index, done, loading) => { console.info('更新'); // editOperationRecord(row) @@ -564,61 +465,7 @@ const stageRowDel = (row, index, done) => { .catch(() => {}); }; const stageRowEdit = (row) => { - stageInfoData.landName = row.landName ? row.landName : state.currentRow.landName || ''; - stageInfoData.landId = row.landId ? row.landId : state.currentRow.landId || ''; - stageInfoData.crop = row.crop ? row.crop : state.currentRow.crop || ''; - stageInfoData.stage = row.stage.toString() || '0'; - stageInfoVisible.value = true; -}; - -const stageinfoHide = () => { - stageInfoRef.value && stageInfoRef.value.resetFields(); - stageInfoVisible.value = false; -}; - -const subMitStateInfo = (formEl) => { - if (!formEl) return; - formEl.validate((valid) => { - if (valid) { - let parmer = { - planId: state.currentRow.id || '', //种植规划主键id - stage: stageInfoData.stage || 0, //种植阶段:0->苗期,1>花果期,2->采收期 - workId: stageInfoData.workId || '', - }; - - console.info('新增种植阶段', parmer); - - if (parmer.id) { - // editPlantingStage(parmer) - // .then((res) => { - // if (res.code === 200) { - // app.$message.success('编辑成功!'); - // getStageList(); - // stageinfoHide(); - // } - // }) - // .catch((err) => { - // app.$message.error(err.msg); - // }) - // .finally(() => {}); - } else { - // savePlantingStage(parmer) - // .then((res) => { - // if (res.code === 200) { - // getStageList(); - // stageinfoHide(); - // app.$message.success('添加成功!'); - // } - // }) - // .catch((err) => { - // app.$message.error(err.msg); - // }) - // .finally(() => {}); - } - } else { - console.log('error submit!'); - } - }); + stateCrudRef.value.rowEdit(row); }; const onStateAdd = () => { @@ -626,8 +473,46 @@ const onStateAdd = () => { app.$message.error('请选择种植产物'); return; } - stageInfoData.landName = state.currentRow.landName || ''; - stageInfoData.crop = state.currentRow.crop || ''; - stageInfoVisible.value = true; + // stageInfoData.landName = state.currentRow.landName || ''; + // stageInfoData.crop = state.currentRow.crop || ''; + // stageInfoVisible.value = true; + stateCrudRef.value.rowAdd(); +}; + +const stageRowSave = (row, done, loading) => { + row.planId = state.currentRow.planId; + console.info('stageRowSave', row); + // savePlantingStage({ ...row }) + // .then((res) => { + // if (res.code === 200) { + // app.$message.success('添加成功!'); + // done(); + // getStageList(); + // } + // }) + // .catch((err) => { + // app.$message.error(err.msg); + // }) + // .finally(() => { + // loading(); + // }); +}; + +const stageRowUpdate = (row, index, done, loading) => { + console.info('stageRowUpdate'); + // editPlantingStage(row) + // .then((res) => { + // if (res.code === 200) { + // app.$message.success('更新成功!'); + // done(); + // getStageList(); + // } + // }) + // .catch((err) => { + // app.$message.error(err.msg); + // }) + // .finally(() => { + // loading(); + // }); }; diff --git a/sub-government-affairs-service/src/views/dict/component/landCassification/index.vue b/sub-government-affairs-service/src/views/dict/component/landCassification/index.vue index 0fffd60..b2bef4e 100644 --- a/sub-government-affairs-service/src/views/dict/component/landCassification/index.vue +++ b/sub-government-affairs-service/src/views/dict/component/landCassification/index.vue @@ -21,6 +21,8 @@ @current-change="currentChange" @size-change="sizeChange" @row-del="rowDel" + @row-save="rowSave" + @row-update="rowUpdate" >