2021-07-26

layui文件的导出

html前段代码


		function exportOnclick() {
			layer.confirm('确认导出数据?', {
				btn: ['确定','取消'] //按钮
			}, function(index){
				layer.load();
				layer.close(index);
				layui.use(['jquery', 'excel', 'layer'], function() {
					var excel = layui.excel;
					var departNam = $("#departNam").val()
					aweto.ajax(basePath+namespace+"/exportQfTable.ajax",
							{departNam:departNam},
							false,
							function (result) {
								if (result.state == SUCCESS) {

									debugger
									var data = result.param.data;
									//1. 属性的name属性和名称,汉字为导出Excel的标签名称
									data.unshift({ departNam: '机构',
										count: '数量'});
									//2. 获取后台数据
									data = excel.filterExportData(data, [
										'departNam',
										'count'
									]);
									// 3. 执行导出函数,系统会弹出弹框
									excel.exportExcel({
										sheet1: data
									}, '数据.xlsx', 'xlsx');
									layer.msg(result.msgInfo, {icon: 6})
								} else {
									layer.msg(result.msgInfo, {icon: 5})
								}
								layer.closeAll("loading")
							})
				});
			}, function(index){
				layer.close(index);
			});
		}

java后端代码

@RequestMapping(value = "exportQfTable", method = RequestMethod.POST)
	@ResponseBody
	public Message exportQfTable(HttpServletRequest request) {

		Message message = new Message(Message.ERROR, "导出失败");
		JSONObject jsonObject = new JSONObject();
		jsonObject.put("msg", "查询失败");
		List<Map<String, Object>> list = new ArrayList<>();
		Database db = null;
		TableInfo table = new TableInfo(null, true);

		try {

			db = DbUtil.getDb();
			StringBuilder stringBuilder = new StringBuilder();
			StringBuilder tCountSql = new StringBuilder();
			List<Map<String, Object>> list1 = new ArrayList<>();
			String departNam = this.param(request, "departNam");
			String stringList = "";

			if (!"".equals(departNam)) {
				String departNo = db.getValue("select depart_no from depart where depart_nam=" + "'" + departNam + "'");
				stringList = Charset.nullToEmpty(db.getValue(" select get_all_children_node('" + departNo + "')"));
				if (ObjectUtil.isNotEmpty(stringList)) {
					stringList = "'" + stringList.replaceAll(",", "','");
				}
			}

			String shipId = null;
			String departId = null;
			stringBuilder.append("select count(1) as count,slls_no,ship_id,depart_id,f_deleted_flag,f_deleted_at,delete_reason,arrach,first_user,first_dtm,last_user from sv_lead_seal_ship where f_deleted_flag = 0");
//			获取本级及下级depart_id
			if (!"".equals(stringList)) {
				departId = db.getValue("select group_concat(depart_id) from depart where DEPART_NO in('-1'," + stringList + "')");
				departId = departId.replace(",", "','");
				stringBuilder.append(" and depart_id in('-1','" + departId + "')");
			}

			stringBuilder.append(" GROUP BY depart_id ");
			tCountSql.append("select count(1) from(").append(stringBuilder.toString()).append(") t where 1=1");

			list1 = db.getValueMapList(stringBuilder.toString(), new Object[]{});
			JSONArray jasonArray = new JSONArray(0);

			for (Map map : list1) {

				String departName = db.getValue("select depart_nam from depart where depart_id = '" + map.get("depart_id") + "'");

				JSONObject jsonObject1 = new JSONObject();
				jsonObject1.put("departNam", departName);
				jsonObject1.put("count", map.get("count"));
				jasonArray.add(jsonObject1);
			}

			message.addParem("data",jasonArray);
			message.setState(Message.SUCCESS);
			message.setMsgInfo("导出成功");

		} catch (Exception e) {
			e.printStackTrace();
			message.setState(Message.ERROR);
			message.setMsgInfo("执行出错");
		}
		return message;
	}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值