Explorar el Código

Merge branch 'dev' of http://110.41.163.243:9980/kd-aiot/kd-aiot-frontend into dev

liujt hace 1 mes
padre
commit
f297b6f1af

+ 10 - 0
.claude/settings.local.json

@@ -0,0 +1,10 @@
+{
+  "permissions": {
+    "allow": [
+      "Bash(git checkout *)",
+      "Bash(python *)",
+      "Bash(node *)",
+      "Bash(xargs grep *)"
+    ]
+  }
+}

+ 9 - 1
src/views/bpm/model/index.vue

@@ -86,6 +86,12 @@
         <el-form-item label="流程描述" prop="description">
           <el-input type="textarea" v-model="form.description" clearable/>
         </el-form-item>
+        <el-form-item label="自动跳过审批" prop="autoSkipApprove">
+          <el-radio-group v-model="form.autoSkipApprove">
+            <el-radio :label="1">是</el-radio>
+            <el-radio :label="0">否</el-radio>
+          </el-radio-group>
+        </el-form-item>
         <div v-if="form.id">
           <el-form-item label="表单路由" prop="formCustomCreatePath">
             <el-input v-model="form.formCustomCreatePath" placeholder="请按格式输入表单路由" style="width: 330px;"
@@ -238,6 +244,7 @@ export default {
         key: [{required: true, message: "流程标识不能为空", trigger: "blur"}],
         name: [{required: true, message: "流程名称不能为空", trigger: "blur"}],
         processTypeId: [{required: true, message: "流程分类不能为空", trigger: "change"}],
+        autoSkipApprove: [{required: true, message: "请选择是否自动跳过审批", trigger: "change"}],
       },
       pageSize: this.$store.state.tablePageSize,
       cacheKeyUrl: '05790f5b-bpm-model'
@@ -310,7 +317,8 @@ export default {
         formType: undefined,
         formId: undefined,
         formCustomCreatePath: undefined,
-        formCustomViewPath: undefined
+        formCustomViewPath: undefined,
+        autoSkipApprove: 0
       };
       console.log(this.$refs.form);
       this.$refs.form.resetFields();

+ 16 - 1
src/views/bpm/taskAssignRule/taskAssignRuleDialog.vue

@@ -116,7 +116,11 @@
             />
           </el-select>
         </el-form-item>
-        <el-form-item v-if="form.typeS === 10" label="指定角色" prop="roleIds">
+        <el-form-item
+          v-if="form.typeS === 10 || form.typeS === 11"
+          label="指定角色"
+          prop="roleIds"
+        >
           <el-select
             v-model="form.roleIds"
             multiple
@@ -604,6 +608,8 @@
           let res = row.variableName ? JSON.parse(row.variableName) : {};
           this.$set(this.form, 'direction', res.direction);
           this.$set(this.form, 'topLevel', res.topLevel);
+        } else if (row.type === 11) {
+          this.form.roleIds.push(...row.options);
         }
         this.open = true;
       },
@@ -639,6 +645,8 @@
                 direction: form.direction,
                 topLevel: form.topLevel
               });
+            } else if (form.type === 11) {
+              form.options = form.roleIds;
             }
             form.roleIds = undefined;
             form.deptIds = undefined;
@@ -739,6 +747,7 @@
         this.resetForm('taskAssignRuleForm');
       },
       getAssignRuleOptionName(row, option) {
+        console.log('row', row, option);
         if (row.type === 10) {
           for (const roleOption of this.roleOptions) {
             if (roleOption.id === option) {
@@ -791,6 +800,12 @@
         } else if (row.type === 80) {
           let data = JSON.parse(row.variableName);
           return topLevel3.find((item) => item.value == data.topLevel)?.label;
+        } else if (row.type === 11) {
+          for (const roleOption of this.roleOptions) {
+            if (roleOption.id === option) {
+              return roleOption.name;
+            }
+          }
         }
         return '未知(' + option + ')';
       },

+ 17 - 1
src/views/material/BOMmanage/components/workmanship.vue

@@ -58,7 +58,7 @@
         :columns="columns"
         :datasource="datasource"
         :need-page="false"
-        row-key="id"
+        :row-key="getRowKey"
       >
         <!-- 表头工具栏 -->
         <!-- <template v-slot:toolbar>
@@ -465,6 +465,12 @@
       };
     },
     methods: {
+      getRowKey(row) {
+        if (row && row._rowKey != null) return row._rowKey;
+        if (row && row.id != null) return String(row.id);
+        if (row && row.code != null) return 'c_' + row.code;
+        return '';
+      },
       // 单个工步数据保存
       saveWorking(row) {
         if (!row.name) {
@@ -677,6 +683,16 @@
               (it, ie) => Number(it.sort) - Number(ie.sort)
             );
           }
+          dataList.forEach((item, idx) => {
+            if (item._rowKey == null) {
+              item._rowKey =
+                (item.id != null ? 'id_' + item.id : 'idx_' + idx) +
+                '_' +
+                (item.code != null ? item.code : 'nocode') +
+                '_' +
+                idx;
+            }
+          });
 
           return dataList;
 

+ 2 - 0
vue.config.js

@@ -36,6 +36,7 @@ module.exports = {
         // target: 'http://192.168.1.158:18086',
         // target: 'http://192.168.1.176:18086',
         target: 'http://192.168.1.125:18086',
+        // target: 'http://192.168.1.251:51005',
         // target: 'http://192.168.1.251:18186',
         // target: 'http://192.168.1.251:18086',
         // target: 'http://192.168.1.251:18186',
@@ -48,6 +49,7 @@ module.exports = {
         // target: 'http://192.168.1.116:18086', // 赵沙金
         // target: 'http://aiot.zoomwin.com.cn:51001/api',
         // target: 'http://f222326r53.imwork.net',
+        // target: 'http://aiot.zoomwin.com.cn:51005/api',
 
         changeOrigin: true, // 只有这个值为true的情况下 才表示开启跨域
         pathRewrite: {