摩尔平台今日学习点

今天学习了修改前端代码,修复了很多东西,比如说修复了修改的回显以及弹出多选选择框修改成单选选择框,修改好修改没有回显的办法,然后我认为,修改sql语句的方法,
修改后的代码

package com.more.mes.wms.outmaterielinfo.func;import javax.servlet.http.HttpServletRequest;import com.more.fw.core.base.core.action.ModelAction;
import com.more.fw.core.common.exception.BussException;
import com.more.fw.core.common.method.CommMethod;
import com.more.fw.core.common.method.ConstantsMc;
import com.more.fw.core.common.method.StringUtils;
import com.more.fw.core.dbo.model.service.ModelService;
import com.more.fw.core.dbo.model.service.impl.base.FuncService;
import com.more.mes.base.item.BussItem;
import com.more.mes.wms.outmaterielinfo.BussOutMateriel;
import com.more.mes.wms.outstock.BussOutStock;
import com.more.mes.wms.outstock.model.OutStockDoc;
import com.more.mes.wms.outstock.model.OutStockItem;
import com.more.util.log.BussLogger;/*** @Title 生产领料-修改* @Description 生产领料-修改* @ClassName EditOutMaterielInfo* @Author wzy* @ChangeLog: 2019-4-5 wzy 创建类 2020-6-23 wzy 新增重复提交表单校验 修改了throw new 方法,将报错提示返回*/
public class EditOutMaterielInfo implements FuncService {@Overridepublic String exeFunc(ModelAction modelAction, ModelService modelService) {// TODO Auto-generated method stubHttpServletRequest request = modelAction.getRequest();String dataAuth = String.valueOf(modelAction.getRequest().getSession().getAttribute("mcDataAuth"));String formId = request.getParameter("formId");if (StringUtils.isBlank(formId)) {formId = request.getParameter("formIds");}String iframeId = request.getParameter("iframeId");try {if (!CommMethod.isRepeatSubmit(request)) {CommMethod.rmSessionMap(modelAction.getSession(), ConstantsMc.FORM_TOKEN);} else {return modelAction.alertParentInfo(modelAction.getText("请不要重复提交表单!"));}// 生产领料String dispatchSn = request.getParameter("paraMapObj.DISPATCH_SN");// 收发类型String planOutstockDate = request.getParameter("paraMapObj.PLAN_OUTSTOCK_DATE");// 计划出库日期String areaSn = request.getParameter("paraMapObj.AREA_SN");// 生产车间String pickDocType = request.getParameter("paraMapObj.PICK_DOC_TYPE");// 备料类型String pickDocAttr = request.getParameter("paraMapObj.PICK_DOC_ATTR");// 领料单属性String isUrgent = request.getParameter("paraMapObj.IS_URGENT");// 是否加急String isRelease = request.getParameter("paraMapObj.IS_RELEASE");// 是否放行String memo = request.getParameter("paraMapObj.MEMO");// 备注String docStatus = request.getParameter("paraMapObj.DOC_STATUS");// 单据状态String custCode = request.getParameter("paraMapObj.CUST_CODE");// 客户编码String id = modelAction.getDataId();String docNo = request.getParameter("docNo");// 单号if (StringUtils.isBlank(isUrgent)) {isUrgent = "N";}if (StringUtils.isBlank(isRelease)) {isRelease = "N";}// 生产领料明细String delItemId = request.getParameter("delItemId");// 删除String[] itemSeq = request.getParameterValues("ITEM_SEQ");// 项次String[] itemCode = request.getParameterValues("ITEM_CODE");// 物料料号String[] connectDoc = request.getParameterValues("CONNECT_DOC");// 制令单String[] subType = request.getParameterValues("SUB_TYPE");// 属性管控类型String[] controlValue = request.getParameterValues("CONTROL_VALUE");// 属性管控值String[] memos = request.getParameterValues("MEMO");// 备注String[] status = request.getParameterValues("STATUS");// 备注String[] type = request.getParameterValues("TYPE");// 备注String[] itemCodeId = request.getParameterValues("ITEMCODE_ID");// 获取原有的物料String[] importType = request.getParameterValues("importType");// 判断物料类型 1.存在的料号,2.导入的料号String[] units = request.getParameterValues("SUB_UNIT");// 计量单位组if (StringUtils.isNotBlank(delItemId)) {String[] itemId = delItemId.split(",");for (int i = 0; i < itemId.length; i++) {BussOutMateriel.delOtherDetailInfo(itemId[i], dataAuth, modelAction);}}OutStockDoc doc = new OutStockDoc();doc.setId(id);doc.setDocNo(docNo);doc.setDispatchSn(dispatchSn);doc.setPickDocType(pickDocType);doc.setDocType("DJ11");doc.setUserId(modelAction.getUser().getId());doc.setUserName(modelAction.getUser().getName());BussOutMateriel.editOtherOutStockInfo(doc);OutStockItem item = new OutStockItem();for (int i = 0; i < itemSeq.length; i++) {if (importType[i].equals("2")) {int count = BussItem.getItemCode(itemCode[i], dataAuth);if (count <= 0) {CommMethod.setFormTokenToSession(request);return modelAction.alertParentInfo(modelAction.getText("物料料号不存在"));}}item.setItemSeq(StringUtils.toInteger(itemSeq[i]));item.setItemCode(itemCode[i]);item.setConnectDoc(connectDoc[i]);item.setSingleQty(StringUtils.toDouble(singleQty[i]));item.setRequestQty(StringUtils.toDouble(planNum[i]));item.setPlanQty(StringUtils.toDouble(planNum[i]));item.setWhCode(whCode[i]);item.setControlType(subType[i]);item.setUgDetaiId(units[i]);item.setUserId(modelAction.getUser().getId());item.setUserName(modelAction.getUser().getName());if (type[i].endsWith("1")) {item.setId(itemCodeId[i]);BussOutMateriel.editOtherOutStockItem(item);} else {item.setId(StringUtils.getUUID());BussOutStock.saveOtherOutStockItem(item);}}} catch (Exception e) {// TODO: handle exceptionCommMethod.setFormTokenToSession(request);BussLogger.productError(this.getClass(), e);throw new BussException(modelAction.getText("修改失败"), e);}return modelAction.reloadIframeByIds(iframeId, modelAction.getText("修改成功"), "0");}}

了解到Java代码上的bussOutMateriel的类,里面有很多关于赋值的代码,他们能够很好很方便的帮助开发人员制作代码,修改页面应该要去关注他的id以及代码的制作方式以及理解方式

然后是制作回调函数和sql语句的 书写,回调函数就是将修改后的代码回显到主视图上代码如下:

function setTestInfo(MKEY,val,obj){if(null!=obj){ console.log(MKEY);console.log(val);console.log(obj);console.log(obj.eq(4).text());$("#paraMapObj_ITEM_NAME").val(obj.eq(4).text());$("#paraMapObj_ITEM_CODE").val(obj.eq(3).text());$("#paraMapObj_ITEM_CODE_SHOW").val(obj.eq(2).text());$("#paraMapObj_ITEM_SPEC").val(obj.eq(5).text());$("#paraMapObj_MEMO").val(obj.eq(6).text());//$("#paraMapObj_DOC_NO").val(MKEY);}
}

然后就是sql语句的书写

select ITEM_CODE MKEY,ITEM_CODE VAL,ITEM_NAME,ITEM_SPEC,MEMO  from t_co_item

最后就是前端代码的书写

<%-- 平台公用头文件 --%>
<%@page language="java" errorPage="/plf/error.jsp" pageEncoding="UTF-8" contentType="text/html;charset=UTF-8"%>
<%@ include file="/plf/common/pub_tag.jsp"%>
<%@page import="com.more.fw.core.staticresource.PlfStaticRes"%>
<%-- 扩展修改页面开头位置,页面加载前 --%>
<jsp:include page="/plf/page/mesdemo/commCode/commCode.jsp"><jsp:param name="modelName" value="VIEW_TYPE_11" /><jsp:param name="location" value="beforePageLoad" />
</jsp:include>
<head><%-- 平台公用meta --%><%@ include file="/plf/common/pub_meta.jsp"%><title><dict:lang value="修改" /></title><%-- 平台公用head,包括公用IMG、CSS、JS资源文件 --%><jsp:include page="/plf/common/fp/pub_head_fp.jsp"><jsp:param name="popDivWinFp" value="1" /><jsp:param name="datePicker" value="1" /><jsp:param name="chosen" value="1" /></jsp:include><%-- 公用新增JS页面  --%><%@ include file="/plf/page/common/buss/addCommJs.jsp"%><%-- 公用列表JS页面  --%><%@ include file="/plf/page/common/buss/bussCommJs.jsp"%><%-- 动态加载js文件方法  --%><script type = "text/javascript" src = "${path}plf/js/ui/include.js?_mc_res_version=<%=PlfStaticRes.PlfJsUi_Include_js %>"></script><%-- 在head里面要插入平台的代码  --%><jsp:include page="/plf/page/mesdemo/commCode/commCode.jsp"><jsp:param name="modelName" value="VIEW_TYPE_11" /><jsp:param name="location" value="inHead" /></jsp:include><%-- 产品静态资源  --%><%@ include file="/buss/reso/product/commcode/page/comm-page.jsp"%></head>
<body style="overflow:auto;"><div class="edit"><form id="editForm" name="editForm" action="${path}buss/bussModel_editAjaxComm.ms" method="post" target="submitFrame"<bu:formet exeid="%{exeid}" />><div class="hd"><div style="margin-left:40px;"><s:if test="${isDataAuth == '1'}"><span class="dot">*</span><dict:lang value="组织机构" /><s:if test="${fn:length(deptLs)==1}"><s:select list="deptLs" listKey="id" listValue="name" name="paraMapObj._DATA_AUTH" id="deptLs_data_auth"  cssStyle="width: 200px;" cssClass="_VAL_NULL dept_select"/> </s:if><s:else><s:select list="deptLs" headerKey="" headerValue='--%{getText("请选择")}--'listKey="id" listValue="name"   name="paraMapObj._DATA_AUTH"id="deptLs_data_auth"  cssStyle="width: 200px;" cssClass="_VAL_NULL dept_select"/> </s:else></s:if>	</div><div class="optn"><button type="button" onclick="editCal();"><i class="ico ico-save"></i><dict:lang value="保存" /></button><button type="button" onclick="closeWindow();" ><i class="ico ico-cancel"></i><dict:lang value="取消" /></button><button type="button" onclick="resetForm();" ><i class="ico ico-gk"></i><dict:lang value="重置" /></button></div></div><div class="bd"><%-- 视图修改页面平台默认数据区域,如视图ID、表单ID、token  --%><jsp:include page="/plf/page/mesdemo/commCode/commCode.jsp"><jsp:param name="modelName" value="VIEW_TYPE_11" /><jsp:param name="location" value="editForm" /></jsp:include><bu:set name="paraMapObj" value="${dataId}" formId="80e7dbef360c407d8c7c81dbf6cbed37" type="edit" /><table class="basic-table" ><input type="hidden" name="formIds" value="80e7dbef360c407d8c7c81dbf6cbed37" /><input type="hidden" id="prefixInd" name="80e7dbef360c407d8c7c81dbf6cbed37" value="paraMap1@" /><input type="hidden"  name="paraMap1@__LEVEL__" value="1" /><input type="hidden" name="paraMap1@__DATA_COUNT__" value="1" /><s:set name="_$viewId" value="'0898a7b11fc144829e27068d70d0512f'" /><s:set name="_$formId_1" value="'80e7dbef360c407d8c7c81dbf6cbed37'" /><s:set name="_$type" value="'edit'"/><tr><td class="name-six" /><bu:uitn colNo="DOC_NO" formId="80e7dbef360c407d8c7c81dbf6cbed37" /></td><bu:td cssClass="dec-self" colNo="DOC_NO" formId="80e7dbef360c407d8c7c81dbf6cbed37" ><bu:ui colNo="DOC_NO" formId="80e7dbef360c407d8c7c81dbf6cbed37" dataId="${dataId}" formIndex="1" /></bu:td><td class="name-six" /><bu:uitn colNo="ITEM_NAME" formId="80e7dbef360c407d8c7c81dbf6cbed37" /></td><bu:td cssClass="dec-self" colNo="ITEM_NAME" formId="80e7dbef360c407d8c7c81dbf6cbed37" ><bu:ui colNo="ITEM_NAME" formId="80e7dbef360c407d8c7c81dbf6cbed37" dataId="${dataId}" formIndex="1" /></bu:td><td class="name-six" /><bu:uitn colNo="ITEM_CODE"  formId="80e7dbef360c407d8c7c81dbf6cbed37" /></td><bu:td cssClass="dec-self" colNo="ITEM_NAME" formId="80e7dbef360c407d8c7c81dbf6cbed37" ><bu:ui colNo="ITEM_CODE" formId="80e7dbef360c407d8c7c81dbf6cbed37" dataId="${dataId}" formIndex="1" /></bu:td></tr><tr><!--  bug: 17344  新增字段--> <td class="name-six" /><bu:uitn colNo="ITEM_SPEC" formId="80e7dbef360c407d8c7c81dbf6cbed37" /></td><bu:td cssClass="dec-self" colNo="ITEM_SPEC" formId="80e7dbef360c407d8c7c81dbf6cbed37" ><bu:ui colNo="ITEM_SPEC"  formId="87edd1849aec473399dc39d523513233" dataId="${dataId}" formIndex="1" /></bu:td><td class="name-six" /><bu:uitn   colNo="PLAN_QTY" formId="80e7dbef360c407d8c7c81dbf6cbed37" /></td><bu:td cssClass="dec-self" colNo="PLAN_QTY" formId="80e7dbef360c407d8c7c81dbf6cbed37" ><bu:ui colNo="PLAN_QTY"  formId="87edd1849aec473399dc39d523513233" dataId="${dataId}" formIndex="1" /></bu:td><td class="name-six" /><bu:uitn colNo="MEMO" formId="80e7dbef360c407d8c7c81dbf6cbed37" /></td><bu:td cssClass="dec-self" colNo="MEMO" formId="80e7dbef360c407d8c7c81dbf6cbed37" ><bu:ui colNo="MEMO" formId="80e7dbef360c407d8c7c81dbf6cbed37" dataId="${dataId}" formIndex="1" /></bu:td></tr></table><!--<div id="retract" class="retract" name="retract">--></div> <bu:jsVal formId="80e7dbef360c407d8c7c81dbf6cbed37" formIndex="1" /></div></form>	</div><div style="display: none;"><iframe id="submitFrame" name="submitFrame" src="" width="0" height="0"></iframe></div><%-- 平台预留在JS加载前执行的代码片段  --%><jsp:include page="/plf/page/mesdemo/commCode/commCode.jsp"><jsp:param name="modelName" value="VIEW_TYPE_11" /><jsp:param name="location" value="jsLoading" /></jsp:include><%-- 表单结束区域  --%><jsp:include page="/plf/common/fp/pub_dom_fp.jsp"><jsp:param name="popConfirm" value="1" /><jsp:param name="needValidate" value="1" /></jsp:include><script type="text/javascript">var wmsOption;var whList;var controlList;var controlTypeOption;var rawMaterial;var rawMaterialList;/*** 初始化属性管控类型和仓库下拉数据* @method getSelectOption* @param itemAttrName 物料类型* @author zf* @changelog 修改人:ZF 物料类型参数来显示产品与原料的的属性类型*/
//function getSelectOption(itemAttr){function getSelectOption(){var getWmsSelUrl="${path}buss/bussModel_exeFunc.ms?funcMId=545e928cea0542a6a93dea66a0fc608b";//VM-其它出库管理-新增 操作功能 加载仓库信息$.ajax({type: "POST",dataType: "json",url: getWmsSelUrl,//关闭异步//async: false,data: {"badFlag":"",//"itemAttr": itemAttr},success: function(data){if(null == data){return ;}if(null != data.ajaxMap.whList){wmsOption = "<option value=''>--请选择--</option>";whList = eval(data.ajaxMap.whList);for(var i = 0;i < whList.length; i++){wmsOption = wmsOption + "<option value='"+whList[i].AREA_SN+"'>"+whList[i].AREA_NAME+"</option>";}}if(null != data.ajaxMap.controlList){controlTypeOption="<option value=''>--请选择--</option>";controlList = eval(data.ajaxMap.controlList);for(var i = 0;i < controlList.length; i++){controlTypeOption = controlTypeOption + "<option value='"+controlList[i].CODE+"'>"+controlList[i].VALUE+"</option>";}}if(null != data.ajaxMap.rawMaterial){rawMaterialList="<option value=''>--请选择--</option>";rawMaterial= eval(data.ajaxMap.rawMaterial);for(var i = 0;i < rawMaterial.length; i++){rawMaterialList = rawMaterialList + "<option value='"+rawMaterial[i].CODE+"'>"+rawMaterial[i].VALUE+"</option>";}}/*if(null != data.ajaxMap.unitGroupList){unitgroupOption = "<option value=''>--请选择--</option>";var rccList = eval(data.ajaxMap.unitGroupList);for(var i = 0;i < rccList.length; i++){unitgroupOption = unitgroupOption + "<option value='"+rccList[i].ID+"'>"+rccList[i].UNIT_GROUP+"</option>";}}*/},error: function(msg){util.closeLoading();_TOOL_PRO.showAjaxErrorMsg(msg);}});}//删除行 
var delItemId="";              
function editCal(){if(!val.valNullData()){return ;}if(!valData()){return ;}if(!val.valOjbsData()){return ;}if(!val.valDataBaseSetData()){return ;}if($("#isCloseWin") && $("#addForm").find("#isCloseWin").length == 0){$("#addForm").append($("#isCloseWin").clone());$("#addForm").find("#isCloseWin").wrap("<div id=\"isCloseWinDiv\" style=\"display:none;\"></div>");}emptyValToHide('N');$("#datagrid-btable-ajax4f273d714d9544149f34e2d6d7ff1234").find("input").removeAttr("disabled");$("#datagrid-btable-ajax4f273d714d9544149f34e2d6d7ff1234").find("select").removeAttr("disabled");$(".basic-table").find("input").removeAttr("disabled");$(".basic-table").find("select").removeAttr("disabled");$(".basic-table").find("input:checkbox").removeAttr("disabled");$("#saveBtn").prop("disabled","disabled");var docNo = $("#paraMapObj_DOC_NO").val();document.forms.editForm.action = "${path}buss/bussModel_exeFunc.ms?funcMId=ae17bf913f35495db34f3ae1dd2c2e19&docNo="+docNo;document.forms.editForm.submit();isQuery = true;}//初始化时间$(function(){// $("#paraMapObj_PLAN_QTY").find("input").removeAttr("disabled");$("#paraMapObj_PLAN_QTY").prop("disabled", false);$("#paraMapObj_ITEM_SPEC").prop("disabled", false);})</script> <script>(function($){$(window).on('load',function(){setPopScroll('.scroll1','.head1');setPopScroll('.scroll3');})
})(jQuery)</script>       
</body>
<%-- 平台公用的底部代码区域  --%>
<%@ include file="/plf/common/pub_end.jsp"%>
<%-- 页面结束  --%>
<jsp:include page="/plf/page/mesdemo/commCode/commCode.jsp"><jsp:param name="modelName" value="VIEW_TYPE_11" /><jsp:param name="location" value="pageOver" />
</jsp:include>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/880609.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《十年国庆游,洞察中国旅游新趋势》

作者&#xff1a;侯炯 一、十年国庆旅游数据总览 过去十年&#xff0c;中国国庆旅游市场呈现出丰富的变化和强劲的发展态势。从接待游客人次来看&#xff0c;2014 年接待国内游客 4.75 亿人次&#xff0c;到 2019 年已增长至 7.82 亿人次&#xff0c;2023 年国内旅游出游人数更…

北斗三号多模对讲机TD70:公专网融合、数模一体、音视频调度,推动应急通信效能升级

随着国家对应急通信和精准定位技术的重视程度不断提高&#xff0c;相关技术和设备的研发与应用也得到了迅猛发展。特别是在边防巡逻、林业巡防、海上作业等领域&#xff0c;通信设备的可靠性和功能性直接关系到人员的生命安全和任务的成功完成。 近年来&#xff0c;我国政府高度…

深度学习500问——Chapter17:模型压缩及移动端部署(1)

文章目录 17.1 模型压缩理解 17.2 为什么需要模型压缩和加速 17.3 模型压缩的必要性及可行性 17.4 目前有哪些深度学习模型压缩方法 17.4.1 前段压缩和后端压缩对比 17.4.2 网络剪枝 17.4.3 典型剪枝方法对比 17.4.4. 网络蒸馏 17.4.5 前端压缩 17.4.6 后端压缩 深度神经网络在…

A股收复3000点!外资积极看涨,对冲基金净买入量创三年来新高

9月27日&#xff0c;A股开盘后跳空上涨&#xff0c;连续四天的大幅上涨&#xff0c;9月26日&#xff0c;上证指数收复3000点大关&#xff0c;让一些温州股民感到兴奋不已&#xff0c;一些炒股群里沸腾了。但对于行情走势&#xff0c;股民们产生了分歧&#xff0c;有人是逢高减仓…

高防服务器有用吗?租用价格一般多少

高防服务器有用吗&#xff1f;有用。高防服务器是一种具备高度防御能力的服务器&#xff0c;主要用于应对DDoS攻击、CC攻击等网络威胁。它通过专业的硬件设备和先进的防御算法&#xff0c;为用户提供持续、稳定的网络安全防护。高防服务器的主要特点包括强大的防御能力、低延迟…

【Koa】初识 Koa

1. Koa 特点 1.1 更好的处理异步 Koa 的核心设计是基于 async/await 异步编程模型。这使得 Koa 可以更好地处理异步操作&#xff0c;相比于传统的回调方式&#xff0c;代码更清晰且更易于维护。 1.2 无内置中间件 与 Express 不同&#xff0c;Koa 并没有内置任何中间件&…

深入探讨在线教育系统源码:搭建知识付费平台实战方案详解

知识付费平台是软件开发行业内炙手可热的项目&#xff0c;其受众群体非常广&#xff0c;也是很多小伙伴提问比较多的&#xff0c;今天小编将从在线教育系统源码开始&#xff0c;为大家讲解一个知识付费平台的搭建开发实战方案。 一、系统架构设计 搭建在线教育系统需考虑以下几…

2025 年 IT 前景:机遇与挑战并存,人工智能和云计算成重点

云计算de小白 投资人工智能&#xff1a;平衡潜力与实用性 到 2025 年&#xff0c;人工智能将成为 IT 支出的重要驱动力&#xff0c;尤其是在生成式人工智能领域。人工智能的前景在于它有可能彻底改变业务流程、增强决策能力并开辟新的收入来源。然而&#xff0c;现实情况更加微…

数据集-目标检测系列-兔子检测数据集 rabbit >> DataBall

数据集-目标检测系列-兔子检测数据集 rabbit >> DataBall 数据集-目标检测系列-兔子检测数据集 rabbit 数据量&#xff1a;8k 想要进一步了解&#xff0c;请联系。 DataBall 助力快速掌握数据集的信息和使用方式&#xff0c;会员享有 百种数据集&#xff0c;持续增加…

基于PI控制器的车辆行驶控制系统simulink建模与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 4.1 步骤一: 确定目标与测量 4.2 步骤二: 计算误差 4.3 步骤三: 设计PI控制器 4.4 步骤四: 应用控制信号 4.5 步骤五: 反馈循环 5.完整工程文件 1.课题概述 基于PI控制器的车辆行驶控制系统是一种常…

OpenCV视频I/O(14)创建和写入视频文件的类:VideoWriter介绍

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 视频写入器类。 该类提供了用于写入视频文件或图像序列的 C API。 cv::VideoWriter 类是 OpenCV 库中用于创建和写入视频文件的一个类。它提供了…

中国国画-孙溟㠭浅析碑帖《龙藏寺碑》

中国国画——孙溟㠭浅析碑帖《龙藏寺碑》 《龙藏寺碑》 《龙藏寺碑》 全称是《恒州刺史鄂国公为国劝造龙藏寺碑》&#xff0c;属楷书体。碑通高3.15米&#xff0c;宽0.90米&#xff0c;厚0.29米。碑文楷书30行&#xff0c;行50字&#xff0c;1500余字&#xff0c;碑为龟趺。…

C语言—顺序表(含通讯录项目)

目录 一、顺序表的概念及结构 二、顺序表的分类 &#xff08;2.1&#xff09;静态顺序表 &#xff08;2.2&#xff09;动态顺序表 三、动态顺序表的实现 &#xff08;3.1&#xff09;基本结构定义 &#xff08;3.2&#xff09;初始化和销毁 &#xff08;3.2.1&#xff0…

vue中使用exceljs和file-saver插件实现纯前端表格导出Excel(支持样式配置,多级表头)

实现&#xff1a;使用Excel.js库创建excel文件&#xff0c;然后再使用 file-saver库将 Excel 文件保存到用户的本地计算机。 1.安装&#xff0c;可以使用npm&#xff0c;yarn npm install exceljs npm install file-saver 2.封装生成excel的方法 // 封装exceljs const ExcelJ…

H5 随机身份证号码、社会统一信用代码、手机号、名字、银行卡号码

平时注册可能会用到这些&#xff0c;原本用自己服务器搭了个&#xff0c;感觉纯前端的还能引入到项目中挺好的&#xff0c;之后再追加一些常用的随机数据&#xff0c;这样写表单应该就会好测试了(●’◡’●)。 在线链接 https://linyisonger.github.io/H5.Examples/?name./07…

Brave编译指南2024 MacOS篇-初始化构建环境(五)

引言 在上一篇文章中&#xff0c;我们完成了Brave浏览器编译所需的环境配置。现在&#xff0c;我们将进入下一个关键阶段&#xff1a;初始化构建环境。这个步骤将确保我们有一个完整的、准备就绪的开发环境&#xff0c;包括所有必要的依赖项和Chromium源代码。 1. 切换工作目…

上海沪鑫餐饮供应链:嘉定蔬菜配送分拣工作的精细艺术

在餐饮行业的背后&#xff0c;有一条默默运作的关键链条——餐饮供应链。而在上海沪鑫餐饮管理有限公司&#xff08;简称沪鑫餐饮供应链、沪鑫食材&#xff09;中&#xff0c;嘉定蔬菜配送分拣工作犹如一场精心编排的舞蹈&#xff0c;每一个动作都决定着最终呈现在餐桌上的美食…

文件和目录

文件和目录 获取文件属性 通过 ls 命令可以查看到文件的很多属性内容&#xff0c;这些文件属性的内容可以通过以下几个函数获取: #include <sys/types.h> #include <sys/stat.h> #include <unistd.h>int stat(const char *pathname, struct stat *statbuf…

ISA Server配置https踩坑全过程

首先普通的http配置请参考 【ISA Server 2006发布Web网站】 https://www.bilibili.com/video/BV1qc411v75w/?share_sourcecopy_web&vd_sourcef35b2f2d0d34140bcba81b8b6f8c1b69 本文只一笔带过&#xff0c;讲一下https部分。 正解 由于我维护的是windows server 2003的…

计算机毕业设计 招生宣传管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…