feat:产品质量检查

This commit is contained in:
wangzenghua 2025-02-11 03:17:09 +00:00
parent 57aa58e7d4
commit fbc6ecaa97
6 changed files with 87 additions and 39 deletions

14
main/.env.development Normal file
View File

@ -0,0 +1,14 @@
# 开发环境
VITE_PORT = 9000
VITE_APP_NAME = 'daimp-front-main'
VITE_APP_TITLE = '数字农业产业管理平台'
VITE_APP_SUB_OS = '//localhost:9526/sub-operation-service/'
VITE_APP_SUB_ADMIN = '//localhost:9527/sub-admin/'
VITE_APP_SUB_GAS = '//localhost:9528/suv-government-affairs-service/'
# 接口
VITE_APP_BASE_API = '/apis'
VITE_APP_BASE_URL = 'http://192.168.18.99:8080'
VITE_APP_UPLOAD_API = '/uploadApis'
VITE_APP_UPLOAD_URL = 'http://192.168.18.99:9300'
VITE_APP_SYSTEM_API = '/systemApis'
VITE_APP_SYSTEM_URL = 'http://192.168.18.99:99/stage-api'

View File

@ -1,11 +1,11 @@
import actions from './actions';
const { VITE_APP_SUB_VUE, VITE_APP_SUB_ADMIN, VITE_APP_SUB_GAS } = import.meta.env;
const { VITE_APP_SUB_OS, VITE_APP_SUB_ADMIN, VITE_APP_SUB_GAS } = import.meta.env;
export const leftApps = [
// {
// name: 'sub-operation-service',
// entry: VITE_APP_SUB_VUE,
// entry: VITE_APP_SUB_OS,
// activeRule: '/sub-operation-service/',
// title: '运营服务',
// icon: 'platform/icon-home.png',

View File

@ -6,7 +6,7 @@ export const useUserStore = defineStore({
id: GenKey('userStore'),
state: () => ({
token:
'eyJhbGciOiJIUzUxMiJ9.eyJ1c2VyX2lkIjoxLCJ1c2VyX2tleSI6IjU0ZGVjMzk4LTRhZmQtNDUyOS1hYjFkLTExZGZlZjU5NjJhOSIsInVzZXJuYW1lIjoiYWRtaW4ifQ._bHoqldw4oL_MqZxrHv81ShD3Z0GJYSdWietR1mHAfKluNi3SSs1PRZNrq1v-WTQyXgz1QgsBimPB48iqP7o6Q',
'eyJhbGciOiJIUzUxMiJ9.eyJ1c2VyX2lkIjoxLCJ1c2VyX2tleSI6IjA5MzRhYzQ0LWUyZWEtNDNkOS1iYjZiLTg2YzBhOWZmYmJiYyIsInVzZXJuYW1lIjoiYWRtaW4ifQ.43OzhYseqkg5KDD3WyY1xXURyuoX-00MBLrqQVsdH14jfAtL-zPCrMT_WLtHKFicLg9ohTz0oE2nHUYRS-sZBA',
userInfo: {},
currentOrg: null,
orgList: [],

View File

@ -84,14 +84,18 @@ const state = reactive({
label: '溯源码',
prop: 'id',
search: true,
display: false,
addDisplay: false,
editDisplay: false,
viewDisplay: true,
width: 200,
},
{
label: '采收批次',
prop: 'harvestBatch',
width: 200,
display: false,
addDisplay: false,
editDisplay: false,
viewDisplay: true,
},
{
label: '产品名称',
@ -187,8 +191,8 @@ const state = reactive({
rangeSeparator: '至',
startPlaceholder: '开始日期',
endPlaceholder: '结束日期',
format: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'YYYY-MM-DD HH:mm:ss',
format: 'YYYY-MM-DD',
valueFormat: 'YYYY-MM-DD',
width: 200,
hide: true,
display: false,
@ -233,7 +237,9 @@ const state = reactive({
{
label: '原产地',
prop: 'originAddress',
display: false,
addDisplay: false,
editDisplay: false,
viewDisplay: true,
overHidden: true,
width: 200,
},
@ -243,6 +249,9 @@ const state = reactive({
type: 'cascader',
// search: true,
hide: true,
addDisplay: true,
editDisplay: true,
viewDisplay: false,
props: {
label: 'areaName',
value: 'areaCode',
@ -264,7 +273,7 @@ const state = reactive({
label: '原产地详细地址',
prop: 'originAddressDetail',
hide: true,
span: 24,
// span: 24,
},
// {
// label: '',
@ -355,6 +364,7 @@ const state = reactive({
//
const loadData = async () => {
state.loading = true;
delete state.query.datetime;
GetEntityList(state.query)
.then((res) => {
if (res.code === 200) {
@ -393,11 +403,12 @@ const sizeChange = (size) => {
//
const searchChange = (params, done) => {
if (done) done();
state.query = params;
if (params?.datetime) {
state.query.harvestStartTime = params.datetime[0];
state.query.harvestEndTime = params.datetime[1];
params.harvestStartTime = params.datetime[0];
params.harvestEndTime = params.datetime[1];
}
delete params.datetime;
state.query = params;
state.query.current = 1;
loadData();
};
@ -442,19 +453,32 @@ const setCity = (row) => {
}
};
// const setCityChange = ({ value, dic }) => {
// debugger;
// const labels = [];
// let currentOptions = dic;
// value.forEach((val) => {
// const option = dic.find((item) => item.areaCode === val);
// if (option) {
// labels.push(option.label);
// currentOptions = option.children || [];
// }
// });
// state.form.originAddress = labels.join(' / ');
// };
function findLabelByValue(tree = [], targetValue) {
for (let i = 0; i < tree.length; i++) {
const node = tree[i];
if (node.areaCode === targetValue) {
return node.areaName;
}
if (node.areaChildVOS && node.areaChildVOS.length > 0) {
const result = findLabelByValue(node.areaChildVOS, targetValue);
if (result) {
return result;
}
}
}
return null;
}
const setCityChange = ({ value, dic }) => {
const labels = [];
value.forEach((val) => {
const label = findLabelByValue(dic, val);
if (label) {
labels.push(label);
}
});
state.form.originAddress = labels.join('');
};
//
const rowSave = (row, done, loading) => {
@ -558,7 +582,7 @@ const onUploadExcel = (formData) => {
};
const onDownloadExcel = (url) => {
downloadFile(url, `采收赋码-导入模板.xlsx`, 'blob');
downloadFile(url, `采收赋码-导入模板.xlsx`);
};
//

View File

@ -15,6 +15,9 @@
<el-icon v-else class="custom-form__uploader__icon"><Plus /></el-icon>
</el-upload>
</template>
<template #menu-form>
<el-button icon="CircleClose" @click="state.visible = false">取消</el-button>
</template>
</avue-form>
</el-dialog>
</template>
@ -32,7 +35,6 @@ const props = defineProps({
},
});
// const emit = defineEmits(['on-confirm']);
const app = useApp();
const formRef = ref(null);
const state = reactive({
@ -41,6 +43,9 @@ const state = reactive({
options: {
gutter: 20,
labelWidth: 150,
submitText: '保存',
emptyBtn: false,
// menuPosition: 'right',
column: [
{
label: '采收批次',
@ -183,6 +188,7 @@ watch(
() => props.row,
(val) => {
if (!isEmpty(val)) {
state.form.harvestId = val?.id ?? null;
state.form.harvestBatch = val?.harvestBatch ?? null;
state.form.productName = val?.productName ?? null;
}

View File

@ -73,7 +73,7 @@ const state = reactive({
label: '溯源码',
prop: 'id',
search: true,
display: false,
disabled: true,
width: 200,
},
{
@ -174,8 +174,8 @@ const state = reactive({
rangeSeparator: '至',
startPlaceholder: '开始日期',
endPlaceholder: '结束日期',
format: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'YYYY-MM-DD HH:mm:ss',
format: 'YYYY-MM-DD',
valueFormat: 'YYYY-MM-DD',
width: 200,
hide: true,
display: false,
@ -193,6 +193,14 @@ const state = reactive({
trigger: 'blur',
},
},
{
label: '创建时间',
prop: 'createTime',
width: 200,
addDisplay: false,
editDisplay: false,
viewDisplay: true,
},
{
label: '质检报告',
prop: 'qualityReportUrl',
@ -216,12 +224,6 @@ const state = reactive({
trigger: 'blur',
},
},
{
label: '创建时间',
prop: 'createTime',
width: 200,
display: false,
},
],
actions: [
{
@ -253,6 +255,7 @@ const state = reactive({
//
const loadData = async () => {
state.loading = true;
delete state.query.datetime;
GetEntityList(state.query)
.then((res) => {
if (res.code === 200) {
@ -291,11 +294,12 @@ const sizeChange = (size) => {
//
const searchChange = (params, done) => {
if (done) done();
state.query = params;
if (params?.datetime) {
state.query.qualityStartTime = params.datetime[0];
state.query.qualityEndTime = params.datetime[1];
params.qualityStartTime = params.datetime[0];
params.qualityEndTime = params.datetime[1];
}
delete params.datetime;
state.query = params;
state.query.current = 1;
loadData();
};