From c635d78b479510ebe2556a420948effcd30a0731 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期六, 21 十二月 2024 18:40:43 +0800
Subject: [PATCH] 新建德森项目分支

---
 zy-asrs-admin/src/components/orderDetlLog/edit.vue |  626 ++++++++++++++++++++++++++++----------------------------
 1 files changed, 313 insertions(+), 313 deletions(-)

diff --git a/zy-asrs-admin/src/components/orderDetlLog/edit.vue b/zy-asrs-admin/src/components/orderDetlLog/edit.vue
index f2584d3..a3fd522 100644
--- a/zy-asrs-admin/src/components/orderDetlLog/edit.vue
+++ b/zy-asrs-admin/src/components/orderDetlLog/edit.vue
@@ -1,313 +1,313 @@
-<script setup>
-import { getCurrentInstance, ref, watch, reactive } from 'vue';
-import { useRouter } from "vue-router";
-import { get, post, postForm } from '@/utils/request.js'
-import { message, Modal } from 'ant-design-vue';
-import { logout } from '@/config.js';
-import { formatMessage } from '@/utils/localeUtils.js';
-import useTableSearch from '@/utils/tableUtils.jsx';
-const context = getCurrentInstance()?.appContext.config.globalProperties;
-
-const router = useRouter();
-
-const TABLE_KEY = 'table-locDetl';
-
-let tableData = ref([]);
-let deleteDetlId = ref([]);
-let orderId = ref(null);
-getColumns();
-
-const {
-    getColumnSearchProps,
-} = useTableSearch();
-
-const state = reactive({
-    selectedRowKeys: [],
-    loading: false,
-    columns: [],
-});
-
-state.columns = [
-    {
-        title: '#',
-        dataIndex: '_id',
-        width: 60,
-        ellipsis: true,
-    },
-    {
-        title: formatMessage('db.man_loc_detl.matnr', '鍟嗗搧缂栧彿'),
-        dataIndex: 'matnr',
-        width: 140,
-        ellipsis: true,
-    },
-    {
-        title: formatMessage('db.man_loc_detl.maktx', '鍟嗗搧鍚嶇О'),
-        dataIndex: 'maktx',
-        width: 140,
-        ellipsis: true,
-    },
-    {
-        title: formatMessage('db.man_loc_detl.batch', '鎵瑰彿'),
-        dataIndex: 'batch',
-        width: 140,
-        ellipsis: true,
-        editable: true,
-    },
-    {
-        title: formatMessage('db.man_loc_detl.anfme', '鏁伴噺'),
-        dataIndex: 'anfme',
-        width: 140,
-        ellipsis: true,
-        editable: true,
-    },
-    {
-        title: formatMessage('db.man_loc_detl.qty', '宸插畬鎴愭暟閲�'),
-        dataIndex: 'qty',
-        width: 140,
-        ellipsis: true,
-        editable: true,
-    },
-    {
-        title: formatMessage('db.man_loc_detl.workQty', '浣滀笟涓暟閲�'),
-        dataIndex: 'workQty',
-        width: 140,
-        ellipsis: true,
-        editable: true,
-    },
-    {
-        title: formatMessage('db.man_loc_detl.memo', '澶囨敞'),
-        dataIndex: 'memo',
-        width: 140,
-        ellipsis: true,
-        editable: true,
-    },
-];
-
-const fieldList = [];
-//鍔犺浇鎵╁睍瀛楁
-async function getColumns() {
-    let fieldResp = await post('/api/matField/list', {
-        fieldType: 1
-    })
-    let fieldResult = fieldResp.data;
-    let tmp = state.columns;
-    if (fieldResult.code == 200) {
-        let data = fieldResult.data;
-
-        data.forEach((item) => {
-            tmp.push({
-                title: formatMessage(item.language, item.describe),
-                name: item.name,
-                dataIndex: item.name,
-                key: item.name,
-                width: 140,
-                editable: true,
-            })
-
-            fieldList.push(item.name);
-        })
-
-        tmp.push({
-            title: formatMessage('common.operation', '鎿嶄綔'),
-            name: 'oper',
-            dataIndex: 'oper',
-            key: 'oper',
-            width: 140,
-        })
-
-        state.columns = tmp;
-    } else if (result.code === 401) {
-        message.error(result.msg);
-        logout()
-    } else {
-        message.error(result.msg);
-    }
-}
-
-const openAddDetl = ref(false);
-const matChecked = ref([]);
-const matQueryList = ref(null);
-const matSelectList = ref([]);
-const addDetl = () => {
-    openAddDetl.value = true;
-}
-
-const handleAddDetlOk = () => {
-    let origin = tableData.value;
-    let index = origin.length + 1;
-    matSelectList.value.forEach((item) => {
-        let data = {
-            _id: index++,
-            matnr: item.data.matnr,
-            maktx: item.data.maktx,
-            batch: '',
-            anfme: 0,
-            qty: 0,
-            workQty: 0,
-            memo: ''
-        };
-        fieldList.forEach((field) => {
-            data[field] = '';
-        })
-        origin.push(data)
-    })
-    tableData.value = origin;
-
-    openAddDetl.value = false;
-    matSelectList.value = [];
-    matChecked.value = [];
-}
-
-const handleAddDetlCancel = () => {
-    matSelectList.value = [];
-    matChecked.value = [];
-}
-
-const handleSearch = val => {
-    matQuery(val);
-}
-
-const handleSelect = (value, option) => {
-    let flag = true;
-    matSelectList.value.forEach((item) => {
-        if (item.value == value) {
-            flag = false;
-        }
-    })
-
-    if (flag) {
-        matSelectList.value.push(option)
-    }
-}
-
-const handleDeselect = (value, option) => {
-    let tmp = [];
-    matSelectList.value.forEach((item) => {
-        if (item.value != value) {
-            tmp.push(item);
-        }
-    })
-
-    matSelectList.value = tmp;
-}
-
-matQuery(null);
-function matQuery(condition) {
-    post('/api/mat/page', {
-        current: 1,
-        pageSize: 100,
-        condition: condition
-    }).then((resp) => {
-        let result = resp.data;
-        let tmp = []
-        result.data.records.forEach((item) => {
-            tmp.push({
-                value: item.matnr,
-                label: item.matnr,
-                data: item
-            })
-        })
-        matQueryList.value = tmp;
-    })
-}
-
-const handleDel = (record) => {
-    let tmp = [];
-    tableData.value.forEach((item) => {
-        if (item._id != record._id) {
-            tmp.push(item);
-        }
-    })
-
-    //閲嶅缓绱㈠紩
-    let index = 1;
-    tmp.forEach((item) => {
-        item._id = index++;
-    })
-
-    if (record.detlId != undefined) {
-        deleteDetlId.value.push(record.detlId);
-    }
-
-    tableData.value = tmp;
-}
-
-watch(orderId, (newVal, oldVal) => {
-    if(newVal == undefined || newVal == null) {
-        tableData.value = [];
-        return;
-    }
-
-    get("/api/orderDetl/orderId/" + newVal, {}).then((resp) => {
-        let result = resp.data;
-        let index = 1;
-        let tmp = [];
-        result.data.forEach((item) => {
-            let data = {
-                _id: index++,
-                detlId: item.id,
-                matnr: item.mat$.matnr,
-                maktx: item.mat$.maktx,
-                batch: item.batch,
-                anfme: item.anfme,
-                qty: item.qty,
-                workQty: item.workQty,
-                memo: item.memo
-            };
-            fieldList.forEach((field) => {
-                data[field] = item[field];
-            })
-            tmp.push(data)
-        })
-        tableData.value = tmp;
-    })
-    
-})
-
-defineExpose({
-    tableData,
-    orderId,
-    deleteDetlId,
-})
-
-</script>
-
-<script>
-export default {
-    name: 'orderDetlComponent'
-}
-</script>
-
-<template>
-    <div>
-        <div class="table-header">
-            <a-button @click="addDetl()" type="primary">{{ formatMessage('page.add', '娣诲姞鏄庣粏') }}</a-button>
-        </div>
-        <a-table :data-source="tableData" :defaultExpandAllRows="false" :key="TABLE_KEY" rowKey="id"
-            :scroll="{ y: 768 }" :columns="state.columns">
-            <template #bodyCell="{ column, record, index }">
-                <template v-if="column.dataIndex === 'oper'">
-                    <div style="display: flex;justify-content: space-evenly;">
-                        <a-button type="link" danger @click="handleDel(record)">{{ formatMessage('page.delete', '鍒犻櫎')
-                            }}</a-button>
-                    </div>
-                </template>
-
-                <template v-if="column.editable">
-                    <div>
-                        <a-input v-model:value="record[column.dataIndex]" />
-                    </div>
-                </template>
-            </template>
-        </a-table>
-
-        <a-modal v-model:open="openAddDetl" :title="formatMessage('component.orderDetl.edit.addDetl', '娣诲姞鏄庣粏')"
-            @ok="handleAddDetlOk" @cancel="handleAddDetlCancel">
-            <a-select v-model:value="matChecked" :options="matQueryList" mode="multiple"
-                :placeholder="formatMessage('component.orderDetl.edit.selectMat', '璇烽�夋嫨鐗╂枡')" @search="handleSearch"
-                @select="handleSelect" @deselect="handleDeselect"></a-select>
-        </a-modal>
-    </div>
-</template>
-
-<style></style>
+<script setup>
+import { getCurrentInstance, ref, watch, reactive } from 'vue';
+import { useRouter } from "vue-router";
+import { get, post, postForm } from '@/utils/request.js'
+import { message, Modal } from 'ant-design-vue';
+import { logout } from '@/config.js';
+import { formatMessage } from '@/utils/localeUtils.js';
+import useTableSearch from '@/utils/tableUtils.jsx';
+const context = getCurrentInstance()?.appContext.config.globalProperties;
+
+const router = useRouter();
+
+const TABLE_KEY = 'table-locDetl';
+
+let tableData = ref([]);
+let deleteDetlId = ref([]);
+let orderId = ref(null);
+getColumns();
+
+const {
+    getColumnSearchProps,
+} = useTableSearch();
+
+const state = reactive({
+    selectedRowKeys: [],
+    loading: false,
+    columns: [],
+});
+
+state.columns = [
+    {
+        title: '#',
+        dataIndex: '_id',
+        width: 60,
+        ellipsis: true,
+    },
+    {
+        title: formatMessage('db.man_loc_detl.matnr', '鍟嗗搧缂栧彿'),
+        dataIndex: 'matnr',
+        width: 140,
+        ellipsis: true,
+    },
+    {
+        title: formatMessage('db.man_loc_detl.maktx', '鍟嗗搧鍚嶇О'),
+        dataIndex: 'maktx',
+        width: 140,
+        ellipsis: true,
+    },
+    {
+        title: formatMessage('db.man_loc_detl.batch', '鎵瑰彿'),
+        dataIndex: 'batch',
+        width: 140,
+        ellipsis: true,
+        editable: true,
+    },
+    {
+        title: formatMessage('db.man_loc_detl.anfme', '鏁伴噺'),
+        dataIndex: 'anfme',
+        width: 140,
+        ellipsis: true,
+        editable: true,
+    },
+    {
+        title: formatMessage('db.man_loc_detl.qty', '宸插畬鎴愭暟閲�'),
+        dataIndex: 'qty',
+        width: 140,
+        ellipsis: true,
+        editable: true,
+    },
+    {
+        title: formatMessage('db.man_loc_detl.workQty', '浣滀笟涓暟閲�'),
+        dataIndex: 'workQty',
+        width: 140,
+        ellipsis: true,
+        editable: true,
+    },
+    {
+        title: formatMessage('db.man_loc_detl.memo', '澶囨敞'),
+        dataIndex: 'memo',
+        width: 140,
+        ellipsis: true,
+        editable: true,
+    },
+];
+
+const fieldList = [];
+//鍔犺浇鎵╁睍瀛楁
+async function getColumns() {
+    let fieldResp = await post('/api/matField/list', {
+        fieldType: 1
+    })
+    let fieldResult = fieldResp.data;
+    let tmp = state.columns;
+    if (fieldResult.code == 200) {
+        let data = fieldResult.data;
+
+        data.forEach((item) => {
+            tmp.push({
+                title: formatMessage(item.language, item.describe),
+                name: item.name,
+                dataIndex: item.name,
+                key: item.name,
+                width: 140,
+                editable: true,
+            })
+
+            fieldList.push(item.name);
+        })
+
+        tmp.push({
+            title: formatMessage('common.operation', '鎿嶄綔'),
+            name: 'oper',
+            dataIndex: 'oper',
+            key: 'oper',
+            width: 140,
+        })
+
+        state.columns = tmp;
+    } else if (result.code === 401) {
+        message.error(result.msg);
+        logout()
+    } else {
+        message.error(result.msg);
+    }
+}
+
+const openAddDetl = ref(false);
+const matChecked = ref([]);
+const matQueryList = ref(null);
+const matSelectList = ref([]);
+const addDetl = () => {
+    openAddDetl.value = true;
+}
+
+const handleAddDetlOk = () => {
+    let origin = tableData.value;
+    let index = origin.length + 1;
+    matSelectList.value.forEach((item) => {
+        let data = {
+            _id: index++,
+            matnr: item.data.matnr,
+            maktx: item.data.maktx,
+            batch: '',
+            anfme: 0,
+            qty: 0,
+            workQty: 0,
+            memo: ''
+        };
+        fieldList.forEach((field) => {
+            data[field] = '';
+        })
+        origin.push(data)
+    })
+    tableData.value = origin;
+
+    openAddDetl.value = false;
+    matSelectList.value = [];
+    matChecked.value = [];
+}
+
+const handleAddDetlCancel = () => {
+    matSelectList.value = [];
+    matChecked.value = [];
+}
+
+const handleSearch = val => {
+    matQuery(val);
+}
+
+const handleSelect = (value, option) => {
+    let flag = true;
+    matSelectList.value.forEach((item) => {
+        if (item.value == value) {
+            flag = false;
+        }
+    })
+
+    if (flag) {
+        matSelectList.value.push(option)
+    }
+}
+
+const handleDeselect = (value, option) => {
+    let tmp = [];
+    matSelectList.value.forEach((item) => {
+        if (item.value != value) {
+            tmp.push(item);
+        }
+    })
+
+    matSelectList.value = tmp;
+}
+
+matQuery(null);
+function matQuery(condition) {
+    post('/api/mat/page', {
+        current: 1,
+        pageSize: 100,
+        condition: condition
+    }).then((resp) => {
+        let result = resp.data;
+        let tmp = []
+        result.data.records.forEach((item) => {
+            tmp.push({
+                value: item.matnr,
+                label: item.matnr,
+                data: item
+            })
+        })
+        matQueryList.value = tmp;
+    })
+}
+
+const handleDel = (record) => {
+    let tmp = [];
+    tableData.value.forEach((item) => {
+        if (item._id != record._id) {
+            tmp.push(item);
+        }
+    })
+
+    //閲嶅缓绱㈠紩
+    let index = 1;
+    tmp.forEach((item) => {
+        item._id = index++;
+    })
+
+    if (record.detlId != undefined) {
+        deleteDetlId.value.push(record.detlId);
+    }
+
+    tableData.value = tmp;
+}
+
+watch(orderId, (newVal, oldVal) => {
+    if(newVal == undefined || newVal == null) {
+        tableData.value = [];
+        return;
+    }
+
+    get("/api/orderDetl/orderId/" + newVal, {}).then((resp) => {
+        let result = resp.data;
+        let index = 1;
+        let tmp = [];
+        result.data.forEach((item) => {
+            let data = {
+                _id: index++,
+                detlId: item.id,
+                matnr: item.mat$.matnr,
+                maktx: item.mat$.maktx,
+                batch: item.batch,
+                anfme: item.anfme,
+                qty: item.qty,
+                workQty: item.workQty,
+                memo: item.memo
+            };
+            fieldList.forEach((field) => {
+                data[field] = item[field];
+            })
+            tmp.push(data)
+        })
+        tableData.value = tmp;
+    })
+    
+})
+
+defineExpose({
+    tableData,
+    orderId,
+    deleteDetlId,
+})
+
+</script>
+
+<script>
+export default {
+    name: 'orderDetlComponent'
+}
+</script>
+
+<template>
+    <div>
+        <div class="table-header">
+            <a-button @click="addDetl()" type="primary">{{ formatMessage('page.add', '娣诲姞鏄庣粏') }}</a-button>
+        </div>
+        <a-table :data-source="tableData" :defaultExpandAllRows="false" :key="TABLE_KEY" rowKey="id"
+            :scroll="{ y: 768 }" :columns="state.columns">
+            <template #bodyCell="{ column, record, index }">
+                <template v-if="column.dataIndex === 'oper'">
+                    <div style="display: flex;justify-content: space-evenly;">
+                        <a-button type="link" danger @click="handleDel(record)">{{ formatMessage('page.delete', '鍒犻櫎')
+                            }}</a-button>
+                    </div>
+                </template>
+
+                <template v-if="column.editable">
+                    <div>
+                        <a-input v-model:value="record[column.dataIndex]" />
+                    </div>
+                </template>
+            </template>
+        </a-table>
+
+        <a-modal v-model:open="openAddDetl" :title="formatMessage('component.orderDetl.edit.addDetl', '娣诲姞鏄庣粏')"
+            @ok="handleAddDetlOk" @cancel="handleAddDetlCancel">
+            <a-select v-model:value="matChecked" :options="matQueryList" mode="multiple"
+                :placeholder="formatMessage('component.orderDetl.edit.selectMat', '璇烽�夋嫨鐗╂枡')" @search="handleSearch"
+                @select="handleSelect" @deselect="handleDeselect"></a-select>
+        </a-modal>
+    </div>
+</template>
+
+<style></style>

--
Gitblit v1.9.1