cloud-web-corejs 1.0.53 → 1.0.54-dev.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,189 @@
1
+ <template>
2
+ <el-dialog
3
+ custom-class="dialog-style list-dialog"
4
+ title="流程单据定义"
5
+ :visible.sync="dialogVisible"
6
+ :show-close="!0"
7
+ :append-to-body="false"
8
+ :modal="false"
9
+ :close-on-click-modal="!1"
10
+ :close-on-press-escape="!1"
11
+ :destroy-on-close="!0"
12
+ width="1220px"
13
+ top="5vh"
14
+ v-dialog-drag
15
+ @close="closeDialog"
16
+ >
17
+ <div class="cont">
18
+ <el-form ref="editForm" :model="formData">
19
+ <el-table
20
+ ref="singleTable"
21
+ width="100%"
22
+ :data="formData.wfObjConfigDTOs"
23
+ height="500"
24
+ border=""
25
+ row-key="columnId"
26
+ stripe=""
27
+ >
28
+ <el-table-column type="index" width="35" fixed="left"></el-table-column>
29
+ <el-table-column :label="i18nt('表单类型名称')" width="150" prop="objTypeName">
30
+ <template slot-scope="scope">
31
+ <el-form-item :prop="'wfObjConfigDTOs.'+scope.$index+'.objTypeName'"
32
+ :rules="[{ required: true, trigger: 'blur' }]">
33
+ <el-input v-model="scope.row.objTypeName"></el-input>
34
+ </el-form-item>
35
+ </template>
36
+ </el-table-column>
37
+ <el-table-column :label="i18nt('组织名称')" width="150" prop="companyCode">
38
+ <template slot-scope="scope">
39
+ {{ scope.row.companyName }}
40
+ </template>
41
+ </el-table-column>
42
+ <el-table-column :label="i18nt('表单类型编码')" width="200" prop="objTypeCode"></el-table-column>
43
+ <el-table-column :label="i18nt('服务名')" width="150" prop="serviceId"></el-table-column>
44
+ <el-table-column :label="i18nt('designer.setting.actionColumn')" width="100" align="center">
45
+ <template #header>
46
+ <span>{{ i18nt('designer.setting.actionColumn') }}</span>
47
+ <el-button :title="i18nt('designer.setting.addTableColumn')" size="mini" type="" circle=""
48
+ icon="el-icon-plus" @click="openCompanyDialog"></el-button>
49
+ </template>
50
+ <template slot-scope="scope">
51
+ <el-button
52
+ :title="i18nt('designer.setting.deleteTableColumn')"
53
+ size="mini"
54
+ type=""
55
+ circle=""
56
+ icon="el-icon-minus"
57
+ @click="formData.wfObjConfigDTOs.splice(scope.$index,1)"
58
+ ></el-button>
59
+ </template>
60
+ </el-table-column>
61
+
62
+ </el-table>
63
+ </el-form>
64
+ </div>
65
+ <div class="dialog-footer" slot="footer">
66
+ <el-button @click="closeDialog" class="button-sty" icon="el-icon-close">
67
+ {{ i18nt('designer.hint.cancel') }}
68
+ </el-button>
69
+ <el-button type="primary" @click="saveData" class="button-sty" icon="el-icon-check">
70
+ {{ i18nt('designer.hint.confirm') }}
71
+ </el-button>
72
+ </div>
73
+ <companyInfoDialog v-if="showCompanyInfoDialog" :visiable.sync="showCompanyInfoDialog"
74
+ @confirm="confirmCompanyDialog" multi="false"/>
75
+ </el-dialog>
76
+ </template>
77
+ <script>
78
+ import i18n from '../../../../components/xform/utils/i18n';
79
+ import companyInfoDialog from "@base/views/user/company_info/dialog.vue";
80
+
81
+ export default {
82
+ components: {companyInfoDialog},
83
+ props: ['formTemplate'],
84
+ mixins: [i18n],
85
+ data() {
86
+ return {
87
+ dialogVisible: true,
88
+ formData: {
89
+ objTypeCode: null,
90
+ wfObjConfigDTOs: []
91
+ },
92
+ operateIndex: 0,
93
+ showCompanyInfoDialog: false
94
+ }
95
+ },
96
+ created() {
97
+
98
+ },
99
+ mounted() {
100
+ this.formData.objTypeCode = this.formTemplate.objTypeCode;
101
+ this.getListByObjTypeCode();
102
+ },
103
+ methods: {
104
+ getListByObjTypeCode(callback) {
105
+ let formTemplate = this.formTemplate
106
+ this.$http({
107
+ url: `/${formTemplate.serviceName}/wf_obj_config/listByObjTypeCode`,
108
+ method: `post`,
109
+ data: {
110
+ stringOne: formTemplate.objTypeCode
111
+ },
112
+ isLoading: true,
113
+ success: res => {
114
+ let rows = res.objx || [];
115
+ this.formData.wfObjConfigDTOs = rows;
116
+ callback && callback(rows)
117
+ }
118
+ });
119
+ },
120
+ saveData() {
121
+ this.$refs.editForm.$baseValidate(valid => {
122
+ if (valid) {
123
+ this.$baseConfirm(this.$t1('您确定要保存吗?')).then(() => {
124
+ var url = `/${this.formTemplate.serviceName}/wf_obj_config/saveUpdates`;
125
+ this.$http({
126
+ url: url,
127
+ method: `post`,
128
+ data: this.formData,
129
+ isLoading: true,
130
+ success: res => {
131
+ this.$message({
132
+ message: res.content,
133
+ type: 'success',
134
+ duration: 1000
135
+ });
136
+ this.getListByObjTypeCode(rows => {
137
+ this.$emit('confirm', rows)
138
+ this.closeDialog();
139
+ })
140
+ }
141
+ });
142
+ });
143
+ }
144
+ });
145
+ },
146
+ addItem() {
147
+ let formTemplate = this.formTemplate;
148
+ let row = {
149
+ objTypeCode: formTemplate.objTypeCode,
150
+ objTypeName: formTemplate.objTypeName,
151
+ serviceId: formTemplate.serviceName,
152
+ url: "form",
153
+ companyCode: null,
154
+ companyName: null
155
+ }
156
+ this.formData.wfObjConfigDTOs.push(row);
157
+ },
158
+ closeDialog() {
159
+ this.dialogVisible = false;
160
+ this.$emit("update:visiable", false);
161
+ },
162
+ openCompanyDialog() {
163
+ this.showCompanyInfoDialog = true;
164
+ },
165
+ confirmCompanyDialog(rows) {
166
+ if (rows.length) {
167
+ let row = rows[0];
168
+ let formTemplate = this.formTemplate;
169
+ if (!this.formData.wfObjConfigDTOs.find(item => item.companyCode == row.companyCode)) {
170
+ let newrow = {
171
+ objTypeCode: formTemplate.objTypeCode,
172
+ objTypeName: formTemplate.formName,
173
+ serviceId: formTemplate.serviceName,
174
+ url: "form",
175
+ companyCode: row.companyCode,
176
+ companyName: row.companyName
177
+ }
178
+ this.formData.wfObjConfigDTOs.push(newrow);
179
+ }
180
+ }
181
+ }
182
+ }
183
+ }
184
+ </script>
185
+
186
+
187
+ <style scoped>
188
+
189
+ </style>