Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
commit
bf219d20de
@ -89,6 +89,7 @@ export default ({
|
|||||||
addnode: {
|
addnode: {
|
||||||
fileName: '',
|
fileName: '',
|
||||||
fileSpan: '',
|
fileSpan: '',
|
||||||
|
fieldMark: "",
|
||||||
},
|
},
|
||||||
modify: false,
|
modify: false,
|
||||||
}
|
}
|
||||||
@ -107,6 +108,7 @@ export default ({
|
|||||||
if (el.labelFieldId == item[1]) {
|
if (el.labelFieldId == item[1]) {
|
||||||
this.addnode.fileSpan = el.fieldName
|
this.addnode.fileSpan = el.fieldName
|
||||||
this.addnode.fileName = e.fieldName
|
this.addnode.fileName = e.fieldName
|
||||||
|
this.addnode.fieldMark = el.fieldMark
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
@ -116,6 +118,7 @@ export default ({
|
|||||||
if (el.labelFieldId == item[1]) {
|
if (el.labelFieldId == item[1]) {
|
||||||
this.addnode.fileSpan = el.fieldName
|
this.addnode.fileSpan = el.fieldName
|
||||||
this.addnode.fileName = e.fieldName
|
this.addnode.fileName = e.fieldName
|
||||||
|
this.addnode.fieldMark = el.fieldMark
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
@ -135,6 +138,7 @@ export default ({
|
|||||||
type: 'attachment',
|
type: 'attachment',
|
||||||
link: '',
|
link: '',
|
||||||
fileName: this.addnode.fileName,
|
fileName: this.addnode.fileName,
|
||||||
|
fieldMark: this.addnode.fieldMark,
|
||||||
fileSpan: this.addnode.fileSpan,
|
fileSpan: this.addnode.fileSpan,
|
||||||
children: [{ text: '' }], // void 元素必须有一个 children ,其中只有一个空字符串,重要!!!
|
children: [{ text: '' }], // void 元素必须有一个 children ,其中只有一个空字符串,重要!!!
|
||||||
}
|
}
|
||||||
@ -142,6 +146,7 @@ export default ({
|
|||||||
this.addnode = {
|
this.addnode = {
|
||||||
fileName: '',
|
fileName: '',
|
||||||
fileSpan: '',
|
fileSpan: '',
|
||||||
|
fieldMark: "",
|
||||||
}
|
}
|
||||||
this.editor.focus()
|
this.editor.focus()
|
||||||
}, 100);
|
}, 100);
|
||||||
@ -160,6 +165,7 @@ export default ({
|
|||||||
type: 'attachmenttwo',
|
type: 'attachmenttwo',
|
||||||
link: '',
|
link: '',
|
||||||
fileName: this.addnode.fileName,
|
fileName: this.addnode.fileName,
|
||||||
|
fieldMark: this.addnode.fieldMark,
|
||||||
fileSpan: this.addnode.fileSpan,
|
fileSpan: this.addnode.fileSpan,
|
||||||
children: [{ text: '' }], // void 元素必须有一个 children ,其中只有一个空字符串,重要!!!
|
children: [{ text: '' }], // void 元素必须有一个 children ,其中只有一个空字符串,重要!!!
|
||||||
}
|
}
|
||||||
@ -167,6 +173,7 @@ export default ({
|
|||||||
this.addnode = {
|
this.addnode = {
|
||||||
fileName: '',
|
fileName: '',
|
||||||
fileSpan: '',
|
fileSpan: '',
|
||||||
|
fieldMark: "",
|
||||||
}
|
}
|
||||||
this.editor.focus()
|
this.editor.focus()
|
||||||
}, 100);
|
}, 100);
|
||||||
@ -206,9 +213,7 @@ export default ({
|
|||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
nodeContent(newValue, oldValue) {
|
nodeContent(newValue, oldValue) {
|
||||||
if (newValue) {
|
this.html = newValue;
|
||||||
this.html = newValue;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@ -311,7 +316,7 @@ function withAttachment(editor) { // JS 语法
|
|||||||
Boot.registerPlugin(withAttachment)
|
Boot.registerPlugin(withAttachment)
|
||||||
function renderAttachment(elem, children, editor) { // JS 语法
|
function renderAttachment(elem, children, editor) { // JS 语法
|
||||||
// 获取“附件”的数据,参考上文 myResume 数据结构
|
// 获取“附件”的数据,参考上文 myResume 数据结构
|
||||||
const { fileName = '', link = '', fileSpan = '' } = elem
|
const { fileName = '', link = '', fileSpan = '', fieldMark = '' } = elem
|
||||||
// 附件 icon 图标 vnode
|
// 附件 icon 图标 vnode
|
||||||
const iconVnode = h(
|
const iconVnode = h(
|
||||||
// HTML tag
|
// HTML tag
|
||||||
@ -387,7 +392,7 @@ function renderAttachment(elem, children, editor) {
|
|||||||
}
|
}
|
||||||
function renderAttachmenttwo(elem, children, editor) { // JS 语法
|
function renderAttachmenttwo(elem, children, editor) { // JS 语法
|
||||||
// 获取“附件”的数据,参考上文 myResume 数据结构
|
// 获取“附件”的数据,参考上文 myResume 数据结构
|
||||||
const { fileName = '', link = '', fileSpan = '' } = elem
|
const { fileName = '', link = '', fileSpan = '', fieldMark = '' } = elem
|
||||||
// 附件 icon 图标 vnode
|
// 附件 icon 图标 vnode
|
||||||
const iconVnode = h(
|
const iconVnode = h(
|
||||||
// HTML tag
|
// HTML tag
|
||||||
@ -480,13 +485,14 @@ const rendermodule = { // JS 语法
|
|||||||
Boot.registerModule(rendermodule)
|
Boot.registerModule(rendermodule)
|
||||||
function attachmentToHtml(elem, childrenHtml) { // JS 语法
|
function attachmentToHtml(elem, childrenHtml) { // JS 语法
|
||||||
// 获取附件元素的数据
|
// 获取附件元素的数据
|
||||||
const { link = '', fileName = '', fileSpan = '' } = elem
|
const { link = '', fileName = '', fileSpan = '', fieldMark = '' } = elem
|
||||||
// 生成 HTML 代码
|
// 生成 HTML 代码
|
||||||
const html = `<span data-w-e-type="attachment"
|
const html = `<span data-w-e-type="attachment"
|
||||||
data-w-e-is-void
|
data-w-e-is-void
|
||||||
data-w-e-is-inline
|
data-w-e-is-inline
|
||||||
data-link="${link}"
|
data-link="${link}"
|
||||||
data-fileSpan="${fileSpan}"
|
data-fileSpan="${fileSpan}"
|
||||||
|
data-fieldMark="${fieldMark}"
|
||||||
data-fileName="${fileName}">
|
data-fileName="${fileName}">
|
||||||
<span class="path-tag-wrap">
|
<span class="path-tag-wrap">
|
||||||
<span>${fileName}</span>
|
<span>${fileName}</span>
|
||||||
@ -497,13 +503,14 @@ function attachmentToHtml(elem, childrenHtml) { // JS 语法
|
|||||||
}
|
}
|
||||||
function attachmentToHtmltwo(elem, childrenHtml) { // JS 语法
|
function attachmentToHtmltwo(elem, childrenHtml) { // JS 语法
|
||||||
// 获取附件元素的数据
|
// 获取附件元素的数据
|
||||||
const { link = '', fileName = '', fileSpan = '' } = elem
|
const { link = '', fileName = '', fileSpan = '', fieldMark = '' } = elem
|
||||||
// 生成 HTML 代码
|
// 生成 HTML 代码
|
||||||
const html = `<span data-w-e-type="attachmenttwo"
|
const html = `<span data-w-e-type="attachmenttwo"
|
||||||
data-w-e-is-void
|
data-w-e-is-void
|
||||||
data-w-e-is-inline
|
data-w-e-is-inline
|
||||||
data-link="${link}"
|
data-link="${link}"
|
||||||
data-fileSpan="${fileSpan}"
|
data-fileSpan="${fileSpan}"
|
||||||
|
data-fieldMark="${fieldMark}"
|
||||||
data-fileName="${fileName}">
|
data-fileName="${fileName}">
|
||||||
<span class="path-tag-wrap">
|
<span class="path-tag-wrap">
|
||||||
<span>${fileName}</span>
|
<span>${fileName}</span>
|
||||||
@ -529,12 +536,14 @@ function parseAttachmentHtml(domElem, children, editor) {
|
|||||||
const link = domElem.getAttribute('data-link') || ''
|
const link = domElem.getAttribute('data-link') || ''
|
||||||
const fileName = domElem.getAttribute('data-fileName') || ''
|
const fileName = domElem.getAttribute('data-fileName') || ''
|
||||||
const fileSpan = domElem.getAttribute('data-fileSpan') || ''
|
const fileSpan = domElem.getAttribute('data-fileSpan') || ''
|
||||||
|
const fieldMark = domElem.getAttribute('data-fieldMark') || ''
|
||||||
// 生成“附件”元素(按照此前约定的数据结构)
|
// 生成“附件”元素(按照此前约定的数据结构)
|
||||||
const myResume = {
|
const myResume = {
|
||||||
type: 'attachment',
|
type: 'attachment',
|
||||||
link,
|
link,
|
||||||
fileName,
|
fileName,
|
||||||
fileSpan,
|
fileSpan,
|
||||||
|
fieldMark,
|
||||||
children: [{ text: '' }], // void node 必须有 children ,其中有一个空字符串,重要!!!
|
children: [{ text: '' }], // void node 必须有 children ,其中有一个空字符串,重要!!!
|
||||||
}
|
}
|
||||||
return myResume
|
return myResume
|
||||||
@ -544,11 +553,13 @@ function parseAttachmentHtmltwo(domElem, children, editor) {
|
|||||||
const link = domElem.getAttribute('data-link') || ''
|
const link = domElem.getAttribute('data-link') || ''
|
||||||
const fileName = domElem.getAttribute('data-fileName') || ''
|
const fileName = domElem.getAttribute('data-fileName') || ''
|
||||||
const fileSpan = domElem.getAttribute('data-fileSpan') || ''
|
const fileSpan = domElem.getAttribute('data-fileSpan') || ''
|
||||||
|
const fieldMark = domElem.getAttribute('data-fieldMark') || ''
|
||||||
// 生成“附件”元素(按照此前约定的数据结构)
|
// 生成“附件”元素(按照此前约定的数据结构)
|
||||||
const myResume = {
|
const myResume = {
|
||||||
type: 'attachmenttwo',
|
type: 'attachmenttwo',
|
||||||
link,
|
link,
|
||||||
fileName,
|
fileName,
|
||||||
|
fieldMark,
|
||||||
fileSpan,
|
fileSpan,
|
||||||
children: [{ text: '' }], // void node 必须有 children ,其中有一个空字符串,重要!!!
|
children: [{ text: '' }], // void node 必须有 children ,其中有一个空字符串,重要!!!
|
||||||
}
|
}
|
||||||
|
|||||||
@ -442,7 +442,7 @@ export default {
|
|||||||
|
|
||||||
required: true,
|
required: true,
|
||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
validator: validateInput
|
// validator: validateInput
|
||||||
},
|
},
|
||||||
// { pattern:/^$W*$/, message: '以$开头且不能输入汉字和数字的字符串', trigger: 'blur' }
|
// { pattern:/^$W*$/, message: '以$开头且不能输入汉字和数字的字符串', trigger: 'blur' }
|
||||||
],
|
],
|
||||||
@ -479,7 +479,7 @@ export default {
|
|||||||
required: true,
|
required: true,
|
||||||
// message: "请输入画像字段表示",
|
// message: "请输入画像字段表示",
|
||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
validator: validateInput
|
// validator: validateInput
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
|
||||||
|
|||||||
@ -89,6 +89,7 @@ export default ({
|
|||||||
addnode: {
|
addnode: {
|
||||||
fileName: '',
|
fileName: '',
|
||||||
fileSpan: '',
|
fileSpan: '',
|
||||||
|
fieldMark: "",
|
||||||
},
|
},
|
||||||
modify: false,
|
modify: false,
|
||||||
}
|
}
|
||||||
@ -104,6 +105,7 @@ export default ({
|
|||||||
if (el.labelFieldId == item[1]) {
|
if (el.labelFieldId == item[1]) {
|
||||||
this.addnode.fileSpan = el.fieldName
|
this.addnode.fileSpan = el.fieldName
|
||||||
this.addnode.fileName = e.fieldName
|
this.addnode.fileName = e.fieldName
|
||||||
|
this.addnode.fieldMark = el.fieldMark
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
@ -113,6 +115,7 @@ export default ({
|
|||||||
if (el.labelFieldId == item[1]) {
|
if (el.labelFieldId == item[1]) {
|
||||||
this.addnode.fileSpan = el.fieldName
|
this.addnode.fileSpan = el.fieldName
|
||||||
this.addnode.fileName = e.fieldName
|
this.addnode.fileName = e.fieldName
|
||||||
|
this.addnode.fieldMark = el.fieldMark
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
@ -133,12 +136,14 @@ export default ({
|
|||||||
link: '',
|
link: '',
|
||||||
fileName: this.addnode.fileName,
|
fileName: this.addnode.fileName,
|
||||||
fileSpan: this.addnode.fileSpan,
|
fileSpan: this.addnode.fileSpan,
|
||||||
|
fieldMark: this.addnode.fieldMark,
|
||||||
children: [{ text: '' }], // void 元素必须有一个 children ,其中只有一个空字符串,重要!!!
|
children: [{ text: '' }], // void 元素必须有一个 children ,其中只有一个空字符串,重要!!!
|
||||||
}
|
}
|
||||||
this.editor.insertNode(resume)
|
this.editor.insertNode(resume)
|
||||||
this.addnode = {
|
this.addnode = {
|
||||||
fileName: '',
|
fileName: '',
|
||||||
fileSpan: '',
|
fileSpan: '',
|
||||||
|
fieldMark: '',
|
||||||
}
|
}
|
||||||
this.editor.focus()
|
this.editor.focus()
|
||||||
}, 100);
|
}, 100);
|
||||||
@ -158,11 +163,13 @@ export default ({
|
|||||||
link: '',
|
link: '',
|
||||||
fileName: this.addnode.fileName,
|
fileName: this.addnode.fileName,
|
||||||
fileSpan: this.addnode.fileSpan,
|
fileSpan: this.addnode.fileSpan,
|
||||||
|
fieldMark: this.addnode.fieldMark,
|
||||||
children: [{ text: '' }], // void 元素必须有一个 children ,其中只有一个空字符串,重要!!!
|
children: [{ text: '' }], // void 元素必须有一个 children ,其中只有一个空字符串,重要!!!
|
||||||
}
|
}
|
||||||
this.editor.insertNode(resume)
|
this.editor.insertNode(resume)
|
||||||
this.addnode = {
|
this.addnode = {
|
||||||
fileName: '',
|
fileName: '',
|
||||||
|
fieldMark: '',
|
||||||
fileSpan: '',
|
fileSpan: '',
|
||||||
}
|
}
|
||||||
this.editor.focus()
|
this.editor.focus()
|
||||||
@ -205,9 +212,8 @@ export default ({
|
|||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
nodeContent(newValue, oldValue) {
|
nodeContent(newValue, oldValue) {
|
||||||
if (newValue) {
|
console.log(newValue, oldValue)
|
||||||
this.html = newValue;
|
this.html = newValue;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@ -310,7 +316,7 @@ function withAttachment(editor) { // JS 语法
|
|||||||
Boot.registerPlugin(withAttachment)
|
Boot.registerPlugin(withAttachment)
|
||||||
function renderAttachment(elem, children, editor) { // JS 语法
|
function renderAttachment(elem, children, editor) { // JS 语法
|
||||||
// 获取“附件”的数据,参考上文 myResume 数据结构
|
// 获取“附件”的数据,参考上文 myResume 数据结构
|
||||||
const { fileName = '', link = '', fileSpan = '' } = elem
|
const { fileName = '', link = '', fileSpan = '', fieldMark } = elem
|
||||||
// 附件 icon 图标 vnode
|
// 附件 icon 图标 vnode
|
||||||
const iconVnode = h(
|
const iconVnode = h(
|
||||||
// HTML tag
|
// HTML tag
|
||||||
@ -386,7 +392,7 @@ function renderAttachment(elem, children, editor) {
|
|||||||
}
|
}
|
||||||
function renderAttachmenttwo(elem, children, editor) { // JS 语法
|
function renderAttachmenttwo(elem, children, editor) { // JS 语法
|
||||||
// 获取“附件”的数据,参考上文 myResume 数据结构
|
// 获取“附件”的数据,参考上文 myResume 数据结构
|
||||||
const { fileName = '', link = '', fileSpan = '' } = elem
|
const { fileName = '', link = '', fileSpan = '', fieldMark = '' } = elem
|
||||||
// 附件 icon 图标 vnode
|
// 附件 icon 图标 vnode
|
||||||
const iconVnode = h(
|
const iconVnode = h(
|
||||||
// HTML tag
|
// HTML tag
|
||||||
@ -479,13 +485,14 @@ const rendermodule = { // JS 语法
|
|||||||
Boot.registerModule(rendermodule)
|
Boot.registerModule(rendermodule)
|
||||||
function attachmentToHtml(elem, childrenHtml) { // JS 语法
|
function attachmentToHtml(elem, childrenHtml) { // JS 语法
|
||||||
// 获取附件元素的数据
|
// 获取附件元素的数据
|
||||||
const { link = '', fileName = '', fileSpan = '' } = elem
|
const { link = '', fileName = '', fileSpan = '', fieldMark = '' } = elem
|
||||||
// 生成 HTML 代码
|
// 生成 HTML 代码
|
||||||
const html = `<span data-w-e-type="attachment"
|
const html = `<span data-w-e-type="attachment"
|
||||||
data-w-e-is-void
|
data-w-e-is-void
|
||||||
data-w-e-is-inline
|
data-w-e-is-inline
|
||||||
data-link="${link}"
|
data-link="${link}"
|
||||||
data-fileSpan="${fileSpan}"
|
data-fileSpan="${fileSpan}"
|
||||||
|
data-fieldMark="${fieldMark}"
|
||||||
data-fileName="${fileName}">
|
data-fileName="${fileName}">
|
||||||
<span class="path-tag-wrap">
|
<span class="path-tag-wrap">
|
||||||
<span>${fileName}</span>
|
<span>${fileName}</span>
|
||||||
@ -496,13 +503,14 @@ function attachmentToHtml(elem, childrenHtml) { // JS 语法
|
|||||||
}
|
}
|
||||||
function attachmentToHtmltwo(elem, childrenHtml) { // JS 语法
|
function attachmentToHtmltwo(elem, childrenHtml) { // JS 语法
|
||||||
// 获取附件元素的数据
|
// 获取附件元素的数据
|
||||||
const { link = '', fileName = '', fileSpan = '' } = elem
|
const { link = '', fileName = '', fileSpan = '', fieldMark = '' } = elem
|
||||||
// 生成 HTML 代码
|
// 生成 HTML 代码
|
||||||
const html = `<span data-w-e-type="attachmenttwo"
|
const html = `<span data-w-e-type="attachmenttwo"
|
||||||
data-w-e-is-void
|
data-w-e-is-void
|
||||||
data-w-e-is-inline
|
data-w-e-is-inline
|
||||||
data-link="${link}"
|
data-link="${link}"
|
||||||
data-fileSpan="${fileSpan}"
|
data-fileSpan="${fileSpan}"
|
||||||
|
data-fieldMark="${fieldMark}"
|
||||||
data-fileName="${fileName}">
|
data-fileName="${fileName}">
|
||||||
<span class="path-tag-wrap">
|
<span class="path-tag-wrap">
|
||||||
<span>${fileName}</span>
|
<span>${fileName}</span>
|
||||||
@ -528,12 +536,14 @@ function parseAttachmentHtml(domElem, children, editor) {
|
|||||||
const link = domElem.getAttribute('data-link') || ''
|
const link = domElem.getAttribute('data-link') || ''
|
||||||
const fileName = domElem.getAttribute('data-fileName') || ''
|
const fileName = domElem.getAttribute('data-fileName') || ''
|
||||||
const fileSpan = domElem.getAttribute('data-fileSpan') || ''
|
const fileSpan = domElem.getAttribute('data-fileSpan') || ''
|
||||||
|
const fieldMark = domElem.getAttribute('data-fieldMark') || ''
|
||||||
// 生成“附件”元素(按照此前约定的数据结构)
|
// 生成“附件”元素(按照此前约定的数据结构)
|
||||||
const myResume = {
|
const myResume = {
|
||||||
type: 'attachment',
|
type: 'attachment',
|
||||||
link,
|
link,
|
||||||
fileName,
|
fileName,
|
||||||
fileSpan,
|
fileSpan,
|
||||||
|
fieldMark,
|
||||||
children: [{ text: '' }], // void node 必须有 children ,其中有一个空字符串,重要!!!
|
children: [{ text: '' }], // void node 必须有 children ,其中有一个空字符串,重要!!!
|
||||||
}
|
}
|
||||||
return myResume
|
return myResume
|
||||||
@ -543,12 +553,14 @@ function parseAttachmentHtmltwo(domElem, children, editor) {
|
|||||||
const link = domElem.getAttribute('data-link') || ''
|
const link = domElem.getAttribute('data-link') || ''
|
||||||
const fileName = domElem.getAttribute('data-fileName') || ''
|
const fileName = domElem.getAttribute('data-fileName') || ''
|
||||||
const fileSpan = domElem.getAttribute('data-fileSpan') || ''
|
const fileSpan = domElem.getAttribute('data-fileSpan') || ''
|
||||||
|
const fieldMark = domElem.getAttribute('data-fieldMark') || ''
|
||||||
// 生成“附件”元素(按照此前约定的数据结构)
|
// 生成“附件”元素(按照此前约定的数据结构)
|
||||||
const myResume = {
|
const myResume = {
|
||||||
type: 'attachmenttwo',
|
type: 'attachmenttwo',
|
||||||
link,
|
link,
|
||||||
fileName,
|
fileName,
|
||||||
fileSpan,
|
fileSpan,
|
||||||
|
fieldMark,
|
||||||
children: [{ text: '' }], // void node 必须有 children ,其中有一个空字符串,重要!!!
|
children: [{ text: '' }], // void node 必须有 children ,其中有一个空字符串,重要!!!
|
||||||
}
|
}
|
||||||
return myResume
|
return myResume
|
||||||
|
|||||||
@ -9,17 +9,8 @@
|
|||||||
<div class="select">
|
<div class="select">
|
||||||
<span> 适用范围 </span>
|
<span> 适用范围 </span>
|
||||||
|
|
||||||
<el-select
|
<el-select v-model="updata.suitRange" placeholder="请选择" @change="changeoptions">
|
||||||
v-model="updata.suitRange"
|
<el-option v-for="item in options" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue">
|
||||||
placeholder="请选择"
|
|
||||||
@change="changeoptions"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in options"
|
|
||||||
:key="item.dictValue"
|
|
||||||
:label="item.dictLabel"
|
|
||||||
:value="item.dictValue"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</div>
|
</div>
|
||||||
@ -31,20 +22,12 @@
|
|||||||
<i class="el-icon-circle-plus-outline" @click="addlist"></i>
|
<i class="el-icon-circle-plus-outline" @click="addlist"></i>
|
||||||
</div>
|
</div>
|
||||||
<el-timeline>
|
<el-timeline>
|
||||||
<el-timeline-item
|
<el-timeline-item v-for="(item, index) in lists" :key="index" :color="listindex == index ? '#409EFF' : ''">
|
||||||
v-for="(item, index) in lists"
|
|
||||||
:key="index"
|
|
||||||
:color="listindex == index ? '#409EFF' : ''"
|
|
||||||
>
|
|
||||||
<div class="top">
|
<div class="top">
|
||||||
<div class="toptop">
|
<div class="toptop">
|
||||||
<el-select v-model="item.routeNodeName" style="width: 100px">
|
<el-select v-model="item.routeNodeName" style="width: 100px">
|
||||||
<el-option
|
<el-option v-for="item in parentDictCodelist" :key="item.dictValue" :label="item.dictLabel"
|
||||||
v-for="item in parentDictCodelist"
|
:value="item.dictValue">
|
||||||
:key="item.dictValue"
|
|
||||||
:label="item.dictLabel"
|
|
||||||
:value="item.dictValue"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
|
|
||||||
<!-- <el-option label="出院后" value="AFTER_DISCHARGE" />
|
<!-- <el-option label="出院后" value="AFTER_DISCHARGE" />
|
||||||
@ -57,42 +40,22 @@
|
|||||||
<el-option label="术前" value="PREOPERATIVE" />
|
<el-option label="术前" value="PREOPERATIVE" />
|
||||||
<el-option label="术后" value="POSTOPERATIVE" /> -->
|
<el-option label="术后" value="POSTOPERATIVE" /> -->
|
||||||
</el-select>
|
</el-select>
|
||||||
<el-input
|
<el-input v-model="item.routeNodeDay" style="width: 70px" type="number"></el-input>
|
||||||
v-model="item.routeNodeDay"
|
|
||||||
style="width: 70px"
|
|
||||||
type="number"
|
|
||||||
></el-input>
|
|
||||||
<span>天</span>
|
<span>天</span>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<i class="el-icon-delete" @click="delitem(item, index)"></i>
|
<i class="el-icon-delete" @click="delitem(item, index)"></i>
|
||||||
<i
|
<i class="el-icon-circle-plus-outline" @click="additem(item)"></i>
|
||||||
class="el-icon-circle-plus-outline"
|
|
||||||
@click="additem(item)"
|
|
||||||
></i>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-card
|
<el-card v-for="(uitem, uindex) in item.list" :key="uitem.id"
|
||||||
v-for="(uitem, uindex) in item.list"
|
|
||||||
:key="uitem.id"
|
|
||||||
@click.native="bottomclickevent(uitem, index, uindex)"
|
@click.native="bottomclickevent(uitem, index, uindex)"
|
||||||
:class="listindex == index && itemindex == uindex ? 'cards' : ''"
|
:class="listindex == index && itemindex == uindex ? 'cards' : ''">
|
||||||
>
|
|
||||||
<h3 style="height: 20px">{{ uitem.taskTypeName }}</h3>
|
<h3 style="height: 20px">{{ uitem.taskTypeName }}</h3>
|
||||||
<el-tag
|
<el-tag v-if="uitem.routeCheckStatus == 'AGREE'" class="routeCheckStatus">已审核</el-tag>
|
||||||
v-if="uitem.routeCheckStatus == 'AGREE'"
|
<el-tag v-else-if="uitem.routeCheckStatus == 'DISAGREE'" type="danger"
|
||||||
class="routeCheckStatus"
|
class="routeCheckStatus">不同意</el-tag>
|
||||||
>已审核</el-tag
|
<el-tag v-else type="warning" class="routeCheckStatus">未审核</el-tag>
|
||||||
>
|
|
||||||
<el-tag
|
|
||||||
v-else-if="uitem.routeCheckStatus == 'DISAGREE'"
|
|
||||||
type="danger"
|
|
||||||
class="routeCheckStatus"
|
|
||||||
>不同意</el-tag
|
|
||||||
>
|
|
||||||
<el-tag v-else type="warning" class="routeCheckStatus"
|
|
||||||
>未审核</el-tag
|
|
||||||
>
|
|
||||||
<p style="height: 16px">{{ uitem.taskSubdivisionName }}</p>
|
<p style="height: 16px">{{ uitem.taskSubdivisionName }}</p>
|
||||||
</el-card>
|
</el-card>
|
||||||
</el-timeline-item>
|
</el-timeline-item>
|
||||||
@ -102,91 +65,46 @@
|
|||||||
<div class="topform">
|
<div class="topform">
|
||||||
<el-form ref="form" :inline="true" :model="form" class="form">
|
<el-form ref="form" :inline="true" :model="form" class="form">
|
||||||
<el-form-item label="任务类型" prop="">
|
<el-form-item label="任务类型" prop="">
|
||||||
<el-select
|
<el-select v-model="form.taskType" style="width: 110px" @change="changeTaskType">
|
||||||
v-model="form.taskType"
|
<el-option v-for="item in selectTaskTypeList" :key="item.taskTypeCode" :label="item.taskTypeName"
|
||||||
style="width: 110px"
|
:value="item.taskTypeCode">
|
||||||
@change="changeTaskType"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in selectTaskTypeList"
|
|
||||||
:key="item.taskTypeCode"
|
|
||||||
:label="item.taskTypeName"
|
|
||||||
:value="item.taskTypeCode"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="任务细分" prop="">
|
<el-form-item label="任务细分" prop="">
|
||||||
<el-select
|
<el-select v-model="form.taskSubdivision" style="width: 110px" @change="changetaskSubdivision">
|
||||||
v-model="form.taskSubdivision"
|
<el-option v-for="item in taskPartitionList" :key="item.taskPartitionCode"
|
||||||
style="width: 110px"
|
:label="item.taskPartitionName" :value="item.taskPartitionCode">
|
||||||
@change="changetaskSubdivision"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in taskPartitionList"
|
|
||||||
:key="item.taskPartitionCode"
|
|
||||||
:label="item.taskPartitionName"
|
|
||||||
:value="item.taskPartitionCode"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="任务状态" prop="">
|
<el-form-item label="任务状态" prop="">
|
||||||
<el-select v-model="form.taskStatus" style="width: 110px">
|
<el-select v-model="form.taskStatus" style="width: 110px">
|
||||||
<el-option
|
<el-option v-for="item in taskStatusDictList" :key="item.id" :label="item.taskStatusName"
|
||||||
v-for="item in taskStatusDictList"
|
:value="item.taskStatusCode">
|
||||||
:key="item.id"
|
|
||||||
:label="item.taskStatusName"
|
|
||||||
:value="item.taskStatusCode"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="二级分类描述" prop="">
|
<el-form-item label="二级分类描述" prop="">
|
||||||
<el-input
|
<el-input v-model="form.secondClassifyDescribe" style="width: 110px"></el-input>
|
||||||
v-model="form.secondClassifyDescribe"
|
|
||||||
style="width: 110px"
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="执行时间" prop="">
|
<el-form-item label="执行时间" prop="">
|
||||||
<el-time-select
|
<el-time-select v-model="form.executionTime" style="width: 120px" placeholder="选择时间">
|
||||||
v-model="form.executionTime"
|
|
||||||
style="width: 120px"
|
|
||||||
placeholder="选择时间"
|
|
||||||
>
|
|
||||||
</el-time-select>
|
</el-time-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item label="问卷库模板选择" prop="" v-if="form.taskSubdivisiontemplateType == 'QUESTIONNAIRE'">
|
||||||
label="问卷库模板选择"
|
<question @on-template="questionontemplate" :templateId="form.templateId"
|
||||||
prop=""
|
:templateName="form.templateName"></question>
|
||||||
v-if="form.taskSubdivisiontemplateType == 'QUESTIONNAIRE'"
|
|
||||||
>
|
|
||||||
<question
|
|
||||||
@on-template="questionontemplate"
|
|
||||||
:templateId="form.templateId"
|
|
||||||
:templateName="form.templateName"
|
|
||||||
></question>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item label="宣教库模板选择" prop="" v-if="form.taskSubdivisiontemplateType == 'PROPAGANDA'">
|
||||||
label="宣教库模板选择"
|
<propaganda @on-template="propagandaontemplate" :templateId="form.templateId"
|
||||||
prop=""
|
:templateName="form.templateName"></propaganda>
|
||||||
v-if="form.taskSubdivisiontemplateType == 'PROPAGANDA'"
|
|
||||||
>
|
|
||||||
<propaganda
|
|
||||||
@on-template="propagandaontemplate"
|
|
||||||
:templateId="form.templateId"
|
|
||||||
:templateName="form.templateName"
|
|
||||||
></propaganda>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
<div class="bottomform">
|
<div class="bottomform">
|
||||||
<wangeditor
|
<wangeditor style="width: 100%" :nodeContent="form.nodeContent" @on-nodeContent="onNodeContent"
|
||||||
style="width: 100%"
|
ref="wangeditor" />
|
||||||
:nodeContent="form.nodeContent"
|
|
||||||
@on-nodeContent="onNodeContent"
|
|
||||||
ref="wangeditor"
|
|
||||||
/>
|
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
@ -195,29 +113,17 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
模板:
|
模板:
|
||||||
<message
|
<message @on-template="messageontemplate" :templateId="form.messageTemplateId"
|
||||||
@on-template="messageontemplate"
|
:templateName="form.messageTemplateName"></message>
|
||||||
:templateId="form.messageTemplateId"
|
|
||||||
:templateName="form.messageTemplateName"
|
|
||||||
></message>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
<el-switch
|
<el-switch v-model="form.messagePushSign" active-color="#13ce66" active-value="1" inactive-value="0">
|
||||||
v-model="form.messagePushSign"
|
|
||||||
active-color="#13ce66"
|
|
||||||
active-value="1"
|
|
||||||
inactive-value="0"
|
|
||||||
>
|
|
||||||
</el-switch>
|
</el-switch>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flextwo">
|
<div class="flextwo">
|
||||||
<div class="text">短信预览:</div>
|
<div class="text">短信预览:</div>
|
||||||
<el-input
|
<el-input class="textarea" v-model="form.messagePreview" disabled></el-input>
|
||||||
class="textarea"
|
|
||||||
v-model="form.messagePreview"
|
|
||||||
disabled
|
|
||||||
></el-input>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card">
|
<div class="card">
|
||||||
@ -229,31 +135,19 @@
|
|||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
模板:
|
模板:
|
||||||
<span>
|
<span>
|
||||||
<officialAccount
|
<officialAccount @on-template="officialAccountontemplate" :templateId="form.officialTemplateId"
|
||||||
@on-template="officialAccountontemplate"
|
:templateName="form.officialTemplateName">
|
||||||
:templateId="form.officialTemplateId"
|
|
||||||
:templateName="form.officialTemplateName"
|
|
||||||
>
|
|
||||||
</officialAccount>
|
</officialAccount>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
<el-switch
|
<el-switch v-model="form.officialPushSign" active-color="#13ce66" active-value="1" inactive-value="0">
|
||||||
v-model="form.officialPushSign"
|
|
||||||
active-color="#13ce66"
|
|
||||||
active-value="1"
|
|
||||||
inactive-value="0"
|
|
||||||
>
|
|
||||||
</el-switch>
|
</el-switch>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flextwo">
|
<div class="flextwo">
|
||||||
<div class="text">提醒内容:</div>
|
<div class="text">提醒内容:</div>
|
||||||
<el-input
|
<el-input v-model="form.officialRemindContent" class="textarea" disabled></el-input>
|
||||||
v-model="form.officialRemindContent"
|
|
||||||
class="textarea"
|
|
||||||
disabled
|
|
||||||
></el-input>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card">
|
<div class="card">
|
||||||
@ -265,39 +159,23 @@
|
|||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
模板:
|
模板:
|
||||||
<span>
|
<span>
|
||||||
<miniProgram
|
<miniProgram @on-template="miniProgramtemplate" :templateId="form.appletTemplateId"
|
||||||
@on-template="miniProgramtemplate"
|
:templateName="form.appletTemplateName">
|
||||||
:templateId="form.appletTemplateId"
|
|
||||||
:templateName="form.appletTemplateName"
|
|
||||||
>
|
|
||||||
</miniProgram>
|
</miniProgram>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
<el-switch
|
<el-switch v-model="form.appletPushSign" active-color="#13ce66" active-value="1" inactive-value="0">
|
||||||
v-model="form.appletPushSign"
|
|
||||||
active-color="#13ce66"
|
|
||||||
active-value="1"
|
|
||||||
inactive-value="0"
|
|
||||||
>
|
|
||||||
</el-switch>
|
</el-switch>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flextwo">
|
<div class="flextwo">
|
||||||
<div class="text">提醒内容:</div>
|
<div class="text">提醒内容:</div>
|
||||||
<el-input
|
<el-input v-model="form.appletRemindContent" class="textarea" disabled></el-input>
|
||||||
v-model="form.appletRemindContent"
|
|
||||||
class="textarea"
|
|
||||||
disabled
|
|
||||||
></el-input>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="flextwo">
|
<div class="flextwo">
|
||||||
<div class="text">提示说明:</div>
|
<div class="text">提示说明:</div>
|
||||||
<el-input
|
<el-input v-model="form.appletPromptDescription" class="textarea" disabled></el-input>
|
||||||
v-model="form.appletPromptDescription"
|
|
||||||
class="textarea"
|
|
||||||
disabled
|
|
||||||
></el-input>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- <div class="card" style="height: 250px;">
|
<!-- <div class="card" style="height: 250px;">
|
||||||
@ -370,41 +248,18 @@
|
|||||||
</div>
|
</div>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
<el-button @click="TemporaryStorage">暂 存</el-button>
|
<el-button @click="TemporaryStorage">暂 存</el-button>
|
||||||
<el-button
|
<el-button type="primary" @click="dialogVisible = true" v-if="form.specialDiseaseNodeId">审核完成 {{ agreeNumber ?
|
||||||
type="primary"
|
agreeNumber : "0" }} /
|
||||||
@click="dialogVisible = true"
|
{{ totalNumber ? totalNumber : "0" }}</el-button>
|
||||||
v-if="form.specialDiseaseNodeId"
|
|
||||||
>审核完成 {{ agreeNumber ? agreeNumber : "0" }} /
|
|
||||||
{{ totalNumber ? totalNumber : "0" }}</el-button
|
|
||||||
>
|
|
||||||
</div>
|
</div>
|
||||||
<el-dialog
|
<el-dialog title="提交审核完成" :visible.sync="dialogVisible" width="30%" :before-close="handleClose">
|
||||||
title="提交审核完成"
|
<el-form ref="routeform" :model="routeform" label-width="120px" :rules="rules">
|
||||||
:visible.sync="dialogVisible"
|
|
||||||
width="30%"
|
|
||||||
:before-close="handleClose"
|
|
||||||
>
|
|
||||||
<el-form
|
|
||||||
ref="routeform"
|
|
||||||
:model="routeform"
|
|
||||||
label-width="120px"
|
|
||||||
:rules="rules"
|
|
||||||
>
|
|
||||||
<el-form-item label="节点审核状态" prop="routeCheckStatus">
|
<el-form-item label="节点审核状态" prop="routeCheckStatus">
|
||||||
<el-radio v-model="routeform.routeCheckStatus" label="AGREE"
|
<el-radio v-model="routeform.routeCheckStatus" label="AGREE">同意</el-radio>
|
||||||
>同意</el-radio
|
<el-radio v-model="routeform.routeCheckStatus" label="DISAGREE">不同意</el-radio>
|
||||||
>
|
|
||||||
<el-radio v-model="routeform.routeCheckStatus" label="DISAGREE"
|
|
||||||
>不同意</el-radio
|
|
||||||
>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="节点审核备注">
|
<el-form-item label="节点审核备注">
|
||||||
<el-input
|
<el-input type="textarea" :rows="2" placeholder="请输入节点审核备注" v-model="routeform.routeCheckRemark">
|
||||||
type="textarea"
|
|
||||||
:rows="2"
|
|
||||||
placeholder="请输入节点审核备注"
|
|
||||||
v-model="routeform.routeCheckRemark"
|
|
||||||
>
|
|
||||||
</el-input>
|
</el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
@ -503,9 +358,9 @@ export default {
|
|||||||
this.infolist();
|
this.infolist();
|
||||||
this.taskinfo();
|
this.taskinfo();
|
||||||
},
|
},
|
||||||
beforeDestroy() {},
|
beforeDestroy() { },
|
||||||
watch: {},
|
watch: {},
|
||||||
mounted() {},
|
mounted() { },
|
||||||
methods: {
|
methods: {
|
||||||
changeoptions(e) {
|
changeoptions(e) {
|
||||||
console.log(e);
|
console.log(e);
|
||||||
@ -678,10 +533,10 @@ export default {
|
|||||||
this.lists.forEach((e) => {
|
this.lists.forEach((e) => {
|
||||||
e.list.length > 0
|
e.list.length > 0
|
||||||
? e.list.forEach((el) => {
|
? e.list.forEach((el) => {
|
||||||
el.routeNodeDay = e.routeNodeDay;
|
el.routeNodeDay = e.routeNodeDay;
|
||||||
el.routeNodeName = e.routeNodeName;
|
el.routeNodeName = e.routeNodeName;
|
||||||
this.updata.specialDiseaseNodeList.push(el);
|
this.updata.specialDiseaseNodeList.push(el);
|
||||||
})
|
})
|
||||||
: "";
|
: "";
|
||||||
});
|
});
|
||||||
this.updata.specialDiseaseNodeList =
|
this.updata.specialDiseaseNodeList =
|
||||||
@ -714,14 +569,17 @@ export default {
|
|||||||
this.form.templateName = item.templateName;
|
this.form.templateName = item.templateName;
|
||||||
},
|
},
|
||||||
bottomclickevent(uitem, index, uindex) {
|
bottomclickevent(uitem, index, uindex) {
|
||||||
|
console.log(this.form, uitem, index, uindex)
|
||||||
this.$refs.wangeditor.emit();
|
this.$refs.wangeditor.emit();
|
||||||
this.form = uitem;
|
setTimeout(() => {
|
||||||
this.taskPartitionList = [];
|
this.form = uitem;
|
||||||
if (this.form.taskType) {
|
this.taskPartitionList = [];
|
||||||
this.changeTaskType(this.form.taskType, this.form.taskSubdivision);
|
if (this.form.taskType) {
|
||||||
}
|
this.changeTaskType(this.form.taskType, this.form.taskSubdivision);
|
||||||
this.listindex = index;
|
}
|
||||||
this.itemindex = uindex;
|
this.listindex = index;
|
||||||
|
this.itemindex = uindex;
|
||||||
|
}, 100);
|
||||||
},
|
},
|
||||||
handleStep() {
|
handleStep() {
|
||||||
this.active = 2;
|
this.active = 2;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user