|
@@ -9,41 +9,47 @@
|
|
|
></crumbs>
|
|
|
|
|
|
<div class="info-container">
|
|
|
- <el-form :rules="rules" :model="form" label-width="160px" ref="groups">
|
|
|
+ <el-form
|
|
|
+ :rules="rules1"
|
|
|
+ :model="form"
|
|
|
+ label-width="160px"
|
|
|
+ ref="groups1"
|
|
|
+ >
|
|
|
<div class="container_top">
|
|
|
- <el-form-item
|
|
|
- v-if="!isEdit"
|
|
|
- label="选择标准术语:"
|
|
|
- prop="selectedTerm"
|
|
|
- >
|
|
|
- <el-select
|
|
|
- v-model="form.selectedTerm"
|
|
|
- filterable
|
|
|
- remote
|
|
|
- clearable
|
|
|
- :loading="showDrop"
|
|
|
- loading-text="加载中..."
|
|
|
- @change="changeWord"
|
|
|
- @visible-change="handleVisible"
|
|
|
- value-key="id"
|
|
|
- @clear="handleClear"
|
|
|
- ref="termName"
|
|
|
- placeholder="搜索"
|
|
|
- :remote-method="searchTerms"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(term, idx) in terms"
|
|
|
- :key="idx"
|
|
|
- :label="
|
|
|
- term.name + (term.typeName ? '(' + term.typeName + ')' : '')
|
|
|
- "
|
|
|
- :value="term"
|
|
|
- :title="
|
|
|
- term.name + (term.typeName ? '(' + term.typeName + ')' : '')
|
|
|
- "
|
|
|
- ></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
+ <div v-if="!isEdit">
|
|
|
+ <el-form-item label="选择标准术语:" prop="selectedTerm">
|
|
|
+ <el-select
|
|
|
+ v-model="form.selectedTerm"
|
|
|
+ filterable
|
|
|
+ remote
|
|
|
+ clearable
|
|
|
+ :loading="showDrop"
|
|
|
+ loading-text="加载中..."
|
|
|
+ @change="changeWord"
|
|
|
+ @visible-change="handleVisible"
|
|
|
+ value-key="id"
|
|
|
+ @clear="handleClear"
|
|
|
+ ref="termName"
|
|
|
+ placeholder="搜索"
|
|
|
+ :remote-method="searchTerms"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="(term, idx) in terms"
|
|
|
+ :key="idx"
|
|
|
+ :label="
|
|
|
+ term.name +
|
|
|
+ (term.typeName ? '(' + term.typeName + ')' : '')
|
|
|
+ "
|
|
|
+ :value="term"
|
|
|
+ :title="
|
|
|
+ term.name +
|
|
|
+ (term.typeName ? '(' + term.typeName + ')' : '')
|
|
|
+ "
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+
|
|
|
<el-form-item
|
|
|
label="已选择标准术语:"
|
|
|
style="margin-left: 40px"
|
|
@@ -51,35 +57,37 @@
|
|
|
>{{ form.selectedTermName }}</el-form-item
|
|
|
>
|
|
|
</div>
|
|
|
-
|
|
|
- <p class="line"></p>
|
|
|
- <div class="tabs">
|
|
|
- <div
|
|
|
- class="tabs_pane"
|
|
|
- :style="
|
|
|
- tabActive == 'one'
|
|
|
- ? { color: '#fff', background: '#00c7da' }
|
|
|
- : ''
|
|
|
- "
|
|
|
- @click="tabActiveChange('one')"
|
|
|
- >
|
|
|
- 静态信息
|
|
|
- </div>
|
|
|
- <div
|
|
|
- class="tabs_pane"
|
|
|
- :style="
|
|
|
- tabActive == 'two'
|
|
|
- ? { color: '#fff', background: '#00c7da' }
|
|
|
- : ''
|
|
|
- "
|
|
|
- @click="tabActiveChange('two')"
|
|
|
- v-if="AssesComSHow"
|
|
|
- >
|
|
|
- 评估内容
|
|
|
- </div>
|
|
|
+ </el-form>
|
|
|
+ <p class="line"></p>
|
|
|
+ <div class="tabs">
|
|
|
+ <div
|
|
|
+ class="tabs_pane"
|
|
|
+ :style="
|
|
|
+ tabActive == 'one' ? { color: '#fff', background: '#00c7da' } : ''
|
|
|
+ "
|
|
|
+ @click="tabActiveChange('one')"
|
|
|
+ >
|
|
|
+ 静态信息
|
|
|
</div>
|
|
|
- <div class="tab_box_left" v-show="tabActive == 'one'">
|
|
|
- <el-form-item
|
|
|
+ <div
|
|
|
+ class="tabs_pane"
|
|
|
+ :style="
|
|
|
+ tabActive == 'two' ? { color: '#fff', background: '#00c7da' } : ''
|
|
|
+ "
|
|
|
+ @click="tabActiveChange('two')"
|
|
|
+ v-if="AssesComSHow"
|
|
|
+ >
|
|
|
+ 评估内容
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="tab_box_left" v-show="tabActive == 'one'">
|
|
|
+ <el-form
|
|
|
+ :rules="rules"
|
|
|
+ :model="form"
|
|
|
+ label-width="160px"
|
|
|
+ ref="groups"
|
|
|
+ >
|
|
|
+ <div
|
|
|
v-if="
|
|
|
form.selectedTerm &&
|
|
|
(form.typeId == 1 ||
|
|
@@ -88,80 +96,89 @@
|
|
|
form.typeId == 5 ||
|
|
|
form.typeId == 6)
|
|
|
"
|
|
|
- :label="titleChange"
|
|
|
- prop="titleChange"
|
|
|
- label-width="160px"
|
|
|
- style="margin-bottom: 20px"
|
|
|
- >
|
|
|
- <el-input v-model="form.titleChange"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <DevInfo
|
|
|
- v-for="(f, i) in form.prags"
|
|
|
- v-if="!upload"
|
|
|
- :key="(i + 1) * 10000 + showType"
|
|
|
- :data="f"
|
|
|
- :index="i"
|
|
|
- :total="form.prags.length"
|
|
|
- :isEdit="isEdit"
|
|
|
- :isCopy="isCopy"
|
|
|
- ref="subForm"
|
|
|
- @add="addParagraph(i)"
|
|
|
- @del="delParagraph"
|
|
|
- @reOrder="reOrder"
|
|
|
- :showType="showType"
|
|
|
- ></DevInfo>
|
|
|
- <el-form-item
|
|
|
- v-if="upload"
|
|
|
- label="标题名称搜索:"
|
|
|
- prop="fileTitle"
|
|
|
- label-width="160px"
|
|
|
- >
|
|
|
- <el-input v-model="form.fileTitle"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item
|
|
|
- v-if="upload"
|
|
|
- label="上传文件:"
|
|
|
- ref="upload"
|
|
|
- prop="fileList"
|
|
|
- label-width="160px"
|
|
|
>
|
|
|
- <el-upload
|
|
|
- @mouseenter.native="handleMouseenter"
|
|
|
- @mouseleave.native="handleMouseleave"
|
|
|
- class="upload-demo"
|
|
|
- :action="config.urls.promptServer"
|
|
|
- name="upfile"
|
|
|
- :multiple="false"
|
|
|
- :limit="1"
|
|
|
- :on-preview="handlePreview"
|
|
|
- :on-remove="handleRemove"
|
|
|
- :before-upload="handleBeforeUpLoad"
|
|
|
- :before-remove="beforeRemove"
|
|
|
- :on-change="handleChange"
|
|
|
- :on-success="handleSuccess"
|
|
|
- :show-file-list="showFileList"
|
|
|
- :file-list="form.fileList"
|
|
|
+ <el-form-item
|
|
|
+ :label="titleChange"
|
|
|
+ prop="titleChange"
|
|
|
+ label-width="160px"
|
|
|
+ style="margin-bottom: 20px"
|
|
|
>
|
|
|
- <el-button size="small" type="primary" v-if="showUpLoad"
|
|
|
- >点击上传</el-button
|
|
|
+ <el-input v-model="form.titleChange"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <div v-if="!upload">
|
|
|
+ <DevInfo
|
|
|
+ v-for="(f, i) in form.prags"
|
|
|
+ :key="(i + 1) * 10000 + showType"
|
|
|
+ :data="f"
|
|
|
+ :index="i"
|
|
|
+ :total="form.prags.length"
|
|
|
+ :isEdit="isEdit"
|
|
|
+ :isCopy="isCopy"
|
|
|
+ ref="subForm"
|
|
|
+ @add="addParagraph(i)"
|
|
|
+ @del="delParagraph"
|
|
|
+ @reOrder="reOrder"
|
|
|
+ :showType="showType"
|
|
|
+ ></DevInfo>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div v-if="upload">
|
|
|
+ <el-form-item
|
|
|
+ label="标题名称搜索:"
|
|
|
+ prop="fileTitle"
|
|
|
+ label-width="160px"
|
|
|
+ >
|
|
|
+ <el-input v-model="form.fileTitle"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div>
|
|
|
+ <el-form-item
|
|
|
+ v-if="upload"
|
|
|
+ label="上传文件:"
|
|
|
+ ref="upload"
|
|
|
+ prop="fileList"
|
|
|
+ label-width="160px"
|
|
|
+ >
|
|
|
+ <el-upload
|
|
|
+ @mouseenter.native="handleMouseenter"
|
|
|
+ @mouseleave.native="handleMouseleave"
|
|
|
+ class="upload-demo"
|
|
|
+ :action="config.urls.promptServer"
|
|
|
+ name="upfile"
|
|
|
+ :multiple="false"
|
|
|
+ :limit="1"
|
|
|
+ :on-preview="handlePreview"
|
|
|
+ :on-remove="handleRemove"
|
|
|
+ :before-upload="handleBeforeUpLoad"
|
|
|
+ :before-remove="beforeRemove"
|
|
|
+ :on-change="handleChange"
|
|
|
+ :on-success="handleSuccess"
|
|
|
+ :show-file-list="showFileList"
|
|
|
+ :file-list="form.fileList"
|
|
|
>
|
|
|
- <!-- <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div> -->
|
|
|
- </el-upload>
|
|
|
- <span class="tipInfo" v-show="isShowTip">{{
|
|
|
- form.fileList[0] && form.fileList[0].name
|
|
|
- }}</span>
|
|
|
- <!-- <el-button size="small" type="primary" >点击上传</el-button> -->
|
|
|
- </el-form-item>
|
|
|
+ <el-button size="small" type="primary" v-if="showUpLoad"
|
|
|
+ >点击上传</el-button
|
|
|
+ >
|
|
|
+ <!-- <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div> -->
|
|
|
+ </el-upload>
|
|
|
+ <span class="tipInfo" v-show="isShowTip">{{
|
|
|
+ form.fileList[0] && form.fileList[0].name
|
|
|
+ }}</span>
|
|
|
+ <!-- <el-button size="small" type="primary" >点击上传</el-button> -->
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
<el-form-item label-width="160px">
|
|
|
<div class="uploadInfo" v-if="isSuccessUpload === 1">
|
|
|
文件上传中,请稍等...
|
|
|
</div>
|
|
|
</el-form-item>
|
|
|
- </div>
|
|
|
- <div v-if="AssesComSHow" v-show="tabActive == 'two'">
|
|
|
- <AddAssess :childScaleData="scaleData" ref="assessRef" />
|
|
|
- </div>
|
|
|
- </el-form>
|
|
|
+ </el-form>
|
|
|
+ </div>
|
|
|
+ <div v-if="AssesComSHow" v-show="tabActive == 'two'">
|
|
|
+ <AddAssess :childScaleData="scaleData" ref="assessRef" />
|
|
|
+ </div>
|
|
|
</div>
|
|
|
|
|
|
<div class="btn">
|
|
@@ -225,10 +242,12 @@ export default {
|
|
|
fileTitle: "",
|
|
|
titleChange: ""
|
|
|
},
|
|
|
- rules: {
|
|
|
+ rules1: {
|
|
|
selectedTerm: [
|
|
|
{ required: true, message: "请选择标准术语", trigger: "change" }
|
|
|
- ],
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ rules: {
|
|
|
fileTitle: [
|
|
|
{ required: true, message: "请输入标题名称", trigger: "change" },
|
|
|
{
|
|
@@ -637,51 +656,70 @@ export default {
|
|
|
let fvalidate = new Promise((resolve, reject) => {
|
|
|
//wanglei 添加promise
|
|
|
this.$refs.groups.validate((valid) => {
|
|
|
- if (!valid) {
|
|
|
- console.log("ffffff");
|
|
|
+ console.log("valid", valid);
|
|
|
+ if (valid) {
|
|
|
+ resolve();
|
|
|
+ } else {
|
|
|
+ console.log("???????!!!");
|
|
|
reject("f");
|
|
|
return false;
|
|
|
- } else {
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
+ let fvalidate1 = new Promise((resolve, reject) => {
|
|
|
+ //wanglei 添加promise
|
|
|
+ this.$refs.groups1.validate((valid) => {
|
|
|
+ console.log("valid1", valid);
|
|
|
+ if (valid) {
|
|
|
resolve();
|
|
|
+ } else {
|
|
|
+ console.log("???????!!!");
|
|
|
+ reject("f");
|
|
|
+ return false;
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
|
|
|
- // 三个表单校验,需全部通过后让goOn outIsVia 为true;
|
|
|
- let all = [fvalidate];
|
|
|
+ // end....
|
|
|
+ //验证段落表单
|
|
|
+ // return;
|
|
|
+ let viewHeight = 0; // 定位到表单校验的高度
|
|
|
+ let viewHeightArr = []; // 表单校验出错高度的所有数组
|
|
|
+ let fvalidate3 = null;
|
|
|
+ if (this.form.typeId !== 82 && this.form.typeId !== 83) {
|
|
|
+ fvalidate3 = new Promise((resolve, reject) => {
|
|
|
+ for (let i = 0; i < this.$refs.subForm.length; i++) {
|
|
|
+ it = this.$refs.subForm[i];
|
|
|
+ viewHeight += it.$el.offsetHeight;
|
|
|
+ it.$refs.form.validate((valid) => {
|
|
|
+ if (!valid) {
|
|
|
+ reject("f");
|
|
|
+ goOn = false;
|
|
|
+ viewHeightArr.push(viewHeight);
|
|
|
+ } else {
|
|
|
+ resolve();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ // 表单验证
|
|
|
+ let all = [fvalidate, fvalidate1, fvalidate3];
|
|
|
if (this.$refs.assessRef) {
|
|
|
- // all.push(...this.$refs.assessRef.assessCommit());
|
|
|
- console.log("??????");
|
|
|
- all = [...this.$refs.assessRef.assessCommit(), fvalidate];
|
|
|
+ all.push(...this.$refs.assessRef.assessCommit());
|
|
|
}
|
|
|
await Promise.all(all)
|
|
|
.then(() => {})
|
|
|
.catch((err) => {
|
|
|
- // console.log("err", err);
|
|
|
- // if (err == "f") {
|
|
|
- // this.tabActive = "one";
|
|
|
- // } else if (err == "c") {
|
|
|
- // this.tabActive = "two";
|
|
|
- // }
|
|
|
+ // 跳转到未校验通过的tab页
|
|
|
+ if (err == "f") {
|
|
|
+ this.tabActive = "one";
|
|
|
+ } else if (err == "c") {
|
|
|
+ this.tabActive = "two";
|
|
|
+ }
|
|
|
goOn = false;
|
|
|
outIsVia = false;
|
|
|
});
|
|
|
- // end....
|
|
|
- //验证段落表单
|
|
|
- let viewHeight = 0; // 定位到表单校验的高度
|
|
|
- let viewHeightArr = []; // 表单校验出错高度的所有数组
|
|
|
- if (this.form.typeId !== 82 && this.form.typeId !== 83) {
|
|
|
- for (let i = 0; i < this.$refs.subForm.length; i++) {
|
|
|
- it = this.$refs.subForm[i];
|
|
|
- viewHeight += it.$el.offsetHeight;
|
|
|
- it.$refs.form.validate((valid) => {
|
|
|
- if (!valid) {
|
|
|
- goOn = false;
|
|
|
- viewHeightArr.push(viewHeight);
|
|
|
- }
|
|
|
- });
|
|
|
- }
|
|
|
- }
|
|
|
// console.log(viewHeightArr,'viewHeightArr');
|
|
|
if (!goOn) {
|
|
|
var div = this.$refs["elscrollbar"].$refs["wrap"];
|
|
@@ -757,6 +795,7 @@ export default {
|
|
|
|
|
|
// console.log("param-------");
|
|
|
// console.dir(param);
|
|
|
+ // return;
|
|
|
if (!this.isEdit) {
|
|
|
// 新增页面
|
|
|
this.saveDisable = true;
|