Commit 2da1dd21 authored by 仇晓婷's avatar 仇晓婷

产品结构编辑

parent cbb2a00e
...@@ -23,11 +23,12 @@ ...@@ -23,11 +23,12 @@
<span <span
style="font-size:10px;color:#aaa" style="font-size:10px;color:#aaa"
v-if="fileFormat" v-if="fileFormat"
>文件格式:{{JSON.stringify(formatList).replace('[', '').replace(']', '').replace(/\"/g, '')}};文件最大:{{maxSize}}k</span> >文件格式:{{formatList.join()}};文件最大:{{maxSize}}k</span>
</Upload> </Upload>
<Progress :percent="per" :stroke-width="5" v-show="vshowPro" /> <Progress :percent="per" :stroke-width="5" v-show="vshowPro" />
<div v-if="Photo">
<Tag <Tag
v-if="Photo"
v-for="(item,index) in nameList" v-for="(item,index) in nameList"
:key="index" :key="index"
:name="item.id" :name="item.id"
...@@ -37,6 +38,7 @@ ...@@ -37,6 +38,7 @@
> >
<a :href="fileUrlPath" @click="downFile(item.filePath)" target="_blank">{{item.fileName}}</a> <a :href="fileUrlPath" @click="downFile(item.filePath)" target="_blank">{{item.fileName}}</a>
</Tag> </Tag>
</div>
<div class="upload-body" v-else> <div class="upload-body" v-else>
<div <div
class="demo-upload-list" class="demo-upload-list"
...@@ -243,13 +245,15 @@ export default { ...@@ -243,13 +245,15 @@ export default {
//查询上传到文件服务器上的文件 //查询上传到文件服务器上的文件
this.$http.sysUser.getFile(this.parms).then(res => { this.$http.sysUser.getFile(this.parms).then(res => {
if (res.data != [] && res.data.length > 0) { if (res.data != [] && res.data.length > 0) {
var items=[]
res.data.forEach(data => { res.data.forEach(data => {
let objImag = {}; let objImag = {};
objImag.fileName = data.fileName; objImag.fileName = data.fileName;
objImag.filePath = data.downloadPath; objImag.filePath = data.downloadPath;
objImag.id = data.id; objImag.id = data.id;
this.nameList.push(objImag); items.push(objImag);
}); });
this.nameList=items;
} }
}); });
}, },
...@@ -310,15 +314,23 @@ export default { ...@@ -310,15 +314,23 @@ export default {
}, },
computed: {}, computed: {},
watch: { watch: {
// value(v) { value(v) {
// this.nameList = []; this.nameList = [];
// this.nameList = v; this.nameList = v;
// } },
"parms.eid"(v){
if(v){
this.intFiles();
}
}
}, },
mounted() { mounted() {
this.formatL(); this.formatL();
this.mutipleStatu(); this.mutipleStatu();
if(this.parms.eid){
this.intFiles(); this.intFiles();
}
if (this.Photos === true) { if (this.Photos === true) {
this.Photo = false; this.Photo = false;
} else { } else {
......
<template> <template>
<Select v-model="dep" :placeholder="placeholdeinfo" clearable @on-clear="onClear"> <Select v-model="dep" :placeholder="placeholdeinfo" clearable @on-clear="onClear">
<Option <Option
v-for="(item,index) in list" :value="dep"
:key="index" class="hide"
:value="item.value" >
style="display:none" {{label}}
:label="item.label" </Option>
></Option>
<Tree key="mytree" :data="data1" ref="mytree" :render="renderContent"></Tree> <Tree key="mytree" :data="data1" ref="mytree" :render="renderContent"></Tree>
</Select> </Select>
</template> </template>
...@@ -21,13 +20,14 @@ export default { ...@@ -21,13 +20,14 @@ export default {
data() { data() {
return { return {
dep: "", dep: "",
label:"",
list: [], list: [],
data1: [], data1: [],
selectdata: [], selectdata: [],
placeholdeinfo: "请选择", placeholdeinfo: "请选择",
orderSearchForm: { orderSearchForm: {
productId: null, //层级id levelId: null, //层级id
productName: "" //层级名称 parentName: "" //层级名称
} }
}; };
}, },
...@@ -57,67 +57,30 @@ export default { ...@@ -57,67 +57,30 @@ export default {
return h( return h(
"span", "span",
{ {
// style: {
// color: data.isProduct != "1" ? "#249E91" : "#333", //根据选中状态设置样式
// cursor: "pointer"
// },
on: { on: {
click: () => { click: () => {
let arrTree = []; console.warn(data.id);
arrTree.push(data); this.handleSelect(data.id); //手动选择树节点
this.handleSelect(arrTree); //手动选择树节点
} }
} }
}, },
data.name data.name
); );
}, },
handleSelect(data) { handleSelect(id) {
console.log(data); var roots =this.$u.findRoots(this.data1,id).reverse();
if (data.length > 0) { var listName=[]
this.list = []; var data;
this.list.push({ listName=roots.map(u=>{
label: data[0].name, if(id==u.id){
value: data[0].id data=u;
}); }
this.orderSearchForm.productName = data[0].name; return u.name
this.orderSearchForm.productId = data[0].id; })
// let listData = this.$u.clone(this.data1); this.dep=id;
// let result = []; this.label=listName.join(" / ");
// var nodeId = data.id; this.$emit("on-change",id,data,listName,roots);
var roots = [];
var cur = data;
while (cur) {
roots.push(cur);
cur = cur.father;
}
// // //传入参数:需要遍历的json,需要匹配的id
// function findPnodeId(listData, nodeId) {
// //设置结果
// if (!listData) {
// return; //如果listData传空,直接返回
// }
// for (var i = 0; i < listData.children.length; i++) {
// let item = listData.children[i];
// if (item.id == nodeId) {
// //找到id相等的则返回父id
// result.unshift(data.name);
// return result;
// } else if (!!item.children) {
// // findPnodeId(item.children, nodeId);
// }
// }
// //如果执行循环中都没有return,则在此return
// return result;
// }
// console.log(result);
// console.warn("roots", data, roots);
this.$emit("on-change", this.orderSearchForm, data, roots);
}
}, },
loadTree() { loadTree() {
...@@ -125,18 +88,8 @@ export default { ...@@ -125,18 +88,8 @@ export default {
var sumData = []; var sumData = [];
Api.getleveltree().then(r => { Api.getleveltree().then(r => {
if (r.result) { if (r.result) {
setFather(r.result, null);
function setFather(u, father) {
u.map(u => {
if (father) {
u.father = father;
}
if (u.children && u.children.length > 0) {
setFather(u.children, u);
}
});
}
this.data1 = r.result; this.data1 = r.result;
this.handleSelect(this.value)
} else { } else {
this.$Message.error("加载产品树失败!"); this.$Message.error("加载产品树失败!");
} }
...@@ -152,24 +105,10 @@ export default { ...@@ -152,24 +105,10 @@ export default {
watch: { watch: {
value: { value: {
handler(v, o) { handler(v, o) {
this.dep = v | ""; this.dep = v | "";
Api.getleveltree().then(res => { if(this.data1.length>0){
if (res.result) { this.handleSelect(v);
let temData = this.$u.clone(this.data1); }
this.list = [];
if (v != "" && v != null) {
let dataTemp = this.$u.treeToList(temData);
dataTemp.forEach(data => {
if (data.id == this.dep) {
this.list.push({ label: data.name, value: data.id });
}
});
}
} else {
this.$Message.error("加载产品树失败!");
}
});
}, },
deep: true deep: true
} }
......
...@@ -146,6 +146,25 @@ henq.treeToList = (tree) => { ...@@ -146,6 +146,25 @@ henq.treeToList = (tree) => {
treeToList(tree, null) treeToList(tree, null)
return list; return list;
} }
henq.findRoots=(arr1, id)=>{
var temp = []
var forFn = function (arr, id) {
for (var i = 0; i < arr.length; i++) {
var item = arr[i]
if (item.id === id) {
temp.push(item)
forFn(arr1, item.upId)
break
} else {
if (item.children) {
forFn(item.children, id)
}
}
}
}
forFn(arr1, id)
return temp
}
//导出pdf //导出pdf
henq.outPdf = (ele, fileName) => { henq.outPdf = (ele, fileName) => {
// document.head.innerHTML = // document.head.innerHTML =
......
...@@ -9,11 +9,16 @@ ...@@ -9,11 +9,16 @@
<Form ref="form" :model="entity" :rules="rules" :label-width="120"> <Form ref="form" :model="entity" :rules="rules" :label-width="120">
<Row> <Row>
<Col :span="12"> <Col :span="12">
<FormItem label="上级所属" prop="parentName"> <FormItem label="上级所属" prop="levelId">
<!-- <Input v-model="entity.parentName" disabled></Input> --> 33{{parents.parentName}} {{parents.id}}55
<productSelect1 v-model="entity.levelId" @on-change="proChange" /> <productSelect1 v-model="entity.levelId" @on-change="proChange" />
</FormItem> </FormItem>
</Col> </Col>
<!-- <Col :span="12">
<FormItem label="层级类型" prop="levelTitle">
<Input v-model="entity.levelTitle" disabled></Input>
</FormItem>
</Col> -->
<Col :span="12"> <Col :span="12">
<FormItem :label="l('productCode')" prop="productCode"> <FormItem :label="l('productCode')" prop="productCode">
<Input v-model="entity.productCode"></Input> <Input v-model="entity.productCode"></Input>
...@@ -86,16 +91,17 @@ export default { ...@@ -86,16 +91,17 @@ export default {
// extend: "", // extend: "",
productUrl: "", productUrl: "",
productUrlList: "", productUrlList: "",
levelId: this.parents.parentId, levelId: 60,
// parentName: this.parents.parentName, // levelId: this.parents.parentId,
levelTitle: "" // parentName: this.parents.parentId,
// levelTitle: this.parents.parentName
}, },
rules: { rules: {
name: [{ required: true, message: "必填", trigger: "blur" }] name: [{ required: true, message: "必填", trigger: "blur" }]
}, },
parms: { parms: {
app: "technology", app: "technology",
eid: null, eid: "",
name: "", name: "",
field: "" field: ""
}, },
...@@ -105,18 +111,24 @@ export default { ...@@ -105,18 +111,24 @@ export default {
props: { props: {
v: Object, v: Object,
eid: Number, eid: Number,
parents: { parents: {
parentName: String, type:Object,
parentId: Number default:()=>{
} return {
id:-1,
parentName:""
}
}
},
}, },
mounted() { created() {
// alert(this.parents.parentId); // alert(this.parents.parentId);
if (this.eid > 0) { // if (this.eid > 0) {
this.load(this.eid); // this.load(this.eid);
} // }
this.parms.eid = this.$u.guid(); this.parms.eid = this.$u.guid();
this.$refs.refFile.intFiles(); this.entity.levelId=this.parents.id
// this.$refs.refFile.intFiles();
}, },
methods: { methods: {
clickData(data) { clickData(data) {
...@@ -160,27 +172,8 @@ export default { ...@@ -160,27 +172,8 @@ export default {
this.entity.id = 0; this.entity.id = 0;
}); });
}, },
proChange(items, data, roots) { proChange(id,data, listName,roots) {
this.entity.levelId = items.productId; this.entity.levelTitle = listName.join(" / ");
let listName = [];
let root = roots[0];
if (root) {
// console.log(root[0]);
listName.unshift(root[0].name);
if (root[0].father) {
var obj = root[0].father;
listName.unshift(obj.name);
// for (let key in obj) {
// if(key==name){
// listName.unshift(obj[key])
// console.log(obj[key])
// }
// }
} else {
}
}
this.entity.levelTitle = listName.join(",");
}, },
l(key) { l(key) {
key = "product_info" + "." + key; key = "product_info" + "." + key;
...@@ -190,14 +183,15 @@ export default { ...@@ -190,14 +183,15 @@ export default {
watch: { watch: {
v() { v() {
this.entity = this.$u.clone(this.v); this.entity = this.$u.clone(this.v);
this.entity = this.parents.parentId; // this.entity.parentId = this.parents.parentId;
// this.entity.parentName = this.parents.parentName;
}, },
eid(v) { // eid(v) {
if (v > 0) { // if (v > 0) {
this.load(v); // this.load(v);
} // }
} // }
} }
}; };
</script> </script>
......
...@@ -81,7 +81,7 @@ export default { ...@@ -81,7 +81,7 @@ export default {
img: "", img: "",
parms: { parms: {
app: "technology", app: "technology",
eid: null, eid: '',
name: "", name: "",
field: "" field: ""
} }
......
<template> <template>
<div class="product-m"> <div class="product-m">
t {{parent.id}} v
<DataGrid <DataGrid
:columns="columns" :columns="columns"
ref="grid" ref="grid"
...@@ -16,6 +17,8 @@ ...@@ -16,6 +17,8 @@
</FormItem> </FormItem>
<FormItem> <FormItem>
<Button type="primary" @click="search">查询</Button> <Button type="primary" @click="search">查询</Button>
</FormItem> </FormItem>
</Form> </Form>
</template> </template>
...@@ -58,7 +61,7 @@ ...@@ -58,7 +61,7 @@
</template> </template>
</DataGrid> </DataGrid>
<Modal v-model="modal" :title="title" width="1200" footer-hide> <Modal v-model="modal" :title="title" width="1200" footer-hide>
<component :is="detail" :eid="curId" @on-close="cancel" @on-ok="ok" :parents="parents" /> <component :is="detail" :eid="curId" @on-close="cancel" @on-ok="ok" :parents="parent" />
</Modal> </Modal>
</div> </div>
</template> </template>
...@@ -100,11 +103,7 @@ export default { ...@@ -100,11 +103,7 @@ export default {
align: "left", align: "left",
high: true high: true
} }
], ]
parents: {
parentId: null,
parentName: ""
}
}; };
}, },
mounted() { mounted() {
...@@ -128,8 +127,6 @@ export default { ...@@ -128,8 +127,6 @@ export default {
this.title = "新增"; this.title = "新增";
this.detail = () => import("./add"); this.detail = () => import("./add");
this.modal = true; this.modal = true;
this.parents.parentId = this.parent.id;
this.parents.parentName = this.parent.parentName;
}, },
copy(id) { copy(id) {
this.curId = id; this.curId = id;
......
...@@ -91,7 +91,7 @@ export default { ...@@ -91,7 +91,7 @@ export default {
this.modal = true; this.modal = true;
}, },
remove() { remove() {
console.log(this.nodeInfo); // console.log(this.nodeInfo);
if (this.nodeInfo.children.length > 1) { if (this.nodeInfo.children.length > 1) {
this.$Message.error("因为有子级,不能直接删除"); this.$Message.error("因为有子级,不能直接删除");
} else { } else {
...@@ -121,6 +121,9 @@ export default { ...@@ -121,6 +121,9 @@ export default {
"span", "span",
{ {
on: { on: {
// click: () => {
// this.handleSelect(data); //手动选择树节点
// },
//右键点击事件 //右键点击事件
contextmenu: e => { contextmenu: e => {
e.preventDefault(); e.preventDefault();
...@@ -134,6 +137,9 @@ export default { ...@@ -134,6 +137,9 @@ export default {
data.title data.title
); );
}, },
// handleSelect(data) {
// this.$emit("clickItem", data);
// },
loadTree() { loadTree() {
Api.getleveltree().then(r => { Api.getleveltree().then(r => {
setTree(r.result); setTree(r.result);
...@@ -154,8 +160,8 @@ export default { ...@@ -154,8 +160,8 @@ export default {
this.expand = !this.expand; this.expand = !this.expand;
}, },
change(v, b) { change(v, b) {
console.log(v); // console.log(v);
console.log(b); // console.log(b);
let ids = []; let ids = [];
ids.push(b.value); ids.push(b.value);
if (b.children) { if (b.children) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment