可编辑表格 (4)
- 格式:docx
- 大小:15.52 KB
- 文档页数:5
%@ page import="java.sql.*"%> ">
钢筋基本锚固、搭接长度
参照《06G112建筑结构设计常用数据》
1基本锚固长度
1。
1 非抗震设计受力钢筋的锚固长度(mm)
表1.1
1、砼强度等级C15、钢筋种类HPB235的受拉钢筋的锚固长度为37d,受压钢筋的
锚固长度为26d;
2、HRB335
、HRB400和RRB400级的环氧树脂涂层钢筋,其锚固长度应按表中数值乘以修正系数1。
25;
3、当钢筋在砼施工过程中易受扰动(如滑模施工)时,其锚固长度应按表中数值乘以修
正系数1。
1;
4、带肋钢筋在锚固区的砼保护层厚度大于纲纪直径的3倍且配有箍筋时,其锚固长度
可按表中数值乘以修正系数0。
8;
5、当HRB335、HRB400R和RB400级纵向受拉钢筋末端采用机械锚固措施时,包
括附加锚固端头在内的锚固长度可取表中锚固长度的0。
7倍;
6、在任何情况下,纵向受拉钢筋的锚固长度不应小于250mm。
1.2 抗震设计受力钢筋的锚固长度(mm)
表1.2 注:同表1.1注2-6。
2基本搭接长度
2.1非抗震设计受拉钢筋的搭接长度(mm)表2。
1
1、当受拉钢筋的直径d>28mm及受压钢筋的直径d>32mm时,不宜采用绑扎搭接接头;
2、两根直径不同钢筋的搭接长度,以较细钢筋的直径计算;
3、在任何情况下,纵向受拉钢筋的绑扎搭接长度不应小于300mm。
1、同表2.1注1-2;
2、在任何情况下,纵向受压钢筋的绑扎搭接长度不应小于200mm。
2。
3抗震设计受拉钢筋的搭接长度(mm)。
vue+Element中table表格实现可编辑(select下拉框)最近在⼯作中遇到⼀个问题,需要在表格中实现数据可编辑状态,具体情况是需要在单元格⾥加⼊下拉框;并且每个下拉框的数组数据是不⼀样的,具体是根据当前⾏前⾯数据的id查询⽽来,前⾯的是数据是动态⽣成的,后⾯的下拉框数据也是根据id 动态⽣成的,内容不同;有点类似于树形⼆级状态,后⾯的下拉框数据来源并没有在前⾯内容⾥,⽽是另外⼀个接⼝查询,具体操作如下:HTML代码:1.在处理⼈列加⼊⼀个下拉框模板,其中v-model必须要scope.row.proJbruserValue来绑定,意思是这个值绑定到当前⾏所选中的⼈;如果直接绑定proJbruserValue,将不能进⾏差异化选择,(这⾥scope.row.proJbruserValue 相当于对象点属性,在本地临时添加了⼀个属性来存储不同⾏的选中处理⼈id)2.通过点击当前⾏下拉框获取焦点,根据当前⾏id查询对应的下拉框数据,并赋值给data中我们设置的数组接收,3.⼀个重要的注意点,:key=item.id 这个key尽量绑定id,不推荐使⽤Index, 因为在这⾥使⽤Index的时候,会让选中项出现数字bug,这是我在坑⾥呆了好久才通过我的⼀个朋友得到的答案,具体bug原因尚未深究,请重点注意;4.最后点击按钮提交流程配置;<el-table :data="processNodelist" style="width: 100%" border stripe><el-table-column type="index" label="序号" width="50"></el-table-column><el-table-column prop="nodename" label="流程节点名称"></el-table-column><el-table-column label="处理⼈名称"><template slot-scope="scope"><el-select v-model="scope.row.proJbruserValue" @focus="getDatalist(scope.row)" placeholder="请选择" filterable allow-create><el-option v-for="item in projectJbrUserlist " :key="item.id" :label="ername" :value="item.id"></el-option></el-select></template></el-table-column></el-table><el-button @click="submitConfigHandle" type="primary" size="mini" icon="el-icon-upload">提交配置</el-button>js逻辑代码:data() {return {processNodelist: [], // 流程节点数据projectJbrUserlist: [], // 处理⼈员数据nodeidlist: [], // 所有流程节点IdselectedUserlist: [], // 被选中的处理⼈员id数组}},created() {this.getProcessNodelist();},methods: {// 查询流程节点数据async getProcessNodelist() {const { data: res } = await this.$http.post('querynode', {userid: erid,sid: this.sessionInfo.session,developerid: panyId});if (res.code !== 0) {return this.$message.error('获取流程节点数据失败');}this.processNodelist = res.msg;},// select下拉框获取焦点的时候查询id对应的下拉框数据源async getDatalist(row) {const { data: res } = await this.$http.post('query', {userid: erid,sid: this.sessionInfo.session,queryid: 9,nodeid: row.nodeid});if (res.code !== 0) {return this.$message.error('获取处理⼈数据失败');}this.projectJbrUserlist = res.msg;},// 提交流程配置接⼝async submitConfig() {const { data: res } = await this.$http.post('bindTask', {userid: erid,sid: this.sessionInfo.session,flowid: 9,table_name: 'pt_base',key_value: this.sessionInfo.proId,nodeid: this.nodeidlist,uid: this.selectedUserlist});if (res.code !== 0) {return this.$message.error('流程节点配置失败');}this.$message.success('流程节点配置成功');},// 发起请求submitConfigHandle() {// 循环流程节点数组将所有nodeid取出添加到新数组for (let i = 0; i < this.processNodelist.length; i++) {this.nodeidlist.push(this.processNodelist[i].nodeid);}// 循环流程节点数组将所有被选择的处理⼈员id :proJbruserValue取出添加到新数组for (let i = 0; i < this.processNodelist.length; i++) {this.selectedUserlist.push(this.processNodelist[i].proJbruserValue);}// 调⽤接⼝函数this.submitConfig();}}这次实现表格可编辑功能(select下拉框),主要有两个注意点,⼀是v-model的绑定问题,⽽是:key的绑定问题;这次我的数据接⼝是通过id返回的不同数据源,可以借鉴上⾯代码,如果你的(select下拉框)数据源是多个接⼝查询⽽来,你需要在通过接⼝查询到各个数据源,保存到data⾥⾯,然后还要做⼀些改变:1.将v-for循环的数据改成通过函数传递当前⾏数据(id):<el-option v-for="item in getdatalist(scope.row) "> </el-option>2.通过传递过来的id来判断当前⾏需要返回的数据源;getdatalist(row) {const id = row.nodeid;if ( id === '1') {return this.data1} else if (id === '2') {return this.data2}}希望我的⽅法能给⼤家⼀些帮助和思路以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。
主要材料、机械进场计划及劳动力安排情况(表格可编辑)一、主要材料计划1.本工程主要施工物资的统计,根据业主提供的施工图纸计算得出。
所有物资均根据施工进度计划分阶段进场,进场时间必须保证施工需要,并且尽量减少现场保管时间及二次倒运,减少资金占用周期和间接费用的增加。
工程主要物资(材料)清单2.本工程所用周转材料分为两个主要使用时间:结构施工时用于模板施工的钢模板、胶合板及支撑加固材料,主体结构时用于外脚手架的钢管、联接件、防护网;装修阶段用于外脚手架的钢管、联接件、防护网。
1.结构施工:施工准备阶段,计划钢管70T,用于临时工程搭设及安全防护。
主体结构墙、梁用钢模,顶板用胶合板。
墙钢模在每层施工时,基本上是随关随拆层层周转,损耗较小,只须按实际需要准备;由于本工程每层结构施工时间较短,梁板受砼强度影响,可准备4套梁板模板。
主体结构所需周转如下:钢模板11000m2、胶合板15000m2、用于模板加固支撑钢管200T、落地外脚手架730T、模板用枋木1800m3、脚手板8200块、绿色防护网40000m2。
2.装修施工:临时设施钢管50T、外脚手架700T、脚手板8000块、绿色防护网40000m2(第二层开始满挂使用)。
3.周转材料使用计划:周材使用计划表二、工程投入的主要机械设备及进场计划本工程机械设备主要根据施工进度计划安排及我公司以往类似工程经验综合考虑进行配备。
施工机具需要量根据现场施工进度要求分批组织进场,并做好保养和试运等项工作,一些常用的机构及设备配件要有一定数量的储备以便及时替换,保证各种机械正常运转。
1.场外材料运输机械和运输方式一般外购材料均由合格供应商直接送到施工现场,其运输机构由供应商提供。
2.场内材料运输机械和运输方式垂直运输采用6台井架,场地内运输采用斗车。
3.混凝土及砂浆均采用机械搅拌现场设2个混凝土搅拌站,每个搅拌站内设2台JZC350搅拌机,另设2个砂浆搅拌站,共配备4台UJZ200砂浆搅拌机。
附表 1:脚手架检查验收书
工程名称:年月日
2、扣件扭力矩标准:40—50N。
m,不大于65N。
m。
实测点数在总点数的3%—5%之间。
3、合格打“√”,不合格打“×”。
附表2: 挂脚手架验收表工程名称:验收部位:日期:
附表3:悬挑脚手架验收表工程名称:验收部位:日期:
附表4:卸料平台验收表工程名称:日期:
附表5:安全设施检查验收表工程名称:结构类型:年月日
附表6:洞口与临边防护逐层检查验收表施工单位:工程名称:验收部位:
洞口与临边防护逐层检查验收表
续表
施工单位:工程名称:验收部位:
注:每次验收对缺项部分可不填写验收内容及验收意见
每次填写一式两份,该施工段主管工长一份,项目安全部一份附表7:模板工程验收表
附表8:临时用电设施检查验收表
临时用电设施检查验收表
临时用电设施检查验收表
续表2
注:每次验收对缺项部分可不填写验收内容及验收意见
每次填写一式两份,该施工段主管工长一份,项目安全部一份附表9:起重机械安装后检查验收表
附表10:物料提升机(龙门架)检查验收表
附表11:电动吊篮安装检查验收表
附表12:中小型机械设备安全技术性能验收表工程名称;使用单位:验收日期:
附表13:安全防护设施交接验收表
工程名称: 年月日。
可编辑的el-table表格,结合input输⼊,upload⽂件上传的表格最近整理了⼀下,table表格的编辑状态,把⼀般表格⾥需要输⼊的类型都放进来了,实现的功能如图这⾥⾯的input输⼊框没什么好说的,绑定对应的值就可以,要注意的是组件上传的upload,这个表格是有多个upload上传组件的,upload组件的⽂件列表是根据fileList展⽰的,所在在处理⽅法的时候要注意fileList的处理下⾯放代码<template><div><p>shopInfo</p><div class="company"><p><el-button type="primary" @click="addCompany">添加公司</el-button></p><el-tableref="multipleTable":data="tableData3"borderstyle="width: 100%"><el-table-columnlabel="序号"type="index"width="55"></el-table-column><el-table-columnlabel="公司名称"show-overflow-tooltip><template slot-scope="scope"><el-input v-model="" placeholder="请输⼊公司名称"></el-input></template></el-table-column><el-table-columnlabel="注册时间"show-overflow-tooltip><template slot-scope="scope"><el-date-pickerv-model="scope.row.date"type="date"placeholder="选择⽇期"></el-date-picker></template></el-table-column><el-table-columnlabel="注册资⾦"show-overflow-tooltip><template slot-scope="scope"><el-input @blur="InputNumber(scope.row, 'amount')" v-model="scope.row.amount" placeholder="请输⼊注册资⾦"></el-input></template></el-table-column><el-table-columnlabel="注册⽂件"show-overflow-tooltip><template slot-scope="scope"><el-uploadclass="upload-demo":action="action":data="uploadData":on-preview="handlePreview"<!-- 在组件的回调函数⾥加⼀个索引的参数 -->:on-remove="function(file,fileList){return handleRemove(file,fileList,scope.$index)}":on-success="function(res,file,fileList){return handleSuccess(res,file,fileList,scope.$index)}"multiple:limit="1":file-list="fileList[scope.$index]"><el-button size="small" type="text" v-if="!scope.row.file">上传⽂件</el-button></el-upload><span class="delete" @click="deleteCompany(scope.$index)"><img src="/static/images/close.png" alt=""></span></template></el-table-column></el-table></div></div></template><style scoped>.company {padding: 30px;text-align: left;}.delete {position: absolute;top: 25px;right: 10px;}td .el-upload-list__item {margin-top: -25px;}</style><script>// import host from 'rootPath/config/host' // host⽂件// import apiPath from 'rootPath/config/api.json' // api⽂件export default {name: 'shopInfo',data () {return {tableData3: [],selectedTable: [],fileList: [[]],// action: `${host.apiUrl}${mon.qiniuupload}`,action: ``,uploadData: {userId: 1304, pathName: 'company'}}},created () {this.setTable()},methods: {setTable () {this.tableData3 = [{name: '',date: '',amount: null,file: ''}]},// 添加公司addCompany () {this.tableData3.push({name: '',date: '',amount: null,file: ''})this.fileList.push([])},// 删除公司deleteCompany (i) {this.tableData3.splice(i, 1)// 删除的时候要把fileList清除,否则页⾯已上传的⽂件不会被清空this.fileList.splice(i, 1)console.log(this.fileList)},// 过滤输⼊的⾦额InputNumber (row, property) {row[property] = this.limitInputPointNumber(row[property])},// 限制只能输⼊数字(可以输⼊两位⼩数)limitInputPointNumber (val) {if (val === 0 || val === '0' || val === '') {return ''} else {let value = nullvalue = String(val).replace(/[^\d.]/g, '') // 清除“数字”和“.”以外的字符value = value.replace(/\.{2,}/g, '.') // 只保留第⼀个. 清除多余的value = value.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.')value = value.replace(/^(-)*(\d+)\.(\d\d).*$/, '$1$2.$3') // 只能输⼊两个⼩数return value}},// 预览图⽚handlePreview (file) {},// 删除图⽚handleRemove (file, fileList, index) {this.tableData3[index].file = ''},// 图⽚上传handleSuccess (res, file, fileList, index) {if (res.code) {this.tableData3[index].file = res.data.url}// 上传之后,把返回的fileList赋值给对应组件的fileList this.fileList[index] = fileList}}}</script>。
1.EditTable.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" %> <%@ page import="java.sql.*"%> EditTable 可编辑的表格 学号 姓名 年龄 <%
String sno,name;
int age = 0;
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/test","root","");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select sno,name,age from student");
while(rs.next()){
sno = rs.getString("sno");
name = rs.getString("name");
age = rs.getInt("age");
%> <%=sno%> <%=name %> <%=age %> <%}%> 2.editTable.css table{ border:1px solid black; border-collapse:collapse; width:400px; } table td{ border:1px solid black; width:33%; } table th{ border:1px solid black; width:33%; } tbody th{ background-color:#7998DF; } #result{ color:red; } 3.editTable.js //在页面加载时,让所有的td拥有一个点击事件 $(document).ready(function(){ $("tbody tr:even").css("background-color","#ECE9D8"); var tds = $("tbody td"); tds.click(tdClick); }); function tdClick(){ //保存当前的td节点 var td = $(this); //取出当前td节点的文本内容并保存起来 var text = td.text(); //清空td里面的内容 td.html("");//也可以是td.empty(); //建立一个文本框 var input = $(""); //设置文本框的值是刚保存起来的 input.attr("value",text); input.width(td.width()-1); input.height(td.height()); //将文本框加入到td中 td.append(input); //让文本框里的文字高亮选中 var inputDom = input.get(0); inputDom.select(); //取消td的点击事件 td.unbind("click"); //让文本框响应键盘事件 input.keyup(function(event){ // var myEvent = event || window.event; // var keyCode = myEvent.keyCode; var keyCode=event.which; //判断是否回车键按下 if(keyCode == 13){ //获得文本框 var inputNode = $(this); // //保存文本框的值 // var inputText = inputNode.val(); // //获得td节点 // var tdNode = inputNode.parent(); // //设置td的值 // tdNode.html(inputText); // //让td重新拥有点击事件 // tdNode.click(tdClick); td.html(inputNode.val()); var tmp = td; // alert(td.prev().text()); var option = td.attr("id"); // alert(td.attr("id")); // alert(td.parents("tr").children("td").eq(0).text()); var sno = td.parents("tr").children("td").eq(0).text();
var value = inputNode.val();
$.get("http://localhost:8080/EditTable/UpdateStudent?sno="+encodeURI(sno)+"&option="+encodeURI(option)+"&"+option+"="+encodeURI(value),null,function(response){ $("#result").html(response); }); td.click(tdClick); } else if(keyCode == 27){ td.html(text); } }); input.blur(function(){ var inputNode = $(this); var inputText = inputNode.val(); var tdNode = inputNode.parent(); tdNode.html(inputText); tdNode.click(tdClick); }); } 4.DBcon.java package com.db; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.util.logging.Level; import java.util.logging.Logger; class DBCon{ private static Connection con = null; public DBCon(){ } public synchronized static Connection getConnection() { try{ Class.forName("com.mysql.jdbc.Driver"); //加载MYSQL JDBC驱动 }catch (ClassNotFoundException e) { e.printStackTrace(); } try{ if(con == null) con = DriverManager.getConnection("jdbc:mysql://localhost/test", "root", ""); System.out.println("Connect Successfully"); }catch(SQLException e1){ e1.printStackTrace(); } return con; } } 5.CRUD.java package com.db; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class CRUD { public static int updateStudent(String sno, String option,String value){ int flag = 0; PreparedStatement pstmt = null; ResultSet rs = null;