JEECG列表嵌套查询列表子查询+号功能

 控制器

@Controller
@RequestMapping("/planQueryController")
public class PlanQeruyController extends BaseController {private static final Logger logger = LoggerFactory.getLogger(PlanQeruyController.class);@Autowiredprivate DbThekeyStationScanLogServiceI dbThekeyStationScanLogService;/*** 系统参数列表页面*/@RequestMapping(params = "list")public ModelAndView workStart(HttpServletRequest request) {return new ModelAndView("com/jeecg/planquery/planQuery");}/*** easyui AJAX请求数据* @param clockin* @param request* @param response* @param dataGrid*/@RequestMapping(params = "datagrid")public void datagrid(HttpServletRequest request, HttpServletResponse response, DataGrid dataGrid) {List<Map<String, Object>> data = new ArrayList<Map<String, Object>>();boolean flag = false;StringBuffer sql = new StringBuffer("SELECT list_id as id,ufjhdh,ufscdd_hh,zch,cxh,a.chmc,a.hgzcxmc,t.cdefine6,t.lrrq FROM [xx_tm_scgl_cyc].[dbo].[t_c_zplck] t left join [xx_tm_scgl_cyc].[dbo].[t_ch_cp_dy] a on a.chbh = t.cxh where 1=1 ");//整码String zch = request.getParameter("zch");if(StringUtils.isNotBlank(zch)) {sql.append(" and t.zch = '" + zch + "'");flag = true;}//车码String cxh = request.getParameter("cxh");if(StringUtils.isNotBlank(cxh)) {sql.append(" and cxh = '" + cxh + "'");flag = true;}//日期String sj_begin = request.getParameter("sj_begin");if(StringUtils.isNotBlank(sj_begin)) {sql.append(" and t.lrrq >= '" + sj_begin + " 00:00:00'");flag = true;}String sj_end = request.getParameter("sj_end");if(StringUtils.isNotBlank(sj_end)) {sql.append(" and t.lrrq <= '" + sj_end + " 23:59:59'");flag = true;}//排序if(StringUtils.isNotBlank(dataGrid.getSort())) {if("cdefine6".equals(dataGrid.getSort())) {sql.append(" order by t.cdefine6 "+dataGrid.getOrder());}else {sql.append(" order by "+ dataGrid.getSort() +" "+dataGrid.getOrder());}}else {sql.append(" order by t.lrrq DESC");}//有条件 就查询if(flag) {data = DynamicDBUtil.findList("sql-server2008-tm",sql.toString());}//List<Map<String, Object>> showList = null;//要显示的数据int showLen = dataGrid.getRows();//动态得到前端需要显示多少条int totlePage = data.size()%showLen == 0 ? data.size()/showLen : data.size()/showLen + 1;if(dataGrid.getPage() == 1 ) {if(showLen > data.size()) {showLen = data.size();}showList = data.subList(0, showLen);}else {if(dataGrid.getPage() == totlePage) {showList = data.subList(((dataGrid.getPage()-1)*showLen),data.size());}else {showList = data.subList(((dataGrid.getPage()-1)*showLen),((dataGrid.getPage()-1)*showLen)+showLen);}}dataGrid.setResults(showList);dataGrid.setTotal(data.size());//总条数TagUtil.datagrid(response, dataGrid);}/*** 关重件明细* @param zch* @param ufjhdh* @param ufscdd_hh* @param cxh* @param request* @param response* @param dataGrid*/@RequestMapping(params = "planQueryLineDatagrid")public void planQueryLineDatagrid(String zch,String ufjhdh,String ufscdd_hh,String cxh,HttpServletRequest request, HttpServletResponse response, DataGrid dataGrid) {String sql = "select mm_pickm.cpickmid, " +  //备料计划订单号 "mm_pickm.vsourcebillcode, " + "mm_pickm.vsourcemorowcode " + "from jpncdb1.mm_pickm mm_pickm " + "where (mm_pickm.pk_org = '00014910000000009CH2' " + //XX公司00014910000000009CH2"AND mm_pickm.vsourcebillcode = '"+ufjhdh+"' " + //订单号 "AND mm_pickm.vsourcemorowcode = '"+ufscdd_hh+"') "+ //行号"and mm_pickm.dr = 0 ";List<Map<String, Object>> materialList = DynamicDBUtil.findList(ConstantUtil.NC_DB,sql);if(materialList.size()  > 0) {Map<String, Object> material = materialList.get(0);String cpickmid =  material.get("cpickmid").toString();//备料计划订单号//关重件List<Map<String, Object>> data = Lists.newArrayList();String sql2 = "select bd_material.code, " +  //零部件编号"bd_material.name," + //零部件名称 "mm_pickm_b.nunituseastnum ," + //装配数量"bd_defdoc.code as work_station_code," + //工位编码 "bd_defdoc.name as work_station_name, " + //工位名称"bd_material.def1 as is_thekey " + //是否是关重件  Y 是N 不是  空 不是"from jpncdb1.mm_pickm_b mm_pickm_b " + "left join jpncdb1.bd_defdoc bd_defdoc on mm_pickm_b.vbdef1=bd_defdoc.pk_defdoc " + "left join jpncdb1.bd_material bd_material on mm_pickm_b.cbmaterialvid = bd_material.pk_material " + "where (mm_pickm_b.cpickmid = '"+cpickmid+"') " + //备料计划订单号"and mm_pickm_b.dr = 0 " ;//nc备料计划List<Map<String, Object>> partsList = DynamicDBUtil.findList(ConstantUtil.NC_DB,sql2);for (Map<String, Object> map2 : partsList) {if(map2.get("IS_THEKEY") != null && "Y".equals(map2.get("IS_THEKEY").toString()) ) {//已安装的关重件List<DbThekeyStationScanLogEntity> tsslSize = dbThekeyStationScanLogService.findHql("from DbThekeyStationScanLogEntity "+ "where vinCode=? and carTypeCode=? and thekeyCode=? ",zch,cxh,map2.get("CODE").toString());if(tsslSize !=null && tsslSize.size() > 0) {map2.put("INSTALL_COUNT",tsslSize.size());//已安装的数量}else {map2.put("INSTALL_COUNT",0);//已安装的数量}data.add(map2);}}//分页主体List<Map<String, Object>> showList = null;//要显示的数据int showLen = dataGrid.getRows();//动态得到前端需要显示多少条int totlePage = data.size()%showLen == 0 ? data.size()/showLen : data.size()/showLen + 1;if(dataGrid.getPage() == 1 ) {if(showLen > data.size()) {showLen = data.size();}showList = data.subList(0, showLen);}else {if(dataGrid.getPage() == totlePage) {showList = data.subList(((dataGrid.getPage()-1)*showLen),data.size());}else {showList = data.subList(((dataGrid.getPage()-1)*showLen),((dataGrid.getPage()-1)*showLen)+showLen);}}dataGrid.setResults(showList);dataGrid.setTotal(data.size());//总条数}TagUtil.datagrid(response, dataGrid);}}

jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@include file="/context/mytags.jsp"%>
<t:base type="jquery,easyui,tools,DatePicker"></t:base>
<div class="easyui-layout" fit="true"> <div region="center" style="padding:0px;border:0px"><t:datagrid name="planQueryList" checkbox="true" pagination="true" fitColumns="true" title="生产计划" sortName="lrrq" extendParams="view: detailview,detailFormatter:detailFormatterFun,onExpandRow: onExpandRowFun" actionUrl="planQueryController.do?datagrid" idField="id" fit="true" queryMode="group"><t:dgCol title="id" field="id"  hidden="true"  queryMode="single"  width="120"></t:dgCol><t:dgCol title="整车号"  field="zch" query="true" queryMode="single" width="120"></t:dgCol><t:dgCol title="计划订单号"  field="ufjhdh" queryMode="single"  width="120"></t:dgCol><t:dgCol title="计划订单行号"  field="ufscdd_hh" queryMode="single"  width="120"></t:dgCol><t:dgCol title="车型号" field="cxh" queryMode="single"  width="120"></t:dgCol><t:dgCol title="车型名称" field="chmc" queryMode="single"  width="120"></t:dgCol><t:dgCol title="车型名称(全)" field="hgzcxmc" queryMode="single"  width="120"></t:dgCol><t:dgCol title="合格证打印情况" field="cdefine6" queryMode="single"  width="120"></t:dgCol> <t:dgCol title="日期"  field="lrrq" formatter="yyyy-MM-dd" query="true" queryMode="group"  width="120"></t:dgCol><%-- <t:dgCol title="操作" field="opt" width="100"></t:dgCol> --%><!-- 自定义查询 --><div id="planQueryListtb" style="padding: 3px; height: 25px"><div style="float: left;"><label for="zch" class="col-sm-2 control-label">整车号: </label><input type="text" id="zch" name="zch" class="ac_input"><label for="cxh" class="col-sm-2 control-label">车型号: </label><input type="text" id="cxh" name="cxh" class="ac_input"><label for="sj" class="col-sm-2 control-label">日期: </label><input id="sj_begin" name="sj_begin" autocomplete="off" type="text" style="width: 150px"  class="Wdate" onClick="WdatePicker()"  datatype="*"  ignore="checked"   value='<fmt:formatDate value='${sj_begin}' type="date" pattern="yyyy-MM-dd"/>' />~<input id="sj_end" name="sj_end" autocomplete="off" type="text" style="width: 150px"  class="Wdate" onClick="WdatePicker()"  datatype="*"  ignore="checked"   value='<fmt:formatDate value='${sj_end}' type="date" pattern="yyyy-MM-dd"/>' /></div><div align="right" class="searchColums"><a href="#" class="easyui-linkbutton" iconCls="icon-search" onclick="f_listsearch();">查询</a><a href="#" class="easyui-linkbutton" iconCls="icon-reload" onclick="searchReset('planQueryList');initjfoInfo();">重置</a></div></div></t:datagrid></div></div>//这里要引入的js 库
<script src="plug-in/easyui/extends/datagrid-detailview.js"></script><script type="text/javascript">//查询function f_listsearch(){//判断日期不能为空var sj_begin = $("#sj_begin").val();var sj_end = $("#sj_end").val();planQueryListsearch();}//返回行明细内容的格式化函数。function detailFormatterFun() {var s = '<div class="orderInfoHidden" style="padding:2px;">' + '		<div class="easyui-tabs" style="height:230px;width:850px;">' + '			<div title="关重件" style="padding:2px;">' + '				<table class="plan_query_linetablelines" ></table>' + '			</div>' + '		</div>' + '	</div>';return s;}//当展开一行时触发 function onExpandRowFun(index, row) {//把加上的子表tabs和datagrid初始化var tabs = $(this).datagrid('getRowDetail', index).find('div.easyui-tabs');tabs.tabs();var plan_query_linetablelines = $(this).datagrid('getRowDetail', index).find('table.plan_query_linetablelines');var plan_query_linedurl = 'planQueryController.do?planQueryLineDatagrid&field=code,name,nunituseastnum,INSTALL_COUNT,work_station_code,work_station_name,is_thekey&zch='+ row.zch+'&ufjhdh=' + row.ufjhdh+'&ufscdd_hh='+ row.ufscdd_hh+'&cxh='+row.cxh;plan_query_linetablelines.datagrid({singleSelect: true,loadMsg: '正在加载',fitColumns: true,height: '200',pageSize: 50,pageList: [50, 150, 200, 250, 300],border: false,url: plan_query_linedurl,idField: 'code',rownumbers: true,pagination: true,columns: [[{title: '零部件编号',field: 'code',align: 'left',width: 60},{title: '零部件名称',field: 'name',align: 'left',width: 180},{title: '应装数量',field: 'nunituseastnum',align: 'left',width: 50},{title: '装配数量',field: 'INSTALL_COUNT',align: 'left',width: 50,/* formatter:function(value,row,index){return "<a href='javascript:void(0);' onclick='ann();'>用户权限</a>";}, */styler:function(value,row,index){var s1 = 'background-color:#ecb908';//橙//应装数量不等于装配数量颜色改变if (row.nunituseastnum != value ) {return s1;}}},{title: '工位编码',field: 'work_station_code',align: 'left',width: 50},{title: '工位名称',field: 'work_station_name',align: 'left',width: 50},{title: '是否是关重件',field: 'is_thekey',align: 'left',width: 60}]]});}</script>

 效果

 

 

 

 

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

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

相关文章

IE浏览器怎么清理缓存

1、这里以IE9为例说明&#xff0c;打开IE浏览器&#xff0c;鼠标点击浏览器右上角的齿轮状的图标&#xff0c;在弹出的下拉框中选择“Internet选项”打开。 IE浏览器怎么清理缓存&#xff1f; 2、在打开的Internet选项界面中点击“删除”按钮。 IE浏览器怎么清理缓存&#x…

部门上查,下钻

//不定下钻次数 循环public Map<String,Object> doAllFor(TSDepart tSDepart){Map<String,Object> map Maps.newHashMap();List<String> departsId Lists.newArrayList();departsId.add(tSDepart.getId());for (TSDepart tsdc : tSDepart.getTSDeparts()) …

Win11怎么连接宽带呢 Win11连接宽带的具体步骤

1、首先可以看到右下角的网络宽带连接图标点击进入。 Win11怎么连接宽带呢&#xff1f;Win11连接宽带的具体步骤 2、来到设置界面后&#xff0c;点击设置界面里的“以太网”点击里面的“网络和共享中心”。 Win11怎么连接宽带呢&#xff1f;Win11连接宽带的具体步骤 3、随后…

jeecg自定义结果集t:dictSelect

<t:dictSelect 标签使用 sql语句设置结果集 <t:dictSelect field"hrUser" type"list" dictTable"t_s_base_user a,t_s_user b,t_s_role_user c,t_s_role d" dictField"d.rolecode,d.rolename,a.username" dictCondition"wh…

Win7系统网络适配器不见了的解决办法

有时候在使用Win7电脑的时候&#xff0c;突然发现网络适配器不见了&#xff0c;这时候应该怎么呢?下面就好小编一起来看看有什么解决办法吧。有需要的朋友快来看看Win7系统网络适配器不见了的解决办法吧。 Win7系统网络适配器不见了的解决办法 方法一 右击桌面“网络”图标…

jeecg标签属性exp 用法name#empty#true

<t:dgFunOpt exp"isAudit#empty#true&&auditType#eq#add" funname"f_audit_add(id,auditContent)" operationCode"forhidden" title"审核"></t:dgFunOpt><t:dgFunOpt exp"isAudit#empty#true&&au…

技术员联盟win11旗舰版64位镜像v2021.07

技术员联盟win11旗舰版64位镜像v2021.07是微软最新推出的电脑操作系统&#xff0c;这款系统带来全新的功能&#xff0c;如任务栏居中&#xff0c;右键刷新等等&#xff0c;采用最实用、最纯粹的系统&#xff0c;轻松满足用户多样化的系统服务需求&#xff0c;用户可以在本站一键…

生成验证码算法

/*** 获得一个随机的字符串* * param baseString 随机字符选取的样本* param length 字符串的长度* return 随机字符串*/public static String randomString(String baseString, int length) {final StringBuilder sb new StringBuilder();if (length < 1) {length 1;}int…

英特尔发布其首个适配Win11的显卡驱动

微软 Win11 预览版已经正式推出&#xff0c;尽管 Win11 兼容使用 Win10 的驱动&#xff0c;但是第三方显卡、硬件厂商目前大都没有针对新系统进行适配。根据外媒 techpowerup 消息&#xff0c;英特尔 7 月 14 日先于英伟达、AMD&#xff0c;推出了专门适配 Windows 11 的显卡驱…

如何禁用、隐藏、显示Windows11上的小部件菜单

win11是全新的电脑操作系统&#xff0c;win11包含一个新的小部件菜单&#xff0c;可从位于任务栏中的按钮打开。如果您想节省任务栏空间&#xff0c;关闭小部件按钮很容易。但是这个要怎么操作呢?下面小编就为大家详细的介绍一下操作方法! 如何隐藏小部件菜单按钮 要在windo…

泛微OA流程表单验证附加验证条件-js代码块

身份证号 验证18位 对应字段名 field10762 数据字段名sfzh 上代码 jQuery(document).ready(function() {var value1 "field10762"; //重写checkCustomizecheckCustomize function(){//dobeforecheck提交按钮验证&#xff0c;当点击时触发var str1 $("#&q…

Win11桌面没有图标怎么解决 Win11桌面没有图标解决教程

1、首先右击桌面上的空白位置&#xff0c;在弹出菜单中选择“查看/显示桌面图标”项&#xff0c;一般这样就可以全部显示出来了。 Win11桌面没有图标怎么解决&#xff1f;Win11桌面没有图标解决教程 2、如果连任务栏也没有了显示&#xff0c;那么可以同时按下“CtrlDelAlt”快…

jeecg 根据数据类型key查询数据字典

/* 查询字典已选择的类型 */String typeGroupCode "emp_level";//字典类型keyTSTypegroup typeGroup ResourceUtil.getCacheTypeGroup(typeGroupCode.toLowerCase());List<TSType> types ResourceUtil.getCacheTypes(typeGroupCode.toLowerCase());/*String…

猎豹浏览器网页声音怎么关闭

打来猎豹浏览器&#xff0c;然后点击左上角的“豹头”图标; 猎豹浏览器网页声音怎么关闭&#xff1f;2步关闭网页声音 这时可以在弹出的菜单栏中看到有一个“关闭所有页面声音”的选项&#xff0c;点击它就可以了。 猎豹浏览器网页声音怎么关闭&#xff1f;2步关闭网页声音 …

JEECG分页条数自定义

修改 DataGridTag.java 配置 条数 sb.append(StringUtil.replaceAll("loadMsg: \{0}\,", "{0}", MutiLangUtil.getLang("common.data.loading")));sb.append("pageSize: " pageSize ",");sb.append("pagination:&quo…

谷歌浏览器怎么下载网页视频 网页视频下载方法分享

在谷歌浏览器上打开要下载视频的播放页面; 谷歌浏览器怎么下载网页视频&#xff1f;网页视频下载方法分享 点击搜索栏右侧的【⋮】&#xff0c;依次选取【更多工具】、【开发者工具】; 谷歌浏览器怎么下载网页视频&#xff1f;网页视频下载方法分享 在开发者页面找到“Netw…

http请求POST方式发送获得返回值

请求类 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.HttpURLConnection; import java.net.InetSocketAddress; import java.net.Proxy; import java.net.URL; import …

win7系统丢失文件的处理方法

其实&#xff0c;系统文件缺失多半是系统内部错误造成的。您可以通过从命令提示符执行此操作来恢复它。那么下面小编就来为大家关于win7系统丢失文件的处理方法。 win7系统丢失文件的处理方法&#xff1a; 1、点击开始菜单&#xff0c;在运行中输入cmd。 2、调出命令提示符!…

SAP ABAP打印MM采购发票打印开发

复制程序应该有部分对象需要自行创建,需要调试,仅供参考 需要打印的模板 程序代码 *&---------------------------------------------------------------------* *& 程序名称/Program Name :ZMMP001 *& 程序名称/Program Des :采购发票: *&…

Win11绿色护眼模式怎么开启

随着win11系统电脑的逐步推广&#xff0c;win11系统在市场上的用户量也是越来越大&#xff0c;不少电脑办公群体也是很青睐于使用win11系统&#xff0c;然而&#xff0c;长时间的办公容易造成视觉疲劳&#xff0c;为此&#xff0c;很多人希望把电脑的显示颜色改成”护眼绿“&am…