From 92ff846fb659c62037a32b1d8c15eae9df9d9b54 Mon Sep 17 00:00:00 2001
From: zenglf <18502938215@163.com>
Date: 星期一, 18 九月 2023 13:24:30 +0800
Subject: [PATCH] Merge branch 'develop' of http://117.34.109.166:18448/r/vue_mdc_430

---
 src/views/eam/modules/equipment/ProcessParametersList.vue |  260 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 260 insertions(+), 0 deletions(-)

diff --git a/src/views/eam/modules/equipment/ProcessParametersList.vue b/src/views/eam/modules/equipment/ProcessParametersList.vue
new file mode 100644
index 0000000..c0fcba9
--- /dev/null
+++ b/src/views/eam/modules/equipment/ProcessParametersList.vue
@@ -0,0 +1,260 @@
+<template>
+  <a-card :bordered="false">
+    <a-button
+      v-if="equipmentSelectionRows.length == 1 && this.dataSource.length == 0"
+      @click="handleAdd"
+      type="primary"
+      icon="plus"
+    >鏂板</a-button>
+    <div>
+      <a-table
+        ref="table"
+        size="middle"
+        bordered
+        rowKey="id"
+        :columns="columns"
+        :dataSource="dataSource"
+        :pagination=false
+        :loading="loading"
+        @change="handleTableChange"
+      >
+
+        <template
+          v-for="col in columns"
+          :slot="col.dataIndex"
+          slot-scope='text, record, index'
+        >
+          <div :key="col.dataIndex">
+
+            <span v-if="col.dataIndex == 'remark'">
+              <j-ellipsis
+                :value="text"
+                :length="10"
+              />
+            </span>
+
+            <a-input-number
+              :value="text"
+              v-if="col.dataIndex == 'parametersValue'"
+              @change="(e)=>handleChange(e, record.key, col, index)"
+              style="width: 100%"
+            />
+
+            <span v-if="col.dataIndex == 'action'">
+              <a-button
+                type="primary"
+                @click="handleEdit(record)"
+              >鎻愪氦</a-button>
+            </span>
+
+          </div>
+        </template>
+
+      </a-table>
+    </div>
+
+    <!-- 琛ㄥ崟鍖哄煙 -->
+    <process-parameters-modal
+      ref="modalForm"
+      @ok="modalFormOk"
+    ></process-parameters-modal>
+
+  </a-card>
+</template>
+
+<script>
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import { getAction, postAction } from '@/api/manage'
+import JInput from '@/components/jeecg/JInput'
+import Tooltip from 'ant-design-vue/es/tooltip'
+import JEllipsis from "@/components/jeecg/JEllipsis";
+
+import ProcessParametersModal from './ProcessParametersModal'
+
+export default {
+  name: "ProcessParametersList",
+  mixins: [JeecgListMixin],
+  components: {
+    JInput,
+    Tooltip,
+    JEllipsis,
+    ProcessParametersModal,
+  },
+  data() {
+    return {
+      description: '宸ヨ壓鍙傛暟',
+      // 琛ㄥご
+      columns: [
+        {
+          title: '#',
+          dataIndex: '',
+          key: 'rowIndex',
+          width: 60,
+          align: "center",
+          customRender: function (t, r, index) {
+            return parseInt(index) + 1;
+          }
+        },
+        {
+          title: '宸ヨ壓鍙傛暟缂栫爜',
+          align: "center",
+          dataIndex: 'processParametersNum',
+        },
+        {
+          title: '宸ヨ壓鍙傛暟鍚嶇О',
+          align: "center",
+          dataIndex: 'processParametersName',
+        },
+        {
+          title: '璁¢噺鍗曚綅',
+          align: "center",
+          dataIndex: 'processParametersUnitName',
+        },
+        {
+          title: '鍙傛暟鍊�',
+          align: "center",
+          dataIndex: 'parametersValue',
+          scopedSlots: {
+            customRender: 'parametersValue'
+          },
+          width: 120,
+        },
+        {
+          title: '澶囨敞',
+          align: "center",
+          dataIndex: 'remark',
+          scopedSlots: {
+            customRender: 'remark'
+          },
+        },
+        {
+          title: '鎿嶄綔',
+          align: "center",
+          dataIndex: 'action',
+          scopedSlots: {
+            customRender: 'action'
+          },
+          width: 100,
+        },
+      ],
+      url: {
+        list: "/eam/equipmentProcessParameters/list",
+        edit: "/eam/equipmentProcessParameters/edit",
+      },
+      equipmentSelectionRows: [],
+      equipmentId: '',
+    }
+  },
+  watch: {
+    equipmentId() {
+      this.queryParam = {};
+      this.queryParam.equipmentId = this.equipmentId;
+      this.loadData(1);
+    },
+  },
+  mounted() {
+    this.$bus.$on('equipmentSelectionRows', (data) => {
+      this.equipmentSelectionRows = data
+    })
+  },
+  methods: {
+
+    handleAdd: function () {
+      this.$refs.modalForm.add();
+      this.$refs.modalForm.title = "璁惧宸ヨ壓鍙傛暟缁戝畾";
+      this.$refs.modalForm.disableSubmit = false;
+      this.$refs.modalForm.equipmentId = this.equipmentSelectionRows[0].id
+    },
+
+    modalFormOk() {
+      this.loadData(1);
+    },
+
+    handleEdit(record) {
+      this.loading = true;
+      if (record.parametersValue === "" || record.parametersValue === null) {
+        this.$message.warning("鍙傝�冨�间笉鑳戒负绌猴紒")
+        this.loading = false;
+        return
+      }
+      postAction(this.url.edit, record).then((res) => {
+        if (res.success) {
+          this.$message.success(res.message);
+          this.loadData()
+        } else {
+          this.$message.warning(res.message);
+        }
+      }).finally(() => {
+        this.loading = false;
+      });
+    },
+
+    handleChange(value, key, column, index) {
+      let that = this;
+      const temp = [...that.dataSource];
+      const target = temp.filter(item => key === item.key)[index];
+      if (target) {
+        target[column.dataIndex] = value;
+        if ('parametersValue' == column.dataIndex) {
+          target['parametersValue'] = value;
+        }
+        //鏄剧ず甯﹁繃鏉ョ殑鏁版嵁
+        that.dataSource = temp;
+      }
+    },
+
+    loadData(arg) {
+      if (!this.url.list) {
+        this.$message.error("璇疯缃畊rl.list灞炴��!")
+        return
+      }
+      if (arg === 1) {
+        this.ipagination.current = 1;
+      }
+      var params = this.getQueryParams();//鏌ヨ鏉′欢
+      if (this.equipmentId == '') {
+        params.equipmentId = '-1';
+      }
+      this.loading = true;
+      getAction(this.url.list, params).then((res) => {
+        if (res.success) {
+          this.dataSource = res.result.records || res.result;
+          if (res.result.total) {
+            this.ipagination.total = res.result.total;
+          } else {
+            this.ipagination.total = 0;
+          }
+        } else {
+          this.$message.warning(res.message)
+        }
+      }).finally(() => {
+        this.loading = false
+      })
+    },
+  },
+}
+</script>
+
+<style lang="less" scoped>
+@import '~@assets/less/common.less';
+/deep/ .frozenRowClass {
+  color: #c9c9c9;
+}
+.success {
+  color: green;
+}
+.error {
+  color: red;
+}
+.fontweight {
+  font-weight: bold;
+}
+.fontweightGreen {
+  font-weight: bold;
+  color: green;
+}
+.ant-card {
+  margin-left: -30px;
+  margin-right: -30px;
+}
+</style>
\ No newline at end of file

--
Gitblit v1.9.3