提交 b559caad authored 作者: 龙菲's avatar 龙菲

增加布展性质

上级 75c80209
...@@ -64,7 +64,7 @@ export const constantRoutes = [{ ...@@ -64,7 +64,7 @@ export const constantRoutes = [{
name: 'Display', name: 'Display',
component: () => import('@/views/display/index'), component: () => import('@/views/display/index'),
meta: { meta: {
title: '布展管理', title: '展览管理',
icon: 'display' icon: 'display'
} }
}] }]
......
...@@ -6,9 +6,7 @@ import { ...@@ -6,9 +6,7 @@ import {
getCulturalRelicList getCulturalRelicList
} from '@/api/culturalRelic' } from '@/api/culturalRelic'
import { import {
getLiteratureList getLiteratureList,
} from '@/api/literature'
import {
getLtListPer getLtListPer
} from '@/api/literature' } from '@/api/literature'
...@@ -25,7 +23,13 @@ const mutations = { ...@@ -25,7 +23,13 @@ const mutations = {
}, },
SET_CR_LIST(state, crList) { SET_CR_LIST(state, crList) {
state.crList = crList state.crList = crList
} },
// SET_DICTS_2(state, obj) {
// state.dicts = {
// ...state.dicts,
// ...obj
// };
// }
}; };
const actions = { const actions = {
...@@ -34,18 +38,18 @@ const actions = { ...@@ -34,18 +38,18 @@ const actions = {
* @param {Array} data 字典的key集合 * @param {Array} data 字典的key集合
* @returns {Promise} * @returns {Promise}
*/ */
getDictList({ getDictList(context, data) {
commit
}, data) {
let dicts = {} let dicts = {}
let requestDicts = [] let requestDicts = []
// debugger
data.forEach(i => { data.forEach(i => {
if (!state.dicts[i]) { if (!context.state.dicts[i]) {
requestDicts.push(i) requestDicts.push(i)
} else { } else {
dicts[i] = state.dicts[i] dicts[i] = context.state.dicts[i]
} }
}); });
if (requestDicts.length > 0) { if (requestDicts.length > 0) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
getDictCode(requestDicts).then(res => { getDictCode(requestDicts).then(res => {
...@@ -57,10 +61,11 @@ const actions = { ...@@ -57,10 +61,11 @@ const actions = {
obj[item.value] = item.label obj[item.value] = item.label
} }
}) })
dicts[reqDict] = Object.freeze(obj) dicts[reqDict] = obj
commit('SET_DICTS', { // console.log('dicts',dicts);
context.commit('SET_DICTS', {
label: reqDict, label: reqDict,
value: Object.freeze(obj) value: obj
}) })
} }
}) })
...@@ -76,6 +81,47 @@ const actions = { ...@@ -76,6 +81,47 @@ const actions = {
} }
}, },
// /**
// * 获取普通list结构(非树结构)的字典
// * @param {type} data 字典的key集合或者字符串
// * @returns {Promise}
// */
// async getDictsByTypes(context, type) {
// let dicts = context.state.dicts;
// let types = [];
// if (typeof type === "string") {
// types.push(type);
// } else if (Array.isArray(type)) {
// types = type;
// }
// let dataArr = [];
// let serverTypes = [];
// types.forEach((n, i) => {
// let curData = dicts[n];
// if (curData) {
// dataArr[i] = curData;
// } else {
// dataArr[i] = n;
// serverTypes.push(n);
// }
// });
// if (serverTypes.length > 0) {
// const res = await getDictCode(serverTypes);
// let obj = {};
// serverTypes.forEach((n, i) => {
// let j = dataArr.indexOf(n);
// dataArr[j] = res[i];
// obj[n] = res[i];
// });
// context.commit("SET_DICTS_2", obj);
// }
// return dataArr;
// },
/** /**
* 获取树形结构的字典树,如文物年代、文物质地 * 获取树形结构的字典树,如文物年代、文物质地
* @param {Array} data 字典的key集合 * @param {Array} data 字典的key集合
......
...@@ -37,6 +37,21 @@ ...@@ -37,6 +37,21 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="展览性质" :label-width="formLabelWidth">
<el-select
v-model="dialogForm.displayCharacter"
placeholder="请选择展览性质"
style="width: 100%"
>
<el-option
v-for="(value, key) in dicts.display_character"
:key="key"
:label="value"
:value="key"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="模板主题" :label-width="formLabelWidth"> <el-form-item label="模板主题" :label-width="formLabelWidth">
<el-select <el-select
v-model="dialogForm.themeType" v-model="dialogForm.themeType"
...@@ -187,21 +202,7 @@ ...@@ -187,21 +202,7 @@
</el-form-item> </el-form-item>
</el-row> </el-row>
<!-- <!--
<el-form-item label="展览性质" :label-width="formLabelWidth" style="display:none"> -->
<el-select
v-model="dialogForm.displayCharacter"
placeholder="请选择展览性质"
style="width: 100%"
>
<el-option
v-for="item in dict.display_character"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</el-form-item> -->
<!-- <el-form-item label="展览单位" :label-width="formLabelWidth"> <!-- <el-form-item label="展览单位" :label-width="formLabelWidth">
<el-input <el-input
v-model="dialogForm.dep_id" v-model="dialogForm.dep_id"
...@@ -226,7 +227,6 @@ ...@@ -226,7 +227,6 @@
</template> </template>
<script> <script>
import { getLiteratureList } from "@/api/literature";
import { addDisplay, editDisplay } from "@/api/display"; import { addDisplay, editDisplay } from "@/api/display";
import { mapGetters } from "vuex"; import { mapGetters } from "vuex";
// import ManualUploader from "@/components/Uploader/ManualUploader.vue"; // import ManualUploader from "@/components/Uploader/ManualUploader.vue";
...@@ -237,6 +237,7 @@ const VideoUploader = () => import("@/components/Uploader/ManualUploader.vue"); ...@@ -237,6 +237,7 @@ const VideoUploader = () => import("@/components/Uploader/ManualUploader.vue");
const AudioUploader = () => import("@/components/Uploader/ManualUploader.vue"); const AudioUploader = () => import("@/components/Uploader/ManualUploader.vue");
import ExhibitionUnit from "./ExhibitionUnit.vue"; import ExhibitionUnit from "./ExhibitionUnit.vue";
import { upload, uploadV1 } from "@/utils/file"; import { upload, uploadV1 } from "@/utils/file";
import { themeTypeOptions } from "../contants";
export default { export default {
name: "InfoEditDialog", name: "InfoEditDialog",
components: { components: {
...@@ -272,6 +273,9 @@ export default { ...@@ -272,6 +273,9 @@ export default {
return "新增发布"; return "新增发布";
} }
}, },
themeTypeOptions() {
return themeTypeOptions;
},
}, },
watch: { watch: {
form: { form: {
...@@ -371,9 +375,11 @@ export default { ...@@ -371,9 +375,11 @@ export default {
}, },
}, },
async created() { async created() {
await this.$store.dispatch("dict/getDictList", ["display_type"]); await this.$store.dispatch("dict/getDictList", [
"display_type",
"display_character",
]);
}, },
// dicts: ["display_character", "display_type", "literature"],
data() { data() {
return { return {
dialogForm: { dialogForm: {
...@@ -383,11 +389,6 @@ export default { ...@@ -383,11 +389,6 @@ export default {
loading: false, loading: false,
upLoadAddress: process.env.VUE_APP_BASE_API + "/sysFiles/upload", upLoadAddress: process.env.VUE_APP_BASE_API + "/sysFiles/upload",
typeOptions: [{ label: "展览类型", value: 1 }], //后期从vuex中取 typeOptions: [{ label: "展览类型", value: 1 }], //后期从vuex中取
themeTypeOptions: [
{ label: "模板主题1", value: "主题一" },
{ label: "模板主题2", value: "主题二" },
{ label: "模板主题3", value: "主题三" },
],
disabled: false, disabled: false,
exhibitionUnits: [], exhibitionUnits: [],
literatureList: [], //文献列表 literatureList: [], //文献列表
...@@ -424,7 +425,7 @@ export default { ...@@ -424,7 +425,7 @@ export default {
// this.$message.error(res.msg); // this.$message.error(res.msg);
// } // }
const res = await this.$store.dispatch("dict/getLtList", { const res = await this.$store.dispatch("dict/getLtList", {
hasPer:false, hasPer: false,
params, params,
}); });
if (res.code == 0) { if (res.code == 0) {
...@@ -497,7 +498,6 @@ export default { ...@@ -497,7 +498,6 @@ export default {
} }
break; break;
} }
// 只有待上传的才需要添加至formdata
}); });
}); });
...@@ -551,7 +551,6 @@ export default { ...@@ -551,7 +551,6 @@ export default {
if (videoFile.status === "ready") { if (videoFile.status === "ready") {
formData.append(`unit-videos-${euId}`, videoFile.raw); formData.append(`unit-videos-${euId}`, videoFile.raw);
} else { } else {
// successFilesObj[`unit-videos-${euId}`] = imgFile;
if (successFilesObj[`unit-videos-${euId}`]) { if (successFilesObj[`unit-videos-${euId}`]) {
successFilesObj[`unit-videos-${euId}`].push(videoFiles); successFilesObj[`unit-videos-${euId}`].push(videoFiles);
} else { } else {
...@@ -671,11 +670,10 @@ export default { ...@@ -671,11 +670,10 @@ export default {
deptId, deptId,
regionCode, regionCode,
}; };
// params.displayCharacter = 1;//展览类型传布展
params.literature = this.literatureValues.join(","); params.literature = this.literatureValues.join(",");
params.status = this.dialogForm.status ? 1 : 0; params.status = this.dialogForm.status ? 1 : 0;
params.crIds = this.crIds.join(","); params.crIds = this.crIds.join(",");
console.log("新增参数-----------", params); params.displayCharacter = 1; //传布展
let res = await addDisplay(params); let res = await addDisplay(params);
if (res.code == 0) { if (res.code == 0) {
...@@ -700,6 +698,7 @@ export default { ...@@ -700,6 +698,7 @@ export default {
videos, videos,
regionCode, regionCode,
deptId, deptId,
displayCharacter,
} = this.dialogForm; } = this.dialogForm;
let literature = this.literatureValues.join(","); let literature = this.literatureValues.join(",");
...@@ -724,6 +723,7 @@ export default { ...@@ -724,6 +723,7 @@ export default {
status, status,
literature, literature,
crIds, crIds,
displayCharacter,
exhibitionUnits: unitData, exhibitionUnits: unitData,
}; };
console.log("修改参数-----------", params); console.log("修改参数-----------", params);
......
export const themeTypeOptions = [{
label: "中国风",
value: "1"
},
{
label: "模板主题二",
value: "2"
},
{
label: "模板主题三",
value: "3"
},
]
...@@ -167,7 +167,7 @@ export default { ...@@ -167,7 +167,7 @@ export default {
form: { form: {
title: "", //标题 title: "", //标题
type: "", // 类别(待定)--枚举值(社会、生活等) type: "", // 类别(待定)--枚举值(社会、生活等)
displayCharacter: 1, //展览性质(精品展2、布展1、文物展3)--此处填写布展类别 displayCharacter: '1', //展览性质(精品展2、布展1、文物展3)--此处填写布展类别
keyword: "", // 关键词 keyword: "", // 关键词
deptId: "", //展览单位id--暂填入用户自己的单位 deptId: "", //展览单位id--暂填入用户自己的单位
regionCode: "", // 所在地域--暂填入用户自己的地区 regionCode: "", // 所在地域--暂填入用户自己的地区
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论