fixed
This commit is contained in:
Binary file not shown.
@ -74,6 +74,6 @@ export function serviceCaseEdit(data) {
|
||||
export function serviceCaseDelete(ids) {
|
||||
return request({
|
||||
url: `/business/solutionCase/${ids}`,
|
||||
method: "post",
|
||||
method: "delete",
|
||||
});
|
||||
}
|
||||
|
@ -28,7 +28,8 @@ import {
|
||||
watch,
|
||||
} from "vue";
|
||||
import { Editor, Toolbar } from "@wangeditor/editor-for-vue";
|
||||
|
||||
import request from "@/utils/request";
|
||||
import { getToken } from "@/utils/auth";
|
||||
export default {
|
||||
components: { Editor, Toolbar },
|
||||
props: {
|
||||
@ -76,26 +77,45 @@ export default {
|
||||
);
|
||||
const { height } = toRefs(props);
|
||||
const toolbarConfig = {
|
||||
toolbarKeys: [
|
||||
"bold",
|
||||
"underline",
|
||||
"italic",
|
||||
"through",
|
||||
"color",
|
||||
"bgColor",
|
||||
"fontSize",
|
||||
"fontFamily",
|
||||
"lineHeight",
|
||||
// "emotion",
|
||||
// "redo",
|
||||
// "undo",
|
||||
],
|
||||
// toolbarKeys: [
|
||||
// "bold",
|
||||
// "underline",
|
||||
// "italic",
|
||||
// "through",
|
||||
// "color",
|
||||
// "bgColor",
|
||||
// "fontSize",
|
||||
// "fontFamily",
|
||||
// "lineHeight",
|
||||
// "uploadImage",
|
||||
// // "emotion",
|
||||
// // "redo",
|
||||
// // "undo",
|
||||
// ],
|
||||
};
|
||||
const editorConfig = {
|
||||
placeholder: "请输入内容...",
|
||||
autoFocus: props.focus,
|
||||
maxLength: 140,
|
||||
readOnly: props.readOnly,
|
||||
MENU_CONF: {
|
||||
uploadImage: {
|
||||
async customUpload(file, insertFn) {
|
||||
const fd = new FormData();
|
||||
fd.append("file", file);
|
||||
const resp = await request({
|
||||
url: "/common/upload",
|
||||
method: "post",
|
||||
data: fd,
|
||||
headers: {
|
||||
Authorization: "Bearer " + getToken(),
|
||||
},
|
||||
});
|
||||
|
||||
insertFn(resp.url, "", resp.url);
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
onMounted(() => {
|
||||
// console.log(editorRef.value.getConfig());
|
||||
@ -110,6 +130,7 @@ export default {
|
||||
|
||||
const handleCreated = (editor) => {
|
||||
editorRef.value = editor; // 记录 editor 实例,重要!
|
||||
console.log(editorRef.value.getAllMenuKeys());
|
||||
};
|
||||
|
||||
const handleChange = (editor) => {
|
||||
|
@ -35,19 +35,19 @@ export const enterpriseOptions = [
|
||||
];
|
||||
// 成果成熟度 技术
|
||||
export const maturityOptions = [
|
||||
{ key: 1, value: "正在研发" },
|
||||
{ key: 2, value: "小试阶段" },
|
||||
{ key: 3, value: "通过小试" },
|
||||
{ key: 4, value: "中试阶段" },
|
||||
{ key: 5, value: "通过中试" },
|
||||
{ key: 6, value: "可规模生产" },
|
||||
{ key: "1", value: "正在研发" },
|
||||
{ key: "2", value: "小试阶段" },
|
||||
{ key: "3", value: "通过小试" },
|
||||
{ key: "4", value: "中试阶段" },
|
||||
{ key: "5", value: "通过中试" },
|
||||
{ key: "6", value: "可规模生产" },
|
||||
];
|
||||
// 成果领先型 领先标准
|
||||
export const leadOptions = [
|
||||
{ key: 1, value: "国内先进" },
|
||||
{ key: 2, value: "国内领先" },
|
||||
{ key: 3, value: "国际先进" },
|
||||
{ key: 4, value: "国际领先" },
|
||||
{ key: "1", value: "国内先进" },
|
||||
{ key: "2", value: "国内领先" },
|
||||
{ key: "3", value: "国际先进" },
|
||||
{ key: "4", value: "国际领先" },
|
||||
];
|
||||
// 专利类型
|
||||
export const patentOptions = [
|
||||
@ -57,13 +57,13 @@ export const patentOptions = [
|
||||
];
|
||||
// 合作模式
|
||||
export const cooperationOptions = [
|
||||
{ key: 101, value: "技术转让" },
|
||||
{ key: 102, value: "技术许可" },
|
||||
{ key: 103, value: "技术入股" },
|
||||
{ key: 104, value: "合作开发" },
|
||||
{ key: 105, value: "融资" },
|
||||
{ key: 106, value: "公司" },
|
||||
{ key: 107, value: "代理加盟" },
|
||||
{ key: 108, value: "市场推广" },
|
||||
{ key: 109, value: "其他" },
|
||||
{ key: "101", value: "技术转让" },
|
||||
{ key: "102", value: "技术许可" },
|
||||
{ key: "103", value: "技术入股" },
|
||||
{ key: "104", value: "合作开发" },
|
||||
{ key: "105", value: "融资" },
|
||||
{ key: "106", value: "公司" },
|
||||
{ key: "107", value: "代理加盟" },
|
||||
{ key: "108", value: "市场推广" },
|
||||
{ key: "109", value: "其他" },
|
||||
];
|
||||
|
@ -154,5 +154,30 @@ export function download(url, params, filename) {
|
||||
downloadLoadingInstance.close();
|
||||
})
|
||||
}
|
||||
export function customDownload(url, params, filename) {
|
||||
downloadLoadingInstance = ElLoading.service({ text: "正在下载数据,请稍候", background: "rgba(0, 0, 0, 0.7)", })
|
||||
return service.get(url, params, {
|
||||
baseURL:"",
|
||||
transformRequest: [(params) => { return tansParams(params) }],
|
||||
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
|
||||
responseType: 'blob'
|
||||
}).then(async (data) => {
|
||||
const isLogin = await blobValidate(data);
|
||||
if (isLogin) {
|
||||
const blob = new Blob([data])
|
||||
saveAs(blob, filename)
|
||||
} else {
|
||||
const resText = await data.text();
|
||||
const rspObj = JSON.parse(resText);
|
||||
const errMsg = errorCode[rspObj.code] || rspObj.msg || errorCode['default']
|
||||
ElMessage.error(errMsg);
|
||||
}
|
||||
downloadLoadingInstance.close();
|
||||
}).catch((r) => {
|
||||
console.error(r)
|
||||
ElMessage.error('下载文件出现错误,请联系管理员!')
|
||||
downloadLoadingInstance.close();
|
||||
})
|
||||
}
|
||||
|
||||
export default service
|
||||
|
@ -11,9 +11,9 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="企业名称:" prop="title">
|
||||
<el-form-item label="企业名称:" prop="enterpriseName">
|
||||
<el-input
|
||||
v-model="form.title"
|
||||
v-model="form.enterpriseName"
|
||||
placeholder="请输入企业名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
@ -51,7 +51,7 @@
|
||||
v-model="form"
|
||||
title="应用客户"
|
||||
placeholder="请输入应用客户"
|
||||
fieldKey="customer"
|
||||
fieldKey="customers"
|
||||
ref="customerForm"
|
||||
:disabled="true"
|
||||
/>
|
||||
@ -77,9 +77,9 @@
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="成果领先性:" prop="lead_standard">
|
||||
<el-form-item label="成果领先性:" prop="leadStandard">
|
||||
<el-select
|
||||
v-model="form.lead_standard"
|
||||
v-model="form.leadStandard"
|
||||
clearable
|
||||
placeholder="请选择成果领先性"
|
||||
>
|
||||
@ -98,7 +98,7 @@
|
||||
<el-col :span="24">
|
||||
<el-form-item label="合作模式:">
|
||||
<el-select
|
||||
v-model="form.cooperation_mode"
|
||||
v-model="form.cooperationMode"
|
||||
clearable
|
||||
placeholder="请选择合作模式"
|
||||
>
|
||||
@ -149,7 +149,13 @@
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="产品图片:" prop="image">
|
||||
<ImageUpload v-model="form.image" :limit="1" :disabled="true" />
|
||||
<!-- <ImageUpload v-model="form.image" :limit="1" :disabled="true" /> -->
|
||||
<el-link
|
||||
:disabled="!form.image"
|
||||
type="primary"
|
||||
@click="downloadProductImage"
|
||||
>下载产品图片</el-link
|
||||
>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<!-- <el-col :span="12">
|
||||
@ -163,17 +169,23 @@
|
||||
</el-form-item>
|
||||
</el-col> -->
|
||||
</el-row>
|
||||
<p>
|
||||
<!-- <p>
|
||||
<b>图片材料上传</b>
|
||||
</p>
|
||||
</p> -->
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="成熟度证明材料:">
|
||||
<FileUpload
|
||||
<!-- <FileUpload
|
||||
v-model="form.file"
|
||||
:limit="1"
|
||||
:fileType="['doc', 'xls', 'ppt', 'txt', 'pdf', 'jpg']"
|
||||
/>
|
||||
/> -->
|
||||
<el-link
|
||||
:disabled="!form.material"
|
||||
type="primary"
|
||||
@click="downloadProductMaterial"
|
||||
>下载成熟度证明材料</el-link
|
||||
>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -201,6 +213,7 @@ import {
|
||||
} from "@/utils/parameter";
|
||||
import { useRoute, useRouter } from "vue-router";
|
||||
import { ElMessage } from "element-plus";
|
||||
import { customDownload } from "@/utils/request";
|
||||
// import WangEditor from "@/components/WangEditor/index.vue";
|
||||
// const isAdd = ref(false);
|
||||
const route = useRoute();
|
||||
@ -231,6 +244,18 @@ const getDetail = async (id) => {
|
||||
if (route.query.id) {
|
||||
getDetail(route.query.id);
|
||||
}
|
||||
const downloadProductImage = () => {
|
||||
const filename =
|
||||
form.value.image.split("/")[form.value.image.split("/").length - 1];
|
||||
customDownload(form.value.image, {}, filename);
|
||||
};
|
||||
const downloadProductMaterial = () => {
|
||||
const filename =
|
||||
form.value.material.split("/")[form.value.material.split("/").length - 1];
|
||||
const baseUrl = import.meta.env.VITE_APP_BASE_API;
|
||||
customDownload(`/file${form.value.material}`, {}, filename);
|
||||
};
|
||||
|
||||
const submitForm = async (status) => {
|
||||
await updateEnterpriseApprovalProduct({ ...form.value, status });
|
||||
let successMessage;
|
||||
|
@ -51,7 +51,7 @@
|
||||
<el-table-column
|
||||
label="所属企业"
|
||||
align="center"
|
||||
prop="enterprise"
|
||||
prop="enterpriseName"
|
||||
></el-table-column>
|
||||
<el-table-column label="站点" align="center">
|
||||
<template #default="{ row }">
|
||||
|
132
src/views/components/Businessneeds/Approvaldetails copy.vue
Normal file
132
src/views/components/Businessneeds/Approvaldetails copy.vue
Normal file
@ -0,0 +1,132 @@
|
||||
<!-- 企业需求弹框 -->
|
||||
<template>
|
||||
<el-dialog title="基本信息" v-model="isShow">
|
||||
<el-form label-width="150px">
|
||||
<el-form-item label="所属企业">
|
||||
<el-input placeholder="请输入所属企业"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="所属需求名称">
|
||||
<el-input
|
||||
placeholder="请输入所属需求名称"
|
||||
v-model="modelValue.title"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="需求描述">
|
||||
<Editor v-model="modelValue.introduce"></Editor>
|
||||
</el-form-item>
|
||||
<el-form-item label="行业分类">
|
||||
<el-select placeholder="请输入" style="width: 100px">
|
||||
<el-option></el-option>
|
||||
</el-select>
|
||||
<el-select placeholder="请输入" style="width: 100px">
|
||||
<el-option></el-option>
|
||||
</el-select>
|
||||
<el-select placeholder="请输入" style="width: 100px">
|
||||
<el-option></el-option>
|
||||
</el-select>
|
||||
<el-select placeholder="请输入" style="width: 100px">
|
||||
<el-option></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="需求类别">
|
||||
<el-checkbox-group v-model="modelValue.kinds">
|
||||
<el-checkbox
|
||||
v-for="item in checkList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
>{{ item.name }}</el-checkbox
|
||||
>
|
||||
</el-checkbox-group>
|
||||
<!-- <el-checkbox-group v-model="checkList">
|
||||
<el-checkbox label="成果难题解决" />
|
||||
<el-checkbox label="成果储备/项目投资" />
|
||||
<el-checkbox label="新成果开发" />
|
||||
<el-checkbox label="校验检测" />
|
||||
<el-checkbox label="其他" />
|
||||
</el-checkbox-group> -->
|
||||
</el-form-item>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
label="成果需求预算:"
|
||||
:prop="modelValue.budgetMode == 1 ? 'budget' : ''"
|
||||
>
|
||||
<el-input
|
||||
v-model="modelValue.budget"
|
||||
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')"
|
||||
placeholder="请输入技术需求预算"
|
||||
>
|
||||
<template #append>万元</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label-width="50px">
|
||||
<el-checkbox
|
||||
false-label="1"
|
||||
true-label="2"
|
||||
v-model="modelValue.budgetMode"
|
||||
>面议</el-checkbox
|
||||
>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-form-item label="截至时间">
|
||||
<el-input placeholder="请输入"></el-input>
|
||||
</el-form-item>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="需求联系人">
|
||||
<el-input placeholder="请输入"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="联系人手机号码">
|
||||
<el-input placeholder="请输入"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-form-item label="想合作的企业及模式">
|
||||
<el-input placeholder="请输入"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-row type="flex" justify="end">
|
||||
<el-button type="primary">驳回</el-button>
|
||||
<el-button type="primary">通过需求</el-button>
|
||||
</el-row>
|
||||
</el-dialog>
|
||||
</template>
|
||||
<script setup>
|
||||
import Editor from "@/components/WangEditor";
|
||||
import { ref, toRefs } from "vue";
|
||||
const props = defineProps({
|
||||
isShow: {
|
||||
type: Boolean,
|
||||
required: true,
|
||||
},
|
||||
modelValue: {
|
||||
type: Object,
|
||||
required: true,
|
||||
},
|
||||
});
|
||||
const { isShow, modelValue } = toRefs(props);
|
||||
const checkList = reactive([
|
||||
{
|
||||
id: 1,
|
||||
name: "成果推广",
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
name: "关键成果解决",
|
||||
},
|
||||
{
|
||||
id: 3,
|
||||
name: "对接专家院士",
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
name: "上市辅导",
|
||||
},
|
||||
]);
|
||||
</script>
|
||||
<style></style>
|
@ -1,76 +1,200 @@
|
||||
<!-- 企业需求弹框 -->
|
||||
<template>
|
||||
<el-dialog title="基本信息" v-model="isShow">
|
||||
<el-form label-width="150px">
|
||||
<el-form-item label="所属企业">
|
||||
<el-input placeholder=""></el-input>
|
||||
<el-dialog title="基本信息" v-model="isShow">
|
||||
<el-form ref="formRef" :model="modelValue" :label-width="labelWidth + 'px'">
|
||||
<p><b>基本信息</b></p>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="成果需求名称:" prop="title">
|
||||
<el-input v-model="modelValue.title"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="所属需求名称">
|
||||
<el-input placeholder=""></el-input>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<!-- <el-checkbox label="0" @change="handleCheck">其他</el-checkbox> -->
|
||||
<el-form-item label="需求类别:">
|
||||
<el-checkbox-group v-model="modelValue.kinds">
|
||||
<el-checkbox
|
||||
v-for="item in checkList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
>{{ item.name }}</el-checkbox
|
||||
>
|
||||
</el-checkbox-group>
|
||||
<!-- <el-row :gutter="20">
|
||||
<el-col :span="20">
|
||||
<el-input
|
||||
v-model="checkInput"
|
||||
placeholder="请输入需求类别"
|
||||
></el-input>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<el-button type="primary" @click="addCheck">添加</el-button>
|
||||
</el-col>
|
||||
</el-row> -->
|
||||
</el-form-item>
|
||||
<el-form-item label="需求描述">
|
||||
<Editor></Editor>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="需求描述:" prop="introduce">
|
||||
<!-- <Editor v-model="modelValue.add" :minHeight="150" /> -->
|
||||
<wangEditor
|
||||
v-model="modelValue.introduce"
|
||||
width="100%"
|
||||
min-height="150px"
|
||||
></wangEditor>
|
||||
</el-form-item>
|
||||
<el-form-item label="行业分类">
|
||||
<el-select placeholder="" style="width: 100px;">
|
||||
<el-option></el-option>
|
||||
</el-select>
|
||||
<el-select placeholder="" style="width: 100px;">
|
||||
<el-option></el-option>
|
||||
</el-select>
|
||||
<el-select placeholder="" style="width: 100px;">
|
||||
<el-option></el-option>
|
||||
</el-select>
|
||||
<el-select placeholder="" style="width: 100px;">
|
||||
<el-option></el-option>
|
||||
</el-select>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<!-- <CityOptions
|
||||
v-model="form"
|
||||
:labelWidth="labelWidth"
|
||||
ref="cityForm"
|
||||
/> -->
|
||||
<FieldOptions
|
||||
v-model="modelValue"
|
||||
:labelWidth="labelWidth"
|
||||
ref="fieldFormRef"
|
||||
/>
|
||||
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
label="成果需求预算:"
|
||||
:prop="modelValue.budgetMode == 1 ? 'budget' : ''"
|
||||
>
|
||||
<el-input
|
||||
v-model="modelValue.budget"
|
||||
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')"
|
||||
placeholder="请输入技术需求预算"
|
||||
>
|
||||
<template #append>万元</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="需求类别">
|
||||
<el-checkbox-group v-model="checkList">
|
||||
<el-checkbox label="成果难题解决" />
|
||||
<el-checkbox label="成果储备/项目投资" />
|
||||
<el-checkbox label="新成果开发" />
|
||||
<el-checkbox label="校验检测" />
|
||||
<el-checkbox label="其他" />
|
||||
</el-checkbox-group>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label-width="50px">
|
||||
<el-checkbox
|
||||
false-label="1"
|
||||
true-label="2"
|
||||
v-model="modelValue.budgetMode"
|
||||
>面议</el-checkbox
|
||||
>
|
||||
</el-form-item>
|
||||
<el-form-item label="成果需求预算">
|
||||
<el-input style="width: 200px;" placeholder=""></el-input>万元 <input type="checkbox">面议
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="截止时间:" prop="deadline">
|
||||
<el-date-picker
|
||||
style="width: 100%"
|
||||
v-model="modelValue.deadline"
|
||||
type="date"
|
||||
value-format="YYYY-MM-DD"
|
||||
placeholder="请选择截止时间"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="截至时间">
|
||||
<el-input placeholder=""></el-input>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="需求联系人:" prop="name">
|
||||
<el-input
|
||||
v-model="modelValue.name"
|
||||
placeholder="请输入需求联系人"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-row >
|
||||
<el-col :span="12">
|
||||
<el-form-item label="需求联系人">
|
||||
<el-input placeholder=""></el-input>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="联系人手机号:" prop="mobile">
|
||||
<el-input
|
||||
v-model="modelValue.mobile"
|
||||
placeholder="请输入联系人手机号"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="联系人手机号码">
|
||||
<el-input placeholder=""></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-form-item label="想合作的企业及模式">
|
||||
<el-input placeholder=""></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-row type="flex" justify="end">
|
||||
<el-button type="primary">驳回</el-button>
|
||||
<el-button type="primary">通过需求</el-button>
|
||||
</el-row>
|
||||
</el-dialog>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<!-- <el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="需求提交人:" prop="commitUserName">
|
||||
<el-input
|
||||
v-model="modelValue.commitUserName"
|
||||
placeholder="请输入需求提交人"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="需求提交人手机号:" prop="commitUserPhone">
|
||||
<el-input
|
||||
v-model="modelValue.commitUserPhone"
|
||||
placeholder="请输入需求提交人手机号"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row> -->
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<InputBoxAdd
|
||||
:labelWidth="labelWidth"
|
||||
v-model="modelValue"
|
||||
title="想合作的单位及模式"
|
||||
placeholder=""
|
||||
fieldKey="wants"
|
||||
ref="directionsFormRef"
|
||||
/>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<el-row type="flex" justify="end">
|
||||
<el-button type="primary">驳回</el-button>
|
||||
<el-button type="primary">通过需求</el-button>
|
||||
</el-row>
|
||||
</el-dialog>
|
||||
</template>
|
||||
<script setup>
|
||||
import Editor from '@/components/WangEditor'
|
||||
import { ref } from 'vue';
|
||||
const props=defineProps({
|
||||
isShow:{
|
||||
type:Boolean,
|
||||
required:true
|
||||
}
|
||||
})
|
||||
const checkList=ref([])
|
||||
import WangEditor from "@/components/WangEditor";
|
||||
import FieldOptions from "@/views/components/FieldOptions";
|
||||
import InputBoxAdd from "@/views/components/InputBoxAdd";
|
||||
import { ref, toRefs } from "vue";
|
||||
const props = defineProps({
|
||||
isShow: {
|
||||
type: Boolean,
|
||||
required: true,
|
||||
},
|
||||
modelValue: {
|
||||
type: Object,
|
||||
required: true,
|
||||
},
|
||||
});
|
||||
const { isShow, modelValue } = toRefs(props);
|
||||
const labelWidth = 160;
|
||||
const checkList = reactive([
|
||||
{
|
||||
id: 1,
|
||||
name: "成果推广",
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
name: "关键成果解决",
|
||||
},
|
||||
{
|
||||
id: 3,
|
||||
name: "对接专家院士",
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
name: "上市辅导",
|
||||
},
|
||||
]);
|
||||
</script>
|
||||
<style></style>
|
||||
<style></style>
|
||||
|
@ -82,7 +82,7 @@
|
||||
></el-table-column>
|
||||
<el-table-column label="操作" align="center">
|
||||
<template #default="{ row }">
|
||||
<el-button type="text" @click="shenpi(row.id)">审批</el-button>
|
||||
<el-button type="text" @click="approval(row)">审批</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@ -96,7 +96,7 @@
|
||||
/>
|
||||
|
||||
<!-- 审批详情 -->
|
||||
<Edialog :is-show="isShow"></Edialog>
|
||||
<Edialog :is-show="isShow" v-model="demandForm"></Edialog>
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
@ -105,24 +105,35 @@ import Edialog from "../../views/components/Businessneeds/Approvaldetails.vue";
|
||||
import SiteOptions from "@/views/components/SiteOptions";
|
||||
import { tenantSelect } from "@/api/subPlatform/tenant";
|
||||
import { ref, toRefs, defineComponent } from "vue";
|
||||
import { cloneDeep } from "lodash";
|
||||
|
||||
const data = reactive({
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
status: 0,
|
||||
},
|
||||
demandForm: {},
|
||||
});
|
||||
const siteList = ref([]);
|
||||
const dataList = ref([]);
|
||||
const total = ref(0);
|
||||
const isShow = ref(false);
|
||||
const { queryParams } = toRefs(data);
|
||||
const { queryParams, demandForm } = toRefs(data);
|
||||
const queryFormRef = ref();
|
||||
const getList = async () => {
|
||||
const resp = await businessList(queryParams.value);
|
||||
dataList.value = resp.rows;
|
||||
total.value = resp.total;
|
||||
};
|
||||
const shenpi = () => {
|
||||
const approval = (row) => {
|
||||
demandForm.value = cloneDeep(row);
|
||||
if (!row.kinds) {
|
||||
demandForm.value.kinds = row.kind?.split(",") ?? [];
|
||||
}
|
||||
// if (!row.industrys) {
|
||||
// demandForm.value.industrys = row.;
|
||||
// }
|
||||
isShow.value = true;
|
||||
};
|
||||
|
||||
|
@ -1,27 +1,27 @@
|
||||
import { defineConfig, loadEnv } from 'vite'
|
||||
import path from 'path'
|
||||
import createVitePlugins from './vite/plugins'
|
||||
import { defineConfig, loadEnv } from "vite";
|
||||
import path from "path";
|
||||
import createVitePlugins from "./vite/plugins";
|
||||
|
||||
// https://vitejs.dev/config/
|
||||
export default defineConfig(({ mode, command }) => {
|
||||
const env = loadEnv(mode, process.cwd())
|
||||
const { VITE_APP_ENV } = env
|
||||
const env = loadEnv(mode, process.cwd());
|
||||
const { VITE_APP_ENV } = env;
|
||||
return {
|
||||
// 部署生产环境和开发环境下的URL。
|
||||
// 默认情况下,vite 会假设你的应用是被部署在一个域名的根路径上
|
||||
// 例如 https://www.ruoyi.vip/。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.ruoyi.vip/admin/,则设置 baseUrl 为 /admin/。
|
||||
base: VITE_APP_ENV === 'production' ? '/' : '/',
|
||||
plugins: createVitePlugins(env, command === 'build'),
|
||||
base: VITE_APP_ENV === "production" ? "/" : "/",
|
||||
plugins: createVitePlugins(env, command === "build"),
|
||||
resolve: {
|
||||
// https://cn.vitejs.dev/config/#resolve-alias
|
||||
alias: {
|
||||
// 设置路径
|
||||
'~': path.resolve(__dirname, './'),
|
||||
"~": path.resolve(__dirname, "./"),
|
||||
// 设置别名
|
||||
'@': path.resolve(__dirname, './src')
|
||||
"@": path.resolve(__dirname, "./src"),
|
||||
},
|
||||
// https://cn.vitejs.dev/config/#resolve-extensions
|
||||
extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json', '.vue']
|
||||
extensions: [".mjs", ".js", ".ts", ".jsx", ".tsx", ".json", ".vue"],
|
||||
},
|
||||
// vite 相关配置
|
||||
server: {
|
||||
@ -30,30 +30,30 @@ export default defineConfig(({ mode, command }) => {
|
||||
// open: true,
|
||||
proxy: {
|
||||
// https://cn.vitejs.dev/config/#server-proxy
|
||||
'/dev-api': {
|
||||
"/dev-api": {
|
||||
// target: 'http://120.26.107.74:1618',
|
||||
target: 'http://172.18.3.127:1618',
|
||||
target: "http://101.34.131.16:1618",
|
||||
changeOrigin: true,
|
||||
rewrite: (p) => p.replace(/^\/dev-api/, '')
|
||||
}
|
||||
}
|
||||
rewrite: (p) => p.replace(/^\/dev-api/, ""),
|
||||
},
|
||||
},
|
||||
},
|
||||
//fix:error:stdin>:7356:1: warning: "@charset" must be the first rule in the file
|
||||
css: {
|
||||
postcss: {
|
||||
plugins: [
|
||||
{
|
||||
postcssPlugin: 'internal:charset-removal',
|
||||
postcssPlugin: "internal:charset-removal",
|
||||
AtRule: {
|
||||
charset: (atRule) => {
|
||||
if (atRule.name === 'charset') {
|
||||
if (atRule.name === "charset") {
|
||||
atRule.remove();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
};
|
||||
});
|
||||
|
BIN
zky_admin.zip
BIN
zky_admin.zip
Binary file not shown.
Reference in New Issue
Block a user