xiugai
This commit is contained in:
parent
b7004e1a93
commit
73ba89f20f
|
@ -143,7 +143,7 @@ export const asyncRoutes = [
|
|||
component: Layout,
|
||||
redirect: '/consulting/',
|
||||
name: 'consulting',
|
||||
meta: { title: '咨询资料分享', icon: 'guide', perms: ['regulatory_views'] },
|
||||
meta: { title: '资讯资料分享', icon: 'guide', perms: ['consulting_views'] },
|
||||
alwaysShow: true,
|
||||
children: [
|
||||
{
|
||||
|
@ -160,7 +160,7 @@ export const asyncRoutes = [
|
|||
path: 'policy',
|
||||
name: 'policy',
|
||||
component: () => import('@/views/consulting/policy.vue'),
|
||||
meta: { title: '政策咨询', perms: ['policy_view'] }
|
||||
meta: { title: '政策资讯', perms: ['policy_view'] }
|
||||
}, {
|
||||
path: 'validation',
|
||||
name: 'validation',
|
||||
|
|
|
@ -69,7 +69,7 @@
|
|||
</el-card>
|
||||
<el-dialog
|
||||
:visible.sync="dialogVisible"
|
||||
:title="dialogType === 'edit' ? '编辑政策咨询' : '新增政策咨询'"
|
||||
:title="dialogType === 'edit' ? '编辑政策资讯' : '新增政策资讯'"
|
||||
>
|
||||
<el-form
|
||||
ref="Form"
|
||||
|
@ -101,7 +101,7 @@
|
|||
:headers="upHeaders"
|
||||
:file-list="fileList"
|
||||
:limit="1"
|
||||
accept=".doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf"
|
||||
accept=".doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip"
|
||||
>
|
||||
<el-button size="small" type="primary">上传文件</el-button>
|
||||
</el-upload>
|
||||
|
|
|
@ -1,11 +1,13 @@
|
|||
<template>
|
||||
<div class="app-container">
|
||||
<el-card>
|
||||
|
||||
<el-button type="primary" icon="el-icon-plus" @click="handleAddContent" v-if="checkPermission(['professional_create'])"
|
||||
<el-button
|
||||
type="primary"
|
||||
icon="el-icon-plus"
|
||||
@click="handleAddContent"
|
||||
v-if="checkPermission(['professional_create'])"
|
||||
>新增</el-button
|
||||
>
|
||||
|
||||
</el-card>
|
||||
<el-card style="margin-top: 10px">
|
||||
<el-table
|
||||
|
@ -21,17 +23,25 @@
|
|||
<el-table-column label="名称">
|
||||
<template slot-scope="scope">{{ scope.row.name }}</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column align="center" label="文件下载">
|
||||
|
||||
<el-table-column align="center" label="文件下载">
|
||||
<template slot-scope="scope" v-if="scope.row.file_.file">
|
||||
<el-link :href="scope.row.file_.file" type="primary">{{ scope.row.file_.name }}</el-link>
|
||||
<el-link :href="scope.row.file_.file" type="primary">{{
|
||||
scope.row.file_.name
|
||||
}}</el-link>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="文件描述" >
|
||||
<el-table-column label="文件描述">
|
||||
<template slot-scope="scope">{{ scope.row.description }}</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="创建时间">
|
||||
<el-table-column label="领域" :filter-method="filterTag" :filters="[{ text: '环保领域', value: 1 }, { text: '建工建材', value: 2 },
|
||||
{ text: '食品领域', value: 3 }, { text: '水利工程', value: 4 },{ text: '检定校准', value: 5 }, { text: '其他领域', value: 6 }]">
|
||||
<template slot-scope="scope">{{
|
||||
options_[scope.row.professionalfield]
|
||||
}}</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column label="创建时间">
|
||||
<template slot-scope="scope">{{ scope.row.create_time }}</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
|
@ -80,8 +90,22 @@
|
|||
<el-form-item label="名称" prop="name">
|
||||
<el-input v-model="Content.name" placeholder="文档名称" />
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item label="领域" prop="professionalfield">
|
||||
<el-select
|
||||
style="width: 100%"
|
||||
v-model="Content.professionalfield"
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in options"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="文档描述" prop="description">
|
||||
<el-input
|
||||
type="textarea"
|
||||
|
@ -92,20 +116,19 @@
|
|||
</el-form-item>
|
||||
<el-form-item label="文档上传" prop="file" v-if="dialogVisible">
|
||||
<el-upload
|
||||
ref="upload"
|
||||
:action="upUrl"
|
||||
:on-preview="handlePreview"
|
||||
:on-success="handleUpSuccess"
|
||||
:on-remove="handleRemove"
|
||||
:headers="upHeaders"
|
||||
:file-list="fileList"
|
||||
:limit="1"
|
||||
accept=".doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf"
|
||||
>
|
||||
<el-button size="small" type="primary">上传文件</el-button>
|
||||
</el-upload>
|
||||
ref="upload"
|
||||
:action="upUrl"
|
||||
:on-preview="handlePreview"
|
||||
:on-success="handleUpSuccess"
|
||||
:on-remove="handleRemove"
|
||||
:headers="upHeaders"
|
||||
:file-list="fileList"
|
||||
:limit="1"
|
||||
accept=".doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip"
|
||||
>
|
||||
<el-button size="small" type="primary">上传文件</el-button>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
<div style="text-align: right">
|
||||
<el-button type="danger" @click="dialogVisible = false">取消</el-button>
|
||||
|
@ -122,7 +145,7 @@ import {
|
|||
updateProfessional,
|
||||
} from "@/api/professional";
|
||||
import { genTree } from "@/utils";
|
||||
import {provinceAndCityData,CodeToText} from "element-china-area-data";
|
||||
import { provinceAndCityData, CodeToText } from "element-china-area-data";
|
||||
import checkPermission from "@/utils/permission";
|
||||
import Pagination from "@/components/Pagination"; // secondary package based on el-pagination
|
||||
import Treeselect from "@riophae/vue-treeselect";
|
||||
|
@ -131,7 +154,7 @@ import { upUrl, upHeaders } from "@/api/file";
|
|||
const defaultContent = {
|
||||
name: "",
|
||||
description: "",
|
||||
file:null
|
||||
file: null,
|
||||
};
|
||||
export default {
|
||||
components: { Pagination, Treeselect },
|
||||
|
@ -139,20 +162,56 @@ export default {
|
|||
return {
|
||||
upHeaders: upHeaders(),
|
||||
upUrl: upUrl(),
|
||||
fileList:[],
|
||||
fileList: [],
|
||||
Content: defaultContent,
|
||||
|
||||
options_: {
|
||||
1: "环保领域",
|
||||
2: "建工建材",
|
||||
3: "食品领域",
|
||||
4: "水利工程",
|
||||
5: "检定校准",
|
||||
6: "其他领域",
|
||||
},
|
||||
options: [
|
||||
{
|
||||
value: 1,
|
||||
label: "环保领域",
|
||||
},
|
||||
{
|
||||
value: 2,
|
||||
label: "建工建材",
|
||||
},
|
||||
{
|
||||
value: 3,
|
||||
label: "食品领域",
|
||||
},
|
||||
{
|
||||
value: 4,
|
||||
label: "水利工程",
|
||||
},
|
||||
{
|
||||
value: 5,
|
||||
label: "检定校准",
|
||||
},
|
||||
{
|
||||
value: 6,
|
||||
label: "其他领域",
|
||||
},
|
||||
],
|
||||
dialogVisible: false,
|
||||
listQuery: {
|
||||
page: 1,
|
||||
page_size: 20,
|
||||
},
|
||||
contentList: {
|
||||
count:0
|
||||
contentList: {
|
||||
count: 0,
|
||||
},
|
||||
dialogType: "new",
|
||||
rule1: {
|
||||
name: [{ required: true, message: "请输入名称", trigger: "blur" }],
|
||||
professionalfield: [
|
||||
{ type: 'array', required: true, message: '请至少选择一个', trigger: 'change' }
|
||||
],
|
||||
},
|
||||
};
|
||||
},
|
||||
|
@ -164,7 +223,6 @@ export default {
|
|||
},
|
||||
created() {
|
||||
this.getList();
|
||||
|
||||
},
|
||||
methods: {
|
||||
handlePreview(file) {
|
||||
|
@ -176,9 +234,8 @@ export default {
|
|||
},
|
||||
handleUpSuccess(res, file, filelist) {
|
||||
this.Content.file = res.data.id;
|
||||
|
||||
},
|
||||
handleRemove(file, filelist){
|
||||
handleRemove(file, filelist) {
|
||||
this.Content.file = null;
|
||||
},
|
||||
checkPermission,
|
||||
|
@ -188,21 +245,20 @@ export default {
|
|||
return data.label.indexOf(value) !== -1;
|
||||
},
|
||||
getList() {
|
||||
|
||||
getProfessionalList(this.listQuery).then((response) => {
|
||||
if (response.data) {
|
||||
this.contentList = response.data;
|
||||
}
|
||||
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
filterTag(value, row) {
|
||||
return row.professionalfield === value;
|
||||
},
|
||||
handleAddContent() {
|
||||
this.Content = Object.assign({}, defaultContent);
|
||||
this.dialogType = "new";
|
||||
this.dialogVisible = true;
|
||||
this.fileList=[]
|
||||
this.fileList = [];
|
||||
this.$nextTick(() => {
|
||||
this.$refs["Form"].clearValidate();
|
||||
});
|
||||
|
@ -214,7 +270,7 @@ export default {
|
|||
if (this.Content.file) {
|
||||
this.fileList = [
|
||||
{
|
||||
name:this.Content.file_.name,
|
||||
name: this.Content.file_.name,
|
||||
url: this.Content.file,
|
||||
},
|
||||
];
|
||||
|
@ -243,7 +299,7 @@ export default {
|
|||
if (valid) {
|
||||
const isEdit = this.dialogType === "edit";
|
||||
if (isEdit) {
|
||||
console.log(this.Content)
|
||||
console.log(this.Content);
|
||||
updateProfessional(this.Content.id, this.Content).then((res) => {
|
||||
if (res.code >= 200) {
|
||||
this.getList();
|
||||
|
|
|
@ -40,7 +40,7 @@
|
|||
<template slot-scope="scope">{{ scope.row.name }}</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column label="文件类型" :filters="[{ text: '通知', value: 1 }, { text: '结果', value: 2 }]"
|
||||
<el-table-column label="资料分类" :filters="[{ text: '通知', value: 1 }, { text: '结果', value: 2 }]"
|
||||
:filter-method="filterTag">
|
||||
<template slot-scope="scope">
|
||||
{{ type_[scope.row.type] }}</template>
|
||||
|
@ -140,7 +140,7 @@
|
|||
:headers="upHeaders"
|
||||
:file-list="fileList"
|
||||
:limit="1"
|
||||
accept=".doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf"
|
||||
accept=".doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip"
|
||||
>
|
||||
<el-button size="small" type="primary">上传文件</el-button>
|
||||
</el-upload>
|
||||
|
@ -162,7 +162,7 @@ import {
|
|||
updateRegulatory,
|
||||
} from "@/api/consulting";
|
||||
import { genTree } from "@/utils";
|
||||
import {provinceAndCityData,CodeToText} from "element-china-area-data";
|
||||
import {provinceAndCityData,CodeToText} from "element-china-area-data";//省份
|
||||
import checkPermission from "@/utils/permission";
|
||||
import Pagination from "@/components/Pagination"; // secondary package based on el-pagination
|
||||
import Treeselect from "@riophae/vue-treeselect";
|
||||
|
@ -193,7 +193,43 @@ export default {
|
|||
},
|
||||
type_:{1:"通知",2:"结果"},
|
||||
dialogType: "new",
|
||||
options:provinceAndCityData,
|
||||
options:[
|
||||
{value: "市场监管总局",label: "市场监管总局"},
|
||||
{value: "北京市", label: "北京市"},
|
||||
{value: "上海市",label: "上海市"},
|
||||
{value: "天津市", label: "天津市"},
|
||||
{value: "重庆市",label: "重庆市"},
|
||||
{value: "黑龙江省", label: "黑龙江省"},
|
||||
{value: "辽宁省",label: "辽宁省"},
|
||||
{value: "吉林省", label: "吉林省"},
|
||||
{value: "河北省",label: "河北省"},
|
||||
{value: "河南省", label: "河南省"},
|
||||
{value: "湖北省",label: "湖北省"},
|
||||
{value: "湖南省", label: "湖南省"},
|
||||
{value: "山东省",label: "山东省"},
|
||||
{value: "山西省", label: "山西省"},
|
||||
{value: "陕西省",label: "陕西省"},
|
||||
{value: "安徽省", label: "安徽省"},
|
||||
{value: "浙江省",label: "浙江省"},
|
||||
{value: "江苏省", label: "江苏省"},
|
||||
{value: "福建省",label: "福建省"},
|
||||
{value: "广东省", label: "广东省"},
|
||||
{value: "海南省",label: "海南省"},
|
||||
{value: "四川省", label: "四川省"},
|
||||
{value: "云南省",label: "云南省"},
|
||||
{value: "贵州省", label: "贵州省"},
|
||||
{value: "青海省",label: "青海省"},
|
||||
{value: "甘肃省", label: "甘肃省"},
|
||||
{value: "江西省",label: "江西省"},
|
||||
{value: "台湾省", label: "台湾省"},
|
||||
{value: "内蒙古自治区",label: "内蒙古自治区"},
|
||||
{value: "宁夏回族自治区", label: "宁夏回族自治区"},
|
||||
{value: "新疆维吾尔自治区",label: "新疆维吾尔自治区"},
|
||||
{value: "西藏自治区", label: "西藏自治区"},
|
||||
{value: "广西壮族自治区", label: "广西壮族自治区"},
|
||||
{value: "香港特别行政区", label: "香港特别行政区"},
|
||||
{value: "澳门特别行政区", label: "澳门特别行政区"},
|
||||
],
|
||||
rule1: {
|
||||
name: [{ required: true, message: "请输入名称", trigger: "blur" }],
|
||||
},
|
||||
|
|
|
@ -1,11 +1,29 @@
|
|||
<template>
|
||||
<div class="app-container">
|
||||
<el-card>
|
||||
|
||||
<el-row :gutter="6">
|
||||
<el-col :xs="12" :md="2">
|
||||
<el-button type="primary" icon="el-icon-plus" @click="handleAddContent" v-if="checkPermission(['validation_create'])"
|
||||
>新增</el-button
|
||||
>
|
||||
|
||||
</el-col>
|
||||
<el-col :xs="12" :md="4">
|
||||
<el-select
|
||||
v-model="listQuery.provinces"
|
||||
placeholder="省份"
|
||||
@change="handleFilter2"
|
||||
clearable
|
||||
style="width: 100%"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in options"
|
||||
:key="item.label"
|
||||
:label="item.label"
|
||||
:value="item.label">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-card>
|
||||
<el-card style="margin-top: 10px">
|
||||
<el-table
|
||||
|
@ -21,8 +39,22 @@
|
|||
<el-table-column label="名称">
|
||||
<template slot-scope="scope">{{ scope.row.name }}</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column label="资料分类" :filters="[{ text: '通知', value: 1 }, { text: '结果', value: 2 }]"
|
||||
:filter-method="filterTag">
|
||||
<template slot-scope="scope">
|
||||
{{ type_[scope.row.type] }}</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="文件类型" :filters="[{ text: '征集通知', value: 1 }, { text: '结果通报', value: 2 }]"
|
||||
:filter-method="filterTag1">
|
||||
<template slot-scope="scope">
|
||||
{{filetype_[scope.row.filetype] }}</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
|
||||
<el-table-column label="省份">
|
||||
<template slot-scope="scope">{{ scope.row.provinces }}</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="文件下载">
|
||||
<template slot-scope="scope" v-if="scope.row.file_.file">
|
||||
<el-link :href="scope.row.file_.file" type="primary">{{ scope.row.file_.name }}</el-link>
|
||||
|
@ -81,7 +113,29 @@
|
|||
<el-input v-model="Content.name" placeholder="文档名称" />
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item label="资料分类" prop="type">
|
||||
<el-radio-group v-model="Content.type">
|
||||
<el-radio :label="1">通知</el-radio>
|
||||
<el-radio :label="2">结果</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="文件类型" prop="filetype">
|
||||
<el-radio-group v-model="Content.filetype">
|
||||
<el-radio :label="1">征集通知</el-radio>
|
||||
<el-radio :label="2">结果通报</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="省份" prop="provinces">
|
||||
<el-select v-model="Content.provinces" filterable placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in options"
|
||||
:key="item.label"
|
||||
:label="item.label"
|
||||
:value="item.label">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="文档描述" prop="description">
|
||||
<el-input
|
||||
type="textarea"
|
||||
|
@ -100,7 +154,7 @@
|
|||
:headers="upHeaders"
|
||||
:file-list="fileList"
|
||||
:limit="1"
|
||||
accept=".doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf"
|
||||
accept=".doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip"
|
||||
>
|
||||
<el-button size="small" type="primary">上传文件</el-button>
|
||||
</el-upload>
|
||||
|
@ -141,7 +195,45 @@ export default {
|
|||
upUrl: upUrl(),
|
||||
fileList:[],
|
||||
Content: defaultContent,
|
||||
|
||||
type_:{1:"通知",2:"结果"},
|
||||
filetype_:{1:"征集通知",2:"结果通报"},
|
||||
options:[
|
||||
{value: "市场监管总局",label: "市场监管总局"},
|
||||
{value: "北京市", label: "北京市"},
|
||||
{value: "上海市",label: "上海市"},
|
||||
{value: "天津市", label: "天津市"},
|
||||
{value: "重庆市",label: "重庆市"},
|
||||
{value: "黑龙江省", label: "黑龙江省"},
|
||||
{value: "辽宁省",label: "辽宁省"},
|
||||
{value: "吉林省", label: "吉林省"},
|
||||
{value: "河北省",label: "河北省"},
|
||||
{value: "河南省", label: "河南省"},
|
||||
{value: "湖北省",label: "湖北省"},
|
||||
{value: "湖南省", label: "湖南省"},
|
||||
{value: "山东省",label: "山东省"},
|
||||
{value: "山西省", label: "山西省"},
|
||||
{value: "陕西省",label: "陕西省"},
|
||||
{value: "安徽省", label: "安徽省"},
|
||||
{value: "浙江省",label: "浙江省"},
|
||||
{value: "江苏省", label: "江苏省"},
|
||||
{value: "福建省",label: "福建省"},
|
||||
{value: "广东省", label: "广东省"},
|
||||
{value: "海南省",label: "海南省"},
|
||||
{value: "四川省", label: "四川省"},
|
||||
{value: "云南省",label: "云南省"},
|
||||
{value: "贵州省", label: "贵州省"},
|
||||
{value: "青海省",label: "青海省"},
|
||||
{value: "甘肃省", label: "甘肃省"},
|
||||
{value: "江西省",label: "江西省"},
|
||||
{value: "台湾省", label: "台湾省"},
|
||||
{value: "内蒙古自治区",label: "内蒙古自治区"},
|
||||
{value: "宁夏回族自治区", label: "宁夏回族自治区"},
|
||||
{value: "新疆维吾尔自治区",label: "新疆维吾尔自治区"},
|
||||
{value: "西藏自治区", label: "西藏自治区"},
|
||||
{value: "广西壮族自治区", label: "广西壮族自治区"},
|
||||
{value: "香港特别行政区", label: "香港特别行政区"},
|
||||
{value: "澳门特别行政区", label: "澳门特别行政区"},
|
||||
],
|
||||
dialogVisible: false,
|
||||
listQuery: {
|
||||
page: 1,
|
||||
|
@ -167,6 +259,12 @@ export default {
|
|||
|
||||
},
|
||||
methods: {
|
||||
filterTag(value, row) {
|
||||
return row.type === value;
|
||||
},
|
||||
filterTag1(value, row) {
|
||||
return row.filetype === value;
|
||||
},
|
||||
handlePreview(file) {
|
||||
if ("url" in file) {
|
||||
window.open(file.url);
|
||||
|
@ -197,7 +295,14 @@ export default {
|
|||
});
|
||||
},
|
||||
|
||||
|
||||
handleFilter2() {
|
||||
this.listQuery.page = 1;
|
||||
this.getList();
|
||||
},
|
||||
handleFilter() {
|
||||
this.listQuery.page = 1;
|
||||
this.getList();
|
||||
},
|
||||
handleAddContent() {
|
||||
this.Content = Object.assign({}, defaultContent);
|
||||
this.dialogType = "new";
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
# Generated by Django 3.0.5 on 2021-12-14 05:20
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('consulting', '0003_policy_validation'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='professional',
|
||||
name='professionalfield',
|
||||
field=models.CharField(choices=[(1, '环保领域'), (2, '建工建材'), (1, '食品领域'), (2, '水利工程'), (1, '检定校准'), (2, '其他领域')], default=1, max_length=50, verbose_name='领域类别'),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,32 @@
|
|||
# Generated by Django 3.0.5 on 2021-12-14 06:08
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('consulting', '0004_professional_professionalfield'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterModelOptions(
|
||||
name='validation',
|
||||
options={'verbose_name': '能力验证', 'verbose_name_plural': '能力验证'},
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='validation',
|
||||
name='filetype',
|
||||
field=models.CharField(choices=[(1, '征集通知'), (2, '结果通报')], default=1, max_length=50, verbose_name='文件类型'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='validation',
|
||||
name='provinces',
|
||||
field=models.CharField(default='', max_length=100, verbose_name='省份'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='validation',
|
||||
name='type',
|
||||
field=models.CharField(choices=[(1, '通知'), (2, '结果')], default=1, max_length=50, verbose_name='材料类别'),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,18 @@
|
|||
# Generated by Django 3.0.5 on 2021-12-14 07:52
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('consulting', '0005_auto_20211214_1408'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='professional',
|
||||
name='professionalfield',
|
||||
field=models.CharField(choices=[(1, '环保领域'), (2, '建工建材'), (3, '食品领域'), (4, '水利工程'), (5, '检定校准'), (6, '其他领域')], default=1, max_length=50, verbose_name='领域类别'),
|
||||
),
|
||||
]
|
|
@ -20,8 +20,18 @@ class Regulatory(CommonAModel):
|
|||
verbose_name_plural = verbose_name
|
||||
class Professional(CommonAModel):
|
||||
|
||||
field_choices = (
|
||||
(1, '环保领域'),
|
||||
(2, '建工建材'),
|
||||
(3, '食品领域'),
|
||||
(4, '水利工程'),
|
||||
(5, '检定校准'),
|
||||
(6, '其他领域'),
|
||||
)
|
||||
|
||||
name = models.CharField('名称', max_length=100)
|
||||
description = models.TextField('描述', default="", blank=True)
|
||||
professionalfield = models.CharField('领域类别', max_length=50,choices=field_choices, default=1)
|
||||
file = models.ForeignKey(File, on_delete=models.CASCADE)
|
||||
|
||||
class Meta:
|
||||
|
@ -37,11 +47,22 @@ class Policy(CommonAModel):
|
|||
verbose_name = '政策咨询'
|
||||
verbose_name_plural = verbose_name
|
||||
class Validation(CommonAModel):
|
||||
|
||||
type_choices = (
|
||||
(1, '通知'),
|
||||
(2, '结果')
|
||||
)
|
||||
filetype_choices = (
|
||||
(1, '征集通知'),
|
||||
(2, '结果通报')
|
||||
)
|
||||
name = models.CharField('名称', max_length=100)
|
||||
description = models.TextField('描述', default="", blank=True)
|
||||
file = models.ForeignKey(File, on_delete=models.CASCADE)
|
||||
|
||||
provinces=models.CharField('省份', max_length=100, default="",)
|
||||
type = models.CharField('材料类别', max_length=50,
|
||||
choices=type_choices, default=1)
|
||||
filetype=models.CharField('文件类型', max_length=50,
|
||||
choices=filetype_choices, default=1)
|
||||
class Meta:
|
||||
verbose_name = '政策咨询'
|
||||
verbose_name = '能力验证'
|
||||
verbose_name_plural = verbose_name
|
|
@ -49,3 +49,6 @@ class ValidationViewSet(OptimizationMixin, PageOrNot, CreateUpdateModelAMixin, M
|
|||
queryset = Validation.objects.all()
|
||||
serializer_class = ValidationSerializer
|
||||
ordering = ['-id']
|
||||
search_fields = ['provinces']
|
||||
ordering_fields = ['provinces']
|
||||
filterset_fields = ['provinces']
|
||||
|
|
Loading…
Reference in New Issue