From c35b25fc7b3f039bb525b73b4f72e9e2abf8b5d9 Mon Sep 17 00:00:00 2001 From: 南骏 池 <chiffly@163.com> Date: 星期四, 29 五月 2025 15:51:05 +0800 Subject: [PATCH] 1.首检生成表格 --- H5/IPQC_SJ/Add.aspx | 63 ++++++++++++++++++++ H5/Js/IPQC_SJ/Add.js | 81 +++++++++++++++++++++------ 2 files changed, 125 insertions(+), 19 deletions(-) diff --git a/H5/IPQC_SJ/Add.aspx b/H5/IPQC_SJ/Add.aspx index a479f73..d7d8e2d 100644 --- a/H5/IPQC_SJ/Add.aspx +++ b/H5/IPQC_SJ/Add.aspx @@ -75,6 +75,28 @@ .van-checkbox--checked .van-checkbox__label { color: #1989fa; } + + .grid-header, .grid-row { + display: flex; + gap: 8px; + padding: 4px 0; + border-bottom: 1px solid #ebedf0; + font-size: 0.20rem; + } + + .input-cell { + flex: 1; + display: flex; + justify-content: center; + font-size: 0.20rem; + } + + .van-field__control { + text-align: center; + padding: 4px 8px; + border: 1px solid #ccc; + border-radius: 4px; + } </style> </asp:Content> @@ -443,7 +465,44 @@ </van-checkbox> </van-checkbox-group> </div> + <van-button + block + type="danger" + @click="createTb" + style="margin-top: 8px;" + >鐢熸垚琛ㄦ牸</van-button> </van-cell-group> + <div v-if="tableData.length > 0" id="temperature-table" style="margin-top: 20px;"> + <van-cell-group> + <!-- 琛ㄥご --> + <van-cell> + <div class="grid-header"> + <div v-for="(header, index) in [headers[0], ...headers.slice(1)]" + :key="index" + :style="index === 0 ? 'width: 100px' : 'flex: 1'"> + {{ header }} + </div> + </div> + </van-cell> + + <!-- 鏁版嵁琛� --> + <van-cell v-for="(row, rowIndex) in tableData" :key="rowIndex"> + <div class="grid-row"> + <div style="width: 100px">{{ row.temperature }}</div> + <div v-for="(cell, colIndex) in row.values" + :key="colIndex" + class="input-cell"> + <van-field + v-model="formData.temperatureData[row.temperature.replace('鈩�','')][cell.flow]" + type="number" + input-align="center" + placeholder="鈩�" + :style="{ width: '80px' }"/> + </div> + </div> + </van-cell> + </van-cell-group> + </div> </div> </van-popup> @@ -453,8 +512,10 @@ <%--<comback ></comback>--%> </asp:Content> <asp:Content ID="Content4" ContentPlaceHolderID="ContentPlaceHolder4" Runat="Server"> - <script src="../Js/IPQC_SJ/Add.js?<%=111112111144 %>"></script> + <script src="../Js/IPQC_SJ/Add.js?<%=111112111145 %>"></script> </asp:Content> + + diff --git a/H5/Js/IPQC_SJ/Add.js b/H5/Js/IPQC_SJ/Add.js index e87d5e3..f63bff6 100644 --- a/H5/Js/IPQC_SJ/Add.js +++ b/H5/Js/IPQC_SJ/Add.js @@ -2,28 +2,33 @@ el: '#app', data: function () { return { + tableData: [], // 鐢熸垚鐨勮〃鏍兼暟鎹� + formData: { // 琛ㄥ崟鏁版嵁 + temperatureData: {} // 瀛樺偍娓╁害鏁版嵁 + }, + headers: [], showZr: false, waterOptions: [ { value: '甯告俯姘�', text: '甯告俯姘�' }, - { value: '0', text: '0鈩�' }, - { value: '5', text: '5鈩�' }, - { value: '15', text: '15鈩�' }, - { value: '35', text: '35鈩�' }, - { value: '55', text: '55鈩�' }, - { value: '75', text: '75鈩�' }, - { value: '100', text: '100鈩�' } + { value: '0鈩�', text: '0鈩�' }, + { value: '5鈩�', text: '5鈩�' }, + { value: '15鈩�', text: '15鈩�' }, + { value: '35鈩�', text: '35鈩�' }, + { value: '55鈩�', text: '55鈩�' }, + { value: '75鈩�', text: '75鈩�' }, + { value: '100鈩�', text: '100鈩�' } ], flowOptions: [ - { value: '100', text: '100ml' }, - { value: '200', text: '200ml' }, - { value: '300', text: '300ml' }, - { value: '400', text: '400ml' }, - { value: '500', text: '500ml' }, - { value: '600', text: '600ml' }, - { value: '700', text: '700ml' }, - { value: '800', text: '800ml' }, - { value: '900', text: '900ml' }, - { value: '1000', text: '1000ml' } + { value: '100ml', text: '100ml' }, + { value: '200ml', text: '200ml' }, + { value: '300ml', text: '300ml' }, + { value: '400ml', text: '400ml' }, + { value: '500ml', text: '500ml' }, + { value: '600ml', text: '600ml' }, + { value: '700ml', text: '700ml' }, + { value: '800ml', text: '800ml' }, + { value: '900ml', text: '900ml' }, + { value: '1000ml', text: '1000ml' } ], selectedWater: [],// 宸查�夋按娓╁�� selectedFlow: [], // 宸查�夋祦閲忓�� @@ -515,5 +520,45 @@ that.init();//鍒锋柊妫�楠岄」鐩� }) }, + createTb() { + // 娓呯┖鏃ф暟鎹� + this.tableData = []; + this.formData.temperatureData = {}; + + // 鏍¢獙閫夋嫨 + if (this.selectedWater.length === 0 || this.selectedFlow.length === 0) { + this.$toast.fail('璇峰厛閫夋嫨姘存俯鍜屾祦閲�'); + return; + } + + // 鐢熸垚琛ㄥご + const headers = ['璁惧畾娓╁害','瀹為檯娓╁害', ...this.selectedFlow.sort().map(f => f )]; + this.headers = headers; + + // 鐢熸垚琛屾暟鎹� + this.tableData = this.selectedWater.sort((a,b) => a - b).map(water => { + const row = { + temperature: water === '甯告俯姘�' ? water : water, + values: this.selectedFlow.map(flow => ({ + flow: flow, + value: '' // 鍒濆绌哄�� + })) + }; + + // 鍒濆鍖栬〃鍗曟暟鎹� + this.formData.temperatureData[water] = {}; + this.selectedFlow.forEach(flow => { + this.formData.temperatureData[water][flow] = ''; + }); + + return row; + }); + + // 鑷姩婊氬姩鍒拌〃鏍煎尯鍩� + setTimeout(() => { + const tableEl = document.getElementById('temperature-table'); + if (tableEl) tableEl.scrollIntoView({ behavior: 'smooth' }); + }, 100); + }, } -}) \ No newline at end of file +}) -- Gitblit v1.9.3