|
@@ -7,26 +7,127 @@
|
|
|
</template>
|
|
|
<div class="element-after-node">
|
|
|
<edit-item label="节点后操作" :label-width="100">
|
|
|
- <el-input
|
|
|
+ <!-- <el-input
|
|
|
v-model="afterNodeValue"
|
|
|
maxlength="32"
|
|
|
@change="updateBeforeNodeValue"
|
|
|
- />
|
|
|
+ /> -->
|
|
|
+ <el-button
|
|
|
+ icon="el-icon-edit"
|
|
|
+ type="info"
|
|
|
+ size="small"
|
|
|
+ @click="editHandler"
|
|
|
+ >
|
|
|
+ 编辑
|
|
|
+ </el-button>
|
|
|
</edit-item>
|
|
|
</div>
|
|
|
+ <el-dialog title="" :visible.sync="show" width="1200px">
|
|
|
+ <div class="main-wrap">
|
|
|
+ <div class="header"></div>
|
|
|
+ <div class="list-wrap">
|
|
|
+ <div class="left-wrap">
|
|
|
+ <el-descriptions title="表单字段信息" :column="1">
|
|
|
+ <el-descriptions-item
|
|
|
+ v-for="(item, index) in formItemsList"
|
|
|
+ :key="item.model"
|
|
|
+ :label="item.label"
|
|
|
+ :label-class-name="(index + 1) % 2 == 0 ? 'light' : 'deep'"
|
|
|
+ :content-class-name="(index + 1) % 2 == 0 ? 'light' : 'deep'"
|
|
|
+ >{{ item.model }}</el-descriptions-item
|
|
|
+ >
|
|
|
+ </el-descriptions>
|
|
|
+ <!-- <el-form ref="form" :rules="rules" :inline="true" size="small">
|
|
|
+ <el-form-item
|
|
|
+ v-for="item in formItemsList"
|
|
|
+ :key="item.model"
|
|
|
+ :label="item.label + ':'"
|
|
|
+ >
|
|
|
+ <el-input :disabled="true"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form> -->
|
|
|
+ </div>
|
|
|
+ <div class="center-wrap">
|
|
|
+ <!-- <el-form ref="form" :rules="rules" size="small">
|
|
|
+ <el-form-item v-for="item in formItemsList" :key="item.model">
|
|
|
+ <el-input :disabled="true"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form> -->
|
|
|
+ <el-descriptions title="同步表格字段" :column="1" :colon="false">
|
|
|
+ <el-descriptions-item
|
|
|
+ v-for="item in formItemsList"
|
|
|
+ :key="item.model"
|
|
|
+ >
|
|
|
+ <div class="item-wrap">
|
|
|
+ <div class="switch-wrap">
|
|
|
+ <el-switch
|
|
|
+ v-model="item.isRelated"
|
|
|
+ active-color="#13ce66"
|
|
|
+ inactive-color="#ff4949"
|
|
|
+ active-value="100"
|
|
|
+ inactive-value="0"
|
|
|
+ >
|
|
|
+ </el-switch>
|
|
|
+ </div>
|
|
|
+ <el-select clearable filterable @change="() => {}">
|
|
|
+ <el-option
|
|
|
+ v-for="item in []"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value"
|
|
|
+ >
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ </el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
+ </div>
|
|
|
+ <div class="right-wrap">
|
|
|
+ <!-- <el-form ref="form" :rules="rules" size="small">
|
|
|
+ <el-form-item v-for="item in formItemsList" :key="item.model">
|
|
|
+ <el-input :disabled="true"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form> -->
|
|
|
+ <el-descriptions title="默认值" :column="1" :colon="false">
|
|
|
+ <el-descriptions-item
|
|
|
+ v-for="item in formItemsList"
|
|
|
+ :key="item.model"
|
|
|
+ >
|
|
|
+ <el-input> </el-input>
|
|
|
+ </el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <template #footer>
|
|
|
+ <span>
|
|
|
+ <el-button @click="show = false">取消</el-button>
|
|
|
+ <el-button type="primary" @click="() => {}">确认</el-button>
|
|
|
+ </span>
|
|
|
+ </template>
|
|
|
+ </el-dialog>
|
|
|
</el-collapse-item>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import EventEmitter from "@utils/EventEmitter";
|
|
|
-import { setAfterNdoe, getAfterNdoe } from "@packages/bo-utils/myFieldUtil";
|
|
|
+import {
|
|
|
+ setAfterNdoe,
|
|
|
+ getAfterNdoe,
|
|
|
+ getFormKey,
|
|
|
+ setFormKey,
|
|
|
+} from "@packages/bo-utils/myFieldUtil";
|
|
|
import { getActive } from "@packages/bpmn-utils/BpmnDesignerUtils";
|
|
|
+import { getForm } from "@/api/dragform/form";
|
|
|
+import { getFormItems } from "@packages/bo-utils/getFormItems";
|
|
|
|
|
|
export default {
|
|
|
name: "ElementAfterNode",
|
|
|
data() {
|
|
|
return {
|
|
|
afterNodeValue: "",
|
|
|
+ show: false,
|
|
|
+ formItemsList: [],
|
|
|
};
|
|
|
},
|
|
|
|
|
@@ -43,6 +144,26 @@ export default {
|
|
|
updateBeforeNodeValue(value) {
|
|
|
setAfterNdoe(getActive(), value);
|
|
|
},
|
|
|
+ // 编辑回调
|
|
|
+ async editHandler() {
|
|
|
+ let fId = getFormKey(getActive());
|
|
|
+ if (!fId) {
|
|
|
+ this.$message.warning(`请在'常规信息'中绑定表单`);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ try {
|
|
|
+ let res = await getForm(fId);
|
|
|
+ if (res.code == 200) {
|
|
|
+ this.formItemsList = getFormItems(res.data.dfVueTemplate);
|
|
|
+ console.log(res);
|
|
|
+ } else {
|
|
|
+ this.$message.error("网络异常请稍后再试");
|
|
|
+ }
|
|
|
+ } catch (e) {
|
|
|
+ this.$message.error(e.message);
|
|
|
+ }
|
|
|
+ this.show = true;
|
|
|
+ },
|
|
|
},
|
|
|
};
|
|
|
</script>
|
|
@@ -51,4 +172,55 @@ export default {
|
|
|
display: flex;
|
|
|
padding-right: 25px;
|
|
|
}
|
|
|
+::v-deep(.deep) {
|
|
|
+ background-color: #7bdd4a;
|
|
|
+}
|
|
|
+.main-wrap {
|
|
|
+ width: 100%;
|
|
|
+ .header {
|
|
|
+ }
|
|
|
+ .list-wrap {
|
|
|
+ display: flex;
|
|
|
+ ::v-deep .el-descriptions__header {
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ }
|
|
|
+ .left-wrap {
|
|
|
+ width: 30%;
|
|
|
+ // ::v-deep(.el-descriptions-item__container) {
|
|
|
+ ::v-deep .el-descriptions-item__container {
|
|
|
+ // height: 36px;
|
|
|
+ & .deep {
|
|
|
+ background: #899c8b28;
|
|
|
+ }
|
|
|
+ .el-descriptions-item__label {
|
|
|
+ line-height: 36px;
|
|
|
+ margin-right: 0px !important;
|
|
|
+ }
|
|
|
+ .el-descriptions-item__content {
|
|
|
+ line-height: 36px;
|
|
|
+ padding-left: 10px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .center-wrap {
|
|
|
+ width: 30%;
|
|
|
+ ::v-deep .el-descriptions-item__container {
|
|
|
+ .item-wrap {
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ width: 100%;
|
|
|
+ .switch-wrap {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ margin-right: 10px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .right-wrap {
|
|
|
+ width: 30%;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
</style>
|