diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java index c05efc4..c3c7c17 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java @@ -85,7 +85,7 @@ if (ToolUtil.isNotEmpty(devtype) && (!(specialStr.equals(devtype)))) { query.eq("devicetype", devtype); } - query.orderBy("createtime", false); + query.orderBy("installtime", false); page = appDeviceAddService.selectPage(page, query); return new SuccessResponseData(super.packForBT(page)); } diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java index c05efc4..c3c7c17 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java @@ -85,7 +85,7 @@ if (ToolUtil.isNotEmpty(devtype) && (!(specialStr.equals(devtype)))) { query.eq("devicetype", devtype); } - query.orderBy("createtime", false); + query.orderBy("installtime", false); page = appDeviceAddService.selectPage(page, query); return new SuccessResponseData(super.packForBT(page)); } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java index 86a76f7..dc95f58 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java @@ -1,22 +1,38 @@ package com.casic.missiles.modular.app.controller; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.app.dict.AppUserOpenidDict; import com.casic.missiles.modular.app.model.AppUserOpenid; import com.casic.missiles.modular.app.service.IAppUserOpenidService; +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; + +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; + import javax.annotation.Resource; import java.util.List; +import java.util.Map; + +import static com.casic.missiles.modular.app.dict.AppUserOpenidDict.APPUSER_LOGIN_LOG_KEY; /** - * 施工添加设备控制器 + * * * @author dev * @Date 2020-05-24 11:21:45 @@ -29,9 +45,10 @@ @Resource private IAppUserOpenidService appUserOpenidService; - + @Value("${casic.wxUrl}") + private String wxUrl; /** - * 获取施工添加设备列表 + * 获取授权列表 */ @RequestMapping(value = "/list") @ResponseBody @@ -40,7 +57,7 @@ } /** - * 获取施工添加设备分页列表 + * 获取授权分页列表 */ @RequestMapping(value = "/listPage") @ResponseBody @@ -52,17 +69,23 @@ } /** - * 新增施工添加设备 + * 新增授权 */ @RequestMapping(value = "/add") @ResponseBody public Object add(AppUserOpenid appUserOpenid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",appUserOpenid.getOpenid()); +// appUserOpenid.delete(ew); + if(ToolUtil.isNotEmpty(appUserOpenidService.selectList(ew))){ + return ResponseData.success("已授权"); + } appUserOpenidService.insert(appUserOpenid); - return ResponseData.success(); + return ResponseData.success("授权成功"); } /** - * 删除施工添加设备 + * 删除授权 */ @RequestMapping(value = "/delete") @ResponseBody @@ -82,7 +105,7 @@ } /** - * 修改施工添加设备 + * 修改登录信息 */ @RequestMapping(value = "/update") @ResponseBody @@ -91,4 +114,44 @@ return ResponseData.success(); } + @RequestMapping(value = "/login") + @ResponseBody + public Object login(String appid, String secret,String code) { + String openid=""; + StringBuilder url = new StringBuilder(wxUrl); + url.append("?appid=");//appid设置 + url.append(appid); + url.append("&secret=");//secret设置 + url.append(secret); + url.append("&js_code=");//code设置 + url.append(code); + url.append("&grant_type=authorization_code"); + Map map = null; + try { + HttpClient client = HttpClientBuilder.create().build();//构建一个Client + HttpGet get = new HttpGet(url.toString()); //构建一个GET请求 + HttpResponse response = client.execute(get);//提交GET请求 + HttpEntity result = response.getEntity();//拿到返回的HttpResponse的"实体" + String content = EntityUtils.toString(result); + JSONObject res = JSONObject.parseObject(content);//把信息封装为json + openid =res.get("openid").toString(); + } catch (Exception e) { + e.printStackTrace(); + } + return ResponseData.success(openid); + } + + /** + * 小程序登录验证 + */ + @RequestMapping(value = "/validate") + @ResponseBody + @BussinessLog(value = "登录日志") +// @BussinessLog(value = "登录日志", key = APPUSER_LOGIN_LOG_KEY, dict = AppUserOpenidDict.class) + public Object validate(String openid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",openid); + AppUserOpenid appUserOpenid = appUserOpenidService.selectOne(ew); + return ResponseData.success(appUserOpenid); + } } diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java index c05efc4..c3c7c17 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java @@ -85,7 +85,7 @@ if (ToolUtil.isNotEmpty(devtype) && (!(specialStr.equals(devtype)))) { query.eq("devicetype", devtype); } - query.orderBy("createtime", false); + query.orderBy("installtime", false); page = appDeviceAddService.selectPage(page, query); return new SuccessResponseData(super.packForBT(page)); } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java index 86a76f7..dc95f58 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java @@ -1,22 +1,38 @@ package com.casic.missiles.modular.app.controller; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.app.dict.AppUserOpenidDict; import com.casic.missiles.modular.app.model.AppUserOpenid; import com.casic.missiles.modular.app.service.IAppUserOpenidService; +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; + +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; + import javax.annotation.Resource; import java.util.List; +import java.util.Map; + +import static com.casic.missiles.modular.app.dict.AppUserOpenidDict.APPUSER_LOGIN_LOG_KEY; /** - * 施工添加设备控制器 + * * * @author dev * @Date 2020-05-24 11:21:45 @@ -29,9 +45,10 @@ @Resource private IAppUserOpenidService appUserOpenidService; - + @Value("${casic.wxUrl}") + private String wxUrl; /** - * 获取施工添加设备列表 + * 获取授权列表 */ @RequestMapping(value = "/list") @ResponseBody @@ -40,7 +57,7 @@ } /** - * 获取施工添加设备分页列表 + * 获取授权分页列表 */ @RequestMapping(value = "/listPage") @ResponseBody @@ -52,17 +69,23 @@ } /** - * 新增施工添加设备 + * 新增授权 */ @RequestMapping(value = "/add") @ResponseBody public Object add(AppUserOpenid appUserOpenid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",appUserOpenid.getOpenid()); +// appUserOpenid.delete(ew); + if(ToolUtil.isNotEmpty(appUserOpenidService.selectList(ew))){ + return ResponseData.success("已授权"); + } appUserOpenidService.insert(appUserOpenid); - return ResponseData.success(); + return ResponseData.success("授权成功"); } /** - * 删除施工添加设备 + * 删除授权 */ @RequestMapping(value = "/delete") @ResponseBody @@ -82,7 +105,7 @@ } /** - * 修改施工添加设备 + * 修改登录信息 */ @RequestMapping(value = "/update") @ResponseBody @@ -91,4 +114,44 @@ return ResponseData.success(); } + @RequestMapping(value = "/login") + @ResponseBody + public Object login(String appid, String secret,String code) { + String openid=""; + StringBuilder url = new StringBuilder(wxUrl); + url.append("?appid=");//appid设置 + url.append(appid); + url.append("&secret=");//secret设置 + url.append(secret); + url.append("&js_code=");//code设置 + url.append(code); + url.append("&grant_type=authorization_code"); + Map map = null; + try { + HttpClient client = HttpClientBuilder.create().build();//构建一个Client + HttpGet get = new HttpGet(url.toString()); //构建一个GET请求 + HttpResponse response = client.execute(get);//提交GET请求 + HttpEntity result = response.getEntity();//拿到返回的HttpResponse的"实体" + String content = EntityUtils.toString(result); + JSONObject res = JSONObject.parseObject(content);//把信息封装为json + openid =res.get("openid").toString(); + } catch (Exception e) { + e.printStackTrace(); + } + return ResponseData.success(openid); + } + + /** + * 小程序登录验证 + */ + @RequestMapping(value = "/validate") + @ResponseBody + @BussinessLog(value = "登录日志") +// @BussinessLog(value = "登录日志", key = APPUSER_LOGIN_LOG_KEY, dict = AppUserOpenidDict.class) + public Object validate(String openid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",openid); + AppUserOpenid appUserOpenid = appUserOpenidService.selectOne(ew); + return ResponseData.success(appUserOpenid); + } } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java new file mode 100644 index 0000000..e085c06 --- /dev/null +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.app.dict; + +import com.casic.missiles.core.common.constant.dictmap.base.AbstractDictMap; + +/** + * Created by test203 on 2019/5/30. + */ +public class AppUserOpenidDict extends AbstractDictMap { + + public static final String APPUSER_LOGIN_LOG_KEY = "openid"; + + @Override + public void init() { + + put("openid", "微信openid"); +// put("attr", "昵称"); +// put("attr1", "姓名"); + } + @Override + protected void initBeWrapped() { + + } +} diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java index c05efc4..c3c7c17 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java @@ -85,7 +85,7 @@ if (ToolUtil.isNotEmpty(devtype) && (!(specialStr.equals(devtype)))) { query.eq("devicetype", devtype); } - query.orderBy("createtime", false); + query.orderBy("installtime", false); page = appDeviceAddService.selectPage(page, query); return new SuccessResponseData(super.packForBT(page)); } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java index 86a76f7..dc95f58 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java @@ -1,22 +1,38 @@ package com.casic.missiles.modular.app.controller; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.app.dict.AppUserOpenidDict; import com.casic.missiles.modular.app.model.AppUserOpenid; import com.casic.missiles.modular.app.service.IAppUserOpenidService; +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; + +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; + import javax.annotation.Resource; import java.util.List; +import java.util.Map; + +import static com.casic.missiles.modular.app.dict.AppUserOpenidDict.APPUSER_LOGIN_LOG_KEY; /** - * 施工添加设备控制器 + * * * @author dev * @Date 2020-05-24 11:21:45 @@ -29,9 +45,10 @@ @Resource private IAppUserOpenidService appUserOpenidService; - + @Value("${casic.wxUrl}") + private String wxUrl; /** - * 获取施工添加设备列表 + * 获取授权列表 */ @RequestMapping(value = "/list") @ResponseBody @@ -40,7 +57,7 @@ } /** - * 获取施工添加设备分页列表 + * 获取授权分页列表 */ @RequestMapping(value = "/listPage") @ResponseBody @@ -52,17 +69,23 @@ } /** - * 新增施工添加设备 + * 新增授权 */ @RequestMapping(value = "/add") @ResponseBody public Object add(AppUserOpenid appUserOpenid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",appUserOpenid.getOpenid()); +// appUserOpenid.delete(ew); + if(ToolUtil.isNotEmpty(appUserOpenidService.selectList(ew))){ + return ResponseData.success("已授权"); + } appUserOpenidService.insert(appUserOpenid); - return ResponseData.success(); + return ResponseData.success("授权成功"); } /** - * 删除施工添加设备 + * 删除授权 */ @RequestMapping(value = "/delete") @ResponseBody @@ -82,7 +105,7 @@ } /** - * 修改施工添加设备 + * 修改登录信息 */ @RequestMapping(value = "/update") @ResponseBody @@ -91,4 +114,44 @@ return ResponseData.success(); } + @RequestMapping(value = "/login") + @ResponseBody + public Object login(String appid, String secret,String code) { + String openid=""; + StringBuilder url = new StringBuilder(wxUrl); + url.append("?appid=");//appid设置 + url.append(appid); + url.append("&secret=");//secret设置 + url.append(secret); + url.append("&js_code=");//code设置 + url.append(code); + url.append("&grant_type=authorization_code"); + Map map = null; + try { + HttpClient client = HttpClientBuilder.create().build();//构建一个Client + HttpGet get = new HttpGet(url.toString()); //构建一个GET请求 + HttpResponse response = client.execute(get);//提交GET请求 + HttpEntity result = response.getEntity();//拿到返回的HttpResponse的"实体" + String content = EntityUtils.toString(result); + JSONObject res = JSONObject.parseObject(content);//把信息封装为json + openid =res.get("openid").toString(); + } catch (Exception e) { + e.printStackTrace(); + } + return ResponseData.success(openid); + } + + /** + * 小程序登录验证 + */ + @RequestMapping(value = "/validate") + @ResponseBody + @BussinessLog(value = "登录日志") +// @BussinessLog(value = "登录日志", key = APPUSER_LOGIN_LOG_KEY, dict = AppUserOpenidDict.class) + public Object validate(String openid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",openid); + AppUserOpenid appUserOpenid = appUserOpenidService.selectOne(ew); + return ResponseData.success(appUserOpenid); + } } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java new file mode 100644 index 0000000..e085c06 --- /dev/null +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.app.dict; + +import com.casic.missiles.core.common.constant.dictmap.base.AbstractDictMap; + +/** + * Created by test203 on 2019/5/30. + */ +public class AppUserOpenidDict extends AbstractDictMap { + + public static final String APPUSER_LOGIN_LOG_KEY = "openid"; + + @Override + public void init() { + + put("openid", "微信openid"); +// put("attr", "昵称"); +// put("attr1", "姓名"); + } + @Override + protected void initBeWrapped() { + + } +} diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java index cbfbc35..0a2a6b7 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java @@ -19,7 +19,7 @@ add(new Header("井深", "welldepth")); add(new Header("安装高度", "installheigt")); add(new Header("负责人", "installperson")); - add(new Header("记录时间", "installtime")); + add(new Header("安装时间", "createtime")); add(new Header("所属项目", "project")); add(new Header("安装位置", "position")); add(new Header("经度(gcj02)", "longitude")); diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java index c05efc4..c3c7c17 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java @@ -85,7 +85,7 @@ if (ToolUtil.isNotEmpty(devtype) && (!(specialStr.equals(devtype)))) { query.eq("devicetype", devtype); } - query.orderBy("createtime", false); + query.orderBy("installtime", false); page = appDeviceAddService.selectPage(page, query); return new SuccessResponseData(super.packForBT(page)); } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java index 86a76f7..dc95f58 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java @@ -1,22 +1,38 @@ package com.casic.missiles.modular.app.controller; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.app.dict.AppUserOpenidDict; import com.casic.missiles.modular.app.model.AppUserOpenid; import com.casic.missiles.modular.app.service.IAppUserOpenidService; +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; + +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; + import javax.annotation.Resource; import java.util.List; +import java.util.Map; + +import static com.casic.missiles.modular.app.dict.AppUserOpenidDict.APPUSER_LOGIN_LOG_KEY; /** - * 施工添加设备控制器 + * * * @author dev * @Date 2020-05-24 11:21:45 @@ -29,9 +45,10 @@ @Resource private IAppUserOpenidService appUserOpenidService; - + @Value("${casic.wxUrl}") + private String wxUrl; /** - * 获取施工添加设备列表 + * 获取授权列表 */ @RequestMapping(value = "/list") @ResponseBody @@ -40,7 +57,7 @@ } /** - * 获取施工添加设备分页列表 + * 获取授权分页列表 */ @RequestMapping(value = "/listPage") @ResponseBody @@ -52,17 +69,23 @@ } /** - * 新增施工添加设备 + * 新增授权 */ @RequestMapping(value = "/add") @ResponseBody public Object add(AppUserOpenid appUserOpenid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",appUserOpenid.getOpenid()); +// appUserOpenid.delete(ew); + if(ToolUtil.isNotEmpty(appUserOpenidService.selectList(ew))){ + return ResponseData.success("已授权"); + } appUserOpenidService.insert(appUserOpenid); - return ResponseData.success(); + return ResponseData.success("授权成功"); } /** - * 删除施工添加设备 + * 删除授权 */ @RequestMapping(value = "/delete") @ResponseBody @@ -82,7 +105,7 @@ } /** - * 修改施工添加设备 + * 修改登录信息 */ @RequestMapping(value = "/update") @ResponseBody @@ -91,4 +114,44 @@ return ResponseData.success(); } + @RequestMapping(value = "/login") + @ResponseBody + public Object login(String appid, String secret,String code) { + String openid=""; + StringBuilder url = new StringBuilder(wxUrl); + url.append("?appid=");//appid设置 + url.append(appid); + url.append("&secret=");//secret设置 + url.append(secret); + url.append("&js_code=");//code设置 + url.append(code); + url.append("&grant_type=authorization_code"); + Map map = null; + try { + HttpClient client = HttpClientBuilder.create().build();//构建一个Client + HttpGet get = new HttpGet(url.toString()); //构建一个GET请求 + HttpResponse response = client.execute(get);//提交GET请求 + HttpEntity result = response.getEntity();//拿到返回的HttpResponse的"实体" + String content = EntityUtils.toString(result); + JSONObject res = JSONObject.parseObject(content);//把信息封装为json + openid =res.get("openid").toString(); + } catch (Exception e) { + e.printStackTrace(); + } + return ResponseData.success(openid); + } + + /** + * 小程序登录验证 + */ + @RequestMapping(value = "/validate") + @ResponseBody + @BussinessLog(value = "登录日志") +// @BussinessLog(value = "登录日志", key = APPUSER_LOGIN_LOG_KEY, dict = AppUserOpenidDict.class) + public Object validate(String openid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",openid); + AppUserOpenid appUserOpenid = appUserOpenidService.selectOne(ew); + return ResponseData.success(appUserOpenid); + } } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java new file mode 100644 index 0000000..e085c06 --- /dev/null +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.app.dict; + +import com.casic.missiles.core.common.constant.dictmap.base.AbstractDictMap; + +/** + * Created by test203 on 2019/5/30. + */ +public class AppUserOpenidDict extends AbstractDictMap { + + public static final String APPUSER_LOGIN_LOG_KEY = "openid"; + + @Override + public void init() { + + put("openid", "微信openid"); +// put("attr", "昵称"); +// put("attr1", "姓名"); + } + @Override + protected void initBeWrapped() { + + } +} diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java index cbfbc35..0a2a6b7 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java @@ -19,7 +19,7 @@ add(new Header("井深", "welldepth")); add(new Header("安装高度", "installheigt")); add(new Header("负责人", "installperson")); - add(new Header("记录时间", "installtime")); + add(new Header("安装时间", "createtime")); add(new Header("所属项目", "project")); add(new Header("安装位置", "position")); add(new Header("经度(gcj02)", "longitude")); diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java index 1fb2545..1064dea 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java @@ -417,7 +417,6 @@ appDeviceAdd.wellname = appDeviceLog.getWellname(); appDeviceAdd.latitude84 = appDeviceLog.getLatitude84(); appDeviceAdd.longitude84 = appDeviceLog.getLongitude84(); - appDeviceAdd.createtime = new Date(); return appDeviceAdd; } diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java index c05efc4..c3c7c17 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java @@ -85,7 +85,7 @@ if (ToolUtil.isNotEmpty(devtype) && (!(specialStr.equals(devtype)))) { query.eq("devicetype", devtype); } - query.orderBy("createtime", false); + query.orderBy("installtime", false); page = appDeviceAddService.selectPage(page, query); return new SuccessResponseData(super.packForBT(page)); } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java index 86a76f7..dc95f58 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java @@ -1,22 +1,38 @@ package com.casic.missiles.modular.app.controller; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.app.dict.AppUserOpenidDict; import com.casic.missiles.modular.app.model.AppUserOpenid; import com.casic.missiles.modular.app.service.IAppUserOpenidService; +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; + +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; + import javax.annotation.Resource; import java.util.List; +import java.util.Map; + +import static com.casic.missiles.modular.app.dict.AppUserOpenidDict.APPUSER_LOGIN_LOG_KEY; /** - * 施工添加设备控制器 + * * * @author dev * @Date 2020-05-24 11:21:45 @@ -29,9 +45,10 @@ @Resource private IAppUserOpenidService appUserOpenidService; - + @Value("${casic.wxUrl}") + private String wxUrl; /** - * 获取施工添加设备列表 + * 获取授权列表 */ @RequestMapping(value = "/list") @ResponseBody @@ -40,7 +57,7 @@ } /** - * 获取施工添加设备分页列表 + * 获取授权分页列表 */ @RequestMapping(value = "/listPage") @ResponseBody @@ -52,17 +69,23 @@ } /** - * 新增施工添加设备 + * 新增授权 */ @RequestMapping(value = "/add") @ResponseBody public Object add(AppUserOpenid appUserOpenid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",appUserOpenid.getOpenid()); +// appUserOpenid.delete(ew); + if(ToolUtil.isNotEmpty(appUserOpenidService.selectList(ew))){ + return ResponseData.success("已授权"); + } appUserOpenidService.insert(appUserOpenid); - return ResponseData.success(); + return ResponseData.success("授权成功"); } /** - * 删除施工添加设备 + * 删除授权 */ @RequestMapping(value = "/delete") @ResponseBody @@ -82,7 +105,7 @@ } /** - * 修改施工添加设备 + * 修改登录信息 */ @RequestMapping(value = "/update") @ResponseBody @@ -91,4 +114,44 @@ return ResponseData.success(); } + @RequestMapping(value = "/login") + @ResponseBody + public Object login(String appid, String secret,String code) { + String openid=""; + StringBuilder url = new StringBuilder(wxUrl); + url.append("?appid=");//appid设置 + url.append(appid); + url.append("&secret=");//secret设置 + url.append(secret); + url.append("&js_code=");//code设置 + url.append(code); + url.append("&grant_type=authorization_code"); + Map map = null; + try { + HttpClient client = HttpClientBuilder.create().build();//构建一个Client + HttpGet get = new HttpGet(url.toString()); //构建一个GET请求 + HttpResponse response = client.execute(get);//提交GET请求 + HttpEntity result = response.getEntity();//拿到返回的HttpResponse的"实体" + String content = EntityUtils.toString(result); + JSONObject res = JSONObject.parseObject(content);//把信息封装为json + openid =res.get("openid").toString(); + } catch (Exception e) { + e.printStackTrace(); + } + return ResponseData.success(openid); + } + + /** + * 小程序登录验证 + */ + @RequestMapping(value = "/validate") + @ResponseBody + @BussinessLog(value = "登录日志") +// @BussinessLog(value = "登录日志", key = APPUSER_LOGIN_LOG_KEY, dict = AppUserOpenidDict.class) + public Object validate(String openid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",openid); + AppUserOpenid appUserOpenid = appUserOpenidService.selectOne(ew); + return ResponseData.success(appUserOpenid); + } } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java new file mode 100644 index 0000000..e085c06 --- /dev/null +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.app.dict; + +import com.casic.missiles.core.common.constant.dictmap.base.AbstractDictMap; + +/** + * Created by test203 on 2019/5/30. + */ +public class AppUserOpenidDict extends AbstractDictMap { + + public static final String APPUSER_LOGIN_LOG_KEY = "openid"; + + @Override + public void init() { + + put("openid", "微信openid"); +// put("attr", "昵称"); +// put("attr1", "姓名"); + } + @Override + protected void initBeWrapped() { + + } +} diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java index cbfbc35..0a2a6b7 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java @@ -19,7 +19,7 @@ add(new Header("井深", "welldepth")); add(new Header("安装高度", "installheigt")); add(new Header("负责人", "installperson")); - add(new Header("记录时间", "installtime")); + add(new Header("安装时间", "createtime")); add(new Header("所属项目", "project")); add(new Header("安装位置", "position")); add(new Header("经度(gcj02)", "longitude")); diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java index 1fb2545..1064dea 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java @@ -417,7 +417,6 @@ appDeviceAdd.wellname = appDeviceLog.getWellname(); appDeviceAdd.latitude84 = appDeviceLog.getLatitude84(); appDeviceAdd.longitude84 = appDeviceLog.getLongitude84(); - appDeviceAdd.createtime = new Date(); return appDeviceAdd; } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java index d2013a2..1fe6571 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.activerecord.Model; import com.baomidou.mybatisplus.annotations.TableName; import java.io.Serializable; +import java.util.Date; /** *

@@ -37,6 +38,13 @@ * 备注 */ private String attr; + private String attr1; + private String role; + + /** + * 创建时间 + */ + private Date createtime; public Long getId() { @@ -79,6 +87,30 @@ this.attr = attr; } + public String getAttr1() { + return attr1; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getRole() { + return role; + } + + public void setRole(String role) { + this.role = role; + } + + public Date getCreatetime() { + return createtime; + } + + public void setCreatetime(Date createtime) { + this.createtime = createtime; + } + @Override protected Serializable pkVal() { return this.id; diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java index c05efc4..c3c7c17 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java @@ -85,7 +85,7 @@ if (ToolUtil.isNotEmpty(devtype) && (!(specialStr.equals(devtype)))) { query.eq("devicetype", devtype); } - query.orderBy("createtime", false); + query.orderBy("installtime", false); page = appDeviceAddService.selectPage(page, query); return new SuccessResponseData(super.packForBT(page)); } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java index 86a76f7..dc95f58 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java @@ -1,22 +1,38 @@ package com.casic.missiles.modular.app.controller; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.app.dict.AppUserOpenidDict; import com.casic.missiles.modular.app.model.AppUserOpenid; import com.casic.missiles.modular.app.service.IAppUserOpenidService; +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; + +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; + import javax.annotation.Resource; import java.util.List; +import java.util.Map; + +import static com.casic.missiles.modular.app.dict.AppUserOpenidDict.APPUSER_LOGIN_LOG_KEY; /** - * 施工添加设备控制器 + * * * @author dev * @Date 2020-05-24 11:21:45 @@ -29,9 +45,10 @@ @Resource private IAppUserOpenidService appUserOpenidService; - + @Value("${casic.wxUrl}") + private String wxUrl; /** - * 获取施工添加设备列表 + * 获取授权列表 */ @RequestMapping(value = "/list") @ResponseBody @@ -40,7 +57,7 @@ } /** - * 获取施工添加设备分页列表 + * 获取授权分页列表 */ @RequestMapping(value = "/listPage") @ResponseBody @@ -52,17 +69,23 @@ } /** - * 新增施工添加设备 + * 新增授权 */ @RequestMapping(value = "/add") @ResponseBody public Object add(AppUserOpenid appUserOpenid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",appUserOpenid.getOpenid()); +// appUserOpenid.delete(ew); + if(ToolUtil.isNotEmpty(appUserOpenidService.selectList(ew))){ + return ResponseData.success("已授权"); + } appUserOpenidService.insert(appUserOpenid); - return ResponseData.success(); + return ResponseData.success("授权成功"); } /** - * 删除施工添加设备 + * 删除授权 */ @RequestMapping(value = "/delete") @ResponseBody @@ -82,7 +105,7 @@ } /** - * 修改施工添加设备 + * 修改登录信息 */ @RequestMapping(value = "/update") @ResponseBody @@ -91,4 +114,44 @@ return ResponseData.success(); } + @RequestMapping(value = "/login") + @ResponseBody + public Object login(String appid, String secret,String code) { + String openid=""; + StringBuilder url = new StringBuilder(wxUrl); + url.append("?appid=");//appid设置 + url.append(appid); + url.append("&secret=");//secret设置 + url.append(secret); + url.append("&js_code=");//code设置 + url.append(code); + url.append("&grant_type=authorization_code"); + Map map = null; + try { + HttpClient client = HttpClientBuilder.create().build();//构建一个Client + HttpGet get = new HttpGet(url.toString()); //构建一个GET请求 + HttpResponse response = client.execute(get);//提交GET请求 + HttpEntity result = response.getEntity();//拿到返回的HttpResponse的"实体" + String content = EntityUtils.toString(result); + JSONObject res = JSONObject.parseObject(content);//把信息封装为json + openid =res.get("openid").toString(); + } catch (Exception e) { + e.printStackTrace(); + } + return ResponseData.success(openid); + } + + /** + * 小程序登录验证 + */ + @RequestMapping(value = "/validate") + @ResponseBody + @BussinessLog(value = "登录日志") +// @BussinessLog(value = "登录日志", key = APPUSER_LOGIN_LOG_KEY, dict = AppUserOpenidDict.class) + public Object validate(String openid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",openid); + AppUserOpenid appUserOpenid = appUserOpenidService.selectOne(ew); + return ResponseData.success(appUserOpenid); + } } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java new file mode 100644 index 0000000..e085c06 --- /dev/null +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.app.dict; + +import com.casic.missiles.core.common.constant.dictmap.base.AbstractDictMap; + +/** + * Created by test203 on 2019/5/30. + */ +public class AppUserOpenidDict extends AbstractDictMap { + + public static final String APPUSER_LOGIN_LOG_KEY = "openid"; + + @Override + public void init() { + + put("openid", "微信openid"); +// put("attr", "昵称"); +// put("attr1", "姓名"); + } + @Override + protected void initBeWrapped() { + + } +} diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java index cbfbc35..0a2a6b7 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java @@ -19,7 +19,7 @@ add(new Header("井深", "welldepth")); add(new Header("安装高度", "installheigt")); add(new Header("负责人", "installperson")); - add(new Header("记录时间", "installtime")); + add(new Header("安装时间", "createtime")); add(new Header("所属项目", "project")); add(new Header("安装位置", "position")); add(new Header("经度(gcj02)", "longitude")); diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java index 1fb2545..1064dea 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java @@ -417,7 +417,6 @@ appDeviceAdd.wellname = appDeviceLog.getWellname(); appDeviceAdd.latitude84 = appDeviceLog.getLatitude84(); appDeviceAdd.longitude84 = appDeviceLog.getLongitude84(); - appDeviceAdd.createtime = new Date(); return appDeviceAdd; } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java index d2013a2..1fe6571 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.activerecord.Model; import com.baomidou.mybatisplus.annotations.TableName; import java.io.Serializable; +import java.util.Date; /** *

@@ -37,6 +38,13 @@ * 备注 */ private String attr; + private String attr1; + private String role; + + /** + * 创建时间 + */ + private Date createtime; public Long getId() { @@ -79,6 +87,30 @@ this.attr = attr; } + public String getAttr1() { + return attr1; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getRole() { + return role; + } + + public void setRole(String role) { + this.role = role; + } + + public Date getCreatetime() { + return createtime; + } + + public void setCreatetime(Date createtime) { + this.createtime = createtime; + } + @Override protected Serializable pkVal() { return this.id; diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java index 701ff20..7ac5b94 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java @@ -93,10 +93,10 @@ query.like("devcode", devcode); } if (ToolUtil.isNotEmpty(begTime)) { - query.ge("installtime", DateUtil.parseTime(begTime + " 00:00:00")); + query.ge("createtime", DateUtil.parseTime(begTime + " 00:00:00")); } if (ToolUtil.isNotEmpty(endTime)) { - query.le("installtime", DateUtil.parseTime(endTime + " 23:23:59")); + query.le("createtime", DateUtil.parseTime(endTime + " 23:23:59")); } if (ToolUtil.isNotEmpty(project)) { query.eq("project", project); diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java index c05efc4..c3c7c17 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java @@ -85,7 +85,7 @@ if (ToolUtil.isNotEmpty(devtype) && (!(specialStr.equals(devtype)))) { query.eq("devicetype", devtype); } - query.orderBy("createtime", false); + query.orderBy("installtime", false); page = appDeviceAddService.selectPage(page, query); return new SuccessResponseData(super.packForBT(page)); } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java index 86a76f7..dc95f58 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java @@ -1,22 +1,38 @@ package com.casic.missiles.modular.app.controller; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.app.dict.AppUserOpenidDict; import com.casic.missiles.modular.app.model.AppUserOpenid; import com.casic.missiles.modular.app.service.IAppUserOpenidService; +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; + +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; + import javax.annotation.Resource; import java.util.List; +import java.util.Map; + +import static com.casic.missiles.modular.app.dict.AppUserOpenidDict.APPUSER_LOGIN_LOG_KEY; /** - * 施工添加设备控制器 + * * * @author dev * @Date 2020-05-24 11:21:45 @@ -29,9 +45,10 @@ @Resource private IAppUserOpenidService appUserOpenidService; - + @Value("${casic.wxUrl}") + private String wxUrl; /** - * 获取施工添加设备列表 + * 获取授权列表 */ @RequestMapping(value = "/list") @ResponseBody @@ -40,7 +57,7 @@ } /** - * 获取施工添加设备分页列表 + * 获取授权分页列表 */ @RequestMapping(value = "/listPage") @ResponseBody @@ -52,17 +69,23 @@ } /** - * 新增施工添加设备 + * 新增授权 */ @RequestMapping(value = "/add") @ResponseBody public Object add(AppUserOpenid appUserOpenid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",appUserOpenid.getOpenid()); +// appUserOpenid.delete(ew); + if(ToolUtil.isNotEmpty(appUserOpenidService.selectList(ew))){ + return ResponseData.success("已授权"); + } appUserOpenidService.insert(appUserOpenid); - return ResponseData.success(); + return ResponseData.success("授权成功"); } /** - * 删除施工添加设备 + * 删除授权 */ @RequestMapping(value = "/delete") @ResponseBody @@ -82,7 +105,7 @@ } /** - * 修改施工添加设备 + * 修改登录信息 */ @RequestMapping(value = "/update") @ResponseBody @@ -91,4 +114,44 @@ return ResponseData.success(); } + @RequestMapping(value = "/login") + @ResponseBody + public Object login(String appid, String secret,String code) { + String openid=""; + StringBuilder url = new StringBuilder(wxUrl); + url.append("?appid=");//appid设置 + url.append(appid); + url.append("&secret=");//secret设置 + url.append(secret); + url.append("&js_code=");//code设置 + url.append(code); + url.append("&grant_type=authorization_code"); + Map map = null; + try { + HttpClient client = HttpClientBuilder.create().build();//构建一个Client + HttpGet get = new HttpGet(url.toString()); //构建一个GET请求 + HttpResponse response = client.execute(get);//提交GET请求 + HttpEntity result = response.getEntity();//拿到返回的HttpResponse的"实体" + String content = EntityUtils.toString(result); + JSONObject res = JSONObject.parseObject(content);//把信息封装为json + openid =res.get("openid").toString(); + } catch (Exception e) { + e.printStackTrace(); + } + return ResponseData.success(openid); + } + + /** + * 小程序登录验证 + */ + @RequestMapping(value = "/validate") + @ResponseBody + @BussinessLog(value = "登录日志") +// @BussinessLog(value = "登录日志", key = APPUSER_LOGIN_LOG_KEY, dict = AppUserOpenidDict.class) + public Object validate(String openid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",openid); + AppUserOpenid appUserOpenid = appUserOpenidService.selectOne(ew); + return ResponseData.success(appUserOpenid); + } } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java new file mode 100644 index 0000000..e085c06 --- /dev/null +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.app.dict; + +import com.casic.missiles.core.common.constant.dictmap.base.AbstractDictMap; + +/** + * Created by test203 on 2019/5/30. + */ +public class AppUserOpenidDict extends AbstractDictMap { + + public static final String APPUSER_LOGIN_LOG_KEY = "openid"; + + @Override + public void init() { + + put("openid", "微信openid"); +// put("attr", "昵称"); +// put("attr1", "姓名"); + } + @Override + protected void initBeWrapped() { + + } +} diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java index cbfbc35..0a2a6b7 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java @@ -19,7 +19,7 @@ add(new Header("井深", "welldepth")); add(new Header("安装高度", "installheigt")); add(new Header("负责人", "installperson")); - add(new Header("记录时间", "installtime")); + add(new Header("安装时间", "createtime")); add(new Header("所属项目", "project")); add(new Header("安装位置", "position")); add(new Header("经度(gcj02)", "longitude")); diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java index 1fb2545..1064dea 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java @@ -417,7 +417,6 @@ appDeviceAdd.wellname = appDeviceLog.getWellname(); appDeviceAdd.latitude84 = appDeviceLog.getLatitude84(); appDeviceAdd.longitude84 = appDeviceLog.getLongitude84(); - appDeviceAdd.createtime = new Date(); return appDeviceAdd; } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java index d2013a2..1fe6571 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.activerecord.Model; import com.baomidou.mybatisplus.annotations.TableName; import java.io.Serializable; +import java.util.Date; /** *

@@ -37,6 +38,13 @@ * 备注 */ private String attr; + private String attr1; + private String role; + + /** + * 创建时间 + */ + private Date createtime; public Long getId() { @@ -79,6 +87,30 @@ this.attr = attr; } + public String getAttr1() { + return attr1; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getRole() { + return role; + } + + public void setRole(String role) { + this.role = role; + } + + public Date getCreatetime() { + return createtime; + } + + public void setCreatetime(Date createtime) { + this.createtime = createtime; + } + @Override protected Serializable pkVal() { return this.id; diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java index 701ff20..7ac5b94 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java @@ -93,10 +93,10 @@ query.like("devcode", devcode); } if (ToolUtil.isNotEmpty(begTime)) { - query.ge("installtime", DateUtil.parseTime(begTime + " 00:00:00")); + query.ge("createtime", DateUtil.parseTime(begTime + " 00:00:00")); } if (ToolUtil.isNotEmpty(endTime)) { - query.le("installtime", DateUtil.parseTime(endTime + " 23:23:59")); + query.le("createtime", DateUtil.parseTime(endTime + " 23:23:59")); } if (ToolUtil.isNotEmpty(project)) { query.eq("project", project); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java index 68c37f2..2f9af71 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java @@ -15,6 +15,7 @@ import com.casic.missiles.modular.device.service.IDeviceService; import com.casic.missiles.modular.device.service.impl.DeviceServiceImpl; import com.casic.missiles.modular.repairs.service.IProductRepairRecordsService; +import com.casic.missiles.modular.system.model.Device; import com.casic.missiles.modular.system.model.ProductRepairRecords; import com.casic.missiles.modular.system.model.Task; import com.casic.missiles.modular.system.model.User; @@ -82,12 +83,18 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String devcode, String begTime, String endTime) { + public Object listPage(@RequestParam(required = false) String devcode, + @RequestParam(required = false) String begTime, + @RequestParam(required = false) String endTime, + @RequestParam(required = false) Long devTypeId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); if (ToolUtil.isNotEmpty(devcode)) { query.like("devcode", devcode); } + if (ToolUtil.isNotEmpty(devTypeId)) { + query.eq("devtype_id", devTypeId); + } if (ToolUtil.isNotEmpty(begTime)) { query.ge("returntime", DateUtil.parseTime(begTime)); } @@ -113,36 +120,17 @@ @RequestMapping(value = "/add") @ResponseBody public Object add(ProductRepairRecords productRepairRecords, - String returntimeFmt, String finishtimeFmt -// MultipartFile file1Base64, -// MultipartFile file2Base64, -// MultipartFile file3Base64 - ) throws IOException { - if (null == deviceService.getDeviceByCode(productRepairRecords.getDevcode())) { + String returntimeFmt, String finishtimeFmt) throws IOException { + Device device = deviceService.getDeviceByCode(productRepairRecords.getDevcode()); + if (null == device) { return ResponseData.error(400, "设备编号不存在"); + } else { + productRepairRecords.setDevtypeId(device.getDevtypeId()); } productRepairRecords.setReturntime(ToolUtil.isNotEmpty(returntimeFmt) ? Timestamp.valueOf(returntimeFmt) : null); productRepairRecords.setFinishtime(ToolUtil.isNotEmpty(finishtimeFmt) ? Timestamp.valueOf(finishtimeFmt) : null); -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath1())){ -// productRepairRecords.setPhotopath1(productRepairRecords.getPhotopath1()); -// } -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath2())){ -// productRepairRecords.setPhotopath2(productRepairRecords.getPhotopath2()); -// } -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath3())){ -// productRepairRecords.setPhotopath3(productRepairRecords.getPhotopath3()); -// } -// if (ToolUtil.isNotEmpty(file1Base64)) { -// productRepairRecords.setPhotopath1(FileUtil.saveFile(file1Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file2Base64)) { -// productRepairRecords.setPhotopath2(FileUtil.saveFile(file2Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file3Base64)) { -// productRepairRecords.setPhotopath3(FileUtil.saveFile(file3Base64, filePath)); -// } productRepairRecordsService.insert(productRepairRecords); Task task = taskService.selectById(productRepairRecords.getTaskid()); if ("1".equals(productRepairRecords.getIschange()) && null != task && @@ -181,25 +169,12 @@ @RequestMapping(value = "/update") @ResponseBody public Object update(ProductRepairRecords productRepairRecords, - String returntimeFmt, String finishtimeFmt -// MultipartFile file1Base64, -// MultipartFile file2Base64, -// MultipartFile file3Base64 - ) throws IOException { + String returntimeFmt, String finishtimeFmt) throws IOException { productRepairRecords.setReturntime(ToolUtil.isNotEmpty(returntimeFmt) ? Timestamp.valueOf(returntimeFmt) : null); productRepairRecords.setFinishtime(ToolUtil.isNotEmpty(finishtimeFmt) ? Timestamp.valueOf(finishtimeFmt) : null); -// if (ToolUtil.isNotEmpty(file1Base64)) { -// productRepairRecords.setPhotopath1(FileUtil.saveFile(file1Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file2Base64)) { -// productRepairRecords.setPhotopath2(FileUtil.saveFile(file2Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file3Base64)) { -// productRepairRecords.setPhotopath3(FileUtil.saveFile(file3Base64, filePath)); -// } productRepairRecordsService.updateById(productRepairRecords); return ResponseData.success(); } @@ -225,7 +200,8 @@ String devcode = httpServletRequest.getParameter("devcode"); String begTime = httpServletRequest.getParameter("begTime"); String endTime = httpServletRequest.getParameter("endTime"); - List list = productRepairRecordsService.reportExport(devcode, begTime, endTime); + String devTypeId = httpServletRequest.getParameter("devTypeId"); + List list = productRepairRecordsService.reportExport(devcode, begTime, endTime,devTypeId); FileInputStream fileInputStream = new FileInputStream(downloadPath + (list != null && list.size() > 0 ? "repairsList.xlsx" : "contentNull.xlsx")); try { diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java index c05efc4..c3c7c17 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java @@ -85,7 +85,7 @@ if (ToolUtil.isNotEmpty(devtype) && (!(specialStr.equals(devtype)))) { query.eq("devicetype", devtype); } - query.orderBy("createtime", false); + query.orderBy("installtime", false); page = appDeviceAddService.selectPage(page, query); return new SuccessResponseData(super.packForBT(page)); } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java index 86a76f7..dc95f58 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java @@ -1,22 +1,38 @@ package com.casic.missiles.modular.app.controller; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.app.dict.AppUserOpenidDict; import com.casic.missiles.modular.app.model.AppUserOpenid; import com.casic.missiles.modular.app.service.IAppUserOpenidService; +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; + +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; + import javax.annotation.Resource; import java.util.List; +import java.util.Map; + +import static com.casic.missiles.modular.app.dict.AppUserOpenidDict.APPUSER_LOGIN_LOG_KEY; /** - * 施工添加设备控制器 + * * * @author dev * @Date 2020-05-24 11:21:45 @@ -29,9 +45,10 @@ @Resource private IAppUserOpenidService appUserOpenidService; - + @Value("${casic.wxUrl}") + private String wxUrl; /** - * 获取施工添加设备列表 + * 获取授权列表 */ @RequestMapping(value = "/list") @ResponseBody @@ -40,7 +57,7 @@ } /** - * 获取施工添加设备分页列表 + * 获取授权分页列表 */ @RequestMapping(value = "/listPage") @ResponseBody @@ -52,17 +69,23 @@ } /** - * 新增施工添加设备 + * 新增授权 */ @RequestMapping(value = "/add") @ResponseBody public Object add(AppUserOpenid appUserOpenid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",appUserOpenid.getOpenid()); +// appUserOpenid.delete(ew); + if(ToolUtil.isNotEmpty(appUserOpenidService.selectList(ew))){ + return ResponseData.success("已授权"); + } appUserOpenidService.insert(appUserOpenid); - return ResponseData.success(); + return ResponseData.success("授权成功"); } /** - * 删除施工添加设备 + * 删除授权 */ @RequestMapping(value = "/delete") @ResponseBody @@ -82,7 +105,7 @@ } /** - * 修改施工添加设备 + * 修改登录信息 */ @RequestMapping(value = "/update") @ResponseBody @@ -91,4 +114,44 @@ return ResponseData.success(); } + @RequestMapping(value = "/login") + @ResponseBody + public Object login(String appid, String secret,String code) { + String openid=""; + StringBuilder url = new StringBuilder(wxUrl); + url.append("?appid=");//appid设置 + url.append(appid); + url.append("&secret=");//secret设置 + url.append(secret); + url.append("&js_code=");//code设置 + url.append(code); + url.append("&grant_type=authorization_code"); + Map map = null; + try { + HttpClient client = HttpClientBuilder.create().build();//构建一个Client + HttpGet get = new HttpGet(url.toString()); //构建一个GET请求 + HttpResponse response = client.execute(get);//提交GET请求 + HttpEntity result = response.getEntity();//拿到返回的HttpResponse的"实体" + String content = EntityUtils.toString(result); + JSONObject res = JSONObject.parseObject(content);//把信息封装为json + openid =res.get("openid").toString(); + } catch (Exception e) { + e.printStackTrace(); + } + return ResponseData.success(openid); + } + + /** + * 小程序登录验证 + */ + @RequestMapping(value = "/validate") + @ResponseBody + @BussinessLog(value = "登录日志") +// @BussinessLog(value = "登录日志", key = APPUSER_LOGIN_LOG_KEY, dict = AppUserOpenidDict.class) + public Object validate(String openid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",openid); + AppUserOpenid appUserOpenid = appUserOpenidService.selectOne(ew); + return ResponseData.success(appUserOpenid); + } } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java new file mode 100644 index 0000000..e085c06 --- /dev/null +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.app.dict; + +import com.casic.missiles.core.common.constant.dictmap.base.AbstractDictMap; + +/** + * Created by test203 on 2019/5/30. + */ +public class AppUserOpenidDict extends AbstractDictMap { + + public static final String APPUSER_LOGIN_LOG_KEY = "openid"; + + @Override + public void init() { + + put("openid", "微信openid"); +// put("attr", "昵称"); +// put("attr1", "姓名"); + } + @Override + protected void initBeWrapped() { + + } +} diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java index cbfbc35..0a2a6b7 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java @@ -19,7 +19,7 @@ add(new Header("井深", "welldepth")); add(new Header("安装高度", "installheigt")); add(new Header("负责人", "installperson")); - add(new Header("记录时间", "installtime")); + add(new Header("安装时间", "createtime")); add(new Header("所属项目", "project")); add(new Header("安装位置", "position")); add(new Header("经度(gcj02)", "longitude")); diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java index 1fb2545..1064dea 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java @@ -417,7 +417,6 @@ appDeviceAdd.wellname = appDeviceLog.getWellname(); appDeviceAdd.latitude84 = appDeviceLog.getLatitude84(); appDeviceAdd.longitude84 = appDeviceLog.getLongitude84(); - appDeviceAdd.createtime = new Date(); return appDeviceAdd; } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java index d2013a2..1fe6571 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.activerecord.Model; import com.baomidou.mybatisplus.annotations.TableName; import java.io.Serializable; +import java.util.Date; /** *

@@ -37,6 +38,13 @@ * 备注 */ private String attr; + private String attr1; + private String role; + + /** + * 创建时间 + */ + private Date createtime; public Long getId() { @@ -79,6 +87,30 @@ this.attr = attr; } + public String getAttr1() { + return attr1; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getRole() { + return role; + } + + public void setRole(String role) { + this.role = role; + } + + public Date getCreatetime() { + return createtime; + } + + public void setCreatetime(Date createtime) { + this.createtime = createtime; + } + @Override protected Serializable pkVal() { return this.id; diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java index 701ff20..7ac5b94 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java @@ -93,10 +93,10 @@ query.like("devcode", devcode); } if (ToolUtil.isNotEmpty(begTime)) { - query.ge("installtime", DateUtil.parseTime(begTime + " 00:00:00")); + query.ge("createtime", DateUtil.parseTime(begTime + " 00:00:00")); } if (ToolUtil.isNotEmpty(endTime)) { - query.le("installtime", DateUtil.parseTime(endTime + " 23:23:59")); + query.le("createtime", DateUtil.parseTime(endTime + " 23:23:59")); } if (ToolUtil.isNotEmpty(project)) { query.eq("project", project); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java index 68c37f2..2f9af71 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java @@ -15,6 +15,7 @@ import com.casic.missiles.modular.device.service.IDeviceService; import com.casic.missiles.modular.device.service.impl.DeviceServiceImpl; import com.casic.missiles.modular.repairs.service.IProductRepairRecordsService; +import com.casic.missiles.modular.system.model.Device; import com.casic.missiles.modular.system.model.ProductRepairRecords; import com.casic.missiles.modular.system.model.Task; import com.casic.missiles.modular.system.model.User; @@ -82,12 +83,18 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String devcode, String begTime, String endTime) { + public Object listPage(@RequestParam(required = false) String devcode, + @RequestParam(required = false) String begTime, + @RequestParam(required = false) String endTime, + @RequestParam(required = false) Long devTypeId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); if (ToolUtil.isNotEmpty(devcode)) { query.like("devcode", devcode); } + if (ToolUtil.isNotEmpty(devTypeId)) { + query.eq("devtype_id", devTypeId); + } if (ToolUtil.isNotEmpty(begTime)) { query.ge("returntime", DateUtil.parseTime(begTime)); } @@ -113,36 +120,17 @@ @RequestMapping(value = "/add") @ResponseBody public Object add(ProductRepairRecords productRepairRecords, - String returntimeFmt, String finishtimeFmt -// MultipartFile file1Base64, -// MultipartFile file2Base64, -// MultipartFile file3Base64 - ) throws IOException { - if (null == deviceService.getDeviceByCode(productRepairRecords.getDevcode())) { + String returntimeFmt, String finishtimeFmt) throws IOException { + Device device = deviceService.getDeviceByCode(productRepairRecords.getDevcode()); + if (null == device) { return ResponseData.error(400, "设备编号不存在"); + } else { + productRepairRecords.setDevtypeId(device.getDevtypeId()); } productRepairRecords.setReturntime(ToolUtil.isNotEmpty(returntimeFmt) ? Timestamp.valueOf(returntimeFmt) : null); productRepairRecords.setFinishtime(ToolUtil.isNotEmpty(finishtimeFmt) ? Timestamp.valueOf(finishtimeFmt) : null); -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath1())){ -// productRepairRecords.setPhotopath1(productRepairRecords.getPhotopath1()); -// } -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath2())){ -// productRepairRecords.setPhotopath2(productRepairRecords.getPhotopath2()); -// } -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath3())){ -// productRepairRecords.setPhotopath3(productRepairRecords.getPhotopath3()); -// } -// if (ToolUtil.isNotEmpty(file1Base64)) { -// productRepairRecords.setPhotopath1(FileUtil.saveFile(file1Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file2Base64)) { -// productRepairRecords.setPhotopath2(FileUtil.saveFile(file2Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file3Base64)) { -// productRepairRecords.setPhotopath3(FileUtil.saveFile(file3Base64, filePath)); -// } productRepairRecordsService.insert(productRepairRecords); Task task = taskService.selectById(productRepairRecords.getTaskid()); if ("1".equals(productRepairRecords.getIschange()) && null != task && @@ -181,25 +169,12 @@ @RequestMapping(value = "/update") @ResponseBody public Object update(ProductRepairRecords productRepairRecords, - String returntimeFmt, String finishtimeFmt -// MultipartFile file1Base64, -// MultipartFile file2Base64, -// MultipartFile file3Base64 - ) throws IOException { + String returntimeFmt, String finishtimeFmt) throws IOException { productRepairRecords.setReturntime(ToolUtil.isNotEmpty(returntimeFmt) ? Timestamp.valueOf(returntimeFmt) : null); productRepairRecords.setFinishtime(ToolUtil.isNotEmpty(finishtimeFmt) ? Timestamp.valueOf(finishtimeFmt) : null); -// if (ToolUtil.isNotEmpty(file1Base64)) { -// productRepairRecords.setPhotopath1(FileUtil.saveFile(file1Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file2Base64)) { -// productRepairRecords.setPhotopath2(FileUtil.saveFile(file2Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file3Base64)) { -// productRepairRecords.setPhotopath3(FileUtil.saveFile(file3Base64, filePath)); -// } productRepairRecordsService.updateById(productRepairRecords); return ResponseData.success(); } @@ -225,7 +200,8 @@ String devcode = httpServletRequest.getParameter("devcode"); String begTime = httpServletRequest.getParameter("begTime"); String endTime = httpServletRequest.getParameter("endTime"); - List list = productRepairRecordsService.reportExport(devcode, begTime, endTime); + String devTypeId = httpServletRequest.getParameter("devTypeId"); + List list = productRepairRecordsService.reportExport(devcode, begTime, endTime,devTypeId); FileInputStream fileInputStream = new FileInputStream(downloadPath + (list != null && list.size() > 0 ? "repairsList.xlsx" : "contentNull.xlsx")); try { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java index c1f6792..97cb402 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java @@ -15,6 +15,6 @@ * @since 2020-06-16 */ public interface IProductRepairRecordsService extends IService { - List reportExport(String devcode, String begTime, String endTime); + List reportExport(String devcode, String begTime, String endTime,String devTypeId); Map importContract(List productRepairRecordsList); } diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java index c05efc4..c3c7c17 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java @@ -85,7 +85,7 @@ if (ToolUtil.isNotEmpty(devtype) && (!(specialStr.equals(devtype)))) { query.eq("devicetype", devtype); } - query.orderBy("createtime", false); + query.orderBy("installtime", false); page = appDeviceAddService.selectPage(page, query); return new SuccessResponseData(super.packForBT(page)); } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java index 86a76f7..dc95f58 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java @@ -1,22 +1,38 @@ package com.casic.missiles.modular.app.controller; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.app.dict.AppUserOpenidDict; import com.casic.missiles.modular.app.model.AppUserOpenid; import com.casic.missiles.modular.app.service.IAppUserOpenidService; +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; + +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; + import javax.annotation.Resource; import java.util.List; +import java.util.Map; + +import static com.casic.missiles.modular.app.dict.AppUserOpenidDict.APPUSER_LOGIN_LOG_KEY; /** - * 施工添加设备控制器 + * * * @author dev * @Date 2020-05-24 11:21:45 @@ -29,9 +45,10 @@ @Resource private IAppUserOpenidService appUserOpenidService; - + @Value("${casic.wxUrl}") + private String wxUrl; /** - * 获取施工添加设备列表 + * 获取授权列表 */ @RequestMapping(value = "/list") @ResponseBody @@ -40,7 +57,7 @@ } /** - * 获取施工添加设备分页列表 + * 获取授权分页列表 */ @RequestMapping(value = "/listPage") @ResponseBody @@ -52,17 +69,23 @@ } /** - * 新增施工添加设备 + * 新增授权 */ @RequestMapping(value = "/add") @ResponseBody public Object add(AppUserOpenid appUserOpenid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",appUserOpenid.getOpenid()); +// appUserOpenid.delete(ew); + if(ToolUtil.isNotEmpty(appUserOpenidService.selectList(ew))){ + return ResponseData.success("已授权"); + } appUserOpenidService.insert(appUserOpenid); - return ResponseData.success(); + return ResponseData.success("授权成功"); } /** - * 删除施工添加设备 + * 删除授权 */ @RequestMapping(value = "/delete") @ResponseBody @@ -82,7 +105,7 @@ } /** - * 修改施工添加设备 + * 修改登录信息 */ @RequestMapping(value = "/update") @ResponseBody @@ -91,4 +114,44 @@ return ResponseData.success(); } + @RequestMapping(value = "/login") + @ResponseBody + public Object login(String appid, String secret,String code) { + String openid=""; + StringBuilder url = new StringBuilder(wxUrl); + url.append("?appid=");//appid设置 + url.append(appid); + url.append("&secret=");//secret设置 + url.append(secret); + url.append("&js_code=");//code设置 + url.append(code); + url.append("&grant_type=authorization_code"); + Map map = null; + try { + HttpClient client = HttpClientBuilder.create().build();//构建一个Client + HttpGet get = new HttpGet(url.toString()); //构建一个GET请求 + HttpResponse response = client.execute(get);//提交GET请求 + HttpEntity result = response.getEntity();//拿到返回的HttpResponse的"实体" + String content = EntityUtils.toString(result); + JSONObject res = JSONObject.parseObject(content);//把信息封装为json + openid =res.get("openid").toString(); + } catch (Exception e) { + e.printStackTrace(); + } + return ResponseData.success(openid); + } + + /** + * 小程序登录验证 + */ + @RequestMapping(value = "/validate") + @ResponseBody + @BussinessLog(value = "登录日志") +// @BussinessLog(value = "登录日志", key = APPUSER_LOGIN_LOG_KEY, dict = AppUserOpenidDict.class) + public Object validate(String openid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",openid); + AppUserOpenid appUserOpenid = appUserOpenidService.selectOne(ew); + return ResponseData.success(appUserOpenid); + } } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java new file mode 100644 index 0000000..e085c06 --- /dev/null +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.app.dict; + +import com.casic.missiles.core.common.constant.dictmap.base.AbstractDictMap; + +/** + * Created by test203 on 2019/5/30. + */ +public class AppUserOpenidDict extends AbstractDictMap { + + public static final String APPUSER_LOGIN_LOG_KEY = "openid"; + + @Override + public void init() { + + put("openid", "微信openid"); +// put("attr", "昵称"); +// put("attr1", "姓名"); + } + @Override + protected void initBeWrapped() { + + } +} diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java index cbfbc35..0a2a6b7 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java @@ -19,7 +19,7 @@ add(new Header("井深", "welldepth")); add(new Header("安装高度", "installheigt")); add(new Header("负责人", "installperson")); - add(new Header("记录时间", "installtime")); + add(new Header("安装时间", "createtime")); add(new Header("所属项目", "project")); add(new Header("安装位置", "position")); add(new Header("经度(gcj02)", "longitude")); diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java index 1fb2545..1064dea 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java @@ -417,7 +417,6 @@ appDeviceAdd.wellname = appDeviceLog.getWellname(); appDeviceAdd.latitude84 = appDeviceLog.getLatitude84(); appDeviceAdd.longitude84 = appDeviceLog.getLongitude84(); - appDeviceAdd.createtime = new Date(); return appDeviceAdd; } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java index d2013a2..1fe6571 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.activerecord.Model; import com.baomidou.mybatisplus.annotations.TableName; import java.io.Serializable; +import java.util.Date; /** *

@@ -37,6 +38,13 @@ * 备注 */ private String attr; + private String attr1; + private String role; + + /** + * 创建时间 + */ + private Date createtime; public Long getId() { @@ -79,6 +87,30 @@ this.attr = attr; } + public String getAttr1() { + return attr1; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getRole() { + return role; + } + + public void setRole(String role) { + this.role = role; + } + + public Date getCreatetime() { + return createtime; + } + + public void setCreatetime(Date createtime) { + this.createtime = createtime; + } + @Override protected Serializable pkVal() { return this.id; diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java index 701ff20..7ac5b94 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java @@ -93,10 +93,10 @@ query.like("devcode", devcode); } if (ToolUtil.isNotEmpty(begTime)) { - query.ge("installtime", DateUtil.parseTime(begTime + " 00:00:00")); + query.ge("createtime", DateUtil.parseTime(begTime + " 00:00:00")); } if (ToolUtil.isNotEmpty(endTime)) { - query.le("installtime", DateUtil.parseTime(endTime + " 23:23:59")); + query.le("createtime", DateUtil.parseTime(endTime + " 23:23:59")); } if (ToolUtil.isNotEmpty(project)) { query.eq("project", project); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java index 68c37f2..2f9af71 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java @@ -15,6 +15,7 @@ import com.casic.missiles.modular.device.service.IDeviceService; import com.casic.missiles.modular.device.service.impl.DeviceServiceImpl; import com.casic.missiles.modular.repairs.service.IProductRepairRecordsService; +import com.casic.missiles.modular.system.model.Device; import com.casic.missiles.modular.system.model.ProductRepairRecords; import com.casic.missiles.modular.system.model.Task; import com.casic.missiles.modular.system.model.User; @@ -82,12 +83,18 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String devcode, String begTime, String endTime) { + public Object listPage(@RequestParam(required = false) String devcode, + @RequestParam(required = false) String begTime, + @RequestParam(required = false) String endTime, + @RequestParam(required = false) Long devTypeId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); if (ToolUtil.isNotEmpty(devcode)) { query.like("devcode", devcode); } + if (ToolUtil.isNotEmpty(devTypeId)) { + query.eq("devtype_id", devTypeId); + } if (ToolUtil.isNotEmpty(begTime)) { query.ge("returntime", DateUtil.parseTime(begTime)); } @@ -113,36 +120,17 @@ @RequestMapping(value = "/add") @ResponseBody public Object add(ProductRepairRecords productRepairRecords, - String returntimeFmt, String finishtimeFmt -// MultipartFile file1Base64, -// MultipartFile file2Base64, -// MultipartFile file3Base64 - ) throws IOException { - if (null == deviceService.getDeviceByCode(productRepairRecords.getDevcode())) { + String returntimeFmt, String finishtimeFmt) throws IOException { + Device device = deviceService.getDeviceByCode(productRepairRecords.getDevcode()); + if (null == device) { return ResponseData.error(400, "设备编号不存在"); + } else { + productRepairRecords.setDevtypeId(device.getDevtypeId()); } productRepairRecords.setReturntime(ToolUtil.isNotEmpty(returntimeFmt) ? Timestamp.valueOf(returntimeFmt) : null); productRepairRecords.setFinishtime(ToolUtil.isNotEmpty(finishtimeFmt) ? Timestamp.valueOf(finishtimeFmt) : null); -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath1())){ -// productRepairRecords.setPhotopath1(productRepairRecords.getPhotopath1()); -// } -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath2())){ -// productRepairRecords.setPhotopath2(productRepairRecords.getPhotopath2()); -// } -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath3())){ -// productRepairRecords.setPhotopath3(productRepairRecords.getPhotopath3()); -// } -// if (ToolUtil.isNotEmpty(file1Base64)) { -// productRepairRecords.setPhotopath1(FileUtil.saveFile(file1Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file2Base64)) { -// productRepairRecords.setPhotopath2(FileUtil.saveFile(file2Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file3Base64)) { -// productRepairRecords.setPhotopath3(FileUtil.saveFile(file3Base64, filePath)); -// } productRepairRecordsService.insert(productRepairRecords); Task task = taskService.selectById(productRepairRecords.getTaskid()); if ("1".equals(productRepairRecords.getIschange()) && null != task && @@ -181,25 +169,12 @@ @RequestMapping(value = "/update") @ResponseBody public Object update(ProductRepairRecords productRepairRecords, - String returntimeFmt, String finishtimeFmt -// MultipartFile file1Base64, -// MultipartFile file2Base64, -// MultipartFile file3Base64 - ) throws IOException { + String returntimeFmt, String finishtimeFmt) throws IOException { productRepairRecords.setReturntime(ToolUtil.isNotEmpty(returntimeFmt) ? Timestamp.valueOf(returntimeFmt) : null); productRepairRecords.setFinishtime(ToolUtil.isNotEmpty(finishtimeFmt) ? Timestamp.valueOf(finishtimeFmt) : null); -// if (ToolUtil.isNotEmpty(file1Base64)) { -// productRepairRecords.setPhotopath1(FileUtil.saveFile(file1Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file2Base64)) { -// productRepairRecords.setPhotopath2(FileUtil.saveFile(file2Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file3Base64)) { -// productRepairRecords.setPhotopath3(FileUtil.saveFile(file3Base64, filePath)); -// } productRepairRecordsService.updateById(productRepairRecords); return ResponseData.success(); } @@ -225,7 +200,8 @@ String devcode = httpServletRequest.getParameter("devcode"); String begTime = httpServletRequest.getParameter("begTime"); String endTime = httpServletRequest.getParameter("endTime"); - List list = productRepairRecordsService.reportExport(devcode, begTime, endTime); + String devTypeId = httpServletRequest.getParameter("devTypeId"); + List list = productRepairRecordsService.reportExport(devcode, begTime, endTime,devTypeId); FileInputStream fileInputStream = new FileInputStream(downloadPath + (list != null && list.size() > 0 ? "repairsList.xlsx" : "contentNull.xlsx")); try { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java index c1f6792..97cb402 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java @@ -15,6 +15,6 @@ * @since 2020-06-16 */ public interface IProductRepairRecordsService extends IService { - List reportExport(String devcode, String begTime, String endTime); + List reportExport(String devcode, String begTime, String endTime,String devTypeId); Map importContract(List productRepairRecordsList); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java index add13aa..f56b8bb 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java @@ -8,10 +8,7 @@ import com.casic.missiles.modular.device.service.IDeviceService; import com.casic.missiles.modular.repairs.service.IProductRepairRecordsService; import com.casic.missiles.modular.system.dao.ProductRepairRecordsMapper; -import com.casic.missiles.modular.system.model.Account; -import com.casic.missiles.modular.system.model.ProductDeviceType; -import com.casic.missiles.modular.system.model.ProductRepairRecords; -import com.casic.missiles.modular.system.model.User; +import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.IAccountService; import com.casic.missiles.modular.system.service.IProductDeviceTypeService; import org.springframework.beans.factory.annotation.Autowired; @@ -45,7 +42,7 @@ private IAccountService accountService; @Override - public List reportExport(String devcode, String begTime, String endTime) { + public List reportExport(String devcode, String begTime, String endTime,String devTypeId) { EntityWrapper query = new EntityWrapper<>(); if (ToolUtil.isNotEmpty(devcode)) { query.like("devcode", devcode); @@ -56,6 +53,9 @@ if (ToolUtil.isNotEmpty(endTime)) { query.le("returntime", DateUtil.parseTime(endTime)); } + if(ToolUtil.isNotEmpty(devTypeId)){ + query.eq("devtype_id",Long.valueOf(devTypeId)); + } List productRepairRecordsList = this.selectList(query); for (ProductRepairRecords productRepairRecords : productRepairRecordsList) { ProductDeviceType productDeviceType = productDeviceTypeService.selectById(productRepairRecords.getDevtypeId()); @@ -80,15 +80,18 @@ Map resultMap = new HashMap<>(); //验证设备编号是否存在 -// for (ProductRepairRecords repairRecords : productRepairRecordsList) { -// if (null == deviceService.getDeviceByCode(repairRecords.getDevcode())) { -// String msg = "编号:" + repairRecords.getDevcode() + "在系统中不存在"; -// boolean success = false; -// resultMap.put("msg", msg); -// resultMap.put("success", success); -// return resultMap; -// } -// } + for (ProductRepairRecords repairRecords : productRepairRecordsList) { + Device device =deviceService.getDeviceByCode(repairRecords.getDevcode()); + if (null == device) { + String msg = "编号:" + repairRecords.getDevcode() + "在系统中不存在"; + boolean success = false; + resultMap.put("msg", msg); + resultMap.put("success", success); + return resultMap; + }else { + repairRecords.setDevtypeId(device.getDevtypeId()); + } + } productRepairRecordsList.forEach(repairRecords -> { if (ToolUtil.isNotEmpty(repairRecords.getCheckName())) { Account user = accountService.findUserByName(repairRecords.getCheckName()); diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java index c05efc4..c3c7c17 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java @@ -85,7 +85,7 @@ if (ToolUtil.isNotEmpty(devtype) && (!(specialStr.equals(devtype)))) { query.eq("devicetype", devtype); } - query.orderBy("createtime", false); + query.orderBy("installtime", false); page = appDeviceAddService.selectPage(page, query); return new SuccessResponseData(super.packForBT(page)); } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java index 86a76f7..dc95f58 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java @@ -1,22 +1,38 @@ package com.casic.missiles.modular.app.controller; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.app.dict.AppUserOpenidDict; import com.casic.missiles.modular.app.model.AppUserOpenid; import com.casic.missiles.modular.app.service.IAppUserOpenidService; +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; + +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; + import javax.annotation.Resource; import java.util.List; +import java.util.Map; + +import static com.casic.missiles.modular.app.dict.AppUserOpenidDict.APPUSER_LOGIN_LOG_KEY; /** - * 施工添加设备控制器 + * * * @author dev * @Date 2020-05-24 11:21:45 @@ -29,9 +45,10 @@ @Resource private IAppUserOpenidService appUserOpenidService; - + @Value("${casic.wxUrl}") + private String wxUrl; /** - * 获取施工添加设备列表 + * 获取授权列表 */ @RequestMapping(value = "/list") @ResponseBody @@ -40,7 +57,7 @@ } /** - * 获取施工添加设备分页列表 + * 获取授权分页列表 */ @RequestMapping(value = "/listPage") @ResponseBody @@ -52,17 +69,23 @@ } /** - * 新增施工添加设备 + * 新增授权 */ @RequestMapping(value = "/add") @ResponseBody public Object add(AppUserOpenid appUserOpenid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",appUserOpenid.getOpenid()); +// appUserOpenid.delete(ew); + if(ToolUtil.isNotEmpty(appUserOpenidService.selectList(ew))){ + return ResponseData.success("已授权"); + } appUserOpenidService.insert(appUserOpenid); - return ResponseData.success(); + return ResponseData.success("授权成功"); } /** - * 删除施工添加设备 + * 删除授权 */ @RequestMapping(value = "/delete") @ResponseBody @@ -82,7 +105,7 @@ } /** - * 修改施工添加设备 + * 修改登录信息 */ @RequestMapping(value = "/update") @ResponseBody @@ -91,4 +114,44 @@ return ResponseData.success(); } + @RequestMapping(value = "/login") + @ResponseBody + public Object login(String appid, String secret,String code) { + String openid=""; + StringBuilder url = new StringBuilder(wxUrl); + url.append("?appid=");//appid设置 + url.append(appid); + url.append("&secret=");//secret设置 + url.append(secret); + url.append("&js_code=");//code设置 + url.append(code); + url.append("&grant_type=authorization_code"); + Map map = null; + try { + HttpClient client = HttpClientBuilder.create().build();//构建一个Client + HttpGet get = new HttpGet(url.toString()); //构建一个GET请求 + HttpResponse response = client.execute(get);//提交GET请求 + HttpEntity result = response.getEntity();//拿到返回的HttpResponse的"实体" + String content = EntityUtils.toString(result); + JSONObject res = JSONObject.parseObject(content);//把信息封装为json + openid =res.get("openid").toString(); + } catch (Exception e) { + e.printStackTrace(); + } + return ResponseData.success(openid); + } + + /** + * 小程序登录验证 + */ + @RequestMapping(value = "/validate") + @ResponseBody + @BussinessLog(value = "登录日志") +// @BussinessLog(value = "登录日志", key = APPUSER_LOGIN_LOG_KEY, dict = AppUserOpenidDict.class) + public Object validate(String openid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",openid); + AppUserOpenid appUserOpenid = appUserOpenidService.selectOne(ew); + return ResponseData.success(appUserOpenid); + } } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java new file mode 100644 index 0000000..e085c06 --- /dev/null +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.app.dict; + +import com.casic.missiles.core.common.constant.dictmap.base.AbstractDictMap; + +/** + * Created by test203 on 2019/5/30. + */ +public class AppUserOpenidDict extends AbstractDictMap { + + public static final String APPUSER_LOGIN_LOG_KEY = "openid"; + + @Override + public void init() { + + put("openid", "微信openid"); +// put("attr", "昵称"); +// put("attr1", "姓名"); + } + @Override + protected void initBeWrapped() { + + } +} diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java index cbfbc35..0a2a6b7 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java @@ -19,7 +19,7 @@ add(new Header("井深", "welldepth")); add(new Header("安装高度", "installheigt")); add(new Header("负责人", "installperson")); - add(new Header("记录时间", "installtime")); + add(new Header("安装时间", "createtime")); add(new Header("所属项目", "project")); add(new Header("安装位置", "position")); add(new Header("经度(gcj02)", "longitude")); diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java index 1fb2545..1064dea 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java @@ -417,7 +417,6 @@ appDeviceAdd.wellname = appDeviceLog.getWellname(); appDeviceAdd.latitude84 = appDeviceLog.getLatitude84(); appDeviceAdd.longitude84 = appDeviceLog.getLongitude84(); - appDeviceAdd.createtime = new Date(); return appDeviceAdd; } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java index d2013a2..1fe6571 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.activerecord.Model; import com.baomidou.mybatisplus.annotations.TableName; import java.io.Serializable; +import java.util.Date; /** *

@@ -37,6 +38,13 @@ * 备注 */ private String attr; + private String attr1; + private String role; + + /** + * 创建时间 + */ + private Date createtime; public Long getId() { @@ -79,6 +87,30 @@ this.attr = attr; } + public String getAttr1() { + return attr1; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getRole() { + return role; + } + + public void setRole(String role) { + this.role = role; + } + + public Date getCreatetime() { + return createtime; + } + + public void setCreatetime(Date createtime) { + this.createtime = createtime; + } + @Override protected Serializable pkVal() { return this.id; diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java index 701ff20..7ac5b94 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java @@ -93,10 +93,10 @@ query.like("devcode", devcode); } if (ToolUtil.isNotEmpty(begTime)) { - query.ge("installtime", DateUtil.parseTime(begTime + " 00:00:00")); + query.ge("createtime", DateUtil.parseTime(begTime + " 00:00:00")); } if (ToolUtil.isNotEmpty(endTime)) { - query.le("installtime", DateUtil.parseTime(endTime + " 23:23:59")); + query.le("createtime", DateUtil.parseTime(endTime + " 23:23:59")); } if (ToolUtil.isNotEmpty(project)) { query.eq("project", project); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java index 68c37f2..2f9af71 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java @@ -15,6 +15,7 @@ import com.casic.missiles.modular.device.service.IDeviceService; import com.casic.missiles.modular.device.service.impl.DeviceServiceImpl; import com.casic.missiles.modular.repairs.service.IProductRepairRecordsService; +import com.casic.missiles.modular.system.model.Device; import com.casic.missiles.modular.system.model.ProductRepairRecords; import com.casic.missiles.modular.system.model.Task; import com.casic.missiles.modular.system.model.User; @@ -82,12 +83,18 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String devcode, String begTime, String endTime) { + public Object listPage(@RequestParam(required = false) String devcode, + @RequestParam(required = false) String begTime, + @RequestParam(required = false) String endTime, + @RequestParam(required = false) Long devTypeId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); if (ToolUtil.isNotEmpty(devcode)) { query.like("devcode", devcode); } + if (ToolUtil.isNotEmpty(devTypeId)) { + query.eq("devtype_id", devTypeId); + } if (ToolUtil.isNotEmpty(begTime)) { query.ge("returntime", DateUtil.parseTime(begTime)); } @@ -113,36 +120,17 @@ @RequestMapping(value = "/add") @ResponseBody public Object add(ProductRepairRecords productRepairRecords, - String returntimeFmt, String finishtimeFmt -// MultipartFile file1Base64, -// MultipartFile file2Base64, -// MultipartFile file3Base64 - ) throws IOException { - if (null == deviceService.getDeviceByCode(productRepairRecords.getDevcode())) { + String returntimeFmt, String finishtimeFmt) throws IOException { + Device device = deviceService.getDeviceByCode(productRepairRecords.getDevcode()); + if (null == device) { return ResponseData.error(400, "设备编号不存在"); + } else { + productRepairRecords.setDevtypeId(device.getDevtypeId()); } productRepairRecords.setReturntime(ToolUtil.isNotEmpty(returntimeFmt) ? Timestamp.valueOf(returntimeFmt) : null); productRepairRecords.setFinishtime(ToolUtil.isNotEmpty(finishtimeFmt) ? Timestamp.valueOf(finishtimeFmt) : null); -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath1())){ -// productRepairRecords.setPhotopath1(productRepairRecords.getPhotopath1()); -// } -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath2())){ -// productRepairRecords.setPhotopath2(productRepairRecords.getPhotopath2()); -// } -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath3())){ -// productRepairRecords.setPhotopath3(productRepairRecords.getPhotopath3()); -// } -// if (ToolUtil.isNotEmpty(file1Base64)) { -// productRepairRecords.setPhotopath1(FileUtil.saveFile(file1Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file2Base64)) { -// productRepairRecords.setPhotopath2(FileUtil.saveFile(file2Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file3Base64)) { -// productRepairRecords.setPhotopath3(FileUtil.saveFile(file3Base64, filePath)); -// } productRepairRecordsService.insert(productRepairRecords); Task task = taskService.selectById(productRepairRecords.getTaskid()); if ("1".equals(productRepairRecords.getIschange()) && null != task && @@ -181,25 +169,12 @@ @RequestMapping(value = "/update") @ResponseBody public Object update(ProductRepairRecords productRepairRecords, - String returntimeFmt, String finishtimeFmt -// MultipartFile file1Base64, -// MultipartFile file2Base64, -// MultipartFile file3Base64 - ) throws IOException { + String returntimeFmt, String finishtimeFmt) throws IOException { productRepairRecords.setReturntime(ToolUtil.isNotEmpty(returntimeFmt) ? Timestamp.valueOf(returntimeFmt) : null); productRepairRecords.setFinishtime(ToolUtil.isNotEmpty(finishtimeFmt) ? Timestamp.valueOf(finishtimeFmt) : null); -// if (ToolUtil.isNotEmpty(file1Base64)) { -// productRepairRecords.setPhotopath1(FileUtil.saveFile(file1Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file2Base64)) { -// productRepairRecords.setPhotopath2(FileUtil.saveFile(file2Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file3Base64)) { -// productRepairRecords.setPhotopath3(FileUtil.saveFile(file3Base64, filePath)); -// } productRepairRecordsService.updateById(productRepairRecords); return ResponseData.success(); } @@ -225,7 +200,8 @@ String devcode = httpServletRequest.getParameter("devcode"); String begTime = httpServletRequest.getParameter("begTime"); String endTime = httpServletRequest.getParameter("endTime"); - List list = productRepairRecordsService.reportExport(devcode, begTime, endTime); + String devTypeId = httpServletRequest.getParameter("devTypeId"); + List list = productRepairRecordsService.reportExport(devcode, begTime, endTime,devTypeId); FileInputStream fileInputStream = new FileInputStream(downloadPath + (list != null && list.size() > 0 ? "repairsList.xlsx" : "contentNull.xlsx")); try { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java index c1f6792..97cb402 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java @@ -15,6 +15,6 @@ * @since 2020-06-16 */ public interface IProductRepairRecordsService extends IService { - List reportExport(String devcode, String begTime, String endTime); + List reportExport(String devcode, String begTime, String endTime,String devTypeId); Map importContract(List productRepairRecordsList); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java index add13aa..f56b8bb 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java @@ -8,10 +8,7 @@ import com.casic.missiles.modular.device.service.IDeviceService; import com.casic.missiles.modular.repairs.service.IProductRepairRecordsService; import com.casic.missiles.modular.system.dao.ProductRepairRecordsMapper; -import com.casic.missiles.modular.system.model.Account; -import com.casic.missiles.modular.system.model.ProductDeviceType; -import com.casic.missiles.modular.system.model.ProductRepairRecords; -import com.casic.missiles.modular.system.model.User; +import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.IAccountService; import com.casic.missiles.modular.system.service.IProductDeviceTypeService; import org.springframework.beans.factory.annotation.Autowired; @@ -45,7 +42,7 @@ private IAccountService accountService; @Override - public List reportExport(String devcode, String begTime, String endTime) { + public List reportExport(String devcode, String begTime, String endTime,String devTypeId) { EntityWrapper query = new EntityWrapper<>(); if (ToolUtil.isNotEmpty(devcode)) { query.like("devcode", devcode); @@ -56,6 +53,9 @@ if (ToolUtil.isNotEmpty(endTime)) { query.le("returntime", DateUtil.parseTime(endTime)); } + if(ToolUtil.isNotEmpty(devTypeId)){ + query.eq("devtype_id",Long.valueOf(devTypeId)); + } List productRepairRecordsList = this.selectList(query); for (ProductRepairRecords productRepairRecords : productRepairRecordsList) { ProductDeviceType productDeviceType = productDeviceTypeService.selectById(productRepairRecords.getDevtypeId()); @@ -80,15 +80,18 @@ Map resultMap = new HashMap<>(); //验证设备编号是否存在 -// for (ProductRepairRecords repairRecords : productRepairRecordsList) { -// if (null == deviceService.getDeviceByCode(repairRecords.getDevcode())) { -// String msg = "编号:" + repairRecords.getDevcode() + "在系统中不存在"; -// boolean success = false; -// resultMap.put("msg", msg); -// resultMap.put("success", success); -// return resultMap; -// } -// } + for (ProductRepairRecords repairRecords : productRepairRecordsList) { + Device device =deviceService.getDeviceByCode(repairRecords.getDevcode()); + if (null == device) { + String msg = "编号:" + repairRecords.getDevcode() + "在系统中不存在"; + boolean success = false; + resultMap.put("msg", msg); + resultMap.put("success", success); + return resultMap; + }else { + repairRecords.setDevtypeId(device.getDevtypeId()); + } + } productRepairRecordsList.forEach(repairRecords -> { if (ToolUtil.isNotEmpty(repairRecords.getCheckName())) { Account user = accountService.findUserByName(repairRecords.getCheckName()); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/ProductDeviceTypeController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/ProductDeviceTypeController.java index 5f00f0b..0f993b7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/ProductDeviceTypeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/ProductDeviceTypeController.java @@ -110,8 +110,8 @@ //上传汇总表 if (null != quotaSummaryFile && StringUtils.isNotBlank(quotaSummaryFile.getOriginalFilename())) { - String fileName=quotaSummaryFile.getOriginalFilename(); - String destName=FileUtil.getOriginalFilename(fileName)+ DateUtil.formatDate(new Date(),"yyyy-MM-dd")+ + String fileName = quotaSummaryFile.getOriginalFilename(); + String destName = FileUtil.getOriginalFilename(fileName) + DateUtil.formatDate(new Date(), "yyyy-MM-dd") + fileName.substring(fileName.lastIndexOf(".")); String path = uploadPath + destName; File newFile = FileUtil.createFile(path); @@ -153,8 +153,8 @@ if (null != quotaSummaryFile && ToolUtil.isNotEmpty(quotaSummaryFile.getOriginalFilename())) { - String fileName=FileUtil.getOriginalFilename(quotaSummaryFile.getOriginalFilename()); - String destName=fileName.substring(0,fileName.lastIndexOf("."))+ DateUtil.formatDate(new Date(),"yyyy-MM-dd")+ + String fileName = FileUtil.getOriginalFilename(quotaSummaryFile.getOriginalFilename()); + String destName = fileName.substring(0, fileName.lastIndexOf(".")) + DateUtil.formatDate(new Date(), "yyyy-MM-dd") + fileName.substring(fileName.lastIndexOf(".")); String path = uploadPath + destName; File newFile = new File(path); @@ -267,7 +267,7 @@ @ResponseBody public Object detail(String tips) { // List userList = permissionService.getAllUsers(""); - List userDtoList=productDeviceTypeService.getUser(tips); + List userDtoList = productDeviceTypeService.getUser(tips); return ResponseData.success(200, "", userDtoList); diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java index c05efc4..c3c7c17 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java @@ -85,7 +85,7 @@ if (ToolUtil.isNotEmpty(devtype) && (!(specialStr.equals(devtype)))) { query.eq("devicetype", devtype); } - query.orderBy("createtime", false); + query.orderBy("installtime", false); page = appDeviceAddService.selectPage(page, query); return new SuccessResponseData(super.packForBT(page)); } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java index 86a76f7..dc95f58 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java @@ -1,22 +1,38 @@ package com.casic.missiles.modular.app.controller; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.app.dict.AppUserOpenidDict; import com.casic.missiles.modular.app.model.AppUserOpenid; import com.casic.missiles.modular.app.service.IAppUserOpenidService; +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; + +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; + import javax.annotation.Resource; import java.util.List; +import java.util.Map; + +import static com.casic.missiles.modular.app.dict.AppUserOpenidDict.APPUSER_LOGIN_LOG_KEY; /** - * 施工添加设备控制器 + * * * @author dev * @Date 2020-05-24 11:21:45 @@ -29,9 +45,10 @@ @Resource private IAppUserOpenidService appUserOpenidService; - + @Value("${casic.wxUrl}") + private String wxUrl; /** - * 获取施工添加设备列表 + * 获取授权列表 */ @RequestMapping(value = "/list") @ResponseBody @@ -40,7 +57,7 @@ } /** - * 获取施工添加设备分页列表 + * 获取授权分页列表 */ @RequestMapping(value = "/listPage") @ResponseBody @@ -52,17 +69,23 @@ } /** - * 新增施工添加设备 + * 新增授权 */ @RequestMapping(value = "/add") @ResponseBody public Object add(AppUserOpenid appUserOpenid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",appUserOpenid.getOpenid()); +// appUserOpenid.delete(ew); + if(ToolUtil.isNotEmpty(appUserOpenidService.selectList(ew))){ + return ResponseData.success("已授权"); + } appUserOpenidService.insert(appUserOpenid); - return ResponseData.success(); + return ResponseData.success("授权成功"); } /** - * 删除施工添加设备 + * 删除授权 */ @RequestMapping(value = "/delete") @ResponseBody @@ -82,7 +105,7 @@ } /** - * 修改施工添加设备 + * 修改登录信息 */ @RequestMapping(value = "/update") @ResponseBody @@ -91,4 +114,44 @@ return ResponseData.success(); } + @RequestMapping(value = "/login") + @ResponseBody + public Object login(String appid, String secret,String code) { + String openid=""; + StringBuilder url = new StringBuilder(wxUrl); + url.append("?appid=");//appid设置 + url.append(appid); + url.append("&secret=");//secret设置 + url.append(secret); + url.append("&js_code=");//code设置 + url.append(code); + url.append("&grant_type=authorization_code"); + Map map = null; + try { + HttpClient client = HttpClientBuilder.create().build();//构建一个Client + HttpGet get = new HttpGet(url.toString()); //构建一个GET请求 + HttpResponse response = client.execute(get);//提交GET请求 + HttpEntity result = response.getEntity();//拿到返回的HttpResponse的"实体" + String content = EntityUtils.toString(result); + JSONObject res = JSONObject.parseObject(content);//把信息封装为json + openid =res.get("openid").toString(); + } catch (Exception e) { + e.printStackTrace(); + } + return ResponseData.success(openid); + } + + /** + * 小程序登录验证 + */ + @RequestMapping(value = "/validate") + @ResponseBody + @BussinessLog(value = "登录日志") +// @BussinessLog(value = "登录日志", key = APPUSER_LOGIN_LOG_KEY, dict = AppUserOpenidDict.class) + public Object validate(String openid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",openid); + AppUserOpenid appUserOpenid = appUserOpenidService.selectOne(ew); + return ResponseData.success(appUserOpenid); + } } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java new file mode 100644 index 0000000..e085c06 --- /dev/null +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.app.dict; + +import com.casic.missiles.core.common.constant.dictmap.base.AbstractDictMap; + +/** + * Created by test203 on 2019/5/30. + */ +public class AppUserOpenidDict extends AbstractDictMap { + + public static final String APPUSER_LOGIN_LOG_KEY = "openid"; + + @Override + public void init() { + + put("openid", "微信openid"); +// put("attr", "昵称"); +// put("attr1", "姓名"); + } + @Override + protected void initBeWrapped() { + + } +} diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java index cbfbc35..0a2a6b7 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java @@ -19,7 +19,7 @@ add(new Header("井深", "welldepth")); add(new Header("安装高度", "installheigt")); add(new Header("负责人", "installperson")); - add(new Header("记录时间", "installtime")); + add(new Header("安装时间", "createtime")); add(new Header("所属项目", "project")); add(new Header("安装位置", "position")); add(new Header("经度(gcj02)", "longitude")); diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java index 1fb2545..1064dea 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java @@ -417,7 +417,6 @@ appDeviceAdd.wellname = appDeviceLog.getWellname(); appDeviceAdd.latitude84 = appDeviceLog.getLatitude84(); appDeviceAdd.longitude84 = appDeviceLog.getLongitude84(); - appDeviceAdd.createtime = new Date(); return appDeviceAdd; } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java index d2013a2..1fe6571 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.activerecord.Model; import com.baomidou.mybatisplus.annotations.TableName; import java.io.Serializable; +import java.util.Date; /** *

@@ -37,6 +38,13 @@ * 备注 */ private String attr; + private String attr1; + private String role; + + /** + * 创建时间 + */ + private Date createtime; public Long getId() { @@ -79,6 +87,30 @@ this.attr = attr; } + public String getAttr1() { + return attr1; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getRole() { + return role; + } + + public void setRole(String role) { + this.role = role; + } + + public Date getCreatetime() { + return createtime; + } + + public void setCreatetime(Date createtime) { + this.createtime = createtime; + } + @Override protected Serializable pkVal() { return this.id; diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java index 701ff20..7ac5b94 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java @@ -93,10 +93,10 @@ query.like("devcode", devcode); } if (ToolUtil.isNotEmpty(begTime)) { - query.ge("installtime", DateUtil.parseTime(begTime + " 00:00:00")); + query.ge("createtime", DateUtil.parseTime(begTime + " 00:00:00")); } if (ToolUtil.isNotEmpty(endTime)) { - query.le("installtime", DateUtil.parseTime(endTime + " 23:23:59")); + query.le("createtime", DateUtil.parseTime(endTime + " 23:23:59")); } if (ToolUtil.isNotEmpty(project)) { query.eq("project", project); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java index 68c37f2..2f9af71 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java @@ -15,6 +15,7 @@ import com.casic.missiles.modular.device.service.IDeviceService; import com.casic.missiles.modular.device.service.impl.DeviceServiceImpl; import com.casic.missiles.modular.repairs.service.IProductRepairRecordsService; +import com.casic.missiles.modular.system.model.Device; import com.casic.missiles.modular.system.model.ProductRepairRecords; import com.casic.missiles.modular.system.model.Task; import com.casic.missiles.modular.system.model.User; @@ -82,12 +83,18 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String devcode, String begTime, String endTime) { + public Object listPage(@RequestParam(required = false) String devcode, + @RequestParam(required = false) String begTime, + @RequestParam(required = false) String endTime, + @RequestParam(required = false) Long devTypeId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); if (ToolUtil.isNotEmpty(devcode)) { query.like("devcode", devcode); } + if (ToolUtil.isNotEmpty(devTypeId)) { + query.eq("devtype_id", devTypeId); + } if (ToolUtil.isNotEmpty(begTime)) { query.ge("returntime", DateUtil.parseTime(begTime)); } @@ -113,36 +120,17 @@ @RequestMapping(value = "/add") @ResponseBody public Object add(ProductRepairRecords productRepairRecords, - String returntimeFmt, String finishtimeFmt -// MultipartFile file1Base64, -// MultipartFile file2Base64, -// MultipartFile file3Base64 - ) throws IOException { - if (null == deviceService.getDeviceByCode(productRepairRecords.getDevcode())) { + String returntimeFmt, String finishtimeFmt) throws IOException { + Device device = deviceService.getDeviceByCode(productRepairRecords.getDevcode()); + if (null == device) { return ResponseData.error(400, "设备编号不存在"); + } else { + productRepairRecords.setDevtypeId(device.getDevtypeId()); } productRepairRecords.setReturntime(ToolUtil.isNotEmpty(returntimeFmt) ? Timestamp.valueOf(returntimeFmt) : null); productRepairRecords.setFinishtime(ToolUtil.isNotEmpty(finishtimeFmt) ? Timestamp.valueOf(finishtimeFmt) : null); -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath1())){ -// productRepairRecords.setPhotopath1(productRepairRecords.getPhotopath1()); -// } -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath2())){ -// productRepairRecords.setPhotopath2(productRepairRecords.getPhotopath2()); -// } -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath3())){ -// productRepairRecords.setPhotopath3(productRepairRecords.getPhotopath3()); -// } -// if (ToolUtil.isNotEmpty(file1Base64)) { -// productRepairRecords.setPhotopath1(FileUtil.saveFile(file1Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file2Base64)) { -// productRepairRecords.setPhotopath2(FileUtil.saveFile(file2Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file3Base64)) { -// productRepairRecords.setPhotopath3(FileUtil.saveFile(file3Base64, filePath)); -// } productRepairRecordsService.insert(productRepairRecords); Task task = taskService.selectById(productRepairRecords.getTaskid()); if ("1".equals(productRepairRecords.getIschange()) && null != task && @@ -181,25 +169,12 @@ @RequestMapping(value = "/update") @ResponseBody public Object update(ProductRepairRecords productRepairRecords, - String returntimeFmt, String finishtimeFmt -// MultipartFile file1Base64, -// MultipartFile file2Base64, -// MultipartFile file3Base64 - ) throws IOException { + String returntimeFmt, String finishtimeFmt) throws IOException { productRepairRecords.setReturntime(ToolUtil.isNotEmpty(returntimeFmt) ? Timestamp.valueOf(returntimeFmt) : null); productRepairRecords.setFinishtime(ToolUtil.isNotEmpty(finishtimeFmt) ? Timestamp.valueOf(finishtimeFmt) : null); -// if (ToolUtil.isNotEmpty(file1Base64)) { -// productRepairRecords.setPhotopath1(FileUtil.saveFile(file1Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file2Base64)) { -// productRepairRecords.setPhotopath2(FileUtil.saveFile(file2Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file3Base64)) { -// productRepairRecords.setPhotopath3(FileUtil.saveFile(file3Base64, filePath)); -// } productRepairRecordsService.updateById(productRepairRecords); return ResponseData.success(); } @@ -225,7 +200,8 @@ String devcode = httpServletRequest.getParameter("devcode"); String begTime = httpServletRequest.getParameter("begTime"); String endTime = httpServletRequest.getParameter("endTime"); - List list = productRepairRecordsService.reportExport(devcode, begTime, endTime); + String devTypeId = httpServletRequest.getParameter("devTypeId"); + List list = productRepairRecordsService.reportExport(devcode, begTime, endTime,devTypeId); FileInputStream fileInputStream = new FileInputStream(downloadPath + (list != null && list.size() > 0 ? "repairsList.xlsx" : "contentNull.xlsx")); try { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java index c1f6792..97cb402 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java @@ -15,6 +15,6 @@ * @since 2020-06-16 */ public interface IProductRepairRecordsService extends IService { - List reportExport(String devcode, String begTime, String endTime); + List reportExport(String devcode, String begTime, String endTime,String devTypeId); Map importContract(List productRepairRecordsList); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java index add13aa..f56b8bb 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java @@ -8,10 +8,7 @@ import com.casic.missiles.modular.device.service.IDeviceService; import com.casic.missiles.modular.repairs.service.IProductRepairRecordsService; import com.casic.missiles.modular.system.dao.ProductRepairRecordsMapper; -import com.casic.missiles.modular.system.model.Account; -import com.casic.missiles.modular.system.model.ProductDeviceType; -import com.casic.missiles.modular.system.model.ProductRepairRecords; -import com.casic.missiles.modular.system.model.User; +import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.IAccountService; import com.casic.missiles.modular.system.service.IProductDeviceTypeService; import org.springframework.beans.factory.annotation.Autowired; @@ -45,7 +42,7 @@ private IAccountService accountService; @Override - public List reportExport(String devcode, String begTime, String endTime) { + public List reportExport(String devcode, String begTime, String endTime,String devTypeId) { EntityWrapper query = new EntityWrapper<>(); if (ToolUtil.isNotEmpty(devcode)) { query.like("devcode", devcode); @@ -56,6 +53,9 @@ if (ToolUtil.isNotEmpty(endTime)) { query.le("returntime", DateUtil.parseTime(endTime)); } + if(ToolUtil.isNotEmpty(devTypeId)){ + query.eq("devtype_id",Long.valueOf(devTypeId)); + } List productRepairRecordsList = this.selectList(query); for (ProductRepairRecords productRepairRecords : productRepairRecordsList) { ProductDeviceType productDeviceType = productDeviceTypeService.selectById(productRepairRecords.getDevtypeId()); @@ -80,15 +80,18 @@ Map resultMap = new HashMap<>(); //验证设备编号是否存在 -// for (ProductRepairRecords repairRecords : productRepairRecordsList) { -// if (null == deviceService.getDeviceByCode(repairRecords.getDevcode())) { -// String msg = "编号:" + repairRecords.getDevcode() + "在系统中不存在"; -// boolean success = false; -// resultMap.put("msg", msg); -// resultMap.put("success", success); -// return resultMap; -// } -// } + for (ProductRepairRecords repairRecords : productRepairRecordsList) { + Device device =deviceService.getDeviceByCode(repairRecords.getDevcode()); + if (null == device) { + String msg = "编号:" + repairRecords.getDevcode() + "在系统中不存在"; + boolean success = false; + resultMap.put("msg", msg); + resultMap.put("success", success); + return resultMap; + }else { + repairRecords.setDevtypeId(device.getDevtypeId()); + } + } productRepairRecordsList.forEach(repairRecords -> { if (ToolUtil.isNotEmpty(repairRecords.getCheckName())) { Account user = accountService.findUserByName(repairRecords.getCheckName()); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/ProductDeviceTypeController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/ProductDeviceTypeController.java index 5f00f0b..0f993b7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/ProductDeviceTypeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/ProductDeviceTypeController.java @@ -110,8 +110,8 @@ //上传汇总表 if (null != quotaSummaryFile && StringUtils.isNotBlank(quotaSummaryFile.getOriginalFilename())) { - String fileName=quotaSummaryFile.getOriginalFilename(); - String destName=FileUtil.getOriginalFilename(fileName)+ DateUtil.formatDate(new Date(),"yyyy-MM-dd")+ + String fileName = quotaSummaryFile.getOriginalFilename(); + String destName = FileUtil.getOriginalFilename(fileName) + DateUtil.formatDate(new Date(), "yyyy-MM-dd") + fileName.substring(fileName.lastIndexOf(".")); String path = uploadPath + destName; File newFile = FileUtil.createFile(path); @@ -153,8 +153,8 @@ if (null != quotaSummaryFile && ToolUtil.isNotEmpty(quotaSummaryFile.getOriginalFilename())) { - String fileName=FileUtil.getOriginalFilename(quotaSummaryFile.getOriginalFilename()); - String destName=fileName.substring(0,fileName.lastIndexOf("."))+ DateUtil.formatDate(new Date(),"yyyy-MM-dd")+ + String fileName = FileUtil.getOriginalFilename(quotaSummaryFile.getOriginalFilename()); + String destName = fileName.substring(0, fileName.lastIndexOf(".")) + DateUtil.formatDate(new Date(), "yyyy-MM-dd") + fileName.substring(fileName.lastIndexOf(".")); String path = uploadPath + destName; File newFile = new File(path); @@ -267,7 +267,7 @@ @ResponseBody public Object detail(String tips) { // List userList = permissionService.getAllUsers(""); - List userDtoList=productDeviceTypeService.getUser(tips); + List userDtoList = productDeviceTypeService.getUser(tips); return ResponseData.success(200, "", userDtoList); diff --git a/casic-web/src/main/resources/config/application-dev.yml b/casic-web/src/main/resources/config/application-dev.yml index 451de68..9011c88 100644 --- a/casic-web/src/main/resources/config/application-dev.yml +++ b/casic-web/src/main/resources/config/application-dev.yml @@ -14,11 +14,12 @@ #flowable数据源和多数据源配置 casic: kaptcha-open: false #是否开启登录时验证码 (true/false) - nologin-urls: /user/login,/user/appLogin,/kaptcha,/config/baseConfig,/route/mockToken,/process/processDiagram,/appDeviceLog/listPage,/appDeviceAdd/add,/appDeviceLog/deviceDetail,/appDeviceLog/add,/appDeviceAdd/fileUpload,/appDeviceAdd/findListByCodes,/appDeviceAdd/findModeCodeByCode,/deviceType/getUser,/project/getProject,/appDeviceLog/deletePhoto,/deviceType/deviceType,/productRepairRecords/add,/appDeviceAdd/fileUploadMarker,/appDeviceAdd/getDevTypeLength,/appDeviceAdd/delete + nologin-urls: /user/login,/user/appLogin,/kaptcha,/config/baseConfig,/route/mockToken,/process/processDiagram,/appDeviceLog/listPage,/appDeviceAdd/add,/appDeviceLog/deviceDetail,/appDeviceLog/add,/appDeviceAdd/fileUpload,/appDeviceAdd/findListByCodes,/appDeviceAdd/findModeCodeByCode,/deviceType/getUser,/project/getProject,/appDeviceLog/deletePhoto,/deviceType/deviceType,/productRepairRecords/add,/appDeviceAdd/fileUploadMarker,/appDeviceAdd/getDevTypeLength,/appDeviceAdd/delete,/appUserOpenid/login,/appUserOpenid/add,/appUserOpenid/validate,/appDeviceAdd/getWellTypeList file-upload-path: C:\casic\tmp\ file-download-path: D:\tmp\ producerName: producer repairName: repair + wxUrl: https://api.weixin.qq.com/sns/jscode2session #获取微信openid logging: level.root: info level.com.casic: debug diff --git a/casic-app/pom.xml b/casic-app/pom.xml index 320765b..1c043ca 100644 --- a/casic-app/pom.xml +++ b/casic-app/pom.xml @@ -75,7 +75,11 @@ casic-file ${casic.version} - + + org.apache.httpcomponents + httpclient + 4.5.2 + diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java index 330432c..f75a353 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceAddController.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; import com.casic.missiles.core.common.service.ICommonFileService; import com.casic.missiles.core.common.service.ICommonPermissionService; @@ -28,6 +29,7 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; /** @@ -90,6 +92,7 @@ if (ToolUtil.isNotEmpty(appDeviceAdd.getInstalltimeFmt())) { appDeviceAdd.setInstalltime(DateUtil.parseTime(appDeviceAdd.getInstalltimeFmt())); } + appDeviceAdd.setCreatetime(new Date()); appDeviceAddService.insert(appDeviceAdd); if (appDeviceLogService.getListByCode(appDeviceAdd.getDevcode()).size() == 0) { appDeviceLogService.insert(new AppDeviceLog(appDeviceAdd)); @@ -102,6 +105,7 @@ */ @RequestMapping(value = "/delete") @ResponseBody + @BussinessLog(value = "删除日志") public Object delete(@RequestParam String appDeviceAddId) { AppDeviceAdd appDeviceAdd = appDeviceAddService.selectById(Long.valueOf(appDeviceAddId)); if (ToolUtil.isNotEmpty(appDeviceAdd) && ToolUtil.isNotEmpty(appDeviceAdd.getDevcode())) { diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java index c05efc4..c3c7c17 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppDeviceLogController.java @@ -85,7 +85,7 @@ if (ToolUtil.isNotEmpty(devtype) && (!(specialStr.equals(devtype)))) { query.eq("devicetype", devtype); } - query.orderBy("createtime", false); + query.orderBy("installtime", false); page = appDeviceAddService.selectPage(page, query); return new SuccessResponseData(super.packForBT(page)); } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java index 86a76f7..dc95f58 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/controller/AppUserOpenidController.java @@ -1,22 +1,38 @@ package com.casic.missiles.modular.app.controller; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.casic.missiles.core.base.controller.BaseController; import com.casic.missiles.core.base.response.ResponseData; +import com.casic.missiles.core.common.annotion.BussinessLog; import com.casic.missiles.core.common.constant.factory.PageFactory; +import com.casic.missiles.core.util.ToolUtil; +import com.casic.missiles.modular.app.dict.AppUserOpenidDict; import com.casic.missiles.modular.app.model.AppUserOpenid; import com.casic.missiles.modular.app.service.IAppUserOpenidService; +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; + +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; + import javax.annotation.Resource; import java.util.List; +import java.util.Map; + +import static com.casic.missiles.modular.app.dict.AppUserOpenidDict.APPUSER_LOGIN_LOG_KEY; /** - * 施工添加设备控制器 + * * * @author dev * @Date 2020-05-24 11:21:45 @@ -29,9 +45,10 @@ @Resource private IAppUserOpenidService appUserOpenidService; - + @Value("${casic.wxUrl}") + private String wxUrl; /** - * 获取施工添加设备列表 + * 获取授权列表 */ @RequestMapping(value = "/list") @ResponseBody @@ -40,7 +57,7 @@ } /** - * 获取施工添加设备分页列表 + * 获取授权分页列表 */ @RequestMapping(value = "/listPage") @ResponseBody @@ -52,17 +69,23 @@ } /** - * 新增施工添加设备 + * 新增授权 */ @RequestMapping(value = "/add") @ResponseBody public Object add(AppUserOpenid appUserOpenid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",appUserOpenid.getOpenid()); +// appUserOpenid.delete(ew); + if(ToolUtil.isNotEmpty(appUserOpenidService.selectList(ew))){ + return ResponseData.success("已授权"); + } appUserOpenidService.insert(appUserOpenid); - return ResponseData.success(); + return ResponseData.success("授权成功"); } /** - * 删除施工添加设备 + * 删除授权 */ @RequestMapping(value = "/delete") @ResponseBody @@ -82,7 +105,7 @@ } /** - * 修改施工添加设备 + * 修改登录信息 */ @RequestMapping(value = "/update") @ResponseBody @@ -91,4 +114,44 @@ return ResponseData.success(); } + @RequestMapping(value = "/login") + @ResponseBody + public Object login(String appid, String secret,String code) { + String openid=""; + StringBuilder url = new StringBuilder(wxUrl); + url.append("?appid=");//appid设置 + url.append(appid); + url.append("&secret=");//secret设置 + url.append(secret); + url.append("&js_code=");//code设置 + url.append(code); + url.append("&grant_type=authorization_code"); + Map map = null; + try { + HttpClient client = HttpClientBuilder.create().build();//构建一个Client + HttpGet get = new HttpGet(url.toString()); //构建一个GET请求 + HttpResponse response = client.execute(get);//提交GET请求 + HttpEntity result = response.getEntity();//拿到返回的HttpResponse的"实体" + String content = EntityUtils.toString(result); + JSONObject res = JSONObject.parseObject(content);//把信息封装为json + openid =res.get("openid").toString(); + } catch (Exception e) { + e.printStackTrace(); + } + return ResponseData.success(openid); + } + + /** + * 小程序登录验证 + */ + @RequestMapping(value = "/validate") + @ResponseBody + @BussinessLog(value = "登录日志") +// @BussinessLog(value = "登录日志", key = APPUSER_LOGIN_LOG_KEY, dict = AppUserOpenidDict.class) + public Object validate(String openid) { + EntityWrapper ew = new EntityWrapper<>(); + ew.eq("openid",openid); + AppUserOpenid appUserOpenid = appUserOpenidService.selectOne(ew); + return ResponseData.success(appUserOpenid); + } } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java new file mode 100644 index 0000000..e085c06 --- /dev/null +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/dict/AppUserOpenidDict.java @@ -0,0 +1,23 @@ +package com.casic.missiles.modular.app.dict; + +import com.casic.missiles.core.common.constant.dictmap.base.AbstractDictMap; + +/** + * Created by test203 on 2019/5/30. + */ +public class AppUserOpenidDict extends AbstractDictMap { + + public static final String APPUSER_LOGIN_LOG_KEY = "openid"; + + @Override + public void init() { + + put("openid", "微信openid"); +// put("attr", "昵称"); +// put("attr1", "姓名"); + } + @Override + protected void initBeWrapped() { + + } +} diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java index cbfbc35..0a2a6b7 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/enums/DeviceBaseExportEnum.java @@ -19,7 +19,7 @@ add(new Header("井深", "welldepth")); add(new Header("安装高度", "installheigt")); add(new Header("负责人", "installperson")); - add(new Header("记录时间", "installtime")); + add(new Header("安装时间", "createtime")); add(new Header("所属项目", "project")); add(new Header("安装位置", "position")); add(new Header("经度(gcj02)", "longitude")); diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java index 1fb2545..1064dea 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppDeviceAdd.java @@ -417,7 +417,6 @@ appDeviceAdd.wellname = appDeviceLog.getWellname(); appDeviceAdd.latitude84 = appDeviceLog.getLatitude84(); appDeviceAdd.longitude84 = appDeviceLog.getLongitude84(); - appDeviceAdd.createtime = new Date(); return appDeviceAdd; } diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java index d2013a2..1fe6571 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/model/AppUserOpenid.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.activerecord.Model; import com.baomidou.mybatisplus.annotations.TableName; import java.io.Serializable; +import java.util.Date; /** *

@@ -37,6 +38,13 @@ * 备注 */ private String attr; + private String attr1; + private String role; + + /** + * 创建时间 + */ + private Date createtime; public Long getId() { @@ -79,6 +87,30 @@ this.attr = attr; } + public String getAttr1() { + return attr1; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getRole() { + return role; + } + + public void setRole(String role) { + this.role = role; + } + + public Date getCreatetime() { + return createtime; + } + + public void setCreatetime(Date createtime) { + this.createtime = createtime; + } + @Override protected Serializable pkVal() { return this.id; diff --git a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java index 701ff20..7ac5b94 100644 --- a/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java +++ b/casic-app/src/main/java/com/casic/missiles/modular/app/service/impl/AppDeviceAddServiceImpl.java @@ -93,10 +93,10 @@ query.like("devcode", devcode); } if (ToolUtil.isNotEmpty(begTime)) { - query.ge("installtime", DateUtil.parseTime(begTime + " 00:00:00")); + query.ge("createtime", DateUtil.parseTime(begTime + " 00:00:00")); } if (ToolUtil.isNotEmpty(endTime)) { - query.le("installtime", DateUtil.parseTime(endTime + " 23:23:59")); + query.le("createtime", DateUtil.parseTime(endTime + " 23:23:59")); } if (ToolUtil.isNotEmpty(project)) { query.eq("project", project); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java index 68c37f2..2f9af71 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/controller/ProductRepairRecordsController.java @@ -15,6 +15,7 @@ import com.casic.missiles.modular.device.service.IDeviceService; import com.casic.missiles.modular.device.service.impl.DeviceServiceImpl; import com.casic.missiles.modular.repairs.service.IProductRepairRecordsService; +import com.casic.missiles.modular.system.model.Device; import com.casic.missiles.modular.system.model.ProductRepairRecords; import com.casic.missiles.modular.system.model.Task; import com.casic.missiles.modular.system.model.User; @@ -82,12 +83,18 @@ */ @RequestMapping(value = "/listPage") @ResponseBody - public Object listPage(String devcode, String begTime, String endTime) { + public Object listPage(@RequestParam(required = false) String devcode, + @RequestParam(required = false) String begTime, + @RequestParam(required = false) String endTime, + @RequestParam(required = false) Long devTypeId) { Page page = new PageFactory().defaultPage(); EntityWrapper query = new EntityWrapper<>(); if (ToolUtil.isNotEmpty(devcode)) { query.like("devcode", devcode); } + if (ToolUtil.isNotEmpty(devTypeId)) { + query.eq("devtype_id", devTypeId); + } if (ToolUtil.isNotEmpty(begTime)) { query.ge("returntime", DateUtil.parseTime(begTime)); } @@ -113,36 +120,17 @@ @RequestMapping(value = "/add") @ResponseBody public Object add(ProductRepairRecords productRepairRecords, - String returntimeFmt, String finishtimeFmt -// MultipartFile file1Base64, -// MultipartFile file2Base64, -// MultipartFile file3Base64 - ) throws IOException { - if (null == deviceService.getDeviceByCode(productRepairRecords.getDevcode())) { + String returntimeFmt, String finishtimeFmt) throws IOException { + Device device = deviceService.getDeviceByCode(productRepairRecords.getDevcode()); + if (null == device) { return ResponseData.error(400, "设备编号不存在"); + } else { + productRepairRecords.setDevtypeId(device.getDevtypeId()); } productRepairRecords.setReturntime(ToolUtil.isNotEmpty(returntimeFmt) ? Timestamp.valueOf(returntimeFmt) : null); productRepairRecords.setFinishtime(ToolUtil.isNotEmpty(finishtimeFmt) ? Timestamp.valueOf(finishtimeFmt) : null); -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath1())){ -// productRepairRecords.setPhotopath1(productRepairRecords.getPhotopath1()); -// } -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath2())){ -// productRepairRecords.setPhotopath2(productRepairRecords.getPhotopath2()); -// } -// if(ToolUtil.isNotEmpty(productRepairRecords.getPhotopath3())){ -// productRepairRecords.setPhotopath3(productRepairRecords.getPhotopath3()); -// } -// if (ToolUtil.isNotEmpty(file1Base64)) { -// productRepairRecords.setPhotopath1(FileUtil.saveFile(file1Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file2Base64)) { -// productRepairRecords.setPhotopath2(FileUtil.saveFile(file2Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file3Base64)) { -// productRepairRecords.setPhotopath3(FileUtil.saveFile(file3Base64, filePath)); -// } productRepairRecordsService.insert(productRepairRecords); Task task = taskService.selectById(productRepairRecords.getTaskid()); if ("1".equals(productRepairRecords.getIschange()) && null != task && @@ -181,25 +169,12 @@ @RequestMapping(value = "/update") @ResponseBody public Object update(ProductRepairRecords productRepairRecords, - String returntimeFmt, String finishtimeFmt -// MultipartFile file1Base64, -// MultipartFile file2Base64, -// MultipartFile file3Base64 - ) throws IOException { + String returntimeFmt, String finishtimeFmt) throws IOException { productRepairRecords.setReturntime(ToolUtil.isNotEmpty(returntimeFmt) ? Timestamp.valueOf(returntimeFmt) : null); productRepairRecords.setFinishtime(ToolUtil.isNotEmpty(finishtimeFmt) ? Timestamp.valueOf(finishtimeFmt) : null); -// if (ToolUtil.isNotEmpty(file1Base64)) { -// productRepairRecords.setPhotopath1(FileUtil.saveFile(file1Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file2Base64)) { -// productRepairRecords.setPhotopath2(FileUtil.saveFile(file2Base64, filePath)); -// } -// if (ToolUtil.isNotEmpty(file3Base64)) { -// productRepairRecords.setPhotopath3(FileUtil.saveFile(file3Base64, filePath)); -// } productRepairRecordsService.updateById(productRepairRecords); return ResponseData.success(); } @@ -225,7 +200,8 @@ String devcode = httpServletRequest.getParameter("devcode"); String begTime = httpServletRequest.getParameter("begTime"); String endTime = httpServletRequest.getParameter("endTime"); - List list = productRepairRecordsService.reportExport(devcode, begTime, endTime); + String devTypeId = httpServletRequest.getParameter("devTypeId"); + List list = productRepairRecordsService.reportExport(devcode, begTime, endTime,devTypeId); FileInputStream fileInputStream = new FileInputStream(downloadPath + (list != null && list.size() > 0 ? "repairsList.xlsx" : "contentNull.xlsx")); try { diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java index c1f6792..97cb402 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/IProductRepairRecordsService.java @@ -15,6 +15,6 @@ * @since 2020-06-16 */ public interface IProductRepairRecordsService extends IService { - List reportExport(String devcode, String begTime, String endTime); + List reportExport(String devcode, String begTime, String endTime,String devTypeId); Map importContract(List productRepairRecordsList); } diff --git a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java index add13aa..f56b8bb 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/repairs/service/impl/ProductRepairRecordsServiceImpl.java @@ -8,10 +8,7 @@ import com.casic.missiles.modular.device.service.IDeviceService; import com.casic.missiles.modular.repairs.service.IProductRepairRecordsService; import com.casic.missiles.modular.system.dao.ProductRepairRecordsMapper; -import com.casic.missiles.modular.system.model.Account; -import com.casic.missiles.modular.system.model.ProductDeviceType; -import com.casic.missiles.modular.system.model.ProductRepairRecords; -import com.casic.missiles.modular.system.model.User; +import com.casic.missiles.modular.system.model.*; import com.casic.missiles.modular.system.service.IAccountService; import com.casic.missiles.modular.system.service.IProductDeviceTypeService; import org.springframework.beans.factory.annotation.Autowired; @@ -45,7 +42,7 @@ private IAccountService accountService; @Override - public List reportExport(String devcode, String begTime, String endTime) { + public List reportExport(String devcode, String begTime, String endTime,String devTypeId) { EntityWrapper query = new EntityWrapper<>(); if (ToolUtil.isNotEmpty(devcode)) { query.like("devcode", devcode); @@ -56,6 +53,9 @@ if (ToolUtil.isNotEmpty(endTime)) { query.le("returntime", DateUtil.parseTime(endTime)); } + if(ToolUtil.isNotEmpty(devTypeId)){ + query.eq("devtype_id",Long.valueOf(devTypeId)); + } List productRepairRecordsList = this.selectList(query); for (ProductRepairRecords productRepairRecords : productRepairRecordsList) { ProductDeviceType productDeviceType = productDeviceTypeService.selectById(productRepairRecords.getDevtypeId()); @@ -80,15 +80,18 @@ Map resultMap = new HashMap<>(); //验证设备编号是否存在 -// for (ProductRepairRecords repairRecords : productRepairRecordsList) { -// if (null == deviceService.getDeviceByCode(repairRecords.getDevcode())) { -// String msg = "编号:" + repairRecords.getDevcode() + "在系统中不存在"; -// boolean success = false; -// resultMap.put("msg", msg); -// resultMap.put("success", success); -// return resultMap; -// } -// } + for (ProductRepairRecords repairRecords : productRepairRecordsList) { + Device device =deviceService.getDeviceByCode(repairRecords.getDevcode()); + if (null == device) { + String msg = "编号:" + repairRecords.getDevcode() + "在系统中不存在"; + boolean success = false; + resultMap.put("msg", msg); + resultMap.put("success", success); + return resultMap; + }else { + repairRecords.setDevtypeId(device.getDevtypeId()); + } + } productRepairRecordsList.forEach(repairRecords -> { if (ToolUtil.isNotEmpty(repairRecords.getCheckName())) { Account user = accountService.findUserByName(repairRecords.getCheckName()); diff --git a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/ProductDeviceTypeController.java b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/ProductDeviceTypeController.java index 5f00f0b..0f993b7 100644 --- a/casic-device/src/main/java/com/casic/missiles/modular/system/controller/ProductDeviceTypeController.java +++ b/casic-device/src/main/java/com/casic/missiles/modular/system/controller/ProductDeviceTypeController.java @@ -110,8 +110,8 @@ //上传汇总表 if (null != quotaSummaryFile && StringUtils.isNotBlank(quotaSummaryFile.getOriginalFilename())) { - String fileName=quotaSummaryFile.getOriginalFilename(); - String destName=FileUtil.getOriginalFilename(fileName)+ DateUtil.formatDate(new Date(),"yyyy-MM-dd")+ + String fileName = quotaSummaryFile.getOriginalFilename(); + String destName = FileUtil.getOriginalFilename(fileName) + DateUtil.formatDate(new Date(), "yyyy-MM-dd") + fileName.substring(fileName.lastIndexOf(".")); String path = uploadPath + destName; File newFile = FileUtil.createFile(path); @@ -153,8 +153,8 @@ if (null != quotaSummaryFile && ToolUtil.isNotEmpty(quotaSummaryFile.getOriginalFilename())) { - String fileName=FileUtil.getOriginalFilename(quotaSummaryFile.getOriginalFilename()); - String destName=fileName.substring(0,fileName.lastIndexOf("."))+ DateUtil.formatDate(new Date(),"yyyy-MM-dd")+ + String fileName = FileUtil.getOriginalFilename(quotaSummaryFile.getOriginalFilename()); + String destName = fileName.substring(0, fileName.lastIndexOf(".")) + DateUtil.formatDate(new Date(), "yyyy-MM-dd") + fileName.substring(fileName.lastIndexOf(".")); String path = uploadPath + destName; File newFile = new File(path); @@ -267,7 +267,7 @@ @ResponseBody public Object detail(String tips) { // List userList = permissionService.getAllUsers(""); - List userDtoList=productDeviceTypeService.getUser(tips); + List userDtoList = productDeviceTypeService.getUser(tips); return ResponseData.success(200, "", userDtoList); diff --git a/casic-web/src/main/resources/config/application-dev.yml b/casic-web/src/main/resources/config/application-dev.yml index 451de68..9011c88 100644 --- a/casic-web/src/main/resources/config/application-dev.yml +++ b/casic-web/src/main/resources/config/application-dev.yml @@ -14,11 +14,12 @@ #flowable数据源和多数据源配置 casic: kaptcha-open: false #是否开启登录时验证码 (true/false) - nologin-urls: /user/login,/user/appLogin,/kaptcha,/config/baseConfig,/route/mockToken,/process/processDiagram,/appDeviceLog/listPage,/appDeviceAdd/add,/appDeviceLog/deviceDetail,/appDeviceLog/add,/appDeviceAdd/fileUpload,/appDeviceAdd/findListByCodes,/appDeviceAdd/findModeCodeByCode,/deviceType/getUser,/project/getProject,/appDeviceLog/deletePhoto,/deviceType/deviceType,/productRepairRecords/add,/appDeviceAdd/fileUploadMarker,/appDeviceAdd/getDevTypeLength,/appDeviceAdd/delete + nologin-urls: /user/login,/user/appLogin,/kaptcha,/config/baseConfig,/route/mockToken,/process/processDiagram,/appDeviceLog/listPage,/appDeviceAdd/add,/appDeviceLog/deviceDetail,/appDeviceLog/add,/appDeviceAdd/fileUpload,/appDeviceAdd/findListByCodes,/appDeviceAdd/findModeCodeByCode,/deviceType/getUser,/project/getProject,/appDeviceLog/deletePhoto,/deviceType/deviceType,/productRepairRecords/add,/appDeviceAdd/fileUploadMarker,/appDeviceAdd/getDevTypeLength,/appDeviceAdd/delete,/appUserOpenid/login,/appUserOpenid/add,/appUserOpenid/validate,/appDeviceAdd/getWellTypeList file-upload-path: C:\casic\tmp\ file-download-path: D:\tmp\ producerName: producer repairName: repair + wxUrl: https://api.weixin.qq.com/sns/jscode2session #获取微信openid logging: level.root: info level.com.casic: debug diff --git a/pom.xml b/pom.xml index 40961ed..33da07e 100644 --- a/pom.xml +++ b/pom.xml @@ -180,6 +180,11 @@ hutool-http ${hutool.version} + + org.apache.httpcomponents + httpclient + 4.5.2 +