添加人员签到接口
diff --git a/config/application-devel-pg.properties b/config/application-devel-pg.properties
index af555b9..3202dda 100644
--- a/config/application-devel-pg.properties
+++ b/config/application-devel-pg.properties
@@ -3,7 +3,10 @@
spring.jpa.hibernate.ddl-auto=update
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
spring.jpa.properties.hibernate.temp.use_jdbc_metadata_defaults=false
+spring.jpa.properties.hibernate.show_sql=false
# Postgresql settings
+
+
spring.datasource.platform=postgresql
spring.datasource.url=jdbc:postgresql://172.28.201.70:15432/door
spring.datasource.username=payapi
diff --git a/libs/httpclient-4.5.9-sources.jar b/libs/httpclient-4.5.9-sources.jar
new file mode 100644
index 0000000..84fdc2b
--- /dev/null
+++ b/libs/httpclient-4.5.9-sources.jar
Binary files differ
diff --git a/src/main/java/com/supwisdom/dlpay/conference/api/bean/ConfAttendReq.java b/src/main/java/com/supwisdom/dlpay/conference/api/bean/ConfAttendReq.java
new file mode 100644
index 0000000..aac731a
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/conference/api/bean/ConfAttendReq.java
@@ -0,0 +1,41 @@
+package com.supwisdom.dlpay.conference.api.bean;
+
+
+public class ConfAttendReq {
+ private Integer confid;
+ private String userid;
+ private String timestamp;
+ private String devphyid;
+
+ public Integer getConfid() {
+ return confid;
+ }
+
+ public void setConfid(Integer confid) {
+ this.confid = confid;
+ }
+
+ public String getUserid() {
+ return userid;
+ }
+
+ public void setUserid(String userid) {
+ this.userid = userid;
+ }
+
+ public String getTimestamp() {
+ return timestamp;
+ }
+
+ public void setTimestamp(String timestamp) {
+ this.timestamp = timestamp;
+ }
+
+ public String getDevphyid() {
+ return devphyid;
+ }
+
+ public void setDevphyid(String devphyid) {
+ this.devphyid = devphyid;
+ }
+}
diff --git a/src/main/java/com/supwisdom/dlpay/conference/api/controller/ConerenceApiController.java b/src/main/java/com/supwisdom/dlpay/conference/api/controller/ConerenceApiController.java
index 4942238..86e1299 100644
--- a/src/main/java/com/supwisdom/dlpay/conference/api/controller/ConerenceApiController.java
+++ b/src/main/java/com/supwisdom/dlpay/conference/api/controller/ConerenceApiController.java
@@ -3,13 +3,15 @@
import com.supwisdom.dlpay.api.bean.ApiResponse;
import com.supwisdom.dlpay.conference.api.bean.*;
import com.supwisdom.dlpay.conference.bean.ConferenceShowBean;
-import com.supwisdom.dlpay.conference.domain.TConfPeople;
-import com.supwisdom.dlpay.conference.domain.TConference;
+import com.supwisdom.dlpay.conference.domain.*;
import com.supwisdom.dlpay.conference.service.ConferenceService;
import com.supwisdom.dlpay.conference.util.ConferenceConstant;
import com.supwisdom.dlpay.framework.data.SystemDateTime;
import com.supwisdom.dlpay.framework.service.SystemUtilService;
+import com.supwisdom.dlpay.framework.util.DateUtil;
import com.supwisdom.dlpay.framework.util.StringUtil;
+import com.supwisdom.dlpay.mainservice.domain.TCustomer;
+import com.supwisdom.dlpay.mainservice.service.WebInterfaceService;
import com.supwisdom.dlpay.ncmgr.domain.TNcDevice;
import com.supwisdom.dlpay.ncmgr.service.NcService;
import org.springframework.beans.factory.annotation.Autowired;
@@ -26,7 +28,7 @@
@RequestMapping("/api/conference")
public class ConerenceApiController {
@Autowired
- private SystemUtilService systemUtilService;
+ private WebInterfaceService webInterfaceService;
@Autowired
private ConferenceService conferenceService;
@Autowired
@@ -98,16 +100,18 @@
resp.setTotcnt(totcnt);
}else{
totcnt=conferenceService.getNolistConfPeopleCount(confid);
+ resp.setActualcnt(0);
resp.setTotcnt(totcnt);
-
}
+ resp.setRetcode(0);
+ resp.setRetmsg("ok");
return resp;
}
@RequestMapping(value = "/getconfpeople", method = RequestMethod.POST)
@ResponseBody
- public ConfPeopleResp getConferenceAttendRate(@ModelAttribute ConfPeopleReq req) {
+ public ConfPeopleResp getConfPeoples(@ModelAttribute ConfPeopleReq req) {
ConfPeopleResp resp=new ConfPeopleResp();
String confdate=req.getConfdate();
if(StringUtil.isEmpty(confdate)){
@@ -131,6 +135,104 @@
}
+ @RequestMapping(value = "/doattend", method = RequestMethod.POST)
+ @ResponseBody
+ public ApiResponse doAttend(@ModelAttribute ConfAttendReq req) {
+ ApiResponse resp=new ApiResponse();
+ String userid=req.getUserid();
+ Integer confid=req.getConfid();
+ String timestamp=req.getTimestamp();
+ String devphyid=req.getDevphyid();
+ if(StringUtil.isEmpty(userid)||null==confid||StringUtil.isEmpty(timestamp)||StringUtil.isEmpty(devphyid)){
+ resp.setRetcode(99);
+ resp.setRetmsg("参数传递错误");
+ return resp;
+ }
+ TCustomer customer=webInterfaceService.findCustomerById(userid);
+ if(null==customer){
+ resp.setRetcode(99);
+ resp.setRetmsg("客户不存在");
+ return resp;
+ }
+
+ TConference conference=conferenceService.getConferenceById(confid);
+ if(null==conference){
+ resp.setRetcode(99);
+ resp.setRetmsg("会议不存在");
+ return resp;
+ }
+
+ TNcDevice device=conferenceService.getBindedDevice(confid);
+ if(null==device){
+ resp.setRetcode(99);
+ resp.setRetmsg("请在会议绑定的设备上打卡");
+ return resp;
+ }
+
+ String now= DateUtil.getNow("yyyyMMddHHmmss");
+ String downcheck=DateUtil.getNewTime(now,-60*5);
+ String upcheck=DateUtil.getNewTime(now,60*5);
+
+ if (DateUtil.compareDatetime(timestamp, downcheck) < 0||DateUtil.compareDatetime(timestamp, upcheck)>0) {
+ resp.setRetcode(5);
+ resp.setRetmsg("时间误差过大");
+ return resp;
+ }
+
+ String attdate=DateUtil.getNow("yyyyMMdd");
+ String atttime=DateUtil.getNow("HHmm");
+
+ int compareAttend=DateUtil.compareDatetime(atttime,conference.getAttendtime(),"HHmm");
+ int compareStart=DateUtil.compareDatetime(atttime,conference.getStarttime(),"HHmm");
+
+ if(-1==compareAttend){
+ resp.setRetcode(6);
+ resp.setRetmsg("会议签到时间尚未开始,请在签到时间之后再打卡");
+ return resp;
+ }
+ String attstatus;
+ if(-1==compareStart){
+ attstatus= ConferenceConstant.ATTENDSTATUS_CHECKED;
+ }else{
+ attstatus=ConferenceConstant.ATTENDSTATUS_LATE;
+ }
+ if(ConferenceConstant.CONFTYPE_NOLIST.equals(conference.getConftype())){
+ TNolistConfPeople people=new TNolistConfPeople();
+
+ people.setAttstatus(attstatus);
+ // people.setCardno(dtl.getCardno());
+ people.setConfid(conference.getConfid());
+ people.setCustid(customer.getCustid());
+ people.setAtttime(atttime);
+ people.setCustname(customer.getCustname());
+ people.setAtttype(ConferenceConstant.ATTTYPE_SELF);
+ people.setLastsaved(DateUtil.getNow());
+ conferenceService.saveNolistConfPeople(people);
+ }else{
+ TConfPeople people=conferenceService.getTConfPeopleByConfidAndCustid(conference.getConfid(),customer.getCustid());
+ if(null==people){
+ resp.setRetcode(7);
+ resp.setRetmsg("打卡人员不在会议名单中");
+ return resp;
+ }
+ people.setAttstatus(attstatus);
+ people.setAtttime(atttime);
+ conferenceService.saveConfPeople(people);
+ }
+ /* TConfDtl dtl=new TConfDtl();
+ dtl.setUpdateflag(0);
+ dtl.setAttdate();
+ dtl.setAtttime();
+ dtl.setCardno();*/
+ /* resp.setCount(lst.size());
+ resp.setPeoplelist(lst);
+ resp.setRetcode(0);
+ resp.setRetmsg("ok");*/
+ resp.setRetcode(0);
+ resp.setRetmsg("打卡成功");
+ return resp;
+ }
+
@RequestMapping(value = "/test", method = RequestMethod.POST)
@ResponseBody
public ApiResponse test() {
diff --git a/src/main/java/com/supwisdom/dlpay/conference/domain/TConfDtl.java b/src/main/java/com/supwisdom/dlpay/conference/domain/TConfDtl.java
index a6b8d11..c2d4209 100644
--- a/src/main/java/com/supwisdom/dlpay/conference/domain/TConfDtl.java
+++ b/src/main/java/com/supwisdom/dlpay/conference/domain/TConfDtl.java
@@ -23,7 +23,7 @@
@Column(name="CUSTID", length = 32)
private String custid;
- @Column(name="CARDNO", length = 8)
+ @Column(name="CARDNO", length = 8)
private String cardno;
@Column(name="ATTDATE", length = 8)
@@ -38,6 +38,9 @@
@Column(name="UPDATEFLAG", length = 1)
private Integer updateflag;
+ @Column(name="DEVPHYID", length = 20)
+ private String devphyid;
+
public String getId() {
return id;
@@ -110,4 +113,12 @@
public void setCardno(String cardno) {
this.cardno = cardno;
}
+
+ public String getDevphyid() {
+ return devphyid;
+ }
+
+ public void setDevphyid(String devphyid) {
+ this.devphyid = devphyid;
+ }
}
diff --git a/src/main/java/com/supwisdom/dlpay/conference/service/ConferenceService.java b/src/main/java/com/supwisdom/dlpay/conference/service/ConferenceService.java
index 12b0334..a25b7bc 100644
--- a/src/main/java/com/supwisdom/dlpay/conference/service/ConferenceService.java
+++ b/src/main/java/com/supwisdom/dlpay/conference/service/ConferenceService.java
@@ -92,4 +92,6 @@
@Transactional(rollbackFor = Exception.class, readOnly = true)
List<ConfPeopleApiBean> getConfPeopleListByDevphyid(String devphyid, String confdate) ;
+
+
}
diff --git a/src/main/java/com/supwisdom/dlpay/conference/service/impl/ConferenceServiceImpl.java b/src/main/java/com/supwisdom/dlpay/conference/service/impl/ConferenceServiceImpl.java
index 1f65ba8..d765a28 100644
--- a/src/main/java/com/supwisdom/dlpay/conference/service/impl/ConferenceServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/conference/service/impl/ConferenceServiceImpl.java
@@ -147,7 +147,8 @@
@NotNull
private Page<TConference> getConferencePage(String confname, String conftype, String deptcode, String confdate,String status, int pageNo, int pageSize) {
- Pageable pageable = PageRequest.of(pageNo - 1, pageSize, Sort.by("confdate"));
+ Sort.Order order=new Sort.Order(Sort.Direction.DESC, "confdate");
+ Pageable pageable = PageRequest.of(pageNo - 1, pageSize, Sort.by(order));
return conferenceDao.findAll(new Specification<TConference>() {
@@ -613,7 +614,7 @@
"left join tb_conference b on a.confid=b.confid " +
"left join tb_conference_devbind c on b.confid=c.confid " +
"left join t_nc_device d on c.deviceid=d.deviceid " +
- "where b.confdate=:confdate and d.devphyid=:devphyid" +
+ "where b.confdate=:confdate and d.devphyid=:devphyid " +
"UNION " +
"select a.custname,a.attstatus,a.atttime from tb_nolist_conf_people a " +
"left join tb_conference b on a.confid=b.confid " +
diff --git a/src/main/java/com/supwisdom/dlpay/conference/task/ConferenceTask.java b/src/main/java/com/supwisdom/dlpay/conference/task/ConferenceTask.java
index 02eec78..15e68b6 100644
--- a/src/main/java/com/supwisdom/dlpay/conference/task/ConferenceTask.java
+++ b/src/main/java/com/supwisdom/dlpay/conference/task/ConferenceTask.java
@@ -76,7 +76,7 @@
}
}
- @Scheduled(cron = "${conference.uploaddtl.cron}")//每10秒执行一次
+ /* @Scheduled(cron = "${conference.uploaddtl.cron}")//每10秒执行一次
private void uploadConfDtl(){
List<TConfDtl> dtllist=conferenceService.getUnupdateConfDtl();
if(!StringUtil.isEmpty(dtllist)){
@@ -142,6 +142,6 @@
}
}
- }
+ }*/
}
diff --git a/src/main/java/com/supwisdom/dlpay/conference/util/ConferenceConstant.java b/src/main/java/com/supwisdom/dlpay/conference/util/ConferenceConstant.java
index dface1d..d967edf 100644
--- a/src/main/java/com/supwisdom/dlpay/conference/util/ConferenceConstant.java
+++ b/src/main/java/com/supwisdom/dlpay/conference/util/ConferenceConstant.java
@@ -1,6 +1,7 @@
package com.supwisdom.dlpay.conference.util;
+import com.supwisdom.dlpay.framework.util.DateUtil;
public class ConferenceConstant {
//会议类型
diff --git a/src/main/resources/data.sql b/src/main/resources/data.sql
index 0748c4f..51867d3 100644
--- a/src/main/resources/data.sql
+++ b/src/main/resources/data.sql
@@ -198,112 +198,6 @@
INSERT INTO tb_systemparam(param_key,param_value,param_desc,param_flag) VALUES ('PAYAPI_SECRET','b32309b244904e1789b055eb1da51db1','登录核心平台secret','1');
-/**
-访客登记相关表sql
- */
- /**
- 访客登记表
- */
-CREATE TABLE e_visitor_check_dtl (
-id int4 NOT NULL,
-visitorname varchar(40) COLLATE default,
-phone varchar(20) COLLATE default,
-time varchar(14) COLLATE default,
-deptcode varchar(32) COLLATE default,
-custid varchar(32) COLLATE default,
-company varchar(255) COLLATE default,
-remarks varchar(255) COLLATE default,
-sex varchar(1) COLLATE default,
-status int4,
-CONSTRAINT e_visitor_check_dtl_pkey PRIMARY KEY (id)
-)
-WITH (OIDS=FALSE)
-;
-
-ALTER TABLE e_visitor_check_dtl OWNER TO payapi;
-
-/**
-访客扫码登记表
- */
- CREATE TABLE e_visitor_dtl (
-openid varchar(40) COLLATE default,
-nickname varchar(40) COLLATE default,
-sex varchar(40) COLLATE default,
-province varchar(40) COLLATE default,
-city varchar(40) COLLATE default,
-country varchar(40) COLLATE default,
-headimgurl varchar(255) COLLATE default,
-unionid varchar(40) COLLATE default,
-inoutflag int4,
-transdate varchar(8) COLLATE default,
-transtime varchar(6) COLLATE default,
-status int4,
-privilege varchar(40) COLLATE default,
-binddate varchar(14) COLLATE default,
-id int4 NOT NULL,
-trandtime varchar(6) COLLATE default,
-CONSTRAINT e_visitor_dtl_pkey PRIMARY KEY (id)
-)
-WITH (OIDS=FALSE)
-;
-
-ALTER TABLE e_visitor_dtl OWNER TO payapi;
-
-COMMENT ON COLUMN e_visitor_dtl.inoutflag IS '出入标记 进门-1 出门-2';
-
-COMMENT ON COLUMN e_visitor_dtl.status IS '状态';
-
-/**
-微信扫码登记信息表
- */
-CREATE TABLE e_wechat_account (
-wxid varchar(32) COLLATE default NOT NULL,
-userid varchar(32) COLLATE default,
-appkey int4,
-openid varchar(128) COLLATE default,
-stuempno varchar(40) COLLATE default,
-status varchar(1) COLLATE default,
-binddate varchar(14) COLLATE default,
-nickname varchar(100) COLLATE default,
-sex varchar(1) COLLATE default,
-province varchar(60) COLLATE default,
-country varchar(60) COLLATE default,
-headimgurl varchar(200) COLLATE default,
-privilege varchar(40) COLLATE default,
-unionid varchar(128) COLLATE default,
-cardcode varchar(40) COLLATE default,
-city varchar(60) COLLATE default,
-CONSTRAINT e_wechat_account_pkey PRIMARY KEY (wxid)
-)
-WITH (OIDS=FALSE)
-;
-
-ALTER TABLE e_wechat_account OWNER TO payapi;
-
-
-CREATE TABLE e_wechat_config (
-id varchar(40) COLLATE default NOT NULL,
-appid varchar(40) COLLATE default,
-secret varchar(200) COLLATE default,
-shopid varchar(32) COLLATE default,
-shopkey varchar(200) COLLATE default,
-cardid varchar(40) COLLATE default,
-accesstoken varchar(200) COLLATE default,
-refreshtoken varchar(200) COLLATE default,
-tokentime int4,
-domain varchar(200) COLLATE default,
-CONSTRAINT e_wechat_config_pkey PRIMARY KEY (id)
-)
-WITH (OIDS=FALSE)
-;
-
-ALTER TABLE e_wechat_config OWNER TO payapi;
-
-
-
-
-
-
INSERT INTO "t_dictionary"("dicttype", "dicttypename", "dictval", "dictcaption") VALUES (8, '设备类型', 'H', '会议平板');
INSERT INTO "t_dictionary"("dicttype", "dicttypename", "dictval", "dictcaption") VALUES (16, '设备使用类别', 'HY', '会议签到');
@@ -330,4 +224,4 @@
INSERT INTO "tb_function"("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid", "grade") VALUES (31, NULL, 1, NULL, '', '/system/custtypeindex', '客户类别管理', 9, 3, NULL);
INSERT INTO "tb_function"("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid", "grade") VALUES (29, NULL, 0, NULL, 'layui-icon-app', '#', '会议签到', 8, -1, NULL);
-
+INSERT INTO "tb_dept"("deptcode", "deptname", "deptno", "ename", "fdeptcode", "lastsaved", "status") VALUES ('0', '根部门', 'root', NULL, '-1', NULL, 'normal');