From 0aec07c9110afb5c02976f90e2319886c8a14f54 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周四, 19 12月 2024 10:59:56 +0800
Subject: [PATCH] 22
---
LA24030_LuLiPackageLine_Web/src/views/main/ReportCenter/storageView/index.vue | 587 +++++++++++++++++++++++++++++++++-------------------------
1 files changed, 330 insertions(+), 257 deletions(-)
diff --git a/LA24030_LuLiPackageLine_Web/src/views/main/ReportCenter/storageView/index.vue b/LA24030_LuLiPackageLine_Web/src/views/main/ReportCenter/storageView/index.vue
index 154e743..b497832 100644
--- a/LA24030_LuLiPackageLine_Web/src/views/main/ReportCenter/storageView/index.vue
+++ b/LA24030_LuLiPackageLine_Web/src/views/main/ReportCenter/storageView/index.vue
@@ -1,311 +1,384 @@
<template>
- <div>
- <el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
- <el-form :model="formModel" ref="queryForm" labelWidth="90">
- <el-row>
- <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10">
- <el-form-item label="鍏抽敭瀛�">
- <el-input v-model="formModel.searchKey" clearable=""
- placeholder="搴撲綅缂栧彿,瀹瑰櫒缂栧彿" />
- </el-form-item>
- </el-col>
+ <div>
+ <!-- <el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+ <el-form :model="formModel" ref="queryForm" labelWidth="90">
+ <el-row>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10">
+ <el-form-item label="鍏抽敭瀛�">
+ <el-input v-model="formModel.searchKey" clearable="" placeholder="搴撲綅缂栧彿,瀹瑰櫒缂栧彿" />
+ </el-form-item>
+ </el-col>
- <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
<el-form-item label="鎵�鍦ㄥ簱鍖�" prop="areaCode">
<el-select v-model="formModel.areaCode" placeholder="璇烽�夋嫨鎵�鍦ㄥ簱鍖�">
- <el-option v-for="(item,index) in arr1" :key="index" :value="item.code" :label="`[${item.code}] ${item.value}`"></el-option>
+ <el-option v-for="(item, index) in arr1" :key="index" :value="item.code" :label="`[${item.code}] ${item.value}`"></el-option>
</el-select>
</el-form-item>
- </el-col>
- <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
- <el-form-item label="搴撲綅缂栧彿:">
- <el-input v-model.trim="formModel.WareLocationCode" placeholder="璇疯緭鍏ュ簱浣嶇紪鍙�" clearable></el-input>
- </el-form-item>
- </el-col>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="搴撲綅缂栧彿:">
+ <el-input v-model.trim="formModel.WareLocationCode" placeholder="璇疯緭鍏ュ簱浣嶇紪鍙�" clearable></el-input>
+ </el-form-item>
+ </el-col>
- <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
- <el-form-item label="瀹瑰櫒缂栧彿:">
- <el-input v-model.trim="formModel.WareContainerCode" placeholder="璇疯緭鍏ュ鍣ㄧ紪鍙�" clearable></el-input>
- </el-form-item>
- </el-col>
-
- <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10">
- <el-form-item label="搴撲綅鐘舵��:">
- <el-select v-model="formModel.inventoryType" clearable placeholder="璇烽�夋嫨搴撲綅鐘舵��" style="width: 100%;">
- <el-option v-for="item in storageStatusEnum" :key="item.value" :label="item.title"
- :value="item.value" />
- </el-select>
- </el-form-item>
- </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUIWmsStockQuan">
+ <el-form-item label="瀹瑰櫒缂栧彿:">
+ <el-input v-model.trim="formModel.WareContainerCode" placeholder="璇疯緭鍏ュ鍣ㄧ紪鍙�" clearable></el-input>
+ </el-form-item>
+ </el-col>
- <!-- 闅愯棌鐨勭瓫閫夋潯浠� -->
- <!-- <template>
- <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10">
- <el-form-item label="閿佸畾鐘舵��:">
- <el-select v-model="formModel.isLocked" clearable placeholder="璇烽�夋嫨閿佸畾鐘舵��">
- <el-option v-for="item in isAutoEnum" :key="item.value" :label="item.title" :value="item.value" />
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10">
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10">
+ <el-form-item label="搴撲綅鐘舵��:">
+ <el-select v-model="formModel.inventoryType" clearable placeholder="璇烽�夋嫨搴撲綅鐘舵��" style="width: 100%">
+ <el-option v-for="item in storageStatusEnum" :key="item.value" :label="item.title" :value="item.value" />
+ </el-select>
+ </el-form-item>
+ </el-col>
- <el-form-item label="宸烽亾:">
- <el-select v-model="formModel.Lane" clearable placeholder="璇烽�夋嫨宸烽亾">
- <el-option v-for="item in LangEnum" :key="item.value" :label="item.title" :value="item.value" />
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10">
- <el-form-item label="鎵�灞炴帓:">
- <el-select v-model="formModel.Row" clearable placeholder="璇烽�夋嫨鎵�灞炴帓">
- <el-option v-for="(item, index) in strorageRowEnum" :key="item" :label="`绗�${index + 1}鎺抈"
- :value="index + 1" />
- </el-select>
- </el-form-item>
- </el-col>
- </template> -->
- <!-- <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10">
- <el-form-item label-width="20px">
- <el-button type="primary" icon="el-icon-search" @click="getLocationPage(2)">鏌ヨ</el-button>
- <el-button icon="ele-Refresh" @click="() => formModel = {}"> 閲嶇疆 </el-button>
- </el-form-item>
- </el-col> -->
+ <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb10">
+ <el-form-item>
+ <el-button-group style="display: flex; align-items: center">
+ <el-button type="primary" icon="ele-Search" @click="getLocationPage(2)"> 鏌ヨ </el-button>
+ <el-button icon="ele-Refresh" @click="() => (formModel = {})"> 閲嶇疆 </el-button>
+ <el-button icon="ele-ZoomIn" @click="changeAdvanceQueryUIWmsStockQuan" v-if="!showAdvanceQueryUIWmsStockQuan" style="margin-left: 5px"> 楂樼骇鏌ヨ </el-button>
+ <el-button icon="ele-ZoomOut" @click="changeAdvanceQueryUIWmsStockQuan" v-if="showAdvanceQueryUIWmsStockQuan" style="margin-left: 5px"> 闅愯棌 </el-button>
+ </el-button-group>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ </el-card> -->
+ <el-card class="full-table" shadow="hover" style="margin-top: 5px">
+ <div class="msi-content" style="height: calc(100vh - 200px)">
+ <!-- 缁熻鍖哄煙 -->
+ <count-view :countData="countList"></count-view>
+ <div class="box100">
+ <div v-for="(item, index) in dataList" :key="index" class="box100Inner">
+ <p class="t1">{{ item.laneNo }}#鎺�</p>
+ <div class="storage-grid">
+ <div class="row rowMy0">
+ <!-- <div class="cell" v-for="(cell, cellIndex) in item.data" :key="cellIndex" v-show="cellIndex < 20"> -->
+ <div class="cell" v-for="(cell, cellIndex) in item.data" :key="cellIndex" v-show="cellIndex >= 40 && cellIndex <= 60">
+ <span class="textK" :style="{ background: setBgColor(cell.placeStatus,cell.upi), boxShadow: '0 1px 1px' + setBgColor(cell.placeStatus,cell.upi) }" @click="handleClick(cell)">
+ {{ cell.placeCode }}
+ </span>
+ </div>
+ </div>
+ <div class="row rowMy1">
+ <div class="cell" v-for="(cell, cellIndex) in item.data" :key="cellIndex" v-show="cellIndex >= 20 && cellIndex < 40">
+ <span class="textK" :style="{ background: setBgColor(cell.placeStatus,cell.upi), boxShadow: '0 1px 1px' + setBgColor(cell.placeStatus,cell.upi) }" @click="handleClick(cell)">
+ {{ cell.placeCode }}
+ </span>
+ </div>
+ </div>
+ <div class="row rowMy2">
+ <!-- <div class="cell" v-for="(cell, cellIndex) in item.data" :key="cellIndex" v-show="cellIndex >= 40 && cellIndex <= 60"> -->
+ <div class="cell" v-for="(cell, cellIndex) in item.data" :key="cellIndex" v-show="cellIndex < 20">
+ <span class="textK" :style="{ background: setBgColor(cell.placeStatus,cell.upi), boxShadow: '0 1px 1px' + setBgColor(cell.placeStatus,cell.upi) }" @click="handleClick(cell)">
+ <!-- {{ cell.laneNo }} -->
+ {{ cell.placeCode }}
+ <!-- {{ cell.layerNo }}{{ cell.columnNo }} -->
+ </span>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </el-card>
- <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb10">
- <el-form-item>
- <el-button-group style="display: flex; align-items: center">
- <el-button type="primary" icon="ele-Search" @click="getLocationPage(2)">
- 鏌ヨ
- </el-button>
- <el-button icon="ele-Refresh" @click="() => formModel = {}">
- 閲嶇疆
- </el-button>
- <el-button icon="ele-ZoomIn" @click="changeAdvanceQueryUIWmsStockQuan"
- v-if="!showAdvanceQueryUIWmsStockQuan" style="margin-left: 5px">
- 楂樼骇鏌ヨ
- </el-button>
- <el-button icon="ele-ZoomOut" @click="changeAdvanceQueryUIWmsStockQuan"
- v-if="showAdvanceQueryUIWmsStockQuan" style="margin-left: 5px">
- 闅愯棌
- </el-button>
-
- </el-button-group>
- </el-form-item>
- </el-col>
-
- </el-row>
-
- </el-form>
- </el-card>
-
-<el-card class="full-table" shadow="hover" style="margin-top: 5px">
- <div class="msi-content" style="height:calc(100vh - 200px)">
- <!-- 缁熻鍖哄煙 -->
- <count-view :countData="countList"></count-view>
- <!-- 搴撲綅灞曠ず -->
- <content-view :contentData="dataList"></content-view>
- </div>
-</el-card>
-
- </div>
+ <!-- 璇︽儏寮规 -->
+ <prop-detail ref="propDetailRef"></prop-detail>
+ </div>
</template>
<script lang="ts" setup>
-import { nextTick, onMounted, ref } from 'vue'
-//import SearchBar from '@/components/SearchBar.vue'
+import { getCurrentInstance, nextTick, onMounted, ref } from 'vue';
import { getStorageView } from '/@/api/main/ReportCenter/storageView';
-
-import CountView from './component/CountView.vue'
-import ContentView from './component/ContentView.vue'
+import CountView from './component/CountView.vue';
+import ContentView from './component/ContentView.vue';
import { ElMessage } from 'element-plus';
import { handleSlectDataWmsArea } from '/@/utils/selectData';
+import PropDetail from './component/propDetail.vue';
+const { proxy }: any = getCurrentInstance(); // 璁块棶瀹炰緥涓婁笅鏂� proxy鍚屾椂鏀寔寮�鍙� 绾夸笂鐜
const showAdvanceQueryUIWmsStockQuan = ref(false);
// 鏀瑰彉楂樼骇鏌ヨ鐨勬帶浠舵樉绀虹姸鎬�
const changeAdvanceQueryUIWmsStockQuan = () => {
- showAdvanceQueryUIWmsStockQuan.value = !showAdvanceQueryUIWmsStockQuan.value;
+ showAdvanceQueryUIWmsStockQuan.value = !showAdvanceQueryUIWmsStockQuan.value;
};
-const LangEnum = ref([ // 鎵�灞炲贩閬�
- {
- value: '1',
- title: '1宸烽亾'
- },
- {
- value: '2',
- title: '2宸烽亾'
- },
- {
- value: '3',
- title: '3宸烽亾'
- }
-])
-const isAutoEnum: any[] = [
- {
- title: '鍚�',
- value: 0
- },
- {
- title: '鏄�',
- value: 1
- }
-]
+// public enum StockStatusEnum
+// {
+// [Description("鍦ㄥ簱")]
+// 鍦ㄥ簱 = 1,
+// [Description("宸插喕缁�")]
+// 宸插喕缁� = 2,
+
+// [Description("榻愬寘寰呭嚭搴�")]
+// 榻愬寘寰呭嚭搴� = 3,
+
+// [Description("浜哄伐寮哄埗寰呭嚭搴�")]
+// 浜哄伐寮哄埗寰呭嚭搴� = 4
+// }
-//搴撲綅鐘舵��
-const storageStatusEnum = ref([
- {
- value: '0',
- title: '绌哄簱浣�'
- },
- {
- value: '1',
- title: '绌哄鍣ㄥ簱浣�'
- },
- {
- value: '2',
- title: '鏈夎揣搴撲綅'
- },
-])
+const setBgColor = (type: number,upi:string): string => {
+ let color = '';
+ //debugger
+ if(upi!=null){
+ color = '#2BA6FF'; //钃濊壊 鍦ㄥ簱
+ return color;
+ }
+ switch (type) {
+ case 5:
+ color = '#FF0000'; //绾㈣壊 宸插喕缁�
+ break;
+ default:
+ color = '#F6C285'; //姗樿壊 姝e父
+ break;
+ }
+ return color;
+};
-const strorageRowEnum = ref<any>([]) // 鎵�灞炴帓
//鍒楄〃璇锋眰鏁版嵁
const formModel = ref({
- Lane: '',
- Row: '',
- MaterialCode: '',
- inventoryType: '',
- ShelfCode: '',
- Code: '',
- ContainerCode: '',
- Status: '',
- isLocked: '',
- areaCode:"A2",
- PageNo: 1,
- PageSize: 10000
-})
+ Lane: '',
+ Row: '',
+ MaterialCode: '',
+ inventoryType: '',
+ ShelfCode: '',
+ Code: '',
+ ContainerCode: '',
+ Status: '',
+ isLocked: '',
+ areaCode: 'A2',
+ PageNo: 1,
+ PageSize: 10000,
+});
//搴撲綅鍒楄〃鏁版嵁
const dataList = ref([]);
//缁熻鐨勬暟鎹�
-const countList = ref([
- {
- type: 0,
- title: '绌哄簱浣�:',
- count: 0
- },
- {
- type: 1,
- title: '鏈夎揣搴撲綅锛堢┖瀹瑰櫒锛�:',
- count: 0
- },
- {
- type: 2,
- title: '鏈夎揣搴撲綅锛堢墿鏂欙級:',
- count: 0
- },
- // {
- // type: 3,
- // title: '閿佸畾搴撲綅:',
- // count: 0
- // },
- // {
- // type: 4,
- // title: '绂佺敤搴撲綅:',
- // count: 0
- // }
+let countList = ref([
+ {
+ type: 0,
+ title: '鎬诲簱浣�:',
+ count: 0,
+ },
+ {
+ type: 1,
+ title: '鏈夎揣搴撲綅:',
+ count: 0,
+ },
+ {
+ type: 2,
+ title: '鏃犺揣搴撲綅:',
+ count: 0,
+ },
+ {
+ type: 3,
+ title: '閿佸畾搴撲綅:',
+ count: 0,
+ },
+ // {
+ // type: 4,
+ // title: '绂佺敤搴撲綅:',
+ // count: 0
+ // }
]);
-
-// 鎸夌収琛屽垪鐩稿悓杩涜鍒嗙粍
-const sortClass = (sortData: any) => {
- const groupBy = (array: any, f: any) => {
- let groups = {};
- array.forEach((o) => {
- let group = JSON.stringify(f(o));
- groups[group] = groups[group] || [];
- groups[group].push(o);
- });
- return Object.keys(groups).map((group) => {
- return groups[group];
- });
- };
- const sorted = groupBy(sortData, (item) => {
- return item.lane + '-' + item.column; // 杩斿洖闇�瑕佸垎缁勭殑瀵硅薄
- });
- return sorted;
-};
-
-// 鍒嗙粍鍓�
-// console.log(listData);
-// 鍒嗙粍鍚�
-// console.log(sortClass(listData));
//搴撲綅鍥惧垪琛�
const getLocationPage = async (param?: any) => {
- if (param && param == 2) {
- if (formModel.value.Lane == "" && formModel.value.Row != "") {
- ElMessage.warning("璇烽�夋嫨鎵�灞炲贩閬擄紒")
- return
- }
- }
+ var res = await getStorageView(Object.assign(formModel.value, {}));
+ if (res.data.code == 200) {
+ const { data } = res;
+ const result = data.result;
+ // 缁熻
+ var hasMaterialCount = result.filter((item: any) => item.stockStatus == 1).length || 0;
+ var noMaterialCount = result.length - hasMaterialCount;
+ countList.value = [
+ {
+ type: '',
+ title: '鎬诲簱浣�:',
+ count: result.length || 0,
+ },
+ {
+ type: 1,
+ title: '鏈夎揣搴撲綅:',
+ count: hasMaterialCount || 0,
+ },
+ {
+ type: 18,
+ title: '鏃犺揣搴撲綅:',
+ count: noMaterialCount || 0,
+ },
+ {
+ type: 2,
+ title: '閿佸畾搴撲綅:',
+ count: result.filter((item: any) => item.placeStatus == 5).length || 0,
+ },
+ ];
- if(!formModel.value.areaCode){
- ElMessage.warning("璇烽�夋嫨鎵�鍦ㄥ簱鍖猴紒")
- return
- }
+ // 鍋囪 result 鏄竴涓寘鍚涓璞$殑鏁扮粍锛屾瘡涓璞¢兘鏈� LaneNo 鍜� ColumnNo 灞炴��
+ const groupedResult = [];
- var res = await getStorageView(Object.assign(formModel.value, {}));
- if (res.data.code == 200) {
- const { data } = res;
- const result = data.result;
- strorageRowEnum.value = new Array(4).fill(0);
- countList.value[0].count = result.emptyLocation || 0; //绌哄簱浣�
- countList.value[1].count = result.emptyContainerLocation || 0; //绌哄鍣ㄥ簱浣�
- countList.value[2].count = result.materialLocation || 0; //鏈夎揣搴撲綅
- // countList.value[3].count = result.lockedLocation || 0; //閿佸畾搴撲綅
- // countList.value[4].count = result.disableLocation || 0; //绂佺敤搴撲綅
- debugger
- if (res.data.result.lanes) {
- res.data.result.lanes.forEach((element: any) => {
- element.rows.forEach((item: any) => {
- item.rowLocations2 = sortClass(item.rowLocations)
- })
- });
- }
- dataList.value = res.data.result.lanes;
+ // 鎸� LaneNo 鍒嗙粍 杈撳嚭缁撴瀯
+ // {
+ // 'laneNo':1,
+ // 'data': [{ }, {}, {}]
+ // }
- }
+ // 鍋囪缁撴灉鏁版嵁瀛樺偍鍦� result 鏁扮粍涓�
-}
-getLocationPage()
+ // 鎸� laneNo 鍒嗙粍
+ result.forEach((item) => {
+ const laneNo = item.laneNo;
+
+ // 鏌ユ壘鏄惁宸茬粡鏈夎 laneNo 鐨勫璞�
+ let laneGroup = groupedResult.find((group) => group.laneNo == laneNo);
+
+ // 濡傛灉娌℃湁锛屽垱寤轰竴涓柊鐨勫垎缁�
+ if (!laneGroup) {
+ laneGroup = { laneNo: laneNo, data: [] };
+ groupedResult.push(laneGroup);
+ }
+
+ // 灏嗗綋鍓嶉」娣诲姞鍒板搴旂殑鍒嗙粍鐨� data 鏁扮粍涓�
+ laneGroup.data.push(item);
+ });
+
+ // 鏈�缁堣緭鍑虹粨鏋�
+ console.log(8888888);
+ console.log(groupedResult);
+
+ // groupedResult 鍒嗙粍鎸� data涓殑columnNo 鍐嶇粍 灏嗘瘡缁�20 涓厓绱�
+
+ function initializeStorage3() {
+ const rows = 3; // 鎬绘帓鏁�
+ const cellsPerRow = 20; // 姣忔帓鐨勬牸瀛愭暟
+
+ for (let i = 0; i < rows; i++) {
+ let row = []; // 姣忔帓鐨勬牸瀛愭暟缁�
+ for (let j = 1; j <= cellsPerRow; j++) {
+ // 鏍规嵁琛屾暟鍜屽垪鏁扮敓鎴愬簱浣嶅悕绉�
+ row.push(` ${i * cellsPerRow + j}`);
+ }
+ storageList.value.push(row); // 灏嗘瘡鎺掔殑搴撲綅鏁扮粍鎺ㄥ叆鎬绘暟缁�
+ }
+ }
+
+ dataList.value = groupedResult; // 濡傛灉瑕佸皢缁撴灉璧嬪�肩粰 dataList
+ }
+};
+getLocationPage();
const resetFormModel = JSON.parse(JSON.stringify(formModel.value));
//閲嶇疆鎼滅储
const resetForm = () => {
- formModel.value = JSON.parse(JSON.stringify(resetFormModel));
- // getLocationPage()
+ formModel.value = JSON.parse(JSON.stringify(resetFormModel));
+ // getLocationPage()
};
-let arr1:any =ref("") //涓嬫媺璇诲彇鎺ュ彛
+let arr1: any = ref(''); //涓嬫媺璇诲彇鎺ュ彛
// 椤甸潰鍔犺浇鏃�
-onMounted(async () => {
- nextTick(async () => {
- arr1.value = await handleSlectDataWmsArea({
- page: 1,
- pageSize: 1000,
- total: 0,
- IsDisabled:false,
- isVirtually:false,
- areaType:1 //绔嬩綋搴�
- }); //涓嬫媺璇诲彇鎺ュ彛
- });
+onMounted(async () => {});
+
+//==================88888888888888======================
+
+const storageList = ref([]); // 鐢ㄤ簬瀛樻斁搴撲綅鐨勬暟缁�
+
+onMounted(() => {
+ initializeStorage(); // 鍦ㄧ粍浠舵寕杞藉悗鍒濆鍖栧簱浣嶆暟鎹�
});
+function initializeStorage() {
+ const rows = 3; // 鎬绘帓鏁�
+ const cellsPerRow = 20; // 姣忔帓鐨勬牸瀛愭暟
+ for (let i = 0; i < rows; i++) {
+ let row = []; // 姣忔帓鐨勬牸瀛愭暟缁�
+ for (let j = 1; j <= cellsPerRow; j++) {
+ // 鏍规嵁琛屾暟鍜屽垪鏁扮敓鎴愬簱浣嶅悕绉�
+ row.push(` ${i * cellsPerRow + j}`);
+ }
+ storageList.value.push(row); // 灏嗘瘡鎺掔殑搴撲綅鏁扮粍鎺ㄥ叆鎬绘暟缁�
+ }
+}
+
+const dialogVisible = ref(false); // 寮规鍙鎬�
+
+const handleClick = (row: any) => {
+ proxy.$refs['propDetailRef'].openDialog(row);
+};
</script>
<style lang="less" scoped>
.msi-content {
- overflow: auto;
+ overflow: auto;
}
-</style>
\ No newline at end of file
+
+.storage-grid {
+ display: flex;
+ flex-direction: column; /* 鍨傜洿鎺掑垪姣忎竴鎺� */
+ width: 100%;
+ // border: 1px solid red;
+}
+
+.row {
+ display: block; /* 姘村钩鎺掑垪姣忎竴琛� */
+}
+
+.cell {
+ border: 1px solid #c1c1c1; /* 姣忎釜鏍煎瓙鐨勯粦绾� */
+ height: 50px; /* 姣忎釜鏍煎瓙鐨勯珮搴� */
+ display: inline-block;
+ justify-content: center;
+ align-items: center; /* 灞呬腑鏄剧ず鍐呭 */
+ width: 50px;
+}
+
+.rowMy0 {
+ // background-color: #f9f9f9; /* 绗竴鎺掔殑鑳屾櫙鑹� */
+ div {
+ height: 80px;
+ }
+}
+
+.rowMy1 {
+ // background-color: #eeeeee; /* 绗簩鎺掔殑鑳屾櫙鑹� */
+ div {
+ height: 30px;
+ }
+}
+
+.rowMy2 {
+ // background-color: #dddddd; /* 绗笁鎺掔殑鑳屾櫙鑹� */
+ div {
+ height: 50px;
+ }
+}
+
+.box100 {
+ .box100Inner {
+ display: inline-block;
+ // width: 50%;
+ }
+}
+.t1 {
+ margin: 10px 0 2px 0;
+ font-size: 16px !important;
+ padding-bottom: 10px;
+}
+.textK {
+ display: flex; /* 浣跨敤 Flexbox 甯冨眬 */
+ flex-direction: column;
+ font-size: 12px;
+ text-align: center;
+ width: 100%;
+ height: 100%;
+ color: white;
+ cursor: pointer;
+}
+</style>
--
Gitblit v1.9.3