You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
2.4 KiB
71 lines
2.4 KiB
package com.community.pocket.repository.android;
|
|
|
|
import com.community.pocket.entity.po.android.Token;
|
|
import com.community.pocket.entity.po.android.Visitor;
|
|
import com.community.pocket.entity.vo.android.VisitorForm;
|
|
import com.community.pocket.repository.BaseDao;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.data.domain.Sort;
|
|
import org.springframework.data.mongodb.core.query.Criteria;
|
|
import org.springframework.data.mongodb.core.query.Query;
|
|
import org.springframework.stereotype.Repository;
|
|
|
|
import java.text.ParseException;
|
|
import java.text.SimpleDateFormat;
|
|
import java.util.List;
|
|
|
|
//访客数据接口
|
|
@Repository
|
|
public class VisitorDao extends BaseDao<Visitor> {
|
|
|
|
private static final Logger LOG = LoggerFactory.getLogger(VisitorDao.class);
|
|
|
|
@Value("${visitor.dateformat}")
|
|
private String dateformat;
|
|
|
|
//保存访客信息
|
|
public Visitor save(VisitorForm visitorForm) {
|
|
Visitor visitor = new Visitor();
|
|
visitor.setAppointment(visitorForm.getAppointment());
|
|
visitor.setUsername(visitorForm.getUsername());
|
|
visitor.setChooseDate(visitorForm.getChooseDate());
|
|
visitor.setChooseTime(visitorForm.getChooseTime());
|
|
visitor.setNotes(visitorForm.getNotes());
|
|
try {
|
|
visitor.setTime(new SimpleDateFormat(dateformat).parse(visitor.getChooseDate() + " " + visitor.getChooseTime()).getTime());
|
|
return save(visitor);
|
|
} catch (ParseException e) {
|
|
e.printStackTrace();
|
|
LOG.error(e.toString());
|
|
}
|
|
return null;
|
|
}
|
|
|
|
//加载我的访客信息
|
|
public List<Visitor> loadMyVisitor(Token token) {
|
|
return mongoTemplate.find(new Query(Criteria.where("appointment").is(token.getUsername())).with(Sort.by("time").ascending()), entityClass());
|
|
}
|
|
|
|
//加载我的预约
|
|
public List<Visitor> loadMyReservation(Token token) {
|
|
return mongoTemplate.find(new Query(Criteria.where("username").is(token.getUsername())).with(Sort.by("time").ascending()), entityClass());
|
|
}
|
|
|
|
@Override
|
|
public Visitor save(Visitor visitor) {
|
|
try {
|
|
return mongoTemplate.save(visitor);
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
LOG.error(e.toString());
|
|
}
|
|
return null;
|
|
}
|
|
|
|
@Override
|
|
public Class<Visitor> entityClass() {
|
|
return Visitor.class;
|
|
}
|
|
}
|
|
|