From 5eb32c8bb1696de5ad8322a8d9b7a1e6f296bf4b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=8E=E6=83=B3?= <826276471@qq.com>
Date: Mon, 31 Mar 2025 09:03:19 +0800
Subject: [PATCH 1/5] =?UTF-8?q?feat:=E5=85=BD=E8=8D=AF=E7=AE=A1=E7=90=86?=
=?UTF-8?q?=E5=BC=80=E5=8F=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/apis/inputSuppliesApi/material.js | 16 +
.../src/router/modules/inputSupplies/index.js | 24 +-
.../inputSuppliesManage/hooks/useBasicInfo.js | 52 ++-
.../material/fertilizer/index.vue | 93 ++++--
.../material/pesticide/index.vue | 33 +-
.../material/ratPoison/index.vue | 297 +++++++++++++++++-
6 files changed, 447 insertions(+), 68 deletions(-)
diff --git a/sub-government-affairs-service/src/apis/inputSuppliesApi/material.js b/sub-government-affairs-service/src/apis/inputSuppliesApi/material.js
index 6c80390..8b47cea 100644
--- a/sub-government-affairs-service/src/apis/inputSuppliesApi/material.js
+++ b/sub-government-affairs-service/src/apis/inputSuppliesApi/material.js
@@ -46,4 +46,20 @@ export function addFertilizer(data) {
});
}
// #endregion
+/* ------ 兽药 ------ */
+// #region
+
+export function getAnimalMedicineList(params) {
+ return request('/inputGoods/animalMedicine/page', {
+ params,
+ });
+}
+export function addAnimalMedicine(data) {
+ return request('/inputGoods/animalMedicine/save', {
+ method: 'POST',
+ data,
+ });
+}
+// #endregion
+
//
diff --git a/sub-government-affairs-service/src/router/modules/inputSupplies/index.js b/sub-government-affairs-service/src/router/modules/inputSupplies/index.js
index 9ac0314..40da877 100644
--- a/sub-government-affairs-service/src/router/modules/inputSupplies/index.js
+++ b/sub-government-affairs-service/src/router/modules/inputSupplies/index.js
@@ -34,18 +34,18 @@ const inputSuppliesRoutes = [
component: () => import('@/views/inputSuppliesManage/material/pesticide/index.vue'),
meta: { title: '农药管理', icon: 'Document' },
},
- // {
- // path: '/sub-government-affairs-service/material/fertilizer',
- // name: 'input-supplies-fertilizer',
- // component: () => import('@/views/inputSuppliesManage/material/fertilizer/index.vue'),
- // meta: { title: '肥料管理', icon: 'Document' },
- // },
- // {
- // path: '/sub-government-affairs-service/material/ratPoison',
- // name: 'input-supplies-ratPoison',
- // component: () => import('@/views/inputSuppliesManage/material/ratPoison/index.vue'),
- // meta: { title: '兽药管理', icon: 'Document' },
- // },
+ {
+ path: '/sub-government-affairs-service/material/fertilizer',
+ name: 'input-supplies-fertilizer',
+ component: () => import('@/views/inputSuppliesManage/material/fertilizer/index.vue'),
+ meta: { title: '肥料管理', icon: 'Document' },
+ },
+ {
+ path: '/sub-government-affairs-service/material/ratPoison',
+ name: 'input-supplies-ratPoison',
+ component: () => import('@/views/inputSuppliesManage/material/ratPoison/index.vue'),
+ meta: { title: '兽药管理', icon: 'Document' },
+ },
// {
// path: '/sub-government-affairs-service/material/farmMachinery',
// name: 'input-supplies-farmMachinery',
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/hooks/useBasicInfo.js b/sub-government-affairs-service/src/views/inputSuppliesManage/hooks/useBasicInfo.js
index 9b4fbbe..8eb3c13 100644
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/hooks/useBasicInfo.js
+++ b/sub-government-affairs-service/src/views/inputSuppliesManage/hooks/useBasicInfo.js
@@ -23,9 +23,6 @@ export function useBasicInfo(set = {}) {
/* 不包含顶级 */
const materialTwoLevel = reactive({});
- /* ------ 农药 ------ */
- // #region
- const pesticideTypes = reactive({});
const goodsUnitOptions = reactive([
{ value: '1', label: 'ml/瓶' },
{ value: '2', label: 'mg/盒' },
@@ -36,7 +33,6 @@ export function useBasicInfo(set = {}) {
{ value: '2', label: '/平方米' },
{ value: '3', label: '/株' },
]);
- // #endregion
// #endregion
/* ------ ------ */
@@ -85,10 +81,14 @@ export function useBasicInfo(set = {}) {
}
/* 获取标签的名字 */
function targetName(arr, ids, _name) {
- let _ids = JSON.parse(JSON.stringify(ids));
let name = '';
- if (!arr || !arr.length || _ids.length < 1) {
- return;
+ if (!arr || !arr.length || ids.length < 1) {
+ return name;
+ }
+ let _ids = JSON.parse(JSON.stringify(ids));
+ if (typeof ids == 'string') {
+ let obj = arr.find((v) => v.value == _ids) || { value: '', label: '', children: [] };
+ name = obj.label;
} else {
let obj = arr.find((v) => v.value == _ids[0]) || { value: '', label: '', children: [] };
name = _name + (_name ? '/' : '') + obj.label;
@@ -128,18 +128,39 @@ export function useBasicInfo(set = {}) {
}, 200);
}
/* t: 1规格 2用量 */
- function handleNumUnit(num, unit, t) {
+ function handleNumUnit(_info = {}) {
let text = '';
- if (num && unit) {
- if (t == 1) {
- text = `${num}${(goodsUnitOptions.find((_v) => _v.value == unit) || { label: '' }).label}`;
- } else {
- console.log('goodsUnitOptions --- ', (useDosageUnit.find((_v) => _v.value == unit) || { label: '' }).label);
- text = `${num}${(useDosageUnit.find((_v) => _v.value == unit) || { label: '' }).label}`;
- }
+ if (!_info.type || !_info.type < -1) return text;
+ const info = Object.assign(
+ {
+ num1: '',
+ unit1: '',
+ num2: '',
+ unit2: '',
+ type: -2,
+ },
+ _info
+ );
+ if (info.type == -1) {
+ let u1 = (goodsUnitOptions.find((_v) => _v.value == info.unit1) || { label: '' }).label;
+ let u2 = (useDosageUnit.find((_v) => _v.value == info.unit2) || { label: '' }).label;
+ text = `${info.num2}${u1.split('/')[1]}${u2}`;
+ } else if (info.type == 1) {
+ text = `${info.num1}${(goodsUnitOptions.find((_v) => _v.value == info.unit1) || { label: '' }).label}`;
+ } else if (info.type == 2) {
+ text = `${info.num2}${(useDosageUnit.find((_v) => _v.value == info.unit2) || { label: '' }).label}`;
}
return text;
}
+ function handleShowName(text = '') {
+ if (!text || !text.includes('|')) return false;
+ let names = JSON.parse(text.split('|')[1]);
+ let _t = '';
+ names.forEach((v, i) => {
+ _t += (i == 0 ? '' : ',') + v;
+ });
+ return _t;
+ }
// #endregion
onMounted(getmaterialType);
@@ -153,6 +174,7 @@ export function useBasicInfo(set = {}) {
getmaterialType,
targetName,
filterTypes,
+ handleShowName,
handleNumUnit,
};
}
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/material/fertilizer/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/material/fertilizer/index.vue
index d5d724e..bf64b8a 100644
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/material/fertilizer/index.vue
+++ b/sub-government-affairs-service/src/views/inputSuppliesManage/material/fertilizer/index.vue
@@ -10,14 +10,21 @@
:data="data"
:table-loading="_loading"
:option="option"
+ :before-close="handleCloseDialog"
+ @search-change="
+ (form, done) => {
+ getData(1);
+ done();
+ }
+ "
+ @refresh-change="getData"
+ @search-reset="getData(1)"
@current-change="getData"
@size-change="getData(1)"
@row-save="handleRowSave"
>
- aa
-
-
+ 详情
@@ -42,9 +49,10 @@ import { useBasicInfo } from '@/views/inputSuppliesManage/hooks/useBasicInfo';
import inputSuppliesApi from '@/apis/inputSuppliesApi';
import Attrs from '@/views/inputSuppliesManage/common/Attrs.vue';
import NumberSelect from '@/views/inputSuppliesManage/common/NumberSelect.vue';
+import { ElMessage } from 'element-plus';
const { getFertilizreList, addFertilizer } = inputSuppliesApi;
-const { loadFinish, materialTypes, materialTwoLevel, targetName, goodsUnitOptions, useDosageUnit, handleNumUnit } = useBasicInfo();
+const { loadFinish, materialTypes, materialTwoLevel, targetName, goodsUnitOptions, useDosageUnit, handleShowName, handleNumUnit } = useBasicInfo();
onMounted(getData);
watch(
@@ -117,15 +125,19 @@ const option = ref({
label: '经销商',
},
{
- prop: 'classifyName',
+ prop: '_classifyId',
label: '分类',
type: 'cascader',
clearable: false,
dicData: () => [],
rules: customRules({ msg: '请选择肥料分类' }),
+ expandTrigger: 'click',
+ render: ({ row }) => {
+ return row.classifyName;
+ },
},
{
- prop: 'mainComponents',
+ prop: 'mainComponent',
label: '化学成分',
rules: customRules({ msg: '请输入化学成分' }),
},
@@ -142,8 +154,8 @@ const option = ref({
{
hide: true,
prop: '_suggest',
- label: '建议用量',
- viewDisplay: true,
+ label: '建议用量1',
+ viewDisplay: false,
},
{
prop: 'productSpecification',
@@ -158,10 +170,22 @@ const option = ref({
editDisplay: false,
},
{
+ hide: true,
prop: '_produceDosage',
label: '剂型',
type: 'cascader',
dicData: [],
+ viewDisplay: false,
+ expandTrigger: 'click',
+ },
+ {
+ prop: 'produceDosage',
+ label: '剂型',
+ addDisplay: false,
+ editDisplay: false,
+ render: ({ row }) => {
+ return row.produceDosage;
+ },
},
{
prop: 'expiryDate',
@@ -206,26 +230,25 @@ async function getData(reset) {
};
_type.value != '0' && (params.classifyId = _type.value);
let res = await getFertilizreList(params);
- console.log('params --- ', params, res);
_loading.value = false;
if (res.code == 200) {
data.value = res.data.records.map((v) => {
- console.log('v', v);
- v.productSpecification = handleNumUnit(v.productSpecification, v.productUnit, 1);
- v.suggest = handleNumUnit(v.suggestDosage, v.suggestUnit, 2);
+ v.productSpecification = handleNumUnit({ num1: v.productSpecification, unit1: v.productUnit, type: 1 });
+ v.suggest = handleNumUnit({ unit1: v.productUnit, num2: v.suggestDosage, unit2: v.suggestUnit, type: -1 });
+ v.produceDosage = handleShowName(v.produceDosage);
return v;
});
pageData.value.total = res.data.total;
}
}
-function handleRowSave(form, done, loading) {
- console.log('form', form);
+async function handleRowSave(form, done, loading) {
let data = {
fertilizeName: form.fertilizeName,
manufacturer: form.manufacturer,
distributor: form.distributor,
- classifyId: form.classifyName,
- mainComponents: form.mainComponents,
+ classifyId: form._classifyId[0],
+ classifyName: targetName(option.value.column[5].dicData, form._classifyId, ''),
+ mainComponent: form.mainComponent,
productSpecification: productSpecification.value.num,
productUnit: productSpecification.value.type,
suggestDosage: useDosage.value.num,
@@ -241,14 +264,46 @@ function handleRowSave(form, done, loading) {
if (form._produceDosage.length) {
let names = [];
form._produceDosage.forEach((item) => {
- names.push(targetName(option.value.column, item, ''));
+ names.push(targetName(option.value.column[12].dicData, item, ''));
});
data.produceDosage = JSON.stringify(form._produceDosage) + '|' + JSON.stringify(names);
}
- console.log('data', data);
+ let res = await addFertilizer(data);
loading();
+ if (res.code == 200) {
+ ElMessage.success('添加成功');
+ resetOtherInfo();
+ getData();
+ done();
+ }
+}
+function handleInfo(row) {
+ if (row.photoUrl) {
+ attrs.value = row.photoUrl.split(',').map((v, i) => {
+ return { url: v, uid: `photo_${i}_${Date.now()}` };
+ });
+ }
+ crud.value.rowView(row);
+ for (let i = 0; i < option.value.column.length; i++) {
+ option.value.column[i].span = 24;
+ if (option.value.column[i].prop == 'photoUrl') {
+ return;
+ }
+ }
+}
+function resetOtherInfo() {
+ attrs.value = [];
+ productSpecification.value = { num: 1, type: '1' };
+ useDosage.value = { num: 1, type: '1' };
+}
+function handleCloseDialog(done) {
+ resetOtherInfo();
+ done();
+ for (let i = 0; i < option.value.column.length; i++) {
+ delete option.value.column[i].span;
+ if (option.value.column[i].prop == 'photoUrl') return;
+ }
}
-
// #endregion
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/material/pesticide/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/material/pesticide/index.vue
index c32d57a..087f222 100644
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/material/pesticide/index.vue
+++ b/sub-government-affairs-service/src/views/inputSuppliesManage/material/pesticide/index.vue
@@ -57,7 +57,7 @@
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/material/ratPoison/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/material/ratPoison/index.vue
index 4cf6b2a..0526e14 100644
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/material/ratPoison/index.vue
+++ b/sub-government-affairs-service/src/views/inputSuppliesManage/material/ratPoison/index.vue
@@ -1,21 +1,312 @@
-
+ 兽药基本信息
+
+
+ {
+ getData(1);
+ done();
+ }
+ "
+ @search-reset="getData(1)"
+ @refresh-change="getData"
+ @current-change="getData"
+ @size-change="getData(1)"
+ @row-save="handleRowSave"
+ >
+
+ 详情
+
+
+
+
+
+
+ {{ value }}
+
+
-
+
From 59df77a997c2b2013f9c45c5cf66adb1cb7d129b Mon Sep 17 00:00:00 2001
From: wangzenghua <1048523306@qq.com>
Date: Tue, 1 Apr 2025 10:26:52 +0100
Subject: [PATCH 2/5] =?UTF-8?q?feat=EF=BC=9A=E8=8F=9C=E5=8D=95=E3=80=81?=
=?UTF-8?q?=E5=9F=BA=E5=9C=B0=E4=BF=A1=E6=81=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/apis/plantingAndBreeding/base.js | 51 ++
.../src/apis/system/dept.js | 20 +-
.../src/apis/system/menu.js | 62 +++
.../src/router/modules/system.js | 12 +
.../src/router/modules/trace.js | 30 +-
.../views/plantingAndBreeding/base/index.vue | 251 ++++-----
.../src/views/system/dept/index.vue | 36 +-
.../src/views/system/dict/index.vue | 18 +-
.../src/views/system/dict/type.vue | 5 +
.../src/views/system/menu/index.vue | 490 ++++++++++++++++++
10 files changed, 811 insertions(+), 164 deletions(-)
create mode 100644 sub-government-affairs-service/src/apis/plantingAndBreeding/base.js
create mode 100644 sub-government-affairs-service/src/apis/system/menu.js
create mode 100644 sub-government-affairs-service/src/views/system/menu/index.vue
diff --git a/sub-government-affairs-service/src/apis/plantingAndBreeding/base.js b/sub-government-affairs-service/src/apis/plantingAndBreeding/base.js
new file mode 100644
index 0000000..ef3c3ad
--- /dev/null
+++ b/sub-government-affairs-service/src/apis/plantingAndBreeding/base.js
@@ -0,0 +1,51 @@
+import request from '@/utils/axios';
+
+/**
+ * @Title: 列表
+ */
+export function GetEntityList(params = {}) {
+ return request('/cultivation-keep/api/cultivationbreedingbase/list', {
+ method: 'POST',
+ params,
+ });
+}
+
+/**
+ * @Title: 新增
+ */
+export function AddEntity(data = {}) {
+ return request('/cultivation-keep/api/cultivationbreedingbase/add', {
+ method: 'POST',
+ data,
+ });
+}
+
+/**
+ * @Title: 修改
+ */
+export function UpdateEntity(data = {}) {
+ return request('/cultivation-keep/api/cultivationbreedingbase/update', {
+ method: 'POST',
+ data,
+ });
+}
+
+/**
+ * @Title: 删除
+ */
+export function DeleteEntity(params = {}) {
+ return request('/cultivation-keep/api/cultivationbreedingbase/del', {
+ method: 'POST',
+ params,
+ });
+}
+
+/**
+ * @Title: 更改状态
+ */
+export function UpdateStatus(params = {}) {
+ return request('/cultivation-keep/api/cultivationbreedingbase/changeStatus', {
+ method: 'POST',
+ params,
+ });
+}
diff --git a/sub-government-affairs-service/src/apis/system/dept.js b/sub-government-affairs-service/src/apis/system/dept.js
index e109ac7..13bad19 100644
--- a/sub-government-affairs-service/src/apis/system/dept.js
+++ b/sub-government-affairs-service/src/apis/system/dept.js
@@ -10,15 +10,6 @@ export function GetEntityList(params = {}) {
});
}
-/**
- * @Title: 信息
- */
-export function GetEntity(id) {
- return request(`/system/dept/list/exclude/${id}`, {
- method: 'GET',
- });
-}
-
/**
* @Title: 新增
*/
@@ -43,7 +34,7 @@ export function UpdateEntity(data = {}) {
* @Title: 删除
*/
export function DeleteEntity(params = {}) {
- return request(`/system/dict/type/${params.id}`, {
+ return request(`/system/dept/${params.id}`, {
method: 'DELETE',
});
}
@@ -56,3 +47,12 @@ export function GetDeptExcludeChild(id) {
method: 'GET',
});
}
+
+/**
+ * @Title: 信息
+ */
+export function GetDept(id) {
+ return request(`/system/dept/list/exclude/${id}`, {
+ method: 'GET',
+ });
+}
diff --git a/sub-government-affairs-service/src/apis/system/menu.js b/sub-government-affairs-service/src/apis/system/menu.js
new file mode 100644
index 0000000..6d1772d
--- /dev/null
+++ b/sub-government-affairs-service/src/apis/system/menu.js
@@ -0,0 +1,62 @@
+import request from '@/utils/axios';
+
+/**
+ * @Title: 列表
+ */
+export function GetEntityList(params = {}) {
+ return request('/system/menu/list', {
+ method: 'GET',
+ params,
+ });
+}
+
+/**
+ * @Title: 新增
+ */
+export function AddEntity(data = {}) {
+ return request('/system/menu', {
+ method: 'POST',
+ data,
+ });
+}
+
+/**
+ * @Title: 修改
+ */
+export function UpdateEntity(data = {}) {
+ return request('/system/menu', {
+ method: 'PUT',
+ data,
+ });
+}
+
+/**
+ * @Title: 删除
+ */
+export function DeleteEntity(params = {}) {
+ return request(`/system/menu/${params.id}`, {
+ method: 'DELETE',
+ });
+}
+
+// 查询菜单详细
+export function GetMenu(dictType) {
+ return request(`/system/menu/${dictType}`, {
+ method: 'GET',
+ });
+}
+
+// 查询菜单下拉树结构
+// 返回parentId
+export function GetMenuTree() {
+ return request('/system/menu/treeselect', {
+ method: 'GET',
+ });
+}
+
+// 根据角色ID查询菜单下拉树结构
+export function GetRoleMenu(roleId) {
+ return request(`/system/menu/roleMenuTreeselect/${roleId}`, {
+ method: 'GET',
+ });
+}
diff --git a/sub-government-affairs-service/src/router/modules/system.js b/sub-government-affairs-service/src/router/modules/system.js
index 34badff..b03fab9 100644
--- a/sub-government-affairs-service/src/router/modules/system.js
+++ b/sub-government-affairs-service/src/router/modules/system.js
@@ -20,6 +20,18 @@ export default [
name: 'system-dict',
meta: { title: '字典管理', icon: 'Document' },
},
+ {
+ path: '/sub-government-affairs-service/system-menu',
+ component: () => import('@/views/system/menu/index.vue'),
+ name: 'system-menu',
+ meta: { title: '菜单管理', icon: 'Document' },
+ },
+ // {
+ // path: '/sub-government-affairs-service/system-dept',
+ // component: () => import('@/views/system/dept/index.vue'),
+ // name: 'system-dept',
+ // meta: { title: '部门管理', icon: 'Document' },
+ // },
],
},
];
diff --git a/sub-government-affairs-service/src/router/modules/trace.js b/sub-government-affairs-service/src/router/modules/trace.js
index df876cb..23b908d 100644
--- a/sub-government-affairs-service/src/router/modules/trace.js
+++ b/sub-government-affairs-service/src/router/modules/trace.js
@@ -52,25 +52,17 @@ export default [
],
},
{
- 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,
- },
- ],
+ 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-statistic',
diff --git a/sub-government-affairs-service/src/views/plantingAndBreeding/base/index.vue b/sub-government-affairs-service/src/views/plantingAndBreeding/base/index.vue
index 3ccc2ab..f05972d 100644
--- a/sub-government-affairs-service/src/views/plantingAndBreeding/base/index.vue
+++ b/sub-government-affairs-service/src/views/plantingAndBreeding/base/index.vue
@@ -39,8 +39,9 @@ import { useRouter } from 'vue-router';
import { useApp } from '@/hooks';
import { useUserStore } from '@/store/modules/user';
import { CRUD_OPTIONS } from '@/config';
-import { isEmpty, mockData, sleep, setDicData } from '@/utils';
+import { isEmpty, setDicData, debounce } from '@/utils';
import { getLandsList } from '@/apis/land';
+import { GetEntityList, AddEntity, UpdateEntity, DeleteEntity, UpdateStatus } from '@/apis/plantingAndBreeding/base';
const { VITE_APP_BASE_API } = import.meta.env;
const app = useApp();
@@ -61,7 +62,7 @@ const state = reactive({
column: [
{
label: '基地名称',
- prop: 'p1',
+ prop: 'baseName',
search: true,
width: 200,
rules: {
@@ -72,8 +73,8 @@ const state = reactive({
overHidden: true,
},
{
- label: '基地分类',
- prop: 'type',
+ label: '基地类型',
+ prop: 'baseType',
type: 'select',
search: true,
props: {
@@ -95,7 +96,20 @@ const state = reactive({
label: '地块名',
prop: 'landName',
width: 200,
+ addDisplay: false,
+ editDisplay: false,
+ viewDisplay: true,
+ overHidden: true,
+ },
+ {
+ label: '地块名',
+ prop: 'landId',
+ width: 200,
type: 'select',
+ hide: true,
+ addDisplay: true,
+ editDisplay: true,
+ viewDisplay: false,
props: {
label: 'landName',
value: 'id',
@@ -108,37 +122,28 @@ const state = reactive({
filterable: true,
remote: true,
clearable: true,
- remoteMethod: (val) => remoteLandList(val),
+ remoteMethod: (val) => debounce(remoteLandList(val), 200),
change: (val) => selectedChange(val),
rules: {
required: true,
message: '请选择',
trigger: 'blur',
},
- // addDisplay: true,
- // editDisplay: true,
- // viewDisplay: false,
- // overHidden: true,
},
{
label: '区域位置',
- prop: 'p3',
+ prop: 'address',
width: 200,
overHidden: true,
- rules: {
- required: true,
- message: '请输入',
- trigger: 'blur',
- },
+ disabled: true,
+ labelTip: '请先选择地块!',
},
{
label: '区域面积',
- prop: 'p4',
- rules: {
- required: true,
- message: '请输入',
- trigger: 'blur',
- },
+ prop: 'area',
+ width: 100,
+ disabled: true,
+ labelTip: '请先选择地块!',
},
{
label: '状态',
@@ -154,6 +159,7 @@ const state = reactive({
value: 0,
},
],
+ value: 1,
rules: {
required: true,
message: '请输入',
@@ -162,7 +168,7 @@ const state = reactive({
},
{
label: '负责人',
- prop: 'p5',
+ prop: 'contactPerson',
rules: {
required: true,
message: '请输入',
@@ -171,7 +177,7 @@ const state = reactive({
},
{
label: '联系电话',
- prop: 'p6',
+ prop: 'contactPhone',
width: 150,
rules: {
required: true,
@@ -181,15 +187,14 @@ const state = reactive({
},
{
label: '创建时间',
- prop: 'createTime',
- width: 150,
- // search: true,
+ prop: 'createdAt',
+ width: 200,
display: false,
},
{
label: '更新时间',
- prop: 'updateTime',
- width: 150,
+ prop: 'updatedAt',
+ width: 200,
display: false,
},
],
@@ -204,16 +209,16 @@ const state = reactive({
icon: 'edit',
event: ({ row }) => rowEdit(row),
},
- // {
- // type: 'success',
- // name: ({ row }) => {
- // return row.status === 1 ? '禁用' : '启用';
- // },
- // icon: ({ row }) => {
- // return row.status === 1 ? 'turnOff' : 'open';
- // },
- // event: ({ row }) => rowStatus(row),
- // },
+ {
+ type: 'primary',
+ name: ({ row }) => {
+ return row.status === 1 ? '禁用' : '启用';
+ },
+ icon: ({ row }) => {
+ return row.status === 1 ? 'turnOff' : 'open';
+ },
+ event: ({ row }) => rowStatus(row),
+ },
{
type: 'danger',
name: '删除',
@@ -233,45 +238,26 @@ const state = reactive({
// 加载
const loadData = async () => {
- //state.loading = true;
- // GetEntityList(state.query)
- // .then((res) => {
- // if (res.code === 200) {
- // const { current, size, total, records } = res.data;
- // state.data = records;
- // state.pageData = {
- // currentPage: current || 1,
- // pageSize: size || 10,
- // total: total,
- // };
- // }
- // })
- // .catch((err) => {
- // app.$message.error(err.msg);
- // state.data = [];
- // })
- // .finally(() => {
- // state.loading = false;
- // });
-
state.loading = true;
- await sleep(500);
- state.data = mockData(
- {
- p1: '耿马镇一号基地',
- landName: '耿马镇2025001号地块',
- p3: '耿马傣族佤族自治县/耿马镇',
- p4: '1000',
- p5: '张三',
- p6: '13837633838',
- status: 1,
- type: 'base_plant',
- createTime: '2025-01-01',
- updateTime: '2025-01-15',
- },
- 10
- );
- state.loading = false;
+ GetEntityList(state.query)
+ .then((res) => {
+ if (res.code === 200) {
+ const { current, size, total, records } = res.data;
+ state.data = records;
+ state.pageData = {
+ currentPage: current || 1,
+ pageSize: size || 10,
+ total: total,
+ };
+ }
+ })
+ .catch((err) => {
+ app.$message.error(err.msg);
+ state.data = [];
+ })
+ .finally(() => {
+ state.loading = false;
+ });
};
loadData();
@@ -313,29 +299,36 @@ const rowView = (row) => {
};
// 启用、禁用
-// const rowStatus = (row) => {
-// console.info('操作状态');
-// };
+const rowStatus = (row) => {
+ let status = row.status === 1 ? 0 : 1;
+ UpdateStatus({ id: row.id, status })
+ .then((res) => {
+ if (res.code === 200) {
+ app.$message.success('状态更改成功!');
+ loadData();
+ }
+ })
+ .catch((err) => {
+ app.$message.error(err.msg);
+ });
+};
// 新增
-// const onAdd = () => {
-// crudRef.value && crudRef.value.rowAdd();
-// };
const rowSave = (row, done, loading) => {
- // AddEntity(row)
- // .then((res) => {
- // if (res.code === 200) {
- // app.$message.success('添加成功!');
- // done();
- // loadData();
- // }
- // })
- // .catch((err) => {
- // app.$message.error(err.msg);
- // })
- // .finally(() => {
- // loading();
- // });
+ AddEntity(row)
+ .then((res) => {
+ if (res.code === 200) {
+ app.$message.success('添加成功!');
+ done();
+ loadData();
+ }
+ })
+ .catch((err) => {
+ app.$message.error(err.msg);
+ })
+ .finally(() => {
+ loading();
+ });
};
// 编辑
@@ -344,20 +337,20 @@ const rowEdit = (row) => {
};
const rowUpdate = (row, index, done, loading) => {
- // UpdateEntity(row)
- // .then((res) => {
- // if (res.code === 200) {
- // app.$message.success('更新成功!');
- // done();
- // loadData();
- // }
- // })
- // .catch((err) => {
- // app.$message.error(err.msg);
- // })
- // .finally(() => {
- // loading();
- // });
+ UpdateEntity(row)
+ .then((res) => {
+ if (res.code === 200) {
+ app.$message.success('更新成功!');
+ done();
+ loadData();
+ }
+ })
+ .catch((err) => {
+ app.$message.error(err.msg);
+ })
+ .finally(() => {
+ loading();
+ });
};
// 删除
@@ -371,16 +364,16 @@ const onDel = (rows = []) => {
type: 'warning',
})
.then(() => {
- // DeleteEntity({ ids: ids.join(',') })
- // .then((res) => {
- // if (res.code === 200) {
- // app.$message.success('删除成功!');
- // loadData();
- // }
- // })
- // .catch((err) => {
- // app.$message.error(err.msg);
- // });
+ DeleteEntity({ ids: ids.join(',') })
+ .then((res) => {
+ if (res.code === 200) {
+ app.$message.success('删除成功!');
+ loadData();
+ }
+ })
+ .catch((err) => {
+ app.$message.error(err.msg);
+ });
})
.catch(() => {});
};
@@ -391,16 +384,26 @@ const rowDel = (row, index, done) => {
// 远程搜搜
const remoteLandList = async (val) => {
- if (isEmpty(val)) return;
+ if (!isEmpty(val)) return;
const query = { landName: val, current: 1, size: 20 };
const res = await getLandsList(query);
if (res.code === 200) {
- setDicData(state.options.column, 'landName', res.data.records);
+ setDicData(state.options.column, 'landId', res.data.records);
}
};
// 选择赋值
-const selectedChange = ({ value, item }) => {
- console.log(430, value, item, item.landName, item.address, item.area);
+const selectedChange = ({ item, value, dic }) => {
+ // console.log(390, value, item);
+ crudRef.value.tableForm.landId = item?.id;
+ crudRef.value.tableForm.landName = item?.landName;
+ crudRef.value.tableForm.address = item?.address;
+ crudRef.value.tableForm.area = item?.area;
+ crudRef.value.tableForm.provinceCode = item?.provinceCode;
+ // crudRef.value.tableForm.provinceName = item?.provinceName;
+ crudRef.value.tableForm.cityCode = item?.cityCode;
+ crudRef.value.tableForm.districtCode = item?.county;
+ crudRef.value.tableForm.townCode = item?.townCode;
+ crudRef.value.tableForm.villageCode = item?.villageCode;
};
diff --git a/sub-government-affairs-service/src/views/system/dept/index.vue b/sub-government-affairs-service/src/views/system/dept/index.vue
index 82169b5..bea75c2 100644
--- a/sub-government-affairs-service/src/views/system/dept/index.vue
+++ b/sub-government-affairs-service/src/views/system/dept/index.vue
@@ -15,6 +15,11 @@
@row-update="rowUpdate"
@row-del="rowDel"
>
+
+ 启用
+ 禁用
+
+
@@ -26,9 +31,12 @@ import { reactive, ref } from 'vue';
import { useApp } from '@/hooks';
import { CRUD_OPTIONS } from '@/config';
import { isEmpty, getTree } from '@/utils';
+import { useUserStore } from '@/store/modules/user';
import { GetEntityList, AddEntity, UpdateEntity, DeleteEntity } from '@/apis/system/dept';
+const { VITE_APP_BASE_API } = import.meta.env;
const app = useApp();
+const UserStore = useUserStore();
const crudRef = ref(null);
const state = reactive({
loading: false,
@@ -40,18 +48,39 @@ const state = reactive({
rowKey: 'deptId',
index: false,
selection: false,
- expand: true,
+ tree: true,
+ defaultExpandAll: true,
+ treeProps: { children: 'children', hasChildren: 'hasChildren' },
column: [
{
label: '部门名称',
prop: 'deptName',
search: true,
+ width: 200,
rules: {
required: true,
message: '请输入',
trigger: 'blur',
},
},
+ {
+ label: '上级部门',
+ prop: 'parentId',
+ type: 'select',
+ hide: true,
+ props: {
+ label: 'deptName',
+ value: 'deptId',
+ },
+ dicUrl: `${VITE_APP_BASE_API}/system/dept/list`,
+ dicHeaders: {
+ authorization: UserStore.token,
+ },
+ dicFormatter: (res) => {
+ const data = [{ deptId: 0, deptName: '根目录' }, ...res.data];
+ return data;
+ },
+ },
{
label: '状态',
prop: 'status',
@@ -70,7 +99,7 @@ const state = reactive({
value: '0',
rules: {
required: true,
- message: '请输入',
+ message: '请选择',
trigger: 'blur',
},
},
@@ -137,7 +166,6 @@ const loadData = () => {
.then((res) => {
if (res.code === 200) {
state.data = getTree(res.data, 'deptId');
- console.log(139, state.data);
}
})
.catch((err) => {
@@ -223,7 +251,7 @@ const rowDel = (row, index, done) => {
type: 'warning',
})
.then(() => {
- DeleteEntity({ id: row.id })
+ DeleteEntity({ id: row.deptId })
.then((res) => {
if (res.code === 200) {
app.$message.success('删除成功!');
diff --git a/sub-government-affairs-service/src/views/system/dict/index.vue b/sub-government-affairs-service/src/views/system/dict/index.vue
index bfd2833..832d5c3 100644
--- a/sub-government-affairs-service/src/views/system/dict/index.vue
+++ b/sub-government-affairs-service/src/views/system/dict/index.vue
@@ -18,6 +18,11 @@
@row-update="rowUpdate"
@row-del="rowDel"
>
+
+ 启用
+ 禁用
+
+
@@ -48,13 +53,6 @@ const state = reactive({
...CRUD_OPTIONS,
selection: false,
column: [
- // {
- // label: '编码',
- // prop: 'dictCode',
- // addDisplay: false,
- // editDisplay: false,
- // viewDisplay: false,
- // },
{
label: '字典名称',
prop: 'dictLabel',
@@ -116,6 +114,12 @@ const state = reactive({
trigger: 'blur',
},
},
+ {
+ label: '排序',
+ prop: 'dictSort',
+ type: 'number',
+ hide: true,
+ },
{
label: '备注',
prop: 'remark',
diff --git a/sub-government-affairs-service/src/views/system/dict/type.vue b/sub-government-affairs-service/src/views/system/dict/type.vue
index fc196ac..02df011 100644
--- a/sub-government-affairs-service/src/views/system/dict/type.vue
+++ b/sub-government-affairs-service/src/views/system/dict/type.vue
@@ -18,6 +18,11 @@
@row-update="rowUpdate"
@row-del="rowDel"
>
+
+ 启用
+ 禁用
+
+
diff --git a/sub-government-affairs-service/src/views/system/menu/index.vue b/sub-government-affairs-service/src/views/system/menu/index.vue
new file mode 100644
index 0000000..f7cd740
--- /dev/null
+++ b/sub-government-affairs-service/src/views/system/menu/index.vue
@@ -0,0 +1,490 @@
+
+
+
+
+
+
+
+
+
+ {{ data.dictLabel }}
+
+
+
+
+
+
+
+
+
+ 目录
+ 菜单
+ 按钮
+
+
+
+ 启用
+ 禁用
+
+
+
+
+
+
+
+
+
+
+
+
+
From 60911cf22398a8d6582fb82bfdca4d499c8c4625 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=8E=E6=83=B3?= <826276471@qq.com>
Date: Tue, 1 Apr 2025 17:33:12 +0800
Subject: [PATCH 3/5] =?UTF-8?q?feat:=E7=A7=8D=E6=BA=90=E7=AE=A1=E7=90=86?=
=?UTF-8?q?=E6=8E=A5=E5=8F=A3=E5=AF=B9=E6=8E=A5=E5=AE=8C=E6=88=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/apis/inputSuppliesApi/material.js | 34 +-
.../src/config/index.js | 7 +
.../src/router/modules/inputSupplies/index.js | 69 +--
.../common/NumberSelect.vue | 21 +-
.../inputSuppliesManage/hooks/useBasicInfo.js | 16 +
.../material/farmMachinery/index.vue | 400 +++++++++++++++++-
.../material/fertilizer/index.vue | 9 +-
.../material/pesticide/index.vue | 49 ++-
.../material/ratPoison/index.vue | 10 +-
.../material/seed/index.vue | 250 ++++++++++-
.../farmMachineryDealer/index.vue | 19 -
.../fertilizerDealer/index.vue | 19 -
.../productionDealer/index.vue | 63 ++-
.../pesticideDealer/index.vue | 19 -
.../ratPoisonDealer/index.vue | 19 -
.../productionDealer/seedDealer/index.vue | 19 -
16 files changed, 841 insertions(+), 182 deletions(-)
delete mode 100644 sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/farmMachineryDealer/index.vue
delete mode 100644 sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/fertilizerDealer/index.vue
delete mode 100644 sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/pesticideDealer/index.vue
delete mode 100644 sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/ratPoisonDealer/index.vue
delete mode 100644 sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/seedDealer/index.vue
diff --git a/sub-government-affairs-service/src/apis/inputSuppliesApi/material.js b/sub-government-affairs-service/src/apis/inputSuppliesApi/material.js
index 8b47cea..5eb97dd 100644
--- a/sub-government-affairs-service/src/apis/inputSuppliesApi/material.js
+++ b/sub-government-affairs-service/src/apis/inputSuppliesApi/material.js
@@ -29,7 +29,10 @@ export function pesticideReportSave(data) {
method: 'PUT',
});
}
-
+/* 删除农药 */
+export function delPesticide(ids) {
+ return request(`/inputGoods/pesticide/delete/${ids}`);
+}
// #endregion
/* ------ 肥料 ------ */
@@ -45,6 +48,10 @@ export function addFertilizer(data) {
data,
});
}
+/* 删除肥料 */
+export function delFretilize(ids) {
+ return request(`/inputGoods/fertilize/delete/${ids}`);
+}
// #endregion
/* ------ 兽药 ------ */
// #region
@@ -60,6 +67,29 @@ export function addAnimalMedicine(data) {
data,
});
}
+/* 删除兽药 */
+export function delAnimalMedicine(ids) {
+ return request(`/inputGoods/animalMedicine/delete/${ids}`);
+}
+// #endregion
+/* ------ 种源 ------ */
+// #region
+/* 查询种源 */
+export function getSeedList(params) {
+ return request('/inputGoods/provenance/page', {
+ params,
+ });
+}
+/* 新增种源 */
+export function seedSave(data) {
+ return request('/inputGoods/provenance/save', {
+ method: 'POST',
+ data,
+ });
+}
+/* 删除种源 */
+export function delSeed(ids) {
+ return request(`/inputGoods/provenance/delete/${ids}`);
+}
// #endregion
-
//
diff --git a/sub-government-affairs-service/src/config/index.js b/sub-government-affairs-service/src/config/index.js
index 171e4ef..9b5da37 100644
--- a/sub-government-affairs-service/src/config/index.js
+++ b/sub-government-affairs-service/src/config/index.js
@@ -1,4 +1,5 @@
import { qiankunWindow } from 'vite-plugin-qiankun/dist/helper';
+import { ref } from 'vue';
const { VITE_APP_MIAN, VITE_APP_NAME } = import.meta.env;
export const GenKey = (key, prefix = VITE_APP_NAME) => {
@@ -68,3 +69,9 @@ export function customRules(set = { disabled: false }) {
}
return rulesArr;
}
+
+export const pageData = ref({
+ currentPage: 1,
+ size: 10,
+ total: 0,
+});
diff --git a/sub-government-affairs-service/src/router/modules/inputSupplies/index.js b/sub-government-affairs-service/src/router/modules/inputSupplies/index.js
index 40da877..aa2fdf4 100644
--- a/sub-government-affairs-service/src/router/modules/inputSupplies/index.js
+++ b/sub-government-affairs-service/src/router/modules/inputSupplies/index.js
@@ -46,59 +46,26 @@ const inputSuppliesRoutes = [
component: () => import('@/views/inputSuppliesManage/material/ratPoison/index.vue'),
meta: { title: '兽药管理', icon: 'Document' },
},
- // {
- // path: '/sub-government-affairs-service/material/farmMachinery',
- // name: 'input-supplies-farmMachinery',
- // component: () => import('@/views/inputSuppliesManage/material/farmMachinery/index.vue'),
- // meta: { title: '农机管理', icon: 'Document' },
- // },
- // {
- // path: '/sub-government-affairs-service/material/seed',
- // name: 'input-supplies-seed',
- // component: () => import('@/views/inputSuppliesManage/material/seed/index.vue'),
- // meta: { title: '种源管理', icon: 'Document' },
- // },
+ {
+ path: '/sub-government-affairs-service/material/seed',
+ name: 'input-supplies-seed',
+ component: () => import('@/views/inputSuppliesManage/material/seed/index.vue'),
+ meta: { title: '种源管理', icon: 'Document' },
+ },
+ {
+ path: '/sub-government-affairs-service/material/farmMachinery',
+ name: 'input-supplies-farmMachinery',
+ component: () => import('@/views/inputSuppliesManage/material/farmMachinery/index.vue'),
+ meta: { title: '农机管理', icon: 'Document' },
+ },
],
},
- // {
- // path: '/sub-government-affairs-service/productionDealer',
- // name: 'productionDealer',
- // component: Views,
- // meta: { title: '生产经销商管理', icon: 'Document' },
- // redirect: '/sub-government-affairs-service/productionDealer/pesticideDealer',
- // children: [
- // {
- // path: '/sub-government-affairs-service/productionDealer/pesticideDealer',
- // name: 'input-supplies-pesticide-dealer',
- // component: () => import('@/views/inputSuppliesManage/productionDealer/pesticideDealer/index.vue'),
- // meta: { title: '农药经销商管理', icon: 'Document' },
- // },
- // {
- // path: '/sub-government-affairs-service/productionDealer/fertilizerDealer',
- // name: 'input-supplies-fertilizer-dealer',
- // component: () => import('@/views/inputSuppliesManage/productionDealer/fertilizerDealer/index.vue'),
- // meta: { title: '肥料经销商管理', icon: 'Document' },
- // },
- // {
- // path: '/sub-government-affairs-service/productionDealer/ratPoisonDealer',
- // name: 'input-supplies-ratPoison-dealer',
- // component: () => import('@/views/inputSuppliesManage/productionDealer/ratPoisonDealer/index.vue'),
- // meta: { title: '兽药经销商管理', icon: 'Document' },
- // },
- // {
- // path: '/sub-government-affairs-service/productionDealer/farmMachineryDealer',
- // name: 'input-supplies-farmMachinery-dealer',
- // component: () => import('@/views/inputSuppliesManage/productionDealer/farmMachineryDealer/index.vue'),
- // meta: { title: '农机经销商管理', icon: 'Document' },
- // },
- // {
- // path: '/sub-government-affairs-service/productionDealer/seedDealer',
- // name: 'input-supplies-seed-dealer',
- // component: () => import('@/views/inputSuppliesManage/productionDealer/seedDealer/index.vue'),
- // meta: { title: '种源经销商管理', icon: 'Document' },
- // },
- // ],
- // },
+ {
+ path: '/sub-government-affairs-service/productionDealer',
+ name: 'productionDealer',
+ component: () => import('@/views/inputSuppliesManage/productionDealer/index.vue'),
+ meta: { title: '企业经销商管理', icon: 'Document' },
+ },
// {
// path: '/sub-government-affairs-service/enterpriseDealerCheck',
// name: 'enterpriseDealerCheck',
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/common/NumberSelect.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/common/NumberSelect.vue
index ccd468f..954a3f7 100644
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/common/NumberSelect.vue
+++ b/sub-government-affairs-service/src/views/inputSuppliesManage/common/NumberSelect.vue
@@ -1,6 +1,13 @@
-
+
@@ -38,6 +45,12 @@ const props = defineProps({
},
],
},
+ set: {
+ type: Object,
+ default: () => {
+ return {};
+ },
+ },
numberSet: {
type: Object,
default: () => {
@@ -47,9 +60,8 @@ const props = defineProps({
});
const _numberSet = ref({
precision: 2,
- setp: 1,
+ step: 1,
min: 1,
- max: 100,
controlsPosition: 'right',
});
const data = ref({
@@ -58,7 +70,8 @@ const data = ref({
});
watchEffect(() => {
data.value = Object.assign(data.value, props.value);
- _numberSet.value = Object.assign(_numberSet.value, props.set);
+ _numberSet.value = Object.assign(_numberSet.value, props.numberSet);
+ console.log('_numberSet.value', _numberSet.value);
});
function handleChange() {
emit('update:value', data.value);
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/hooks/useBasicInfo.js b/sub-government-affairs-service/src/views/inputSuppliesManage/hooks/useBasicInfo.js
index 8eb3c13..1a8bee8 100644
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/hooks/useBasicInfo.js
+++ b/sub-government-affairs-service/src/views/inputSuppliesManage/hooks/useBasicInfo.js
@@ -1,6 +1,8 @@
import { ref, onMounted, reactive } from 'vue';
import inputSuppliesApis from '@/apis/inputSuppliesApi';
+import { ElMessage, ElMessageBox } from 'element-plus';
const { getMaterailTypes } = inputSuppliesApis;
+
export function useBasicInfo(set = {}) {
const loadFinish = ref(false);
const searchCondition = Object.assign(
@@ -161,6 +163,19 @@ export function useBasicInfo(set = {}) {
});
return _t;
}
+ function handleDelFn(ids, _fetch, _callback) {
+ ElMessageBox.confirm('确定删除该数据吗?', '提示', {
+ confirmButtonText: '确定',
+ cancelButtonText: '取消',
+ type: 'warning',
+ }).then(async () => {
+ let res = await _fetch(ids);
+ if (res.code == 200) {
+ ElMessage.success('删除成功');
+ _callback();
+ }
+ });
+ }
// #endregion
onMounted(getmaterialType);
@@ -176,5 +191,6 @@ export function useBasicInfo(set = {}) {
filterTypes,
handleShowName,
handleNumUnit,
+ handleDelFn,
};
}
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/material/farmMachinery/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/material/farmMachinery/index.vue
index 84a3ac0..74910a7 100644
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/material/farmMachinery/index.vue
+++ b/sub-government-affairs-service/src/views/inputSuppliesManage/material/farmMachinery/index.vue
@@ -1,21 +1,413 @@
-
+ 农机基本信息
+
+
+ {
+ getData(1);
+ done();
+ }
+ "
+ @search-reset="getData(1)"
+ @refresh-change="getData"
+ @current-change="getData"
+ @size-change="getData(1)"
+ @row-save="handleRowSave"
+ @row-update="handleRowUpdate"
+ >
+
+
+
+
+
+
+
+
+
+
-
+
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/material/fertilizer/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/material/fertilizer/index.vue
index bf64b8a..3fa92b8 100644
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/material/fertilizer/index.vue
+++ b/sub-government-affairs-service/src/views/inputSuppliesManage/material/fertilizer/index.vue
@@ -24,7 +24,8 @@
@row-save="handleRowSave"
>
- 详情
+ 详情
+ 删除
@@ -51,8 +52,9 @@ import Attrs from '@/views/inputSuppliesManage/common/Attrs.vue';
import NumberSelect from '@/views/inputSuppliesManage/common/NumberSelect.vue';
import { ElMessage } from 'element-plus';
-const { getFertilizreList, addFertilizer } = inputSuppliesApi;
-const { loadFinish, materialTypes, materialTwoLevel, targetName, goodsUnitOptions, useDosageUnit, handleShowName, handleNumUnit } = useBasicInfo();
+const { getFertilizreList, addFertilizer, delFretilize } = inputSuppliesApi;
+const { loadFinish, materialTypes, materialTwoLevel, targetName, goodsUnitOptions, useDosageUnit, handleShowName, handleNumUnit, handleDelFn } =
+ useBasicInfo();
onMounted(getData);
watch(
@@ -94,6 +96,7 @@ const pageData = ref({
const option = ref({
...CRUD_OPTIONS,
selection: false,
+ menuWidth: 160,
column: [
{
hide: true,
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/material/pesticide/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/material/pesticide/index.vue
index 087f222..72d9da9 100644
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/material/pesticide/index.vue
+++ b/sub-government-affairs-service/src/views/inputSuppliesManage/material/pesticide/index.vue
@@ -24,9 +24,8 @@
@row-save="handleRowSave"
@row-update="handleRowUpdate"
>
-
- 上传报告
- 详情
+
+
@@ -64,13 +63,23 @@ import { useBasicInfo } from '@/views/inputSuppliesManage/hooks/useBasicInfo';
import Attrs from '@/views/inputSuppliesManage/common/Attrs.vue';
import NumberSelect from '@/views/inputSuppliesManage/common/NumberSelect.vue';
import inputSuppliesApi from '@/apis/inputSuppliesApi';
-import { ElMessage } from 'element-plus';
+import { ElMessage, ElMessageBox } from 'element-plus';
-const { defaultGet, loadFinish, materialTypes, materialTwoLevel, goodsUnitOptions, useDosageUnit, handleNumUnit, handleShowName, targetName } =
- useBasicInfo({
- moduleType: '1',
- });
-const { getPesticideList, addPesticide, pesticideReportSave } = inputSuppliesApi;
+const {
+ defaultGet,
+ loadFinish,
+ materialTypes,
+ materialTwoLevel,
+ goodsUnitOptions,
+ useDosageUnit,
+ handleNumUnit,
+ handleShowName,
+ targetName,
+ handleDelFn,
+} = useBasicInfo({
+ moduleType: '1',
+});
+const { getPesticideList, addPesticide, pesticideReportSave, delPesticide } = inputSuppliesApi;
/* --------------- data --------------- */
// #region
@@ -117,9 +126,8 @@ const option = ref({
labelWidth: 124,
editBtn: false,
delBtn: false,
- menuWidth: 220,
dialogWidth: '60%',
- editBtnText: '上传报告',
+ updateBtnText: '上传报告',
column: [
{
hide: true,
@@ -419,7 +427,24 @@ const useDosage = ref({
num: 1,
type: '1',
});
-
+const actions = ref([
+ {
+ name: '上传报告',
+ icon: 'view',
+ event: ({ row }) => handleEdit(row),
+ },
+ {
+ name: '详情',
+ icon: 'view',
+ event: ({ row }) => handleInfo(row),
+ },
+ {
+ type: 'danger',
+ name: '删除',
+ icon: 'delete',
+ event: ({ row }) => handleDelFn(row.id, delPesticide, getData),
+ },
+]);
// #endregion
/* --------------- methods --------------- */
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/material/ratPoison/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/material/ratPoison/index.vue
index 0526e14..6ef9e4e 100644
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/material/ratPoison/index.vue
+++ b/sub-government-affairs-service/src/views/inputSuppliesManage/material/ratPoison/index.vue
@@ -24,7 +24,8 @@
@row-save="handleRowSave"
>
- 详情
+ 详情
+ 删除
@@ -47,8 +48,9 @@ import NumberSelect from '@/views/inputSuppliesManage/common/NumberSelect.vue';
import inputSuppliesApi from '@/apis/inputSuppliesApi';
import { ElMessage } from 'element-plus';
-const { defaultGet, loadFinish, materialTypes, materialTwoLevel, goodsUnitOptions, handleNumUnit, handleShowName, targetName } = useBasicInfo();
-const { getAnimalMedicineList, addAnimalMedicine } = inputSuppliesApi;
+const { defaultGet, loadFinish, materialTypes, materialTwoLevel, goodsUnitOptions, handleNumUnit, handleShowName, targetName, handleDelFn } =
+ useBasicInfo();
+const { getAnimalMedicineList, addAnimalMedicine, delAnimalMedicine } = inputSuppliesApi;
/* --------------- data --------------- */
// #region
@@ -78,7 +80,7 @@ const option = ref({
labelWidth: 124,
editBtn: false,
delBtn: false,
- menuWidth: 220,
+ menuWidth: 160,
dialogWidth: '50%',
column: [
{
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/material/seed/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/material/seed/index.vue
index d0dea34..815c6f0 100644
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/material/seed/index.vue
+++ b/sub-government-affairs-service/src/views/inputSuppliesManage/material/seed/index.vue
@@ -1,20 +1,262 @@
-
+ 种源基本信息
+
+
+ {
+ getData(1);
+ done();
+ }
+ "
+ @search-reset="getData(1)"
+ @refresh-change="getData"
+ @current-change="getData"
+ @size-change="getData(1)"
+ @row-save="handleRowSave"
+ >
+
+ 详情
+ 删除
+
+
+
-
+
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/farmMachineryDealer/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/farmMachineryDealer/index.vue
deleted file mode 100644
index 56f7576..0000000
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/farmMachineryDealer/index.vue
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
-
-
-
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/fertilizerDealer/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/fertilizerDealer/index.vue
deleted file mode 100644
index 3c6a85d..0000000
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/fertilizerDealer/index.vue
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
-
-
-
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/index.vue
index 627f0e5..0d813fa 100644
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/index.vue
+++ b/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/index.vue
@@ -1,13 +1,70 @@
-
+
-
-
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/ratPoisonDealer/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/ratPoisonDealer/index.vue
deleted file mode 100644
index 3d34cb9..0000000
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/ratPoisonDealer/index.vue
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
-
-
-
diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/seedDealer/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/seedDealer/index.vue
deleted file mode 100644
index 8cb699d..0000000
--- a/sub-government-affairs-service/src/views/inputSuppliesManage/productionDealer/seedDealer/index.vue
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
-
-
-
From 553b87200390df87e2d543d4202a1080e717d5e9 Mon Sep 17 00:00:00 2001
From: wangzenghua <1048523306@qq.com>
Date: Wed, 2 Apr 2025 02:35:01 +0100
Subject: [PATCH 4/5] fix:unit
---
.../src/views/trace/agricultural/coding/index.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sub-government-affairs-service/src/views/trace/agricultural/coding/index.vue b/sub-government-affairs-service/src/views/trace/agricultural/coding/index.vue
index 26049a7..9d5f806 100644
--- a/sub-government-affairs-service/src/views/trace/agricultural/coding/index.vue
+++ b/sub-government-affairs-service/src/views/trace/agricultural/coding/index.vue
@@ -156,7 +156,7 @@ const state = reactive({
dicHeaders: {
authorization: UserStore.token,
},
- dicFormatter: (res) => res?.data?.records ?? [],
+ dicFormatter: (res) => res?.data ?? [],
rules: {
required: true,
message: '请选择',
From 6c013883b31aef60d8239414c613779bc96d34fe Mon Sep 17 00:00:00 2001
From: wangzenghua <1048523306@qq.com>
Date: Wed, 2 Apr 2025 02:52:41 +0100
Subject: [PATCH 5/5] fix
---
.../views/plantingAndBreeding/base/index.vue | 29 +++++++++++++++----
.../src/views/system/dept/index.vue | 4 +--
.../src/views/system/dict/index.vue | 4 +--
.../src/views/system/dict/type.vue | 4 +--
4 files changed, 29 insertions(+), 12 deletions(-)
diff --git a/sub-government-affairs-service/src/views/plantingAndBreeding/base/index.vue b/sub-government-affairs-service/src/views/plantingAndBreeding/base/index.vue
index f05972d..4e86fd2 100644
--- a/sub-government-affairs-service/src/views/plantingAndBreeding/base/index.vue
+++ b/sub-government-affairs-service/src/views/plantingAndBreeding/base/index.vue
@@ -23,8 +23,8 @@
- 启用
- 禁用
+ 启用
+ 禁用
@@ -34,12 +34,13 @@