From d80ca95c3c0cf4b1a14f335feb13cdf30820839c Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Thu, 28 Jan 2021 14:31:55 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master

---
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/healthcode/controller/healthcodeController.java |  224 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 224 insertions(+), 0 deletions(-)

diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/healthcode/controller/healthcodeController.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/healthcode/controller/healthcodeController.java
new file mode 100644
index 0000000..772b6a1
--- /dev/null
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/healthcode/controller/healthcodeController.java
@@ -0,0 +1,224 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.jfpt.healthcode.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.jfpt.healthcode.entity.healthcode;
+import org.springblade.jfpt.healthcode.service.IhealthcodeService;
+import org.springblade.jfpt.healthcode.vo.healthcodeVO;
+import org.springblade.jfpt.healthcode.wrapper.healthcodeWrapper;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.Valid;
+import java.text.SimpleDateFormat;
+import java.util.*;
+
+/**
+ *  控制器
+ *
+ * @author BladeX
+ * @since 2020-07-19
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("healthcode/healthcode")
+@Api(value = "", tags = "接口")
+public class healthcodeController extends BladeController {
+
+	private final IhealthcodeService ihealthcodeService;
+
+	/**
+	 * 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "详情", notes = "传入lx")
+	public R<healthcodeVO> detail(healthcode healthcode) {
+		healthcode detail = ihealthcodeService.getOne(Condition.getQueryWrapper(healthcode));
+		return R.data(healthcodeWrapper.build().entityVO(detail));
+	}
+
+	/**
+	 * 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "分页", notes = "传入lx")
+	public R<IPage<healthcodeVO>> list(healthcode healthcode, Query query) {
+		IPage<healthcode> pages = ihealthcodeService.page(Condition.getPage(query), Condition.getQueryWrapper(healthcode));
+		return R.data(healthcodeWrapper.build().pageVO(pages));
+	}
+
+
+	/**
+	 * 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@ApiOperation(value = "新增", notes = "传入lx")
+	public R save(@Valid @RequestBody healthcode healthcode) {
+		return R.status(ihealthcodeService.save(healthcode));
+	}
+
+	/**
+	 * 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@ApiOperation(value = "修改", notes = "传入lx")
+	public R update(@Valid @RequestBody healthcode healthcode) {
+		return R.status(ihealthcodeService.updateById(healthcode));
+	}
+
+	/**
+	 * 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@ApiOperation(value = "新增或修改", notes = "传入lx")
+	public R submit(@Valid @RequestBody healthcode healthcode) {
+		return R.status(ihealthcodeService.saveOrUpdate(healthcode));
+	}
+
+
+	/**
+	 * 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 8)
+	@ApiOperation(value = "删除", notes = "传入ids")
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(ihealthcodeService.removeByIds(Func.toLongList(ids)));
+	}
+
+	/**
+	 * 新增或修改
+	 */
+	@PostMapping("/insterh")
+	public R submit(String type, String sex, String province, String city, String district, String dtime,HttpServletResponse response) {
+		response.setHeader("Access-Control-Allow-Origin", "*");
+		response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
+		response.setHeader("Access-Control-Allow-Credentials","true");
+		ihealthcodeService.insert(type,sex, province, city, district, dtime);
+		return R.success("录入成功");
+	}
+
+	/**
+	 * 统计接口
+	 */
+	@PostMapping("/selectCount")
+	public R selectCount(@RequestBody String type, HttpServletResponse response) {
+		response.setHeader("Access-Control-Allow-Origin", "*");
+		response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
+		response.setHeader("Access-Control-Allow-Credentials","true");
+		List<Map<String, Object>> list = new ArrayList<>();
+		Date now = new Date();
+		Date time = new Date(now.getYear(), now.getMonth(), now.getDate());
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); // 设置时间格式
+		Calendar cal = Calendar.getInstance();
+		cal.setTime(time);
+		// 判断要计算的日期是否是周日,如果是则减一天计算周六的,否则会出问题,计算到下一周去了
+		int dayWeek = cal.get(Calendar.DAY_OF_WEEK);// 获得当前日期是一个星期的第几天
+		if (1 == dayWeek) {
+			cal.add(Calendar.DAY_OF_MONTH, -1);
+		}
+		switch(type){
+			case "0" :
+				//日
+				String times = sdf.format(cal.getTime());
+				list=ihealthcodeService.selectCountr(times);
+				break;
+			case "1" :
+				System.out.println("要计算日期为:" + sdf.format(cal.getTime())); // 输出要计算日期
+				// 设置一个星期的第一天,按中国的习惯一个星期的第一天是星期一
+				cal.setFirstDayOfWeek(Calendar.MONDAY);
+				// 获得当前日期是一个星期的第几天
+				int day = cal.get(Calendar.DAY_OF_WEEK);
+				// 根据日历的规则,给当前日期减去星期几与一个星期第一天的差值
+				cal.add(Calendar.DATE, cal.getFirstDayOfWeek() - day);
+				cal.set(Calendar.HOUR, 0);
+				cal.set(Calendar.MINUTE, 0);
+				cal.set(Calendar.SECOND, 0);
+				String beginTime = sdf.format(cal.getTime());
+				Date mondayDate = cal.getTime();
+				cal.add(Calendar.DATE, 6);
+				cal.set(Calendar.HOUR, 23);
+				cal.set(Calendar.MINUTE, 59);
+				cal.set(Calendar.SECOND, 59);
+				String endTime = sdf.format(cal.getTime());
+				Date sundayDate = cal.getTime();
+				list = ihealthcodeService.selectCountz(beginTime, endTime);
+				//周
+				break;
+			default :
+				//月
+				Date d = new Date();
+				// 月初
+				System.out.println("月初" + sdf.format(getMonthStart(d)));
+				String beginTimes = sdf.format(getMonthStart(d));
+				// 月末
+				System.out.println("月末" + sdf.format(getMonthEnd(d)));
+				String endTimes = sdf.format(getMonthEnd(d));
+				list = ihealthcodeService.selectCountz(beginTimes, endTimes);
+		}
+
+		return R.data(list);
+	}
+
+	private static Date getMonthStart(Date date) {
+
+		Calendar calendar = Calendar.getInstance();
+
+		calendar.setTime(date);
+
+		int index = calendar.get(Calendar.DAY_OF_MONTH);
+
+		calendar.add(Calendar.DATE, (1 - index));
+
+		return calendar.getTime();
+
+	}
+
+
+
+	private static Date getMonthEnd(Date date) {
+
+		Calendar calendar = Calendar.getInstance();
+
+		calendar.setTime(date);
+
+		calendar.add(Calendar.MONTH, 1);
+
+		int index = calendar.get(Calendar.DAY_OF_MONTH);
+
+		calendar.add(Calendar.DATE, (-index));
+
+		return calendar.getTime();
+
+	}
+}

--
Gitblit v1.9.3