|
@@ -24,113 +24,121 @@ import com.jpsoft.bus.modules.common.dto.Sort;
|
|
|
import com.github.pagehelper.PageHelper;
|
|
|
|
|
|
@Transactional
|
|
|
-@Component(value="passengerInfoService")
|
|
|
+@Component(value = "passengerInfoService")
|
|
|
public class PassengerInfoServiceImpl implements PassengerInfoService {
|
|
|
- @Resource(name="passengerInfoDAO")
|
|
|
- private PassengerInfoDAO passengerInfoDAO;
|
|
|
-
|
|
|
- @Autowired
|
|
|
- private BaiduService baiduService;
|
|
|
-
|
|
|
- @Override
|
|
|
- public PassengerInfo get(String id) {
|
|
|
- // TODO Auto-generated method stub
|
|
|
- return passengerInfoDAO.get(id);
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public int insert(PassengerInfo model) {
|
|
|
- // TODO Auto-generated method stub
|
|
|
- //model.setId(UUID.randomUUID().toString());
|
|
|
-
|
|
|
- return passengerInfoDAO.insert(model);
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public int update(PassengerInfo model) {
|
|
|
- // TODO Auto-generated method stub
|
|
|
- return passengerInfoDAO.update(model);
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public int delete(String id) {
|
|
|
- // TODO Auto-generated method stub
|
|
|
- return passengerInfoDAO.delete(id);
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public boolean exist(String id) {
|
|
|
- // TODO Auto-generated method stub
|
|
|
- int count = passengerInfoDAO.exist(id);
|
|
|
-
|
|
|
- return count > 0 ? true : false;
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public List<PassengerInfo> list() {
|
|
|
- // TODO Auto-generated method stub
|
|
|
- return passengerInfoDAO.list();
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public Page<PassengerInfo> pageSearch(Map<String, Object> searchParams, int pageNumber, int pageSize,boolean count,List<Sort> sortList) {
|
|
|
- Page<PassengerInfo> page = PageHelper.startPage(pageNumber,pageSize,count).doSelectPage(()->{
|
|
|
- passengerInfoDAO.search(searchParams,sortList);
|
|
|
+ @Resource(name = "passengerInfoDAO")
|
|
|
+ private PassengerInfoDAO passengerInfoDAO;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private BaiduService baiduService;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public PassengerInfo get(String id) {
|
|
|
+ // TODO Auto-generated method stub
|
|
|
+ return passengerInfoDAO.get(id);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public int insert(PassengerInfo model) {
|
|
|
+ // TODO Auto-generated method stub
|
|
|
+ //model.setId(UUID.randomUUID().toString());
|
|
|
+
|
|
|
+ return passengerInfoDAO.insert(model);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public int update(PassengerInfo model) {
|
|
|
+ // TODO Auto-generated method stub
|
|
|
+ return passengerInfoDAO.update(model);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public int delete(String id) {
|
|
|
+ // TODO Auto-generated method stub
|
|
|
+ return passengerInfoDAO.delete(id);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public boolean exist(String id) {
|
|
|
+ // TODO Auto-generated method stub
|
|
|
+ int count = passengerInfoDAO.exist(id);
|
|
|
+
|
|
|
+ return count > 0 ? true : false;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<PassengerInfo> list() {
|
|
|
+ // TODO Auto-generated method stub
|
|
|
+ return passengerInfoDAO.list();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Page<PassengerInfo> pageSearch(Map<String, Object> searchParams, int pageNumber, int pageSize, boolean count, List<Sort> sortList) {
|
|
|
+ Page<PassengerInfo> page = PageHelper.startPage(pageNumber, pageSize, count).doSelectPage(() -> {
|
|
|
+ passengerInfoDAO.search(searchParams, sortList);
|
|
|
});
|
|
|
|
|
|
return page;
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public List<PassengerInfo> findByPersonIdShiftIdStatus(Long personId, String shiftId, String status) {
|
|
|
- return passengerInfoDAO.findByPersonIdShiftIdStatus(personId,shiftId,status);
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public void passengerFace(VehicleInfo vehicleInfo, ShiftInfo shiftInfo, String retFileUrl, String recordTime, String stationId,String personId) throws Exception {
|
|
|
- Date recordDate = DateUtil.parse(recordTime,"yyyy-MM-dd HH:mm:ss");
|
|
|
-
|
|
|
- //查询是否有已上车的乘客记录
|
|
|
- List<PassengerInfo> passengerInfoList = findByPersonIdShiftIdStatus(Long.parseLong(personId),shiftInfo.getId(),"1");
|
|
|
-
|
|
|
- if (passengerInfoList.size()>0){
|
|
|
- PassengerInfo passengerInfo = passengerInfoList.get(0);
|
|
|
- passengerInfo.setDownTime(recordDate);
|
|
|
- passengerInfo.setDownStationId(stationId);
|
|
|
- passengerInfo.setStatus("2");
|
|
|
- update(passengerInfo);
|
|
|
- }
|
|
|
- else {
|
|
|
- PassengerInfo passengerInfo = new PassengerInfo();
|
|
|
- passengerInfo.setId(UUID.randomUUID().toString());
|
|
|
- passengerInfo.setVehicleShiftId(shiftInfo.getId());
|
|
|
- passengerInfo.setVehiclePersonId(Long.parseLong(personId));
|
|
|
- passengerInfo.setUpTime(recordDate);
|
|
|
- passengerInfo.setUpStationId(stationId);
|
|
|
- passengerInfo.setStatus("1");
|
|
|
- passengerInfo.setPayStatus("0");
|
|
|
- passengerInfo.setCreateTime(new Date());
|
|
|
-
|
|
|
- if (StringUtils.isNotEmpty(retFileUrl)){
|
|
|
- passengerInfo.setImageUrl(retFileUrl);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<PassengerInfo> findByPersonIdShiftIdStatus(Long personId, String shiftId, String status) {
|
|
|
+ return passengerInfoDAO.findByPersonIdShiftIdStatus(personId, shiftId, status);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void passengerFace(VehicleInfo vehicleInfo, ShiftInfo shiftInfo, String retFileUrl, String recordTime, String stationId, String personId) throws Exception {
|
|
|
+ Date recordDate = DateUtil.parse(recordTime, "yyyy-MM-dd HH:mm:ss");
|
|
|
+
|
|
|
+ //查询是否有已上车的乘客记录
|
|
|
+ List<PassengerInfo> passengerInfoList = findByPersonIdShiftIdStatus(Long.parseLong(personId), shiftInfo.getId(), "1");
|
|
|
+
|
|
|
+ if (passengerInfoList.size() > 0) {
|
|
|
+ PassengerInfo passengerInfo = passengerInfoList.get(0);
|
|
|
+ passengerInfo.setDownTime(recordDate);
|
|
|
+ passengerInfo.setDownStationId(stationId);
|
|
|
+ passengerInfo.setStatus("2");
|
|
|
+ update(passengerInfo);
|
|
|
+ } else {
|
|
|
+
|
|
|
+ //查询此班次是否有已下车的记录
|
|
|
+ List<PassengerInfo> passengerInfoList1 = findByPersonIdShiftIdStatus(Long.parseLong(personId), shiftInfo.getId(), "2");
|
|
|
+ if (passengerInfoList1.size() == 0) {
|
|
|
+ PassengerInfo passengerInfo = new PassengerInfo();
|
|
|
+ passengerInfo.setId(UUID.randomUUID().toString());
|
|
|
+ passengerInfo.setVehicleShiftId(shiftInfo.getId());
|
|
|
+ passengerInfo.setVehiclePersonId(Long.parseLong(personId));
|
|
|
+ passengerInfo.setUpTime(recordDate);
|
|
|
+ passengerInfo.setUpStationId(stationId);
|
|
|
+ passengerInfo.setStatus("1");
|
|
|
+ passengerInfo.setPayStatus("0");
|
|
|
+ passengerInfo.setCreateTime(new Date());
|
|
|
+
|
|
|
+ if (StringUtils.isNotEmpty(retFileUrl)) {
|
|
|
+ passengerInfo.setImageUrl(retFileUrl);
|
|
|
+ } else {
|
|
|
+ //如果没有上车记录,但有已下车记录,则读取之前记录的头像信息
|
|
|
+ List<PassengerInfo> downList = findByPersonIdShiftIdStatus(Long.parseLong(personId), shiftInfo.getId(), "2");
|
|
|
+
|
|
|
+ if (downList.size() > 0) {
|
|
|
+ passengerInfo.setImageUrl(downList.get(0).getImageUrl());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ insert(passengerInfo);
|
|
|
+
|
|
|
+ String groupId = CommonUtil.getProvinceNum(vehicleInfo.getLicensePlateNumber()) + StrUtil.sub(vehicleInfo.getLicensePlateNumber(), 1, 10);
|
|
|
+
|
|
|
+ if (StringUtils.isNotEmpty(groupId)) {
|
|
|
+ //将图片上传到百度AI人脸识别, userInfo 1:司机,2:乘客
|
|
|
+ baiduService.faceUserAdd(retFileUrl, groupId, personId, "2");
|
|
|
+ }
|
|
|
+
|
|
|
+ }else {
|
|
|
+ PassengerInfo passengerInfo = passengerInfoList1.get(0);
|
|
|
+ passengerInfo.setStatus("1");
|
|
|
+ update(passengerInfo);
|
|
|
}
|
|
|
- else {
|
|
|
- //如果没有上车记录,但有已下车记录,则读取之前记录的头像信息
|
|
|
- List<PassengerInfo> downList = findByPersonIdShiftIdStatus(Long.parseLong(personId), shiftInfo.getId(), "2");
|
|
|
-
|
|
|
- if (downList.size()>0){
|
|
|
- passengerInfo.setImageUrl(downList.get(0).getImageUrl());
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- insert(passengerInfo);
|
|
|
-
|
|
|
- String groupId = CommonUtil.getProvinceNum(vehicleInfo.getLicensePlateNumber()) + StrUtil.sub(vehicleInfo.getLicensePlateNumber(),1,10);
|
|
|
-
|
|
|
- if (StringUtils.isNotEmpty(groupId)) {
|
|
|
- //将图片上传到百度AI人脸识别, userInfo 1:司机,2:乘客
|
|
|
- baiduService.faceUserAdd(retFileUrl, groupId, personId, "2");
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|