Эх сурвалжийг харах

Merge branch 'master' of http://62.234.61.92:3000/wjm/mec-cloud_IntelligentManufacturing_CLIENT

ZYZ 1 жил өмнө
parent
commit
d2c9595866
35 өөрчлөгдсөн 4226 нэмэгдсэн , 67 устгасан
  1. 1 1
      zkqy-ui/.env.development
  2. 3 0
      zkqy-ui/.env.production
  3. 6 0
      zkqy-ui/src/components/updateModule/k-form-design/packages/components/KFormDesign/index.vue
  4. 8 1
      zkqy-ui/src/components/updateModule/k-form-design/packages/components/KFormDesign/module/formItemProperties.vue
  5. 11 1
      zkqy-ui/src/components/updateModule/k-form-design/packages/components/KFormDesign/module/formProperties.vue
  6. 8 6
      zkqy-ui/src/layout/components/Sidebar/index.vue
  7. 2 2
      zkqy-ui/src/layout/index.vue
  8. 3 2
      zkqy-ui/src/utils/request.js
  9. 2 3
      zkqy-ui/src/views/bussiness/components/taskList.vue
  10. 95 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/GY2.vue
  11. 156 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/GongYi/GY01.vue
  12. 203 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/GongYi/GY02.vue
  13. 214 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/GongYi/GY03.vue
  14. 275 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/GongYi/GY06.vue
  15. 31 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/KongBai/KB01.vue
  16. 158 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/AssignEmployees.vue
  17. 236 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/NodeShow.vue
  18. 130 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/Notes.vue
  19. 637 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/PersonalDistribution.vue
  20. 130 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/Print.vue
  21. 638 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/ProductionProcesses.vue
  22. 256 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/RecordQuality.vue
  23. 157 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/ShengChan/SC01.vue
  24. 151 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/ZhiLiang/ZL1.vue
  25. 146 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/test-component/CaiGou/CG02.vue
  26. 168 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/test-component/CaiGou/CG1.vue
  27. 192 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/test-component/KuCun/KC02.vue
  28. 86 0
      zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/test-component/KuCun/KC1.vue
  29. 78 11
      zkqy-ui/src/views/bussiness/processMange.vue
  30. 12 8
      zkqy-ui/src/views/bussiness/progressShow.vue
  31. 1 1
      zkqy-ui/src/views/index.vue
  32. 4 4
      zkqy-ui/src/views/login.vue
  33. 2 2
      zkqy-ui/src/views/system/role/index.vue
  34. 23 23
      zkqy-ui/src/views/tablelist/components/cardCountPanel.vue
  35. 3 2
      zkqy-ui/vue.config.js

+ 1 - 1
zkqy-ui/.env.development

@@ -11,5 +11,5 @@ VUE_APP_BASE_API = '/dev-api'
 VUE_CLI_BABEL_TRANSPILE_MODULES = true
 
 #本项目地址
-VUE_APP_BASE_API1 = 'http://192.168.110.83:8066/'
+VUE_APP_BASE_API1 = 'http://192.168.110.59:8066/'
 

+ 3 - 0
zkqy-ui/.env.production

@@ -7,6 +7,9 @@ ENV = 'production'
 #管理系统/生产环境
 VUE_APP_BASE_API = '/prod-api'
 
+# 生产环境
+VUE_APP_BASE_API1 = 'http://62.234.61.92:8066/'
+
 
 
 #数据引擎模块IP

+ 6 - 0
zkqy-ui/src/components/updateModule/k-form-design/packages/components/KFormDesign/index.vue

@@ -152,6 +152,8 @@ import { Modal, message } from "ant-design-vue";
 import { revoke, nodeSchema } from "../../utils/index";
 import formItemProperties from "./module/formItemProperties";
 import formProperties from "./module/formProperties";
+import { black } from '@/components/updateModule/bpmn-js/lib/draw/BpmnRenderUtil'
+
 
 export default {
   name: "KFormDesign",
@@ -520,8 +522,12 @@ export default {
     }
   },
   created() {
+    let blackList=['评分','警告提示','HTML','富文本','按钮']
     this.loadState = true;
     nodeSchema.addComputed(this.schemaGroup);
+    this.schemaGroup[0].list = this.schemaGroup[0].list.filter(item => {
+      return !blackList.some(v=>v==item.label)
+    })
   }
 };
 </script>

+ 8 - 1
zkqy-ui/src/components/updateModule/k-form-design/packages/components/KFormDesign/module/formItemProperties.vue

@@ -31,7 +31,7 @@
               :key="item.tableName"
               :label="item.tableComment"
               :value="item.tableName">
-              <span style="float: left">{{ item.tableComment }}</span>
+              <span class="discribe" style="float: left">{{ item.tableComment }}</span>
       <span style="float: right; color: #8492a6; font-size: 13px">{{ item.tableName }}</span>
             </el-option>
           </el-select>
@@ -768,5 +768,12 @@ export default {
   align-items: center;
 
 }
+.discribe{
+  display: block;
+  max-width: 200px;
+  white-space:nowrap;
+  overflow:hidden;
+  text-overflow:ellipsis;
+}
 
 </style>

+ 11 - 1
zkqy-ui/src/components/updateModule/k-form-design/packages/components/KFormDesign/module/formProperties.vue

@@ -22,7 +22,7 @@
               :key="item.tableName"
               :label="item.tableComment"
               :value="item.tableName">
-              <span style="float: left">{{ item.tableComment }}</span>
+              <span class="discribe" style="float: left">{{ item.tableComment }}</span>
       <span style="float: right; color: #8492a6; font-size: 13px">{{ item.tableName }}</span>
             </el-option>
           </el-select>
@@ -249,3 +249,13 @@ sessionStorage.setItem('sqlKey',sqlKey)
   
 };
 </script>
+
+<style lang="scss" scoped>
+.discribe{
+  display: block;
+  max-width: 200px;
+  white-space:nowrap;
+  overflow:hidden;
+  text-overflow:ellipsis;
+}
+</style>

+ 8 - 6
zkqy-ui/src/layout/components/Sidebar/index.vue

@@ -9,11 +9,9 @@
     }"
   >
     <logo v-if="showLogo" :collapse="isCollapse" />
-    <el-scrollbar 
-    :class="settings.sideTheme" 
-    wrap-class="scrollbar-wrapper"
-    >
+    <el-scrollbar :class="settings.sideTheme" wrap-class="scrollbar-wrapper">
       <el-menu
+        :default-openeds="openList"
         :default-active="activeMenu"
         :collapse="isCollapse"
         :background-color="
@@ -26,7 +24,7 @@
             ? variables.menuColor
             : variables.menuLightColor
         "
-        :unique-opened="true"
+        :unique-opened="false"
         :active-text-color="settings.theme"
         :collapse-transition="false"
         class="el-menu-vertical-demo"
@@ -68,6 +66,7 @@ export default {
       if (meta.activeMenu) {
         return meta.activeMenu;
       }
+      console.log(path);
       return path;
     },
     showLogo() {
@@ -81,6 +80,9 @@ export default {
       // return true
       // return false;
     },
+    openList() {
+      return this.sidebarRouters.map((item) => item.path);
+    },
   },
   methods: {
     onLayoutResize() {
@@ -94,7 +96,7 @@ export default {
         this.isCollapse = false;
       }
       console.log(this.isCollapse);
-    }
+    },
   },
   mounted() {
     // window.addEventListener("resize", this.onLayoutResize);

+ 2 - 2
zkqy-ui/src/layout/index.vue

@@ -5,8 +5,8 @@
       <el-row>
         <el-col :span="12">
           <span>
-            <!-- <img src="../assets/images/mec_logo1.png" alt="" class="imgg" /> -->
-            <img src="../assets/images/comlo.png" alt="" class="imgg" />
+            <img src="../assets/images/mec_logo1.png" alt="" class="imgg" />
+            <!-- <img src="../assets/images/comlo.png" alt="" class="imgg" /> -->
           </span>
         </el-col>
         <el-col :span="4" :offset="8">

+ 3 - 2
zkqy-ui/src/utils/request.js

@@ -95,8 +95,9 @@ service.interceptors.response.use(res => {
     }
     return Promise.reject('无效的会话,或者会话已过期,请重新登录。')
   } else if (code === 500) {
-    Message({ message: msg, type: 'error' })
-    return Promise.reject(new Error(msg))
+    // Message({ message: msg, type: 'error' })
+    // return Promise.reject(new Error(msg))
+    return Promise.resolve()
   } else if (code === 601) {
     Message({ message: msg, type: 'warning' })
     return Promise.reject('error')

+ 2 - 3
zkqy-ui/src/views/bussiness/components/taskList.vue

@@ -1,13 +1,12 @@
 <template>
   <div class="task-list-wrap">
     <div class="title-list">
-      <div class="title-item">
-        <!-- <span class="title-label">完成时间:</span> -->
+      <!-- <div class="title-item">
         <span class="title-label">序号:</span>
         <span class="title-content" style="font-size: 50px; color: red">{{
           num
         }}</span>
-      </div>
+      </div> -->
       <div class="title-item">
         <span class="title-label">任务号:</span>
         <span class="title-content">{{ baseInfo.benTaskProcessKey }}</span>

+ 95 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/GY2.vue

@@ -0,0 +1,95 @@
+<template>
+    <div class="app-container">
+        <el-form :model="form" :rules="rules" ref="form" label-width="100px" class="demo-form">
+            <el-form-item label="产品重量" prop="zl">
+              <el-input v-model.number="form.zl" @input="handleInput"></el-input>
+            </el-form-item>
+            <el-form-item label="选择产品" prop="cp">
+              <el-select v-model="form.cp" placeholder="请选择产品">
+                <el-option label="产品1" value="chanpin1"></el-option>
+                <el-option label="产品2" value="chanpin2"></el-option>
+                <el-option label="产品3" value="chanpin3"></el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item>
+                <el-button type="primary" @click="submitForm('form')">提交</el-button>
+                <el-button @click="resetForm('form')">重置</el-button>
+              </el-form-item>
+        </el-form>
+
+    </div>
+</template>
+<script>
+export default {
+  name: "GY1",
+  props: [],
+  components: {},
+  data() {
+    return {
+        form: {
+            zl: '',
+            cp:''
+        },
+        rules: {
+            zl: [
+                { required: true, message: '请输入产品重量', trigger: 'blur' },
+                { type: 'number', message: '重量必须为数字值',trigger: 'blur' }
+            ],
+            cp: [
+                { required: true, message: '请选择产品', trigger: 'change' },
+            ]
+        }
+    }
+  },
+  methods:{
+    submitForm(formName) {
+        this.$refs[formName].validate((valid) => {
+          if (valid) {
+            alert('submit!');
+          } else {
+            console.log('error submit!!');
+            return false;
+          }
+        });
+      },
+      resetForm(formName) {
+        this.$refs[formName].resetFields();
+      },
+      handleInput() {
+        if (!/^[1-9]\d*$/.test(this.form.zl)) {
+            this.$message.error('请输入正整数!');
+        }
+      },
+      async getFormData() {
+        let formData = {
+          flag: false,
+          msg: "",
+        };
+        try {
+          let valid = await this.$refs.reluForm.validate();
+          if (valid) {
+            formData.flag = true;
+            formData.data = this.reluForm;
+            formData.msg = "表单校验成功";
+            return formData;
+          } else {
+            formData.msg = "表单校验异常,请规范填写表单数据";
+            return formData;
+          }
+        } catch (error) {
+          // console.log(error);
+          formData.msg = "表单校验异常,请规范填写表单数据";
+          return formData;
+        }
+      },
+  },
+}
+</script>
+<style lang="scss" scoped>
+.app-container {
+  margin-top: 20px;
+  .el-input__inner {
+    width: 20px;
+  }
+}
+</style>

+ 156 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/GongYi/GY01.vue

@@ -0,0 +1,156 @@
+<template>
+  <div class="form-wrap">
+    <el-form
+      :model="form"
+      ref="form"
+      :rules="rules"
+      label-width="100px"
+      :inline="false"
+      size="normal"
+    >
+      <el-form-item prop="name" label="选择货品:">
+        <el-select
+          v-model="form.goodsID"
+          placeholder="请选择货品"
+          clearable
+          filterable
+        >
+          <el-option
+            v-for="item in []"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          >
+          </el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item prop="yield" label="生产重量:">
+        <!-- <el-input v-model="form.yield" type="number"></el-input> -->
+        <el-input-number
+          v-model="form.yield"
+          :min="0"
+          label="请输入生产重量"
+        ></el-input-number>
+      </el-form-item>
+      <!-- <el-form-item prop="remark" label="备注信息:">
+        <el-input v-model="form.remark"></el-input>
+      </el-form-item> -->
+    </el-form>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "GY01",
+  props: ["formData", "row"],
+  components: {},
+  data() {
+    return {
+      form: {
+        name: "",
+        number: "",
+        remark: "",
+        yield: "",
+      },
+      isEdite: false,
+      rules: {
+        name: [{ required: true, message: "请输入姓名", trigger: "blur" }],
+        number: [
+          { required: true, message: "请输入运行数量", trigger: "blur" },
+        ],
+        remark: [
+          { required: true, message: "请输入备注信息", trigger: "blur" },
+        ],
+      },
+    };
+  },
+  computed: {
+    myFormData() {
+      return this.formData;
+    },
+  },
+  watch: {
+    myFormData: {
+      handler(nval) {
+        this.form = nval.resultMap;
+        this.isEdite = this.form.id ? true : false;
+      },
+      deep: true,
+      immediate: true,
+    },
+  },
+  methods: {
+    async submitHandler() {
+      let res = await this.$refs.form?.validate();
+      if (res) {
+        let payLoad = {};
+        let { ycl, zl } = this.form;
+        if (this.isEdit) {
+          let { taskKey, taskNodeKey } = this.myFormData.resultMap;
+          payLoad.updateCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "kucun",
+              },
+              conditionMap: {
+                task_key: taskKey,
+                task_node_key: taskNodeKey,
+              },
+              commMap: {
+                ycl,
+                zl,
+              },
+            },
+          ];
+        } else {
+          payLoad.insertCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "kucun",
+              },
+              addListMap: [
+                {
+                  ycl,
+                  zl,
+                  taskKey: this.row.benTaskProcessKey,
+                  taskNodeKey: this.row.benTaskNodeKey,
+                },
+              ],
+            },
+          ];
+        }
+        submitNodeForm(payLoad).then((response) => {
+          if (response.code == 200) {
+            this.$modal.msgSuccess("保存成功");
+          } else {
+            this.$modal.error("保存失败,请稍后再试");
+          }
+        });
+      }
+    },
+    async getFormData() {
+      let formData = {
+        flag: false,
+        msg: "",
+      };
+      try {
+        let valid = await this.$refs.form.validate();
+        if (valid) {
+          formData.flag = true;
+          formData.data = this.form;
+          return formData;
+        } else {
+          formData.msg = "表单校验异常,请规范填写表单数据";
+          return formData;
+        }
+      } catch (error) {
+        // console.log(error);
+        formData.msg = "表单校验异常,请规范填写表单数据";
+        return formData;
+      }
+    },
+  },
+};
+</script>
+
+<style scoped></style>

+ 203 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/GongYi/GY02.vue

@@ -0,0 +1,203 @@
+<template>
+  <div class="app-container">
+    <div class="leftMessage">
+      <div class="list" v-for="(item, index) in baseMessage" :key="index">
+        <span class="titile" style="background:rgb(52,191,163); color:white;"> {{ item.title}} </span>
+        <span class="content" style="background:rgb(235,237,242); color:rgb(232,83,152);"> {{ item.content}} </span>
+      </div>
+      <div class="content"></div>
+    </div>
+    <div class="rightMessage">
+      <div class="top">       
+        <div class="state">
+          <div class="list">
+            <span>工序状态:</span>
+            <p>初始</p>
+          </div>
+          <div class="list">
+            <span>是否外协:</span>
+            <p>初始</p>
+          </div>
+        </div>    
+      </div>
+      <div class="button">
+        <el-button-group>
+          <el-button type="primary" icon="el-icon-video-play" plain round>开始</el-button>
+          <el-button type="danger" icon="el-icon-video-pause" plain>暂停</el-button> 
+          <el-button type="success" icon="el-icon-circle-check" plain>完成</el-button> 
+          <el-button type="info" icon="el-icon-refresh" plain round>重置</el-button>       
+ 
+        </el-button-group>
+
+      </div>
+      <div class="middle">
+        <el-table :data="tableData2" border >
+          <el-table-column>
+            
+          </el-table-column>
+        </el-table>
+        <div class="name">人员及工时分配</div>       
+        <el-table :data="tableData1" border ref="addTableRowRef">
+          <el-table-column label="人员姓名">
+            <template slot-scope="scope">
+              <el-input v-model="scope.row.name"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column label="分配工时">
+            <template slot-scope="scope">
+              <el-input-number v-model="scope.row.time" controls-position="right" @change="handleChange" :min="0.25" :max="8" :step="0.25"></el-input-number>
+            </template>
+          </el-table-column>
+          <el-table-column label="操作" width="120" align="center">
+            <template slot-scope="scope">
+              <el-button
+              icon="el-icon-delete"
+              size="mini"
+              @click="deleteTableRow(scope.row)"
+              >删除</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+        <div class="block">
+          <el-pagination
+            layout="prev, pager, next"
+            :total="50">
+          </el-pagination>
+        </div>
+        <el-button size="mini" icon="el-icon-plus" type="primary" @click="addTableRow">新 增</el-button>
+        <el-button size="mini" icon="el-icon-check" type="success" @click="saveTableRow(newRow)">保 存</el-button>
+      </div>
+      <div class="footer">
+       <div class="total">
+        <span>当前工序总工时: 10</span>
+        <span>当前已分配工时: 10</span>
+        <span>当前剩余工时: 10</span>
+       </div>
+      </div>
+    </div>
+    
+  </div>
+</template>
+<script>
+export default {
+  name: 'GY02',
+  data() {
+    return {
+      tableData1: [],
+      tableData2: [],
+      newRow: {},
+      baseMessage: [
+        { title:'任务', content:'47as04-51-1238'},
+        { title:'图号', content:'1CG12-38'},
+        { title:'名称', content:'支架'},
+        { title:'数量', content:'1'},
+        { title:'工艺', content:'1'},
+        { title:'质控', content:'1'},
+      ]
+    }
+  },
+  methods: {
+    addTableRow() {
+      const newRow = {
+          name: '',
+          time: 0.25,
+      };  
+      this.tableData1.push(newRow);       
+    },
+    deleteTableRow(row) {
+      const index = this.tableData1.indexOf(row);
+      if (index !== -1) {
+        this.tableData1.splice(index, 1);
+      }
+    },
+    saveTableRow(tableData1) {
+      let item = '';
+      for(let i = 0; i < this.tableData1.length; i++) {
+        item += tableData1[i]
+      }
+      this.tableData2 = this.item;
+      this.tableData1 = [];
+    },
+    handleChange(value) {
+      console.log(value);
+    }
+
+  },
+}
+</script>
+
+<style lang="scss" scoped>
+.app-container {
+  display: flex;
+  flex-direction: row;
+  justify-content: space-between;
+  .leftMessage {
+    display: flex;
+    flex-direction: column;
+    width: 180px;
+    .list {
+      padding: 10px 0px ;
+      span {  
+        border-radius: 10px;
+        padding: 5px;
+        margin-right: 10px;
+      }
+    }
+    
+  }
+  .rightMessage {
+    display: flex;
+    width: 500px;
+    flex-direction: column;
+    .top {
+      background: #53B0F8;
+      color: white;
+      height: 60px;
+      .state {
+        display: flex;
+        flex-direction: row;
+        padding: 10px 20px;
+        span {
+          padding-right: 150px;
+        }
+        p {
+          padding-top: 5px;
+          font-size: 10px;
+        }
+      }
+    }
+    .button {
+      width: 100%;
+      padding: 20px 0px;
+      .el-button {
+        width: 140px;
+        background: none;
+
+      }
+      .el-button--info {
+        width: 80px;
+      }
+    }
+    .middle {
+      .name {
+        color: black;
+        font-weight: bold;
+        text-align: center;
+        padding: 10px 0px;
+      }
+      .block {
+        text-align: center;
+      }
+    }
+    .footer {
+      display: inline-block;
+      flex-direction: row;
+      margin-top: 10px;
+      span {
+        font-weight: bold;
+        color: black;
+      }
+    }
+  }
+}
+</style>

+ 214 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/GongYi/GY03.vue

@@ -0,0 +1,214 @@
+<template>
+  <div class="form-wrap">
+    <el-form
+      :model="form"
+      ref="form"
+      :rules="rules"
+      label-width="100px"
+      :inline="true"
+      size="normal"
+      class="form-body-wrap"
+    >
+      <el-form-item prop="material" label="材料:">
+        <el-select
+          v-model="form.material"
+          placeholder="请选择材料"
+          clearable
+          filterable
+        >
+          <el-option
+            v-for="item in myFormData.resultMap.caiLiao"
+            :key="item.materialId"
+            :label="item.materialName"
+            :value="item.materialId"
+          >
+          </el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item prop="technology" label="工艺:">
+        <!-- <el-input v-model="form.yield" type="number"></el-input> -->
+        <el-select
+          v-model="form.technology"
+          placeholder="请选择工艺"
+          clearable
+          filterable
+        >
+          <el-option
+            v-for="item in myFormData.resultMap.gongyi"
+            :key="item.id"
+            :label="item.stepName"
+            :value="item.id"
+          >
+          </el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item label="生产数量" prop="productionQuantity">
+        <el-col :span="10">
+          <!-- <el-input
+            onkeypress="return( /[\d]/.test(String.fromCharCode(event.keyCode)))"
+            v-model="form.productionQuantity"
+            placeholder="请输入生产数量"
+            size="normal"
+            clearable
+          ></el-input> -->
+          <el-input-number
+            v-model="form.productionQuantity"
+            controls-position="right"
+            :min="0"
+          />
+        </el-col>
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" size="default" @click="submitHanfler"
+          >确认提交</el-button
+        >
+      </el-form-item>
+
+      <!-- <el-form-item prop="remark" label="备注信息:">
+        <el-input v-model="form.remark"></el-input>
+      </el-form-item> -->
+    </el-form>
+  </div>
+</template>
+
+<script>
+import { submitNodeForm } from "@/api/bpmprocess/runDialogApi/index";
+export default {
+  name: "GY03",
+  props: ["formData", "row"],
+  components: {},
+  data() {
+    return {
+      realFormData: {},
+      form: {
+        material: "",
+        technology: "",
+        productionQuantity: 0,
+      },
+      rules: {
+        material: [
+          { required: true, message: "请选择材料", trigger: "change" },
+        ],
+        technology: [
+          { required: true, message: "请选择工艺", trigger: "change" },
+        ],
+        productionQuantity: [
+          { required: true, message: "请输入生产数量", trigger: "change" },
+        ],
+      },
+    };
+  },
+  watch: {
+    myFormData: {
+      handler(nval) {
+        this.realFormData = nval;
+      },
+      deep: true,
+      immediate: true,
+    },
+  },
+  computed: {
+    myFormData() {
+      return this.formData;
+    },
+    isEdit() {
+      return this.formData.resultMap?.id ? true : false;
+    },
+  },
+  methods: {
+    async getFormData() {
+      let res = {
+        flag: false,
+        msg: "",
+      };
+      try {
+        let valid = await this.$refs.form.validate();
+        if (valid) {
+          res.flag = true;
+          res.data = this.form;
+          return res;
+        } else {
+          res.msg = "表单校验异常,请规范填写表单数据";
+          return res;
+        }
+      } catch (error) {
+        // console.log(error);
+        res.msg = "表单校验异常,请规范填写表单数据";
+        return res;
+      }
+    },
+    resetForm() {
+      this.$refs.form.resetFields();
+    },
+    async submitHanfler() {
+      let res = await this.$refs.form?.validate();
+      if (res) {
+        let payLoad = {};
+        let { material, technology, productionQuantity } = this.form;
+        if (this.isEdit) {
+          payLoad.updateCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "productionrecords",
+              },
+              /* addListMap: [
+                {
+                  material_information: material,
+                  process_information: technology,
+                  actual_quantity: productionQuantity,
+                  taskKey: this.row.benTaskProcessKey,
+                  taskNodeKey: this.row.benTaskNodeKey,
+                },
+              ], */
+              conditionMap: {
+                taskKey: this.row.benTaskProcessKey,
+                taskNodeKey: this.row.benTaskNodeKey,
+              },
+              commMap: {
+                material_information: material,
+                process_information: technology,
+                actual_quantity: productionQuantity,
+              },
+            },
+          ];
+        } else {
+          payLoad.insertCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "productionrecords",
+              },
+              addListMap: [
+                {
+                  material_information: material,
+                  process_information: technology,
+                  actual_quantity: productionQuantity,
+                  taskKey: this.row.benTaskProcessKey,
+                  taskNodeKey: this.row.benTaskNodeKey,
+                },
+              ],
+            },
+          ];
+        }
+        submitNodeForm(payLoad).then((response) => {
+          if (response.code == 200) {
+            this.$modal.msgSuccess("保存成功");
+          } else {
+            this.$modal.msgSuccess("保存失败,请稍后再试");
+          }
+        });
+      }
+    },
+  },
+  mounted() {
+    this.resetForm();
+  },
+};
+</script>
+
+<style scoped lang="scss">
+.form-body-wrap {
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+}
+</style>

+ 275 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/GongYi/GY06.vue

@@ -0,0 +1,275 @@
+<template>
+  <div class="form-wrap">
+    <!-- <div class="cardwrap">
+      <div class="title-area">
+        <span><i class="el-icon-s-order mr5"></i>请选择工艺文件</span>
+        <div class="search ml10">
+          <el-input
+            v-model="search"
+            placeholder="请输入内容"
+            suffix-icon="el-icon-search"
+          ></el-input>
+        </div>
+      </div>
+      <div class="table-area">
+        <el-table :data="[]" border stripe>
+          <el-table-column type="index" width="50" />
+          <el-table-column
+            v-for="col in columns"
+            :prop="col.prop"
+            :key="col.prop"
+            :label="col.label"
+          >
+          </el-table-column>
+        </el-table>
+      </div>
+    </div>
+    <div class="cardwrap">
+      <div class="title-area">
+        <span><i class="el-icon-document mr5"></i>材料信息</span>
+      </div>
+      <div class="table-area">
+        <el-table :data="[]" border stripe>
+          <el-table-column type="index" width="50" />
+          <el-table-column
+            v-for="col in material"
+            :prop="col.prop"
+            :key="col.prop"
+            :label="col.label"
+          >
+          </el-table-column>
+        </el-table>
+      </div>
+    </div> -->
+    <div class="cardwrap">
+      <div class="title-area">
+        <span><i class="el-icon-help mr5"></i>工序</span>
+      </div>
+      <div class="node-list">
+        <div
+          :class="{
+            node: true,
+            currentNode: item.nodeId == currentNodeKey,
+          }"
+          v-for="(item, index) of nodeList"
+          :key="item.num"
+          @click="shiftNode(item)"
+        >
+          <span class="num">>{{ index + 1 }}</span>
+          <span class="title">{{ item.nodeInfo.name }}</span>
+          <span class="time">1分钟</span>
+        </div>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+import getNodeSequence from "@/utils/bpmn/getNodeSequence";
+import { xmlStr2XmlObj } from "@/utils/bpmn/xml";
+export default {
+  name: "GY01",
+  props: ["formData", "row"],
+  components: {},
+  data() {
+    return {
+      search: "",
+      nodeList: [],
+      currentNodeKey: "",
+      resFormData: {},
+      columns: [
+        {
+          label: "编号",
+          prop: "id",
+        },
+        {
+          label: "编者",
+          prop: "editor",
+        },
+        {
+          label: "时间",
+          prop: "time",
+        },
+      ],
+      material: [
+        {
+          label: "名称",
+          prop: "name",
+        },
+        {
+          label: "尺寸",
+          prop: "size",
+        },
+        {
+          label: "规格",
+          prop: "model",
+        },
+        {
+          label: "数量",
+          prop: "num",
+        },
+        {
+          label: "备注",
+          prop: "note",
+        },
+      ],
+    };
+  },
+  watch: {
+    myFormData: {
+      handler(val) {},
+      deep: true,
+      immediate: true,
+    },
+    myRow: {
+      handler(val) {
+        this.currentNodeKey = val.benTaskNodeKey;
+        if (val?.bepTaskProcessXmlContent) {
+          let nodeSequence = getNodeSequence(
+            xmlStr2XmlObj(val.bepTaskProcessXmlContent)
+          );
+          this.nodeList = nodeSequence
+            .slice(0, this.getIndexByNodeId(nodeSequence, this.currentNodeKey))
+            ?.filter((item) => item.nodeInfo.localName != "exceptionTask");
+          // this.nodeList = getNodeSequence(
+          //   xmlStr2XmlObj(val.bepTaskProcessXmlContent)
+          // )?.filter((item) => item.nodeInfo.localName != "exceptionTask");
+
+          //去掉开始和结束节点
+          this.nodeList.shift();
+          this.nodeList[this.nodeList.length - 1]?.nodeInfo.localName ==
+            "endEvent" && this.nodeList.pop();
+          console.log(this.nodeList);
+        }
+      },
+      deep: true,
+      immediate: true,
+    },
+  },
+  computed: {
+    myFormData() {
+      return this.formData;
+    },
+    myRow() {
+      return this.row;
+    },
+  },
+  methods: {
+    async getFormData() {
+      let formData = {
+        flag: false,
+        msg: "",
+      };
+
+      return {
+        flag: true,
+        data: this.resFormData,
+      };
+      // if(){}
+      // try {
+      //   let valid = await this.$refs.form.validate();
+      //   if (valid) {
+      //     formData.flag = true;
+      //     formData.data = this.form;
+      //     return formData;
+      //   } else {
+      //     formData.msg = "表单校验异常,请规范填写表单数据";
+      //     return formData;
+      //   }
+      // } catch (error) {
+      //   // console.log(error);
+      //   formData.msg = "表单校验异常,请规范填写表单数据";
+      //   return formData;
+      // }
+    },
+    async shiftNode(item) {
+      if (item.nodeId == this.currentNodeKey) return;
+      this.resFormData = {
+        taskProcessKey: this.row.bepTaskKey,
+        taskNodeKey: this.currentNodeKey,
+        taskBackNodeKey: item.nodeId,
+      };
+      this.currentNodeKey = item.nodeId;
+      // try {
+      //   let res = await this.$modal.confirm(
+      //     "是否确认切换流程至<" + item.nodeInfo.name + ">异常?"
+      //   );
+      //   console.log(res, item, this.row);
+      //   let payLoad = {
+      //     taskProcessKey: this.row.bepTaskKey,
+      //     taskNodeKey: this.currentNodeKey,
+      //     taskBackNodeKey: item.nodeId,
+      //   };
+      // } catch (error) {
+      //   this.$message.info("取消成功");
+      // }
+    },
+
+    getIndexByNodeId(nodeSequence, nodeId) {
+      return nodeSequence.findIndex((item) => item.nodeId == nodeId);
+    },
+  },
+};
+</script>
+
+<style scoped lang="scss">
+.form-wrap {
+  display: flex;
+  flex-direction: column;
+  width: 100%;
+
+  .cardwrap {
+    display: flex;
+    flex-direction: column;
+    width: 100%;
+    padding-bottom: 20px;
+    .title-area {
+      display: flex;
+      align-items: center;
+      padding-bottom: 5px;
+      font-size: 16px;
+      border-bottom: 2px solid rgba(0, 0, 0, 0.404);
+      box-sizing: border-box;
+    }
+    .table-area {
+      padding-top: 10px;
+    }
+    .node-list {
+      display: flex;
+      flex-wrap: wrap;
+      padding-top: 10px;
+      .node {
+        width: 33.3333%;
+        height: 50px;
+        display: flex;
+        align-items: center;
+        border-bottom: 1px dotted gray;
+        padding: 0 5px;
+        &:hover {
+          border: 1px dotted rgb(0, 195, 255);
+          background-color: rgba(70, 194, 231, 0.63);
+        }
+        .num {
+          color: #40c3a8;
+          font-size: 16px;
+          margin-right: 5px;
+        }
+        .title {
+          /* // color: #ececee34; */
+          font-size: 14px;
+          flex: 1;
+          /* // ma */
+        }
+        .time {
+          font-size: 12px;
+          color: rgba(48, 44, 44, 0.247);
+          margin-right: 10px;
+        }
+      }
+      .currentNode {
+        background-color: #7dec8f !important;
+      }
+    }
+  }
+}
+</style>

+ 31 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/KongBai/KB01.vue

@@ -0,0 +1,31 @@
+<template>
+  <div class="wrap">
+    <span class="content">暂无表单填写,请直接运行。</span>
+  </div>
+</template>
+
+<script>
+import { submitNodeForm } from "@/api/bpmprocess/runDialogApi/index";
+export default {
+  name: "KB01",
+  props: ["formData", "row"],
+  data() {
+    return {};
+  },
+
+  mounted() {},
+
+  methods: {
+    // 获取表单数据
+    async getFormData() {
+      return {
+        flag: true,
+        msg: "",
+        data: {},
+      };
+    },
+  },
+};
+</script>
+
+<style lang="scss" scoped></style>

+ 158 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/AssignEmployees.vue

@@ -0,0 +1,158 @@
+<template>
+  <div class="app-container">
+    <el-form
+      :model="form"
+      :rules="rules"
+      ref="form"
+      label-width="100px"
+      align="center"
+      :inline="false"
+      size="normal"
+    >
+      <el-form-item prop="teamId">
+        <el-select v-model="form.teamId">
+          <el-option
+            v-for="item in form.masterTeam"
+            :key="item.value"
+            :label="item.name"
+            :value="item.id"
+            :rules="rules"
+          >
+          </el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item>
+        <el-button
+          type="primary"
+          size="small"
+          class="btn"
+          @click="submitHandler"
+          icon="el-icon-success"
+          >绑定班组</el-button
+        >
+      </el-form-item>
+    </el-form>
+  </div>
+</template>
+
+<script>
+import { submitNodeForm } from "@/api/bpmprocess/runDialogApi/index";
+export default {
+  name: "AssignEmployees",
+  props: ["formData", "row"],
+  data() {
+    return {
+      isEdit: false,
+      form: {
+        teamId: "",
+      },
+      rules: {
+        teamId: [{ required: true, trigger: "change" }],
+      },
+    };
+  },
+  computed: {
+    myFormData() {
+      return this.formData;
+    },
+  },
+  watch: {
+    myFormData: {
+      handler(nval) {
+        this.form = nval.resultMap;
+        this.isEdit = this.form.taskProcessKey && this.form.taskNodeKey;
+      },
+      deep: true,
+      immediate: true,
+    },
+  },
+  mounted() {},
+  methods: {
+    async submitHandler() {
+      console.log(this.row);
+      let res = await this.$refs.form?.validate();
+      if (res) {
+        let payLoad = {};
+        let { teamId } = this.form;
+        if (this.isEdit) {
+          let { taskProcessKey, taskNodeKey } = this.myFormData.resultMap;
+          payLoad.updateCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "task_team_relevance",
+              },
+              conditionMap: {
+                task_process_key: taskProcessKey,
+                task_node_key: taskNodeKey,
+              },
+              commMap: {
+                team_id: teamId,
+                task_id: this.row.bepTaskPlanKey,
+              },
+            },
+          ];
+        } else {
+          payLoad.insertCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "task_team_relevance",
+              },
+              addListMap: [
+                {
+                  team_id: teamId,
+                  task_id: this.row.bepTaskPlanKey,
+                  taskProcessKey: this.row.benTaskProcessKey,
+                  taskNodeKey: this.row.benTaskNodeKey,
+                },
+              ],
+            },
+          ];
+        }
+        submitNodeForm(payLoad).then((response) => {
+          if (response.code == 200) {
+            this.$modal.msgSuccess("保存成功");
+          } else {
+            this.$modal.error("保存失败,请稍后再试");
+          }
+        });
+      }
+    },
+    async getFormData() {
+      let formData = {
+        flag: false,
+        msg: "",
+      };
+      try {
+        let valid = await this.$refs.form.validate();
+        if (valid) {
+          formData.flag = true;
+          formData.data = this.form;
+          return formData;
+        } else {
+          formData.msg = "表单校验异常,请规范填写表单数据";
+          return formData;
+        }
+      } catch (error) {
+        // console.log(error);
+        formData.msg = "表单校验异常,请规范填写表单数据";
+        return formData;
+      }
+    },
+  },
+
+};
+</script>
+
+<style lang="scss" scoped>
+.app-container {
+  .btn {
+    background: rgb(123, 213, 195);
+    border: rgb(123, 213, 195);
+    float: right;
+  }
+}
+
+::v-deep .el-select {
+  width: 100%;
+}
+</style>

+ 236 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/NodeShow.vue

@@ -0,0 +1,236 @@
+<template>
+  <div class="form-wrap">
+    <div class="cardwrap">
+      <div class="title-area">
+        <span><i class="el-icon-help mr5"></i>工序</span>
+      </div>
+      <div class="node-list">
+        <div
+          :class="{
+            node: true,
+          }"
+          v-for="(item, index) of nodeList"
+          :key="item.num"
+        >
+          <!-- currentNode: item.nodeId == currentNodeKey, -->
+          <!-- @click="shiftNode(item)" -->
+          <span class="num">>{{ index + 1 }}</span>
+          <span class="title">{{ item.nodeInfo.name }}</span>
+          <span class="time">1分钟</span>
+        </div>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+import getNodeSequence from "@/utils/bpmn/getNodeSequence";
+import { xmlStr2XmlObj } from "@/utils/bpmn/xml";
+export default {
+  name: "NodeShow",
+  props: ["formData", "row"],
+  components: {},
+  data() {
+    return {
+      search: "",
+      nodeList: [],
+      currentNodeKey: "",
+      resFormData: {},
+      columns: [
+        {
+          label: "编号",
+          prop: "id",
+        },
+        {
+          label: "编者",
+          prop: "editor",
+        },
+        {
+          label: "时间",
+          prop: "time",
+        },
+      ],
+      material: [
+        {
+          label: "名称",
+          prop: "name",
+        },
+        {
+          label: "尺寸",
+          prop: "size",
+        },
+        {
+          label: "规格",
+          prop: "model",
+        },
+        {
+          label: "数量",
+          prop: "num",
+        },
+        {
+          label: "备注",
+          prop: "note",
+        },
+      ],
+    };
+  },
+  watch: {
+    myFormData: {
+      handler(val) {},
+      deep: true,
+      immediate: true,
+    },
+    myRow: {
+      handler(val) {
+        this.currentNodeKey = val.benTaskNodeKey;
+        if (val?.bepTaskProcessXmlContent) {
+          let nodeSequence = getNodeSequence(
+            xmlStr2XmlObj(val.bepTaskProcessXmlContent)
+          );
+          this.nodeList = nodeSequence?.filter(
+            (item) => item.nodeInfo.localName != "exceptionTask"
+          );
+          // .slice(0, this.getIndexByNodeId(nodeSequence, this.currentNodeKey))
+          // ?.filter((item) => item.nodeInfo.localName != "exceptionTask");
+          // this.nodeList = getNodeSequence(
+          //   xmlStr2XmlObj(val.bepTaskProcessXmlContent)
+          // )?.filter((item) => item.nodeInfo.localName != "exceptionTask");
+
+          //去掉开始和结束节点
+          // this.nodeList.shift();
+          // this.nodeList[this.nodeList.length - 1]?.nodeInfo.localName ==
+          //   "endEvent" && this.nodeList.pop();
+          console.log(this.nodeList);
+        }
+      },
+      deep: true,
+      immediate: true,
+    },
+  },
+  computed: {
+    myFormData() {
+      return this.formData;
+    },
+    myRow() {
+      return this.row;
+    },
+  },
+  methods: {
+    async getFormData() {
+      let formData = {
+        flag: false,
+        msg: "",
+      };
+
+      return {
+        flag: true,
+        data: this.resFormData,
+      };
+      // if(){}
+      // try {
+      //   let valid = await this.$refs.form.validate();
+      //   if (valid) {
+      //     formData.flag = true;
+      //     formData.data = this.form;
+      //     return formData;
+      //   } else {
+      //     formData.msg = "表单校验异常,请规范填写表单数据";
+      //     return formData;
+      //   }
+      // } catch (error) {
+      //   // console.log(error);
+      //   formData.msg = "表单校验异常,请规范填写表单数据";
+      //   return formData;
+      // }
+    },
+    async shiftNode(item) {
+      if (item.nodeId == this.currentNodeKey) return;
+      this.resFormData = {
+        taskProcessKey: this.row.bepTaskKey,
+        taskNodeKey: this.currentNodeKey,
+        taskBackNodeKey: item.nodeId,
+      };
+      this.currentNodeKey = item.nodeId;
+      // try {
+      //   let res = await this.$modal.confirm(
+      //     "是否确认切换流程至<" + item.nodeInfo.name + ">异常?"
+      //   );
+      //   console.log(res, item, this.row);
+      //   let payLoad = {
+      //     taskProcessKey: this.row.bepTaskKey,
+      //     taskNodeKey: this.currentNodeKey,
+      //     taskBackNodeKey: item.nodeId,
+      //   };
+      // } catch (error) {
+      //   this.$message.info("取消成功");
+      // }
+    },
+
+    getIndexByNodeId(nodeSequence, nodeId) {
+      return nodeSequence.findIndex((item) => item.nodeId == nodeId);
+    },
+  },
+};
+</script>
+
+<style scoped lang="scss">
+.form-wrap {
+  display: flex;
+  flex-direction: column;
+  width: 100%;
+
+  .cardwrap {
+    display: flex;
+    flex-direction: column;
+    width: 100%;
+    padding-bottom: 20px;
+    .title-area {
+      display: flex;
+      align-items: center;
+      padding-bottom: 5px;
+      font-size: 16px;
+      border-bottom: 2px solid rgba(0, 0, 0, 0.404);
+      box-sizing: border-box;
+    }
+    .table-area {
+      padding-top: 10px;
+    }
+    .node-list {
+      display: flex;
+      flex-wrap: wrap;
+      padding-top: 10px;
+      .node {
+        width: 33.3333%;
+        height: 50px;
+        display: flex;
+        align-items: center;
+        border-bottom: 1px dotted gray;
+        padding: 0 5px;
+        // &:hover {
+        //   border: 1px dotted rgb(0, 195, 255);
+        //   background-color: rgba(70, 194, 231, 0.63);
+        // }
+        .num {
+          color: #40c3a8;
+          font-size: 16px;
+          margin-right: 5px;
+        }
+        .title {
+          /* // color: #ececee34; */
+          font-size: 14px;
+          flex: 1;
+          /* // ma */
+        }
+        .time {
+          font-size: 12px;
+          color: rgba(48, 44, 44, 0.247);
+          margin-right: 10px;
+        }
+      }
+      .currentNode {
+        background-color: #7dec8f !important;
+      }
+    }
+  }
+}
+</style>

+ 130 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/Notes.vue

@@ -0,0 +1,130 @@
+<template>
+    <div class="app-containeteamIdr">
+        <el-form :model="form" ref="form" label-position="top" label-width="100px" align="left" :inline="false" size="normal">
+            <el-form-item label="备注:" prop="remark">
+                <el-input v-model="form.remark"></el-input>
+            </el-form-item>
+            <el-form-item>
+                <el-button type="primary" size="small" @click="submitHandler" icon="el-icon-success">记录</el-button>
+            </el-form-item>
+        </el-form>
+    </div>
+</template>
+
+<script>
+import { submitNodeForm } from "@/api/bpmprocess/runDialogApi/index";
+export default {
+    name: 'Notes',
+    props: ["formData", "row"],
+    data() {
+        return {
+            isEdit:false,
+            form: {
+                remark: ''
+            },
+        };
+    },
+    computed: {
+        myFormData() {
+        return this.formData;
+        },
+    },
+    watch: {
+        myFormData: {
+            handler(nval) {
+                this.form = nval.resultMap;
+                // this.form.hp = this.form.goodId
+                console.log(this.form);
+                // this.isEdit = this.form.id ? true : false;
+                this.isEdit = this.form.taskProcessKey && this.form.taskNodeKey
+            },
+            deep: true,
+            immediate: true,
+        },
+    },
+    mounted() {
+        
+    },
+    methods: {
+        async submitHandler() {
+            console.log(this.row);
+            let res = await this.$refs.form?.validate();
+            if (res) {
+                let payLoad = {};
+                let { remark } = this.form;
+                if (this.isEdit) {
+                let { taskProcessKey, taskNodeKey } = this.myFormData.resultMap;
+                payLoad.updateCommonEntityList = [
+                    {
+                    basicMap: {
+                        tableName: "material_matching",
+                    },
+                    conditionMap: {
+                        task_process_key: taskProcessKey,
+                        task_node_key: taskNodeKey,
+                    },
+                    commMap: {
+                        task_id: this.row.bepTaskPlanKey,
+                        remark: remark
+                    },
+                    },
+                ];
+                } else {
+                payLoad.insertCommonEntityList = [
+                    {
+                    basicMap: {
+                        tableName: "material_matching",
+                    },
+                    addListMap: [
+                        {
+                        task_id: this.row.bepTaskPlanKey,
+                        remark: remark,
+                        taskProcessKey: this.row.benTaskProcessKey,
+                        taskNodeKey: this.row.benTaskNodeKey,
+                        },
+                    ],
+                    },
+                ];
+            }
+            submitNodeForm(payLoad).then((response) => {
+                if (response.code == 200) {
+                    this.$modal.msgSuccess("保存成功");
+                } else {
+                    this.$modal.error("保存失败,请稍后再试");
+                }
+            });
+            }
+        },
+        async getFormData() {
+            let formData = {
+                flag: false,
+                msg: "",
+            };
+            try {
+                let valid = await this.$refs.form.validate();
+                if (valid) {
+                formData.flag = true;
+                formData.data = this.form;
+                return formData;
+                } else {
+                formData.msg = "表单校验异常,请规范填写表单数据";
+                return formData;
+                }
+            } catch (error) {
+                // console.log(error);
+                formData.msg = "表单校验异常,请规范填写表单数据";
+                return formData;
+            }
+        },
+    },
+    
+};
+</script>
+
+<style lang="scss" scoped>
+ ::v-deep .el-button{
+        background: rgb(123,213,195);
+        border:  rgb(123,213,195);
+        float: right;
+    }
+</style>

+ 637 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/PersonalDistribution.vue

@@ -0,0 +1,637 @@
+<template>
+    <div class="app-container">
+      <div class="leftMessage">
+        <div class="list" v-for="(item, index) in baseMessage" :key="index">
+          <span class="title">
+            {{ item.title }}
+          </span>
+          <template v-if="item.prop == 'qualityControlCard'">
+            <span
+              class="content"
+              style="background: rgb(235, 237, 242); color: rgb(232, 83, 152)"
+            >
+              {{ form.recordQualityControlCard[item.prop] }}
+            </span>
+          </template>
+          <template v-else>
+            <span class="content">
+              {{ form.masterTask[item.prop] }}
+            </span>
+          </template>
+        </div>
+      </div>
+      <div class="rightMessage">
+        <div class="top">
+          <div class="state">
+            <div class="list">
+              <span>工序状态:</span>
+              <p id="state">
+                {{
+                  form.taskNodeOtherState
+                    ? stateObj[form.taskNodeOtherState]
+                    : "初始"
+                }}
+              </p>
+            </div>
+            <div class="list">
+              <span>是否外协:</span>
+              <p>
+                <el-checkbox
+                  @change="
+                    (val) => {
+                      updateHandler(form.taskNodeOtherState, val);
+                    }
+                  "
+                  v-model="checked"
+                ></el-checkbox>
+              </p>
+            </div>
+          </div>
+        </div>
+        <div class="button">
+          <el-button-group prop="state">
+            <el-button
+              type="primary"
+              icon="el-icon-video-play"
+              plain
+              round
+              @click="updateHandler('1', checked)"
+              >开始</el-button
+            >
+            <el-button
+              type="danger"
+              icon="el-icon-video-pause"
+              plain
+              @click="updateHandler('2', checked)"
+              >暂停</el-button
+            >
+            <el-button
+              type="success"
+              icon="el-icon-circle-check"
+              plain
+              @click="updateHandler('3', checked)"
+              >完成</el-button
+            >
+            <el-button
+              type="info"
+              icon="el-icon-refresh"
+              plain
+              round
+              @click="updateHandler('0', checked)"
+              >重置</el-button
+            >
+          </el-button-group>
+        </div>
+        <div class="middle" v-show="!checked">
+          <el-table :data="oldTableData" border ref="addTableRowRef">
+            <el-table-column label="人员姓名">
+              <template slot-scope="scope">
+                <el-input
+                  v-if="scope.row.isEdit"
+                  v-model="editingRow.personnelName"
+                ></el-input>
+                <span v-else>{{ scope.row.personnelName }}</span>
+              </template>
+            </el-table-column>
+            <el-table-column label="分配工时">
+              <template slot-scope="scope">
+                <el-input-number
+                  v-if="scope.row.isEdit"
+                  v-model="editingRow.allottedTime"
+                  controls-position="right"
+                  @change="handleChange"
+                  :min="0"
+                  :step="0.25"
+                  size="small"
+                ></el-input-number>
+                <span v-else>{{ scope.row.allottedTime }}</span>
+              </template>
+            </el-table-column>
+            <el-table-column label="操作" width="120" align="center">
+              <template slot-scope="scope">
+                <el-dropdown v-if="!scope.row.isEdit">
+                  <el-button type="warning" plain size="small">
+                    处理<i class="el-icon-arrow-down el-icon--right"></i>
+                  </el-button>
+                  <el-dropdown-menu slot="dropdown">
+                    <el-dropdown-item
+                      ><el-button
+                        size="mini"
+                        type="text"
+                        icon="el-icon-edit"
+                        @click="changeHandler(scope.row)"
+                        >修改</el-button
+                      ></el-dropdown-item
+                    >
+                    <el-dropdown-item
+                      ><el-button
+                        size="mini"
+                        type="text"
+                        icon="el-icon-delete"
+                        @click="deleteOne(scope.row)"
+                        v-hasPermi="['system:dict:remove']"
+                        >删除</el-button
+                      >
+                    </el-dropdown-item>
+                  </el-dropdown-menu>
+                </el-dropdown>
+                <el-dropdown v-else>
+                  <el-button type="warning" plain size="small">
+                    处理<i class="el-icon-arrow-down el-icon--right"></i>
+                  </el-button>
+                  <el-dropdown-menu slot="dropdown">
+                    <el-dropdown-item
+                      ><el-button
+                        size="mini"
+                        type="text"
+                        icon="el-icon-edit"
+                        @click="saveOne"
+                        >保存</el-button
+                      ></el-dropdown-item
+                    >
+                    <el-dropdown-item
+                      ><el-button
+                        size="mini"
+                        type="text"
+                        icon="el-icon-delete"
+                        @click="cancelHandler(scope.row)"
+                        v-hasPermi="['system:dict:remove']"
+                        >取消</el-button
+                      >
+                    </el-dropdown-item>
+                  </el-dropdown-menu>
+                </el-dropdown>
+                <!-- <el-button
+                  icon="el-icon-delete"
+                  size="mini"
+                  @click="deleteTableRow(scope.$index)"
+                  >删除</el-button
+                > -->
+              </template>
+            </el-table-column>
+          </el-table>
+          <div class="name">人员及工时分配</div>
+          <el-table :data="tableData" border ref="addTableRowRef">
+            <el-table-column label="人员姓名">
+              <template slot-scope="scope">
+                <el-input v-model="scope.row.personnelName"></el-input>
+              </template>
+            </el-table-column>
+            <el-table-column label="分配工时">
+              <template slot-scope="scope">
+                <el-input-number
+                  v-model="scope.row.allottedTime"
+                  controls-position="right"
+                  @change="handleChange"
+                  :min="0"
+                  :step="0.25"
+                  size="small"
+                ></el-input-number>
+              </template>
+            </el-table-column>
+            <el-table-column label="操作" width="120" align="center">
+              <template slot-scope="scope">
+                <el-button
+                  icon="el-icon-delete"
+                  size="mini"
+                  @click="deleteTableRow(scope.$index)"
+                  >删除</el-button
+                >
+              </template>
+            </el-table-column>
+          </el-table>
+          <div class="block">
+            <el-pagination layout="prev, pager, next" :total="50">
+            </el-pagination>
+          </div>
+          <el-button
+            size="mini"
+            icon="el-icon-plus"
+            type="primary"
+            @click="addTableRow"
+            >新 增</el-button
+          >
+          <el-button
+            size="mini"
+            icon="el-icon-check"
+            type="success"
+            @click="saveTableRow"
+            >保 存</el-button
+          >
+          <div class="total">
+            <span>当前工序总工时: 10</span>
+            <span>当前已分配工时: 10</span>
+            <span>当前剩余工时: 10</span>
+          </div>
+        </div>
+      </div>
+    </div>
+</template>
+<script>
+import {
+submitNodeForm,
+changeNodeState,
+} from "@/api/bpmprocess/runDialogApi/index";
+import { getProcessNodeFormInfoData } from "@/api/bpmprocess/run/executeProcess";
+export default {
+name: "PersonalDistribution",
+props: ["formData", "row"],
+data() {
+    return {
+    checked: true,
+    isEdit: false,
+    form: {
+        taskNodeOtherState: "0",
+    },
+    tableData: [],
+    editingRow: {},
+    oldTableData: [
+        {
+        id: 1,
+        personnelName: "芝麻林",
+        allottedTime: 1,
+        isEdit: false,
+        },
+    ],
+    newRow: {},
+
+    baseMessage: [
+        { title: "任务", prop: "taskNo" },
+        { title: "图号", prop: "mapNumber" },
+        { title: "名称", prop: "mapName" },
+        { title: "数量", prop: "modelNumber" },
+        { title: "工艺", prop: "craftRoute" },
+        { title: "质控", prop: "qualityControlCard" },
+    ],
+    stateObj: {
+        0: "初始",
+        1: "开始",
+        2: "暂停",
+        3: "完成",
+    },
+    };
+},
+computed: {
+    myFormData() {
+    return this.formData;
+    },
+},
+watch: {
+    myFormData: {
+    handler(nval) {
+        if (!nval) return;
+        this.initData(nval);
+    },
+    deep: true,
+    immediate: true,
+    },
+},
+methods: {
+    async updateHandler(state, flag) {
+    flag = flag ? "true" : "false";
+    let payLoad = {
+        // conditionMap: {
+        taskProcessKey: this.row.benTaskProcessKey,
+        taskNodeKey: this.row.benTaskNodeKey,
+        // },
+        // commMap: {
+        taskNodeOtherState: state,
+        task1: flag,
+        // },
+    };
+
+    changeNodeState(payLoad).then((response) => {
+        if (response.code == 200) {
+        this.$modal.msgSuccess("修改成功");
+        this.form.taskNodeOtherState = state;
+        } else {
+        this.$modal.error("修改失败,请稍后再试");
+        }
+    });
+    },
+    async submitHandler() {
+    console.log(this.row);
+    let res = await this.$refs.form?.validate();
+    if (res) {
+        let payLoad = {};
+        let { state } = this.form;
+        console.log(this.form);
+        if (this.isEdit) {
+        let { taskKey, taskNodeKey } = this.myFormData.resultMap;
+        payLoad.updateCommonEntityList = [
+            {
+            basicMap: {
+                tableName: "bpm_execute_node",
+            },
+            conditionMap: {
+                task_key: taskKey,
+                task_node_key: taskNodeKey,
+            },
+            commMap: {
+                task_node_other_state: state,
+            },
+            },
+        ];
+        } else {
+        payLoad.insertCommonEntityList = [
+            {
+            basicMap: {
+                tableName: "bpm_execute_node",
+            },
+            addListMap: [
+                {
+                task_node_other_state: state,
+                taskKey: this.row.benTaskProcessKey,
+                taskNodeKey: this.row.benTaskNodeKey,
+                },
+            ],
+            },
+        ];
+        }
+        submitNodeForm(payLoad).then((response) => {
+        if (response.code == 200) {
+            this.$modal.msgSuccess("保存成功");
+        } else {
+            this.$modal.error("保存失败,请稍后再试");
+        }
+        });
+    }
+    },
+    async getFormData() {
+    return {
+        flag: true,
+        data: {},
+    };
+
+    let formData = {
+        flag: false,
+        msg: "",
+    };
+    try {
+        let valid = await this.$refs.form.validate();
+        if (valid) {
+        formData.flag = true;
+        formData.data = this.form;
+        return formData;
+        } else {
+        formData.msg = "表单校验异常,请规范填写表单数据";
+        return formData;
+        }
+    } catch (error) {
+        // console.log(error);
+        formData.msg = "表单校验异常,请规范填写表单数据";
+        return formData;
+    }
+    },
+    addTableRow() {
+    const newRow = {
+        personnelName: "",
+        allottedTime: 0,
+    };
+    this.tableData.push(newRow);
+    },
+    deleteTableRow(index) {
+    if (index !== -1) {
+        this.tableData.splice(index, 1);
+    }
+    },
+    // 批量保存表格数据回调
+    async saveTableRow() {
+    console.log(this.tableData);
+    let payLoad = {};
+    payLoad.insertCommonEntityList = [
+        {
+        basicMap: {
+            tableName: "process_inspect_personnel",
+        },
+        addListMap: [
+            // {
+            //   task_node_other_state: state,
+            //   taskKey: this.row.benTaskProcessKey,
+            //   taskNodeKey: this.row.benTaskNodeKey,
+            // },
+        ],
+        },
+    ];
+    payLoad.insertCommonEntityList[0].addListMap = this.tableData.map(
+        (item) => {
+        let { personnelName, allottedTime } = item;
+        return {
+            personnelName,
+            allottedTime,
+            taskProcessKey: this.row.benTaskProcessKey,
+            taskNodeKey: this.row.benTaskNodeKey,
+        };
+        }
+    );
+    // this.tableData = [];
+    let res = await submitNodeForm(payLoad);
+    if (res.code == 200) {
+        this.$message.success("保存成功");
+        this.tableData = [];
+        this.refreshData(this.row);
+    } else {
+        this.$message.warning("网络异常,请稍后再试");
+    }
+    },
+    // 刷新弹窗数据
+    async refreshData(row) {
+    let {
+        benTaskNodeFormKey,
+        benTaskNodeFormType,
+        bepTaskPlanKey,
+        bepTaskKey,
+        bepTaskNodeKey,
+        benTaskProcessKey,
+        benmTaskAutomaticScriptTriggerType,
+        bepTaskNodeNextKey,
+    } = row;
+    let payLoad = {
+        taskNodeKey: bepTaskNodeNextKey,
+        taskProcessKey: benTaskProcessKey,
+        taskAutomaticScriptTriggerType: benmTaskAutomaticScriptTriggerType,
+        taskPlanKey: bepTaskPlanKey,
+    };
+    let res = await getProcessNodeFormInfoData(payLoad);
+    if (res.code == 200) {
+        this.updataTableData(res.data);
+    } else {
+        this.$message.error("网络异常,请稍后再试");
+    }
+    },
+    // 修改某一条数据
+    async saveOne() {
+    console.log(this.editingRow);
+    let payLoad = {};
+    let { taskKey, taskNodeKey } = this.myFormData.resultMap;
+    let { id, personnelName, allottedTime } = this.editingRow;
+    payLoad.updateCommonEntityList = [
+        {
+        basicMap: {
+            tableName: "process_inspect_personnel",
+        },
+        conditionMap: {
+            taskProcessKey: this.row.benTaskProcessKey,
+            taskNodeKey: this.row.benTaskNodeKey,
+            id,
+        },
+        commMap: {
+            personnelName,
+            allottedTime,
+        },
+        },
+    ];
+    let res = await submitNodeForm(payLoad);
+    if (res.code == 200) {
+        this.$message.success("保存成功");
+        this.refreshData(this.row);
+    } else {
+        this.$message.warning("网络异常,请稍后再试");
+    }
+    },
+    // 删除一条数据
+    async deleteOne(row) {
+    let payLoad = {};
+    let { id } = row;
+    payLoad.deleteCommonEntityList = [
+        {
+        basicMap: {
+            tableName: "process_inspect_personnel",
+        },
+        conditionMap: {
+            // taskProcessKey: this.row.benTaskProcessKey,
+            // taskNodeKey: this.row.benTaskNodeKey,
+            id: [id],
+        },
+        },
+    ];
+    let res = await submitNodeForm(payLoad);
+    if (res.code == 200) {
+        this.$message.success("删除成功");
+        this.refreshData(this.row);
+    } else {
+        this.$message.warning("网络异常,请稍后再试");
+    }
+    },
+    // 取消修改回调
+    cancelHandler(row) {
+    row.isEdit = false;
+    },
+    handleChange(value) {
+    console.log(value);
+    },
+    changeHandler(row) {
+    console.log(row);
+    row.isEdit = true;
+    this.editingRow = JSON.parse(JSON.stringify(row));
+    },
+    // 初始化数据
+    initData(nval) {
+    // this.form = JSON.parse(JSON.stringify(nval?.resultMap));
+    Object.assign(this.form, nval?.resultMap);
+    this.form.personnelList.forEach((element) => {
+        element.isEdit = false;
+    });
+    this.oldTableData = JSON.parse(JSON.stringify(this.form.personnelList));
+    this.checked = this.form.task1 == "true" ? true : false;
+    // this.$set(this.form, 'card', nval?.resultMap.qualityControlCard);
+    this.$set(this.form, "state", nval?.resultMap.taskNnodeOtherState);
+    },
+    // 更新表格数据
+    updataTableData(nval) {
+    nval?.resultMap.personnelList.forEach((element) => {
+        element.isEdit = false;
+    });
+    this.oldTableData = JSON.parse(
+        JSON.stringify(nval?.resultMap.personnelList)
+    );
+    },
+},
+};
+</script>
+
+<style lang="scss" scoped>
+.app-container {
+::v-deep .el-checkbox {
+    /* font-size: 8px; */
+    color: white;
+}
+display: flex;
+flex-direction: row;
+justify-content: space-between;
+.leftMessage {
+    display: flex;
+    flex-direction: column;
+    width: 145px;
+    .list {
+    padding: 10px 0px;
+    span {
+        border-radius: 10px;
+        padding: 5px;
+        margin-right: 10px;
+    }
+    .title {
+        background-color: rgb(52, 191, 163);
+        color: white;
+    }
+    .content {
+        background: rgb(235, 237, 242);
+        color: rgb(232, 83, 152);
+    }
+    }
+}
+.rightMessage {
+    display: flex;
+    width: 500px;
+    flex-direction: column;
+    .top {
+    background: #53b0f8;
+    color: white;
+    height: 60px;
+    .state {
+        display: flex;
+        flex-direction: row;
+        padding: 10px 20px;
+        .list:first-child {
+        padding-right: 180px;
+        }
+        /* p {
+        padding-top: 5px;
+        font-size: 10px;
+        } */
+    }
+    }
+    .button {
+    width: 100%;
+    padding: 20px 0px;
+    .el-button {
+        width: 140px;
+        /* background: none; */
+    }
+    .el-button--info {
+        width: 80px;
+    }
+    }
+    .middle {
+    .name {
+        color: black;
+        font-weight: bold;
+        text-align: center;
+        padding: 10px 0px;
+    }
+    .block {
+        text-align: center;
+    }
+    .total {
+        display: inline-block;
+        flex-direction: row;
+        margin-top: 10px;
+        span {
+        font-weight: bold;
+        color: black;
+        }
+    }
+    }
+}
+}
+</style>

+ 130 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/Print.vue

@@ -0,0 +1,130 @@
+<template>
+    <div class="app-containeteamIdr">
+        <el-form :model="form" ref="form" label-position="top" label-width="100px" align="left" :inline="false" size="normal">
+            <el-form-item label="备注:" prop="remark">
+                <el-input v-model="form.remark"></el-input>
+            </el-form-item>
+            <el-form-item>
+                <el-button type="primary" size="small" @click="submitHandler" icon="el-icon-success">记录</el-button>
+            </el-form-item>
+        </el-form>
+    </div>
+</template>
+
+<script>
+import { submitNodeForm } from "@/api/bpmprocess/runDialogApi/index";
+export default {
+    name: 'Print',
+    props: ["formData", "row"],
+    data() {
+        return {
+            isEdit:false,
+            form: {
+                remark: ''
+            },
+        };
+    },
+    computed: {
+        myFormData() {
+        return this.formData;
+        },
+    },
+    watch: {
+        myFormData: {
+            handler(nval) {
+                this.form = nval.resultMap;
+                // this.form.hp = this.form.goodId
+                console.log(this.form);
+                // this.isEdit = this.form.id ? true : false;
+                this.isEdit = this.form.taskProcessKey && this.form.taskNodeKey
+            },
+            deep: true,
+            immediate: true,
+        },
+    },
+    mounted() {
+        
+    },
+    methods: {
+        async submitHandler() {
+            console.log(this.row);
+            let res = await this.$refs.form?.validate();
+            if (res) {
+                let payLoad = {};
+                let { remark } = this.form;
+                if (this.isEdit) {
+                let { taskProcessKey, taskNodeKey } = this.myFormData.resultMap;
+                payLoad.updateCommonEntityList = [
+                    {
+                    basicMap: {
+                        tableName: "delivery_slip",
+                    },
+                    conditionMap: {
+                        task_process_key: taskProcessKey,
+                        task_node_key: taskNodeKey,
+                    },
+                    commMap: {
+                        task_id: this.row.bepTaskPlanKey,
+                        remark: remark
+                    },
+                    },
+                ];
+                } else {
+                payLoad.insertCommonEntityList = [
+                    {
+                    basicMap: {
+                        tableName: "delivery_slip",
+                    },
+                    addListMap: [
+                        {
+                        task_id: this.row.bepTaskPlanKey,
+                        remark: remark,
+                        taskProcessKey: this.row.benTaskProcessKey,
+                        taskNodeKey: this.row.benTaskNodeKey,
+                        },
+                    ],
+                    },
+                ];
+            }
+            submitNodeForm(payLoad).then((response) => {
+                if (response.code == 200) {
+                    this.$modal.msgSuccess("保存成功");
+                } else {
+                    this.$modal.error("保存失败,请稍后再试");
+                }
+            });
+            }
+        },
+        async getFormData() {
+            let formData = {
+                flag: false,
+                msg: "",
+            };
+            try {
+                let valid = await this.$refs.form.validate();
+                if (valid) {
+                formData.flag = true;
+                formData.data = this.form;
+                return formData;
+                } else {
+                formData.msg = "表单校验异常,请规范填写表单数据";
+                return formData;
+                }
+            } catch (error) {
+                // console.log(error);
+                formData.msg = "表单校验异常,请规范填写表单数据";
+                return formData;
+            }
+        },
+    },
+    
+};
+</script>
+
+<style lang="scss" scoped>
+ ::v-deep .el-button{
+        background: rgb(123,213,195);
+        border:  rgb(123,213,195);
+        float: right;
+    }
+</style>

+ 638 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/ProductionProcesses.vue

@@ -0,0 +1,638 @@
+<template>
+  <div class="app-container">
+    <div class="leftMessage">
+      <div class="list" v-for="(item, index) in baseMessage" :key="index">
+        <span class="title">
+          {{ item.title }}
+        </span>
+        <template v-if="item.prop == 'qualityControlCard'">
+          <span
+            class="content"
+            style="background: rgb(235, 237, 242); color: rgb(232, 83, 152)"
+          >
+            {{ form.recordQualityControlCard[item.prop] }}
+          </span>
+        </template>
+        <template v-else>
+          <span class="content">
+            {{ form.masterTask[item.prop] }}
+          </span>
+        </template>
+      </div>
+    </div>
+    <div class="rightMessage">
+      <div class="top">
+        <div class="state">
+          <div class="list">
+            <span>工序状态:</span>
+            <p id="state">
+              {{
+                form.taskNodeOtherState
+                  ? stateObj[form.taskNodeOtherState]
+                  : "初始"
+              }}
+            </p>
+          </div>
+          <div class="list">
+            <span>是否外协:</span>
+            <p>
+              <el-checkbox
+                @change="
+                  (val) => {
+                    updateHandler(form.taskNodeOtherState, val);
+                  }
+                "
+                v-model="checked"
+              ></el-checkbox>
+            </p>
+          </div>
+        </div>
+      </div>
+      <div class="button">
+        <el-button-group prop="state">
+          <el-button
+            type="primary"
+            icon="el-icon-video-play"
+            plain
+            round
+            @click="updateHandler('1', checked)"
+            >开始</el-button
+          >
+          <el-button
+            type="danger"
+            icon="el-icon-video-pause"
+            plain
+            @click="updateHandler('2', checked)"
+            >暂停</el-button
+          >
+          <el-button
+            type="success"
+            icon="el-icon-circle-check"
+            plain
+            @click="updateHandler('3', checked)"
+            >完成</el-button
+          >
+          <el-button
+            type="info"
+            icon="el-icon-refresh"
+            plain
+            round
+            @click="updateHandler('0', checked)"
+            >重置</el-button
+          >
+        </el-button-group>
+      </div>
+      <div class="middle" v-show="!checked">
+        <el-table :data="oldTableData" border ref="addTableRowRef">
+          <el-table-column label="人员姓名">
+            <template slot-scope="scope">
+              <el-input
+                v-if="scope.row.isEdit"
+                v-model="editingRow.personnelName"
+              ></el-input>
+              <span v-else>{{ scope.row.personnelName }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column label="分配工时">
+            <template slot-scope="scope">
+              <el-input-number
+                v-if="scope.row.isEdit"
+                v-model="editingRow.allottedTime"
+                controls-position="right"
+                @change="handleChange"
+                :min="0"
+                :step="0.25"
+                size="small"
+              ></el-input-number>
+              <span v-else>{{ scope.row.allottedTime }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column label="操作" width="120" align="center">
+            <template slot-scope="scope">
+              <el-dropdown v-if="!scope.row.isEdit">
+                <el-button type="warning" plain size="small">
+                  处理<i class="el-icon-arrow-down el-icon--right"></i>
+                </el-button>
+                <el-dropdown-menu slot="dropdown">
+                  <el-dropdown-item
+                    ><el-button
+                      size="mini"
+                      type="text"
+                      icon="el-icon-edit"
+                      @click="changeHandler(scope.row)"
+                      >修改</el-button
+                    ></el-dropdown-item
+                  >
+                  <el-dropdown-item
+                    ><el-button
+                      size="mini"
+                      type="text"
+                      icon="el-icon-delete"
+                      @click="deleteOne(scope.row)"
+                      v-hasPermi="['system:dict:remove']"
+                      >删除</el-button
+                    >
+                  </el-dropdown-item>
+                </el-dropdown-menu>
+              </el-dropdown>
+              <el-dropdown v-else>
+                <el-button type="warning" plain size="small">
+                  处理<i class="el-icon-arrow-down el-icon--right"></i>
+                </el-button>
+                <el-dropdown-menu slot="dropdown">
+                  <el-dropdown-item
+                    ><el-button
+                      size="mini"
+                      type="text"
+                      icon="el-icon-edit"
+                      @click="saveOne"
+                      >保存</el-button
+                    ></el-dropdown-item
+                  >
+                  <el-dropdown-item
+                    ><el-button
+                      size="mini"
+                      type="text"
+                      icon="el-icon-delete"
+                      @click="cancelHandler(scope.row)"
+                      v-hasPermi="['system:dict:remove']"
+                      >取消</el-button
+                    >
+                  </el-dropdown-item>
+                </el-dropdown-menu>
+              </el-dropdown>
+              <!-- <el-button
+                icon="el-icon-delete"
+                size="mini"
+                @click="deleteTableRow(scope.$index)"
+                >删除</el-button
+              > -->
+            </template>
+          </el-table-column>
+        </el-table>
+        <div class="name">人员及工时分配</div>
+        <el-table :data="tableData" border ref="addTableRowRef">
+          <el-table-column label="人员姓名">
+            <template slot-scope="scope">
+              <el-input v-model="scope.row.personnelName"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column label="分配工时">
+            <template slot-scope="scope">
+              <el-input-number
+                v-model="scope.row.allottedTime"
+                controls-position="right"
+                @change="handleChange"
+                :min="0"
+                :step="0.25"
+                size="small"
+              ></el-input-number>
+            </template>
+          </el-table-column>
+          <el-table-column label="操作" width="120" align="center">
+            <template slot-scope="scope">
+              <el-button
+                icon="el-icon-delete"
+                size="mini"
+                @click="deleteTableRow(scope.$index)"
+                >删除</el-button
+              >
+            </template>
+          </el-table-column>
+        </el-table>
+        <div class="block">
+          <el-pagination layout="prev, pager, next" :total="50">
+          </el-pagination>
+        </div>
+        <el-button
+          size="mini"
+          icon="el-icon-plus"
+          type="primary"
+          @click="addTableRow"
+          >新 增</el-button
+        >
+        <el-button
+          size="mini"
+          icon="el-icon-check"
+          type="success"
+          @click="saveTableRow"
+          >保 存</el-button
+        >
+        <div class="total">
+          <span>当前工序总工时: 10</span>
+          <span>当前已分配工时: 10</span>
+          <span>当前剩余工时: 10</span>
+        </div>
+      </div>
+    </div>
+  </div>
+</template>
+<script>
+import {
+  submitNodeForm,
+  changeNodeState,
+} from "@/api/bpmprocess/runDialogApi/index";
+import { getProcessNodeFormInfoData } from "@/api/bpmprocess/run/executeProcess";
+export default {
+  name: "ProductionProcesses",
+  props: ["formData", "row"],
+  data() {
+    return {
+      checked: true,
+      isEdit: false,
+      form: {
+        taskNodeOtherState: "0",
+        master_task: {},
+      },
+      tableData: [],
+      editingRow: {},
+      oldTableData: [
+        {
+          id: 1,
+          personnelName: "芝麻林",
+          allottedTime: 1,
+          isEdit: false,
+        },
+      ],
+      newRow: {},
+
+      baseMessage: [
+        { title: "任务", prop: "taskNo" },
+        { title: "图号", prop: "mapNumber" },
+        { title: "名称", prop: "mapName" },
+        { title: "数量", prop: "modelNumber" },
+        { title: "工艺", prop: "craftRoute" },
+        { title: "质控", prop: "qualityControlCard" },
+      ],
+      stateObj: {
+        0: "初始",
+        1: "开始",
+        2: "暂停",
+        3: "完成",
+      },
+    };
+  },
+  computed: {
+    myFormData() {
+      return this.formData;
+    },
+  },
+  watch: {
+    myFormData: {
+      handler(nval) {
+        if (!nval) return;
+        this.initData(nval);
+      },
+      deep: true,
+      immediate: true,
+    },
+  },
+  methods: {
+    async updateHandler(state, flag) {
+      flag = flag ? "true" : "false";
+      let payLoad = {
+        // conditionMap: {
+        taskProcessKey: this.row.benTaskProcessKey,
+        taskNodeKey: this.row.benTaskNodeKey,
+        // },
+        // commMap: {
+        taskNodeOtherState: state,
+        task1: flag,
+        // },
+      };
+
+      changeNodeState(payLoad).then((response) => {
+        if (response.code == 200) {
+          this.$modal.msgSuccess("修改成功");
+          this.form.taskNodeOtherState = state;
+        } else {
+          this.$modal.error("修改失败,请稍后再试");
+        }
+      });
+    },
+    async submitHandler() {
+      console.log(this.row);
+      let res = await this.$refs.form?.validate();
+      if (res) {
+        let payLoad = {};
+        let { state } = this.form;
+        console.log(this.form);
+        if (this.isEdit) {
+          let { taskKey, taskNodeKey } = this.myFormData.resultMap;
+          payLoad.updateCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "bpm_execute_node",
+              },
+              conditionMap: {
+                task_key: taskKey,
+                task_node_key: taskNodeKey,
+              },
+              commMap: {
+                task_node_other_state: state,
+              },
+            },
+          ];
+        } else {
+          payLoad.insertCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "bpm_execute_node",
+              },
+              addListMap: [
+                {
+                  task_node_other_state: state,
+                  taskKey: this.row.benTaskProcessKey,
+                  taskNodeKey: this.row.benTaskNodeKey,
+                },
+              ],
+            },
+          ];
+        }
+        submitNodeForm(payLoad).then((response) => {
+          if (response.code == 200) {
+            this.$modal.msgSuccess("保存成功");
+          } else {
+            this.$modal.error("保存失败,请稍后再试");
+          }
+        });
+      }
+    },
+    async getFormData() {
+      return {
+        flag: true,
+        data: {},
+      };
+
+      let formData = {
+        flag: false,
+        msg: "",
+      };
+      try {
+        let valid = await this.$refs.form.validate();
+        if (valid) {
+          formData.flag = true;
+          formData.data = this.form;
+          return formData;
+        } else {
+          formData.msg = "表单校验异常,请规范填写表单数据";
+          return formData;
+        }
+      } catch (error) {
+        // console.log(error);
+        formData.msg = "表单校验异常,请规范填写表单数据";
+        return formData;
+      }
+    },
+    addTableRow() {
+      const newRow = {
+        personnelName: "",
+        allottedTime: 0,
+      };
+      this.tableData.push(newRow);
+    },
+    deleteTableRow(index) {
+      if (index !== -1) {
+        this.tableData.splice(index, 1);
+      }
+    },
+    // 批量保存表格数据回调
+    async saveTableRow() {
+      console.log(this.tableData);
+      let payLoad = {};
+      payLoad.insertCommonEntityList = [
+        {
+          basicMap: {
+            tableName: "process_get_materials_personnel",
+          },
+          addListMap: [
+            // {
+            //   task_node_other_state: state,
+            //   taskKey: this.row.benTaskProcessKey,
+            //   taskNodeKey: this.row.benTaskNodeKey,
+            // },
+          ],
+        },
+      ];
+      payLoad.insertCommonEntityList[0].addListMap = this.tableData.map(
+        (item) => {
+          let { personnelName, allottedTime } = item;
+          return {
+            personnelName,
+            allottedTime,
+            taskProcessKey: this.row.benTaskProcessKey,
+            taskNodeKey: this.row.benTaskNodeKey,
+          };
+        }
+      );
+      // this.tableData = [];
+      let res = await submitNodeForm(payLoad);
+      if (res.code == 200) {
+        this.$message.success("保存成功");
+        this.tableData = [];
+        this.refreshData(this.row);
+      } else {
+        this.$message.warning("网络异常,请稍后再试");
+      }
+    },
+    // 刷新弹窗数据
+    async refreshData(row) {
+      let {
+        benTaskNodeFormKey,
+        benTaskNodeFormType,
+        bepTaskPlanKey,
+        bepTaskKey,
+        bepTaskNodeKey,
+        benTaskProcessKey,
+        benmTaskAutomaticScriptTriggerType,
+        bepTaskNodeNextKey,
+      } = row;
+      let payLoad = {
+        taskNodeKey: bepTaskNodeNextKey,
+        taskProcessKey: benTaskProcessKey,
+        taskAutomaticScriptTriggerType: benmTaskAutomaticScriptTriggerType,
+        taskPlanKey: bepTaskPlanKey,
+      };
+      let res = await getProcessNodeFormInfoData(payLoad);
+      if (res.code == 200) {
+        this.updataTableData(res.data);
+      } else {
+        this.$message.error("网络异常,请稍后再试");
+      }
+    },
+    // 修改某一条数据
+    async saveOne() {
+      console.log(this.editingRow);
+      let payLoad = {};
+      let { taskKey, taskNodeKey } = this.myFormData.resultMap;
+      let { id, personnelName, allottedTime } = this.editingRow;
+      payLoad.updateCommonEntityList = [
+        {
+          basicMap: {
+            tableName: "process_get_materials_personnel",
+          },
+          conditionMap: {
+            taskProcessKey: this.row.benTaskProcessKey,
+            taskNodeKey: this.row.benTaskNodeKey,
+            id,
+          },
+          commMap: {
+            personnelName,
+            allottedTime,
+          },
+        },
+      ];
+      let res = await submitNodeForm(payLoad);
+      if (res.code == 200) {
+        this.$message.success("保存成功");
+        this.refreshData(this.row);
+      } else {
+        this.$message.warning("网络异常,请稍后再试");
+      }
+    },
+    // 删除一条数据
+    async deleteOne(row) {
+      let payLoad = {};
+      let { id } = row;
+      payLoad.deleteCommonEntityList = [
+        {
+          basicMap: {
+            tableName: "process_get_materials_personnel",
+          },
+          conditionMap: {
+            // taskProcessKey: this.row.benTaskProcessKey,
+            // taskNodeKey: this.row.benTaskNodeKey,
+            id: [id],
+          },
+        },
+      ];
+      let res = await submitNodeForm(payLoad);
+      if (res.code == 200) {
+        this.$message.success("删除成功");
+        this.refreshData(this.row);
+      } else {
+        this.$message.warning("网络异常,请稍后再试");
+      }
+    },
+    // 取消修改回调
+    cancelHandler(row) {
+      row.isEdit = false;
+    },
+    handleChange(value) {
+      console.log(value);
+    },
+    changeHandler(row) {
+      console.log(row);
+      row.isEdit = true;
+      this.editingRow = JSON.parse(JSON.stringify(row));
+    },
+    // 初始化数据
+    initData(nval) {
+      // this.form = JSON.parse(JSON.stringify(nval?.resultMap));
+      Object.assign(this.form, nval?.resultMap);
+      this.form.personnelList.forEach((element) => {
+        element.isEdit = false;
+      });
+      this.oldTableData = JSON.parse(JSON.stringify(this.form.personnelList));
+      this.checked = this.form.task1 == "true" ? true : false;
+      // this.$set(this.form, 'card', nval?.resultMap.qualityControlCard);
+      this.$set(this.form, "state", nval?.resultMap.taskNnodeOtherState);
+    },
+    // 更新表格数据
+    updataTableData(nval) {
+      nval?.resultMap.personnelList.forEach((element) => {
+        element.isEdit = false;
+      });
+      this.oldTableData = JSON.parse(
+        JSON.stringify(nval?.resultMap.personnelList)
+      );
+    },
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+.app-container {
+  ::v-deep .el-checkbox {
+    /* font-size: 8px; */
+    color: white;
+  }
+  display: flex;
+  flex-direction: row;
+  justify-content: space-between;
+  .leftMessage {
+    display: flex;
+    flex-direction: column;
+    width: 145px;
+    .list {
+      padding: 10px 0px;
+      span {
+        border-radius: 10px;
+        padding: 5px;
+        margin-right: 10px;
+      }
+      .title {
+        background-color: rgb(52, 191, 163);
+        color: white;
+      }
+      .content {
+        background: rgb(235, 237, 242);
+        color: rgb(232, 83, 152);
+      }
+    }
+  }
+  .rightMessage {
+    display: flex;
+    width: 500px;
+    flex-direction: column;
+    .top {
+      background: #53b0f8;
+      color: white;
+      height: 60px;
+      .state {
+        display: flex;
+        flex-direction: row;
+        padding: 10px 20px;
+        .list:first-child {
+          padding-right: 180px;
+        }
+        /* p {
+          padding-top: 5px;
+          font-size: 10px;
+        } */
+      }
+    }
+    .button {
+      width: 100%;
+      padding: 20px 0px;
+      .el-button {
+        width: 140px;
+        /* background: none; */
+      }
+      .el-button--info {
+        width: 80px;
+      }
+    }
+    .middle {
+      .name {
+        color: black;
+        font-weight: bold;
+        text-align: center;
+        padding: 10px 0px;
+      }
+      .block {
+        text-align: center;
+      }
+      .total {
+        display: inline-block;
+        flex-direction: row;
+        margin-top: 10px;
+        span {
+          font-weight: bold;
+          color: black;
+        }
+      }
+    }
+  }
+}
+</style>

+ 256 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/Mec/RecordQuality.vue

@@ -0,0 +1,256 @@
+<template>
+  <div class="app-container">
+    <div class="fixture">
+      <div class="title">
+        <i class="el-icon-c-scale-to-original"></i>
+        <span>工装信息</span>
+      </div>
+      <div class="message">
+        <div class="list" v-for="(item, index) in message" :key="index">
+          <div class="list-card">
+            <p>{{ item.title }}</p>
+            <p class="content">{{ form.masterTask[item.prop] }}</p>
+          </div>
+        </div>
+      </div>
+    </div>
+    <div class="material">
+      <div class="title">
+        <i class="el-icon-c-scale-to-original"></i>
+        <span>物料需求信息</span>
+      </div>
+      <div class="message">
+        <div class="list" v-for="(item, index) in message" :key="index">
+          <div class="list-card">
+            <p>{{ item.title }}</p>
+            <p class="content">{{ form.masterTask[item.prop] }}</p>
+          </div>
+        </div>
+      </div>
+    </div>
+    <div class="card">
+      <el-form
+        :rules="rules"
+        :model="form"
+        ref="form"
+        label-position="top"
+        label-width="100px"
+        :inline="false"
+        size="normal"
+      >
+        <el-form-item label="质控卡号:" prop="card">
+          <el-input v-model="form.card" placeholder="请输入内容"></el-input>
+        </el-form-item>
+        <el-form-item>
+          <el-button
+            type="primary"
+            class="btn"
+            icon="el-icon-success"
+            @click="submitHandler"
+            >记录质控卡</el-button
+          >
+        </el-form-item>
+      </el-form>
+    </div>
+  </div>
+</template>
+
+<script>
+import { submitNodeForm } from "@/api/bpmprocess/runDialogApi/index";
+export default {
+  name: "RecordQuality",
+  props: ["formData", "row"],
+  data() {
+    return {
+      isEdit: false,
+      form: {
+        card: "",
+        taskNo: "",
+        mapNumber: "",
+        taskNumber: "",
+        master_task: {},
+      },
+      rules: {
+        card: [{ required: true, trigger: "change" }],
+      },
+      message: [
+        { title: "任务编号", prop: "taskNo" },
+        { title: "图号", prop: "mapNumber" },
+        { title: "投产数量", prop: "taskNumber" },
+        { title: "牌号", prop: "" },
+        { title: "状态", prop: "" },
+        { title: "标准", prop: "" },
+        { title: "物资名称", prop: "" },
+        { title: "材料/产品", prop: "" },
+        { title: "规格", prop: "" },
+        { title: "尺寸", prop: "" },
+        { title: "备注", prop: "" },
+      ],
+      quality_control_card: "",
+    };
+  },
+  computed: {
+    myFormData() {
+      return this.formData;
+    },
+  },
+  watch: {
+    myFormData: {
+      handler(nval) {
+        // this.form = JSON.parse(JSON.stringify(nval.resultMap));
+        Object.assign(this.form, nval.resultMap);
+        this.$set(this.form, "card", nval.resultMap.qualityControlCard);
+        this.isEdit = this.form.taskProcessKey && this.form.taskNodeKey;
+      },
+      deep: true,
+      immediate: true,
+    },
+  },
+  mounted() {},
+
+  methods: {
+    async submitHandler() {
+      console.log(this.row);
+      let res = await this.$refs.form?.validate();
+      if (res) {
+        let payLoad = {};
+        let { card } = this.form;
+        console.log(this.form);
+        if (this.isEdit) {
+          let { taskProcessKey, taskNodeKey } = this.myFormData.resultMap;
+          payLoad.updateCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "record_quality_control_card",
+              },
+              conditionMap: {
+                task_process_key: taskProcessKey,
+                task_node_key: taskNodeKey,
+              },
+              commMap: {
+                quality_control_card: card,
+                task_id: this.row.bepTaskPlanKey,
+              },
+            },
+          ];
+        } else {
+          payLoad.insertCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "record_quality_control_card",
+              },
+              addListMap: [
+                {
+                  quality_control_card: card,
+                  task_id: this.row.bepTaskPlanKey,
+                  taskProcessKey: this.row.benTaskProcessKey,
+                  taskNodeKey: this.row.benTaskNodeKey,
+                },
+              ],
+            },
+          ];
+        }
+        submitNodeForm(payLoad).then((response) => {
+          if (response.code == 200) {
+            this.$modal.msgSuccess("保存成功");
+          } else {
+            this.$modal.error("保存失败,请稍后再试");
+          }
+        });
+      }
+    },
+    async getFormData() {
+      let formData = {
+        flag: false,
+        msg: "",
+      };
+      try {
+        let valid = await this.$refs.form.validate();
+        if (valid) {
+          formData.flag = true;
+          formData.data = this.form;
+          return formData;
+        } else {
+          formData.msg = "表单校验异常,请规范填写表单数据";
+          return formData;
+        }
+      } catch (error) {
+        // console.log(error);
+        formData.msg = "表单校验异常,请规范填写表单数据";
+        return formData;
+      }
+    },
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+.fixture {
+  border-top: #e2e1e1 solid 1px;
+  .title {
+    display: flex;
+    flex-direction: row;
+    padding: 10px 0px;
+  }
+  .message {
+    display: flex;
+    /* height: 120px; */
+    width: 700px;
+    border: #f1f1f1 solid 3px;
+    padding-bottom: 5px;
+    flex-wrap: wrap;
+    .list {
+      height: 70px;
+      width: 110px;
+      padding: 10px;
+      display: flex;
+      flex-direction: row;
+      /* justify-content: center; */
+      flex-wrap: wrap;
+      p {
+        text-align: center;
+      }
+      .content {
+        font-weight: bold;
+      }
+    }
+  }
+}
+.material {
+  padding-top: 2px;
+  .title {
+    display: flex;
+    flex-direction: row;
+    padding: 10px 0px;
+  }
+  .message {
+    display: flex;
+    /* height: 120px; */
+    width: 700px;
+    border: #f1f1f1 solid 3px;
+    padding-bottom: 5px;
+    flex-wrap: wrap;
+    .list {
+      height: 70px;
+      width: 110px;
+      padding: 10px;
+      display: flex;
+      flex-direction: row;
+      /* justify-content: center; */
+      flex-wrap: wrap;
+      p {
+        text-align: center;
+      }
+      .content {
+        font-weight: bold;
+      }
+    }
+  }
+}
+.btn {
+  background: rgb(123, 213, 195);
+  border: rgb(123, 213, 195);
+  float: right;
+  border-bottom: #e2e1e1 solid 1px;
+}
+</style>

+ 157 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/ShengChan/SC01.vue

@@ -0,0 +1,157 @@
+<template>
+    <div class="app-container">
+        <el-form :model="form" :rules="rules" ref="form" label-width="100px" :inline="false" size="normal">
+            <el-form-item label="选择货品:" prop="hp">
+              <el-select v-model="form.hp" placeholder="请选择货品">
+                <el-option
+                    v-for="item in form.goodsList"
+                    :key="item.value"
+                    :label="item.goodsname"
+                    :value="item.id"
+                >
+                </el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item label="货品重量:" prop="zl">
+                <el-input v-model.number="form.zl" @input="handleInput"></el-input>
+            </el-form-item>
+            <el-form-item>
+                <el-button type="primary" size="default" @click="submitHandler"
+                  >修改</el-button
+                >
+            </el-form-item>
+        </el-form>
+
+    </div>
+</template>
+
+<script>
+  import { submitNodeForm } from "@/api/bpmprocess/runDialogApi/index";
+export default {
+    name: 'SC01',
+    props: ["formData", "row"],
+    data() {
+        return {
+          isEdit:false,
+          form: {
+              hp: '',
+              zl: ''
+          },
+          rules: {
+                hp: [
+                    { required: true, message: '请选择货品', trigger: 'change' },
+                ],
+                zl: [
+                    { required: true, message: '请输入货品重量', trigger: 'blur' },
+                    { type: 'number', message: '重量必须为数字值',trigger: 'blur' }
+                ]
+                
+            }
+        };
+    },
+    computed: {
+        myFormData() {
+        return this.formData;
+        },
+    },
+    watch: {
+        myFormData: {
+            handler(nval) {
+                this.form = nval.resultMap;
+                this.form.hp = this.form.goodId
+                console.log(this.form);
+                // this.isEdit = this.form.id ? true : false;
+                this.isEdit = this.form.taskKey && this.form.taskNodeKey
+            },
+            deep: true,
+            immediate: true,
+        },
+    },
+
+    mounted() {
+        
+    },
+
+    methods: {
+        handleInput() {
+        if (!/^[1-9]\d*$/.test(this.form.zl)) {
+            this.$message.error('请输入正整数!');
+        }
+      },
+        async submitHandler() {
+          console.log(this.row);
+            let res = await this.$refs.form?.validate();
+            if (res) {
+                let payLoad = {};
+                let { hp, zl } = this.form;
+                if (this.isEdit) {
+                let { taskKey, taskNodeKey } = this.myFormData.resultMap;
+                payLoad.updateCommonEntityList = [
+                    {
+                    basicMap: {
+                        tableName: "plan",
+                    },
+                    conditionMap: {
+                        task_key: taskKey,
+                        task_node_key: taskNodeKey,
+                    },
+                    commMap: {
+                        hp,
+                        plan_now_weight:zl,
+                    },
+                    },
+                ];
+                } else {
+                payLoad.insertCommonEntityList = [
+                    {
+                    basicMap: {
+                        tableName: "plan",
+                    },
+                    addListMap: [
+                        {
+                        hp,
+                        plan_now_weight:zl,
+                        taskKey: this.row.benTaskProcessKey,
+                        taskNodeKey: this.row.benTaskNodeKey,
+                        },
+                    ],
+                },
+            ];
+        }
+        submitNodeForm(payLoad).then((response) => {
+          if (response.code == 200) {
+            this.$modal.msgSuccess("保存成功");
+          } else {
+            this.$modal.error("保存失败,请稍后再试");
+          }
+        });
+      }
+    },
+        async getFormData() {
+      let formData = {
+        flag: false,
+        msg: "",
+      };
+      try {
+        let valid = await this.$refs.form.validate();
+        if (valid) {
+          formData.flag = true;
+          formData.data = this.form;
+          return formData;
+        } else {
+          formData.msg = "表单校验异常,请规范填写表单数据";
+          return formData;
+        }
+      } catch (error) {
+        // console.log(error);
+        formData.msg = "表单校验异常,请规范填写表单数据";
+        return formData;
+      }
+    },
+    },
+};
+</script>
+
+<style lang="scss" scoped>
+
+</style>

+ 151 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/ZhiLiang/ZL1.vue

@@ -0,0 +1,151 @@
+<template>
+    <div class="app-container">
+        <div class="fixture">
+            <div class="title">
+                <i class="el-icon-c-scale-to-original"></i>
+                <span>工装信息</span>
+            </div>
+            <div class="message">
+                <div class="list" v-for="(item,index ) in message" :key="index">
+                   <div class="list-card">
+                    <p> {{ item.title }}</p>
+                    <p class="content"> {{ item.content }} </p>
+                   </div>
+                </div>
+            </div>
+        </div>
+        <div class="material">
+            <div class="title">
+                <i class="el-icon-c-scale-to-original"></i>
+                <span>物料需求信息</span>
+            </div>
+            <div class="message">
+                <div class="list" v-for="(item,index ) in message" :key="index">
+                   <div class="list-card">
+                    <p> {{ item.title }}</p>
+                    <p class="content"> {{ item.content }} </p>
+                   </div>
+                </div>
+            </div>
+        </div>
+        <div class="card">
+            <div class="title"><span>质控卡号</span></div>
+            <el-input v-model="input" placeholder="请输入内容"></el-input>
+        </div>
+        <div class="submit">
+            <el-button type="success" icon="el-icon-success">记录质控卡</el-button>
+        </div>
+    </div>
+</template>
+
+<script>
+export default {
+    name: 'ZL1',
+
+    data() {
+        return {
+            message: [
+                {title: '任务编号', content: 'task_50'},
+                {title: '图号', content: 'drawinng_50'},
+                {title: '投产数量', content: '1'},
+                {title: '牌号', content: '1'},
+                {title: '状态', content: '1'},
+                {title: '标准', content: '1'},
+                {title: '物资名称', content: '1'},
+                {title: '材料/产品', content: '1'},
+                {title: '规格', content: '1'},
+                {title: '尺寸', content: '1'},
+                {title: '备注', content: '1'},
+            ],
+            input: '',
+        };
+    },
+
+    mounted() {
+        
+    },
+
+    methods: {
+        recordValue() {
+            this.$emit('ZL1', this.message[0].content);
+        }
+    },
+};
+</script>
+
+<style lang="scss" scoped>
+.fixture {
+    border-top: #e2e1e1 solid 1px;
+    .title {
+        display: flex;
+        flex-direction: row;
+        padding: 10px 0px; 
+    }
+    .message {
+        display: flex;
+        /* height: 120px; */
+        width: 700px;
+        border: #f1f1f1 solid 3px;
+        padding-bottom: 5px;
+        flex-wrap: wrap;
+        .list {
+            height: 70px;
+            width: 110px;
+            padding: 10px;
+            display: flex;
+            flex-direction: row;
+            /* justify-content: center; */
+            flex-wrap: wrap;
+            p {
+                text-align: center;
+            }
+            .content {
+                font-weight: bold;
+            }
+        }
+    }
+}
+.material {
+    padding-top: 2px;
+    .title {
+        display: flex;
+        flex-direction: row;
+        padding: 10px 0px;
+    }
+    .message {
+        display: flex;
+        /* height: 120px; */
+        width: 700px;
+        border: #f1f1f1 solid 3px;
+        padding-bottom: 5px;
+        flex-wrap: wrap;
+        .list {
+            height: 70px;
+            width: 110px;
+            padding: 10px;
+            display: flex;
+            flex-direction: row;
+            /* justify-content: center; */
+            flex-wrap: wrap;
+            p {
+                text-align: center;
+            }
+            .content {
+                font-weight: bold;
+            }
+        }
+    }
+}
+.card {
+    .title {
+        padding: 10px 0px;
+    }
+}
+.submit {
+    display: flex;
+    flex-direction: row-reverse;
+    padding: 10px 0px;
+    border-bottom: #e2e1e1 solid 1px;
+
+}
+</style>

+ 146 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/test-component/CaiGou/CG02.vue

@@ -0,0 +1,146 @@
+<template>
+  <div>
+    <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form-item label="原材料" prop="ycl">
+        <el-select
+          v-model="form.ycl"
+          placeholder="请选择原材料"
+          clearable
+          filterable
+        >
+          <el-option
+            v-for="item in form.goodsList"
+            :key="item.goodsno"
+            :label="item.goodsname"
+            :value="item.goodsno"
+          >
+          </el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item label="重量" prop="zl">
+        <el-input v-model="form.zl" placeholder="请输入重量" />
+      </el-form-item>
+    </el-form>
+    <div slot="footer" class="dialog-footer">
+      <el-button type="primary" @click="submitHandler">确 定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import { submitNodeForm } from "@/api/bpmprocess/runDialogApi/index";
+export default {
+  name: "CG02",
+  props: ["formData", "row"],
+  data() {
+    return {
+      // 表单参数
+      form: {
+        zl: "",
+        ycl: "",
+      },
+      // 表单校验
+      rules: {
+        ycl: [{ required: true, message: "请选择原材料", trigger: "change" }],
+        zl: { required: true, message: "请输入重量", trigger: "blur" },
+      },
+    };
+  },
+  watch: {
+    myFormData: {
+      handler(nval) {
+        this.form = nval.resultMap;
+      },
+      deep: true,
+      immediate: true,
+    },
+  },
+
+  mounted() {},
+
+  methods: {
+    async submitHandler() {
+      let res = await this.$refs.form?.validate();
+      if (res) {
+        let payLoad = {};
+        let { ycl, zl } = this.form;
+        if (this.isEdit) {
+          payLoad.updateCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "kucun",
+              },
+              conditionMap: {
+                taskKey: this.row.benTaskProcessKey,
+                taskNodeKey: this.row.benTaskNodeKey,
+              },
+              addListMap: [
+                {
+                  ycl,
+                  zl,
+                },
+              ],
+            },
+          ];
+        } else {
+          payLoad.insertCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "kucun",
+              },
+              addListMap: [
+                {
+                  ycl,
+                  zl,
+                  taskKey: this.row.benTaskProcessKey,
+                  taskNodeKey: this.row.benTaskNodeKey,
+                },
+              ],
+            },
+          ];
+        }
+        submitNodeForm(payLoad).then((response) => {
+          if (response.code == 200) {
+            this.$modal.msgSuccess("保存成功");
+          } else {
+            this.$modal.error("保存失败,请稍后再试");
+          }
+        });
+      }
+    },
+    // 获取表单数据
+    async getFormData() {
+      let formData = {
+        flag: false,
+        msg: "",
+      };
+      try {
+        let valid = await this.$refs.form.validate();
+        if (valid) {
+          formData.flag = true;
+          formData.data = this.form;
+          return formData;
+        } else {
+          formData.msg = "表单校验异常,请规范填写表单数据";
+          return formData;
+        }
+      } catch (error) {
+        // console.log(error);
+        formData.msg = "表单校验异常,请规范填写表单数据";
+        return formData;
+      }
+    },
+  },
+
+  computed: {
+    myFormData() {
+      return this.formData;
+    },
+    isEdit() {
+      return this.formData.resultMap?.id ? true : false;
+    },
+  },
+};
+</script>
+
+<style lang="scss" scoped></style>

+ 168 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/test-component/CaiGou/CG1.vue

@@ -0,0 +1,168 @@
+<template>
+  <!-- 采购表单 -->
+  <div class="app-container">
+    <!-- 添加或修改采购单对话框 -->
+    <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form-item label="原材料" prop="ycl">
+        <!-- <el-input v-model="form.ycl" placeholder="请输入原材料" /> -->
+        <el-select
+          v-model="form.ycl"
+          placeholder="请选择原材料"
+          clearable
+          filterable
+        >
+          <el-option
+            v-for="item in goodsList"
+            :key="item.goodsno"
+            :label="item.goodsname"
+            :value="item.goodsno"
+          >
+          </el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item label="供应商" prop="gys">
+        <el-input v-model="form.gys" placeholder="请输入供应商" />
+      </el-form-item>
+      <el-form-item label="重量" prop="zl">
+        <el-input v-model="form.zl" placeholder="请输入重量" />
+      </el-form-item>
+      <el-form-item label="单价" prop="dj">
+        <el-input v-model="form.dj" placeholder="请输入单价" />
+      </el-form-item>
+      <el-form-item label="备注" prop="remark">
+        <el-input v-model="form.remark" placeholder="请输入备注" />
+      </el-form-item>
+    </el-form>
+    <div slot="footer" class="dialog-footer">
+      <el-button type="primary" @click="submitForm">确 定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import { submitNodeForm } from "@/api/bpmprocess/runDialogApi/index";
+export default {
+  name: "CG1",
+  props: ["row", "formData"],
+  data() {
+    return {
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {},
+      isEdit: false, //是否是编辑状态
+    };
+  },
+  created() {},
+  mounted() {
+    this.reset();
+  },
+  watch: {
+    formData: {
+      handler(nval) {
+        if (nval.id) this.isEdit = true;
+        this.form = nval.resultMap;
+      },
+    },
+  },
+  computed: {
+    goodsList() {
+      return this.formData.resultMap?.goodsList || [];
+    },
+  },
+  methods: {
+    // 表单重置
+    reset() {
+      this.form = {
+        ycl: null,
+        gys: null,
+        zl: null,
+        dj: null,
+      };
+      // this.resetForm("form");
+    },
+    /** 提交按钮 */
+    submitForm() {
+      console.log(this.row);
+      this.$refs["form"].validate((valid) => {
+        let { ycl, gys, zl, dj } = this.form;
+
+        let payLoad = {};
+        if (this.isEdit) {
+          payLoad.updateCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "caigou",
+              },
+              // addListMap: [
+              //   {
+              //     ycl,
+              //     gys,
+              //     zl,
+              //     dj,
+              //     taskKey: this.row.benTaskProcessKey,
+              //     taskNodeKey: this.row.benTaskNodeKey,
+              //   },
+              // ],
+              conditionMap: {
+                taskKey: this.row.benTaskProcessKey,
+                taskNodeKey: this.row.benTaskNodeKey,
+              },
+              commMap: {
+                ycl,
+                gys,
+                zl,
+                dj,
+              },
+            },
+          ];
+        } else {
+          payLoad.insertCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "caigou",
+              },
+              addListMap: [
+                {
+                  ycl,
+                  gys,
+                  zl,
+                  dj,
+                  taskKey: this.row.benTaskProcessKey,
+                  taskNodeKey: this.row.benTaskNodeKey,
+                },
+              ],
+            },
+          ];
+        }
+        submitNodeForm(payLoad).then((response) => {
+          this.$modal.msgSuccess("新增成功");
+          this.open = false;
+        });
+      });
+    },
+    // 获取表单数据
+    async getFormData() {
+      let formData = {
+        flag: false,
+        msg: "",
+      };
+      try {
+        let valid = await this.$refs.form.validate();
+        if (valid) {
+          formData.flag = true;
+          formData.data = this.form;
+          return formData;
+        } else {
+          formData.msg = "表单校验异常,请规范填写表单数据";
+          return formData;
+        }
+      } catch (error) {
+        // console.log(error);
+        formData.msg = "表单校验异常,请规范填写表单数据";
+        return formData;
+      }
+    },
+  },
+};
+</script>

+ 192 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/test-component/KuCun/KC02.vue

@@ -0,0 +1,192 @@
+<template>
+  <div class="form-wrap">
+    <el-form
+      :model="form"
+      ref="form"
+      :rules="rules"
+      label-width="100px"
+      :inline="true"
+      size="normal"
+      class="form-body-wrap"
+    >
+      <el-form-item prop="goodsno" label="商品:">
+        <el-select
+          v-model="form.goodsno"
+          placeholder="请选择商品"
+          clearable
+          filterable
+          :disabled="disable"
+        >
+          <el-option
+            v-for="item in myFormData.resultMap.goods"
+            :key="item.id"
+            :label="item.productname"
+            :value="item.id"
+          >
+          </el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item prop="quantitystock" label="入库数量:">
+        <el-input-number
+          v-model="form.quantitystock"
+          controls-position="right"
+          :min="0"
+        />
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" size="default" @click="submitHandler"
+          >确认提交</el-button
+        >
+      </el-form-item>
+
+      <!-- <el-form-item prop="remark" label="备注信息:">
+        <el-input v-model="form.remark"></el-input>
+      </el-form-item> -->
+    </el-form>
+  </div>
+</template>
+
+<script>
+import { submitNodeForm } from "@/api/bpmprocess/runDialogApi/index";
+export default {
+  name: "KC02",
+  props: ["formData", "row"],
+  components: {},
+  data() {
+    return {
+      realFormData: {},
+      disable: false,
+      form: {
+        goodsno: "",
+        quantitystock: 0,
+      },
+      rules: {
+        // goodsno: [{ required: true, message: "请选择材料", trigger: "change" }],
+        quantitystock: [
+          { required: true, message: "请输入生产数量", trigger: "blur" },
+        ],
+      },
+    };
+  },
+  watch: {
+    myFormData: {
+      handler(nval) {
+        this.realFormData = nval;
+        // if (nval?.resultMap.id) {
+        this.form = nval?.resultMap;
+        // }
+      },
+      deep: true,
+      immediate: true,
+    },
+  },
+  computed: {
+    myFormData() {
+      return this.formData;
+    },
+    isEdit() {
+      return this.formData.resultMap?.id ? true : false;
+    },
+  },
+  methods: {
+    async getFormData() {
+      let res = {
+        flag: false,
+        msg: "",
+      };
+      try {
+        let valid = await this.$refs.form.validate();
+        if (valid) {
+          res.flag = true;
+          res.data = this.form;
+          return res;
+        } else {
+          res.msg = "表单校验异常,请规范填写表单数据";
+          return res;
+        }
+      } catch (error) {
+        // console.log(error);
+        res.msg = "表单校验异常,请规范填写表单数据";
+        return res;
+      }
+    },
+    resetForm() {
+      this.$refs.form.resetFields();
+      this.$nextTick(this.setDefaultGoods);
+    },
+    setDefaultGoods() {
+      if (this.myFormData.resultMap.goods.length == 1) {
+        this.form.goodsno = this.myFormData.resultMap.goods[0].id;
+        this.disable = true;
+      }
+    },
+    async submitHandler() {
+      let res = await this.$refs.form?.validate();
+      if (res) {
+        let payLoad = {};
+        let { goodsno, quantitystock } = this.form;
+        if (this.isEdit) {
+          let { taskKey, taskNodeKey } = this.myFormData.resultMap;
+          payLoad.updateCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "warehouse",
+              },
+              // addListMap: [
+              //   {
+              //     goodsno,
+              //     quantitystock,
+              //     taskKey: this.row.benTaskProcessKey,
+              //     taskNodeKey: this.row.benTaskNodeKey,
+              //   },
+              // ],
+              conditionMap: {
+                task_key: taskKey,
+                task_node_key: taskNodeKey,
+              },
+              commMap: {
+                goodsno,
+                quantitystock,
+              },
+            },
+          ];
+        } else {
+          payLoad.insertCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "warehouse",
+              },
+              addListMap: [
+                {
+                  goodsno,
+                  quantitystock,
+                  taskKey: this.row.benTaskProcessKey,
+                  taskNodeKey: this.row.benTaskNodeKey,
+                },
+              ],
+            },
+          ];
+        }
+        submitNodeForm(payLoad).then((response) => {
+          if (response.code == 200) {
+            this.$modal.msgSuccess("保存成功");
+          } else {
+            this.$modal.error("保存失败,请稍后再试");
+          }
+        });
+      }
+    },
+  },
+  mounted() {
+    this.resetForm();
+  },
+};
+</script>
+
+<style scoped lang="scss">
+.form-body-wrap {
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+}
+</style>

+ 86 - 0
zkqy-ui/src/views/bussiness/dialogCompments/dialogCompments/test-component/KuCun/KC1.vue

@@ -0,0 +1,86 @@
+<template>
+  <!-- 采购表单 -->
+  <div class="app-container">
+    <!-- 添加或修改采购单对话框 -->
+    <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form-item label="原材料" prop="ycl">
+        <el-input v-model="form.ycl" placeholder="请输入原材料" />
+      </el-form-item>
+      <el-form-item label="重量" prop="zl">
+        <el-input v-model="form.zl" placeholder="请输入重量" />
+      </el-form-item>
+      <el-form-item label="备注" prop="remark">
+        <el-input v-model="form.remark" placeholder="请输入备注" />
+      </el-form-item>
+    </el-form>
+    <!-- <div slot="footer" class="dialog-footer">
+      <el-button type="primary" @click="submitForm">确 定</el-button>
+      <el-button @click="cancel">取 消</el-button>
+    </div> -->
+  </div>
+</template>
+
+<script>
+export default {
+  name: "CG1",
+  data() {
+    return {
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {},
+    };
+  },
+  created() {},
+  methods: {
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        ycl: null,
+        zl: null,
+        remark: null,
+        createById: null,
+        createBy: null,
+        createTime: null,
+        updateById: null,
+        updateBy: null,
+        updateTime: null,
+        delFlag: null,
+      };
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate((valid) => {
+        // addCaigou(this.form).then((response) => {
+        //   this.$modal.msgSuccess("新增成功");
+        //   this.open = false;
+        //   this.getList();
+        // });
+      });
+    },
+    // 获取表单数据
+    async getFormData() {
+      let formData = {
+        flag: false,
+        msg: "",
+      };
+      try {
+        let valid = await this.$refs.form.validate();
+        if (valid) {
+          formData.flag = true;
+          formData.data = this.form;
+          return formData;
+        } else {
+          formData.msg = "表单校验异常,请规范填写表单数据";
+          return formData;
+        }
+      } catch (error) {
+        // console.log(error);
+        formData.msg = "表单校验异常,请规范填写表单数据";
+        return formData;
+      }
+    },
+  },
+};
+</script>

+ 78 - 11
zkqy-ui/src/views/bussiness/processMange.vue

@@ -1,26 +1,26 @@
 <template>
   <div class="process-mange-wrap">
     <!-- <el-card shadow="always" :body-style="{ padding: '20px' }"> -->
-    <el-row v-show="false">
+    <el-row>
       <el-col :xs="24" :md="8" :xl="8" class="col">
         <div class="statistic-wrap">
           <div class="discription">
-            <span class="title">我的处理</span>
-            <span class="sub-title">需要我处理的流程</span>
+            <span class="title">已完成</span>
+            <span class="sub-title">已经完成的管道数</span>
           </div>
-          <span class="data">{{ tableData.length }}</span>
+          <span class="data">{{ doneNum }}</span>
         </div>
       </el-col>
       <el-col :xs="24" :md="8" :xl="8" class="col">
         <div class="statistic-wrap">
           <div class="discription">
-            <span class="title">已完成</span>
-            <span class="sub-title">已完成的</span>
+            <span class="title">进行中</span>
+            <span class="sub-title">正在进行的管道数</span>
           </div>
-          <span class="data">0</span>
+          <span class="data">{{ doingNum }}</span>
         </div>
       </el-col>
-      <el-col :xs="24" :md="8" :xl="8" class="col">
+      <!-- <el-col :xs="24" :md="8" :xl="8" class="col">
         <div class="statistic-wrap">
           <div class="discription">
             <span class="title">完成</span>
@@ -28,7 +28,7 @@
           </div>
           <span class="data">0</span>
         </div>
-      </el-col>
+      </el-col> -->
     </el-row>
     <!-- </el-card> -->
     <div class="main-area">
@@ -71,7 +71,7 @@
           <el-table-column type="selection" width="55" align="center" />
           <el-table-column type="index" width="50" align="center" />
           <el-table-column
-            v-for="col in columns"
+            v-for="col in newColumn"
             :prop="col.prop"
             :key="col.prop"
             :label="col.label"
@@ -282,6 +282,8 @@ export default {
   dicts: ["bpm_type", "task_process_state"],
   data() {
     return {
+      doneNum: 0, //已完成数
+      doingNum: 0, //进行中数
       row: {}, //当前操作行数据
       myForm: "", //自定义表单组件名
       // 节点弹窗title
@@ -356,9 +358,44 @@ export default {
       backExceptionTaskList: ["GY06"], //特殊回退表单组件列表
     };
   },
-  computed: {},
+  computed: {
+    newColumn() {
+      if (this.queryParams.taskProcessState == "3") {
+        return [
+          {
+            prop: "bepTaskKey",
+            label: "任务编号",
+          },
+          {
+            prop: "bepTaskName",
+            label: "任务名称",
+          },
+          {
+            prop: "bepTaskProcessType",
+            label: "任务流程类型",
+          },
+          {
+            prop: "bepTaskProcessState",
+            label: "任务流程状态",
+          },
+          {
+            prop: "benCreateBy",
+            label: "创建人",
+          },
+          {
+            prop: "benCreateTime",
+            label: "创建时间",
+          },
+        ];
+      } else {
+        return this.columns;
+      }
+    },
+  },
   mounted() {
     this.getList();
+    this.getDoneNumber();
+    this.getDoingNumber();
   },
   methods: {
     // 获取列表数据
@@ -375,6 +412,34 @@ export default {
         }
       );
     },
+    getDoneNumber() {
+      let params = {
+        pageNum: 1,
+        pageSize: 10,
+        taskProcessState: "3",
+      };
+      processList(params).then((res) => {
+        if (res.code == 200) {
+          this.doneNum = res.total;
+        } else {
+          this.$message.error("网络异常,请稍后再试");
+        }
+      });
+    },
+    getDoingNumber() {
+      let params = {
+        pageNum: 1,
+        pageSize: 10,
+        taskProcessState: "0",
+      };
+      processList(params).then((res) => {
+        if (res.code == 200) {
+          this.doingNum = res.total;
+        } else {
+          this.$message.error("网络异常,请稍后再试");
+        }
+      });
+    },
     // 获取表单数据
     async getFormData() {
       let formData = {};
@@ -542,6 +607,8 @@ export default {
         if (res.code == 200) {
           this.$message.success("运行成功!");
           this.getList();
+          this.getDoneNumber();
+          this.getDoingNumber();
           this.open = false;
         }
       });

+ 12 - 8
zkqy-ui/src/views/bussiness/progressShow.vue

@@ -12,10 +12,10 @@
             <i class="el-icon-warning icon"></i>
             <span>触发异常</span>
           </div>
-          <div class="tag-item">
+          <!-- <div class="tag-item">
             <i class="el-icon-warning-outline icon"></i>
             <span>新插入</span>
-          </div>
+          </div> -->
           <div class="tag-item">
             <span class="current-node">当前节点</span>
           </div>
@@ -47,12 +47,15 @@
         </div>
       </div>
       <div class="show-body">
-        <TaskList
-          v-for="(item, index) of tableData"
-          :key="index + 1"
-          :num="index + 1"
-          :cardData="item"
-        ></TaskList>
+        <template v-if="tableData.length > 0">
+          <TaskList
+            v-for="(item, index) of tableData"
+            :key="index + 1"
+            :num="index + 1"
+            :cardData="item"
+          ></TaskList>
+        </template>
+        <el-empty v-else description="暂无数据"></el-empty>
         <pagination
           v-show="total > 0"
           :total="total"
@@ -70,6 +73,7 @@ import TaskList from "./components/taskList.vue";
 import { processList, getListLog } from "@/api/bpmprocess/run/executeProcess";
 import getNodeSequence from "@/utils/bpmn/getNodeSequence";
 import { xmlStr2XmlObj } from "@/utils/bpmn/xml";
+
 export default {
   name: "ProgressShow",
   props: [],

+ 1 - 1
zkqy-ui/src/views/index.vue

@@ -55,7 +55,7 @@
       <div class="name">{{ nickName }}</div>
       <div class="tenant-name">{{ tenantName }}</div>
       <div class="date">{{ date }}</div>
-      <div class="title">欢迎登录CALL智能制造平台</div>
+      <div class="title">欢迎登录Mec OS 工业应用操作系统</div>
     </div>
   </div>
 </template>

+ 4 - 4
zkqy-ui/src/views/login.vue

@@ -10,7 +10,7 @@
         <el-col :span="12" class="comlogo"></el-col>
         <el-col :span="12">
           <div class="grid-content bg-purple-dark title">
-            智能制造平台
+            工业应用操作系统
           </div></el-col
         >
       </el-row>
@@ -351,8 +351,8 @@ export default {
   margin-top: 57px;
   width: 194px;
   height: 64px;
-  /*background: url(../assets/images/mec_logo_login.png);*/
-  background: url(../assets/images/comp.png);
+  background: url(../assets/images/mec_logo_login.png);
+  // background: url(../assets/images/comp.png);
   /* box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25); */
   opacity: 1;
 }
@@ -366,7 +366,7 @@ export default {
 }
 
 .title {
-  width: 212px;
+  width: 258px;
   height: 35px;
   margin-top: 69px;
   margin-left: 17px;

+ 2 - 2
zkqy-ui/src/views/system/role/index.vue

@@ -16,7 +16,7 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="租户名称" prop="tenantName">
+      <!-- <el-form-item label="租户名称" prop="tenantName">
         <el-input
           v-model="queryParams.tenantName"
           placeholder="请输入租户名称"
@@ -24,7 +24,7 @@
           style="width: 240px"
           @keyup.enter.native="handleQuery"
         />
-      </el-form-item>
+      </el-form-item> -->
       <el-form-item label="权限字符" prop="roleKey">
         <el-input
           v-model="queryParams.roleKey"

+ 23 - 23
zkqy-ui/src/views/tablelist/components/cardCountPanel.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <div class="cardBox" v-show="showCount" >
+    <div class="cardBox" v-show="showCount">
       <el-card
         shadow="hover"
         :body-style="{ padding: '20px' }"
@@ -11,11 +11,19 @@
         <el-tooltip
           class="item"
           effect="dark"
-          :content="item.statisticTitle ? item.statisticTitle : item.statisticDescription"
+          :content="
+            item.statisticTitle
+              ? item.statisticTitle
+              : item.statisticDescription
+          "
           placement="top-start"
         >
           <div class="title">
-            <span class="left">{{ item.statisticTitle ? item.statisticTitle : item.statisticDescription }}</span>
+            <span class="left">{{
+              item.statisticTitle
+                ? item.statisticTitle
+                : item.statisticDescription
+            }}</span>
             <span class="right">{{ item.result }}</span>
           </div>
         </el-tooltip>
@@ -26,31 +34,24 @@
       </el-card>
     </div>
   </div>
-
-  
 </template>
 
 <script>
-
 export default {
   name: "cardcountpanel",
   props: {
-    showCount : {
+    showCount: {
       type: Boolean,
     },
-    statisticList:{
+    statisticList: {
       type: Array,
-    }
+    },
   },
-  data () {
-   return {
-    
-   }
- },
-  methods: {
-   
-  }
-}
+  data() {
+    return {};
+  },
+  methods: {},
+};
 </script>
 
 <style lang="scss" scoped>
@@ -62,11 +63,11 @@ export default {
   display: flex;
 }
 .card {
-  width:100%;
+  width: 100%;
   /* flex-basis: 15%; */
   margin-bottom: 10px;
   margin-right: 15px;
-  /* min-width: 130px; */
+  max-width: 200px;
   .title {
     /* width:20%; */
     /* display: flex; */
@@ -77,11 +78,11 @@ export default {
     overflow: hidden;
     text-overflow: ellipsis;
 
-    .left{
+    .left {
       float: left;
     }
 
-    .right{
+    .right {
       float: right;
       font-size: 20px;
       font-weight: 800;
@@ -107,5 +108,4 @@ export default {
     font-size: 30px;
   }
 }
-  
 </style>

+ 3 - 2
zkqy-ui/vue.config.js

@@ -8,7 +8,7 @@ const MonacoWebpackPlugin = require('monaco-editor-webpack-plugin');
 
 const CompressionPlugin = require('compression-webpack-plugin')
 
- const name = process.env.VUE_APP_TITLE || '客户端系统' // 网页标题
+const name = process.env.VUE_APP_TITLE || '客户端系统' // 网页标题
 
 const port = process.env.port || process.env.npm_config_port || 81 // 端口
 const isDev = process.env.NODE_ENV !== "production";
@@ -38,7 +38,8 @@ module.exports = {
     proxy: {
       // detail: https://cli.vuejs.org/config/#devserver-proxy
       [process.env.VUE_APP_BASE_API]: {
-        target: `http://192.168.110.83:8066`,
+        // target: `http://192.168.110.59:8066`,
+        target: `http://62.234.61.92:8066`,
         changeOrigin: true,
         pathRewrite: {
           ['^' + process.env.VUE_APP_BASE_API]: ''