Forráskód Böngészése

用户注册数统计

huyy 7 éve
szülő
commit
75768cc667

+ 91 - 37
sso-server/src/main/java/com/uas/sso/controller/UserManagerController.java

@@ -14,9 +14,7 @@ import org.springframework.web.bind.annotation.*;
 
 import java.io.*;
 import java.text.SimpleDateFormat;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.Set;
+import java.util.*;
 
 
 /**
@@ -93,10 +91,10 @@ public class UserManagerController extends BaseController {
     /**
      * 校验真实姓名是否被认证
      *
-     * @author wangmh
-     * @date 2018/1/11 15:05
      * @param realName 真实姓名
      * @return
+     * @author wangmh
+     * @date 2018/1/11 15:05
      */
     @RequestMapping(value = "/realName/valid", method = RequestMethod.GET)
     public ModelMap realNameIsValid(String realName) {
@@ -106,10 +104,10 @@ public class UserManagerController extends BaseController {
     /**
      * 校验身份证号是否被认证
      *
-     * @author wangmh
-     * @date 2018/1/11 15:06
      * @param idCard 身份证号
      * @return {"isValid", b} b为true说明已认证
+     * @author wangmh
+     * @date 2018/1/11 15:06
      */
     @RequestMapping(value = "/idCard/valid", method = RequestMethod.GET)
     public ModelMap idCardIsValid(String idCard) {
@@ -118,12 +116,13 @@ public class UserManagerController extends BaseController {
 
     /**
      * 根据企业uu号查询企业下所有用户信息
-     * @author wangmh
-     * @date 2018/1/26 14:43
-     * @param page 当前页数
-     * @param size 每页大小
+     *
+     * @param page    当前页数
+     * @param size    每页大小
      * @param spaceUU 企业uu号
      * @return org.springframework.data.domain.Page, content 为用户信息集合
+     * @author wangmh
+     * @date 2018/1/26 14:43
      */
     @RequestMapping(value = "/find/member", method = RequestMethod.GET)
     public ModelMap findMember(@RequestParam(defaultValue = "1") int page, @RequestParam(defaultValue = "20") int size, Long spaceUU) {
@@ -132,10 +131,11 @@ public class UserManagerController extends BaseController {
 
     /**
      * 根据用户uu号查询用户信息
-     * @author wangmh
-     * @date 2018/1/26 14:46
+     *
      * @param userUU 用户uu号
      * @return 用户信息
+     * @author wangmh
+     * @date 2018/1/26 14:46
      */
     @RequestMapping(value = "/info", method = RequestMethod.GET)
     public ModelMap findOne(@RequestParam Long userUU) {
@@ -144,10 +144,11 @@ public class UserManagerController extends BaseController {
 
     /**
      * 根据用户手机号查询用户信息
-     * @author wangmh
-     * @date 2018/1/26 14:46
+     *
      * @param mobile 用户手机号
      * @return 用户信息
+     * @author wangmh
+     * @date 2018/1/26 14:46
      */
     @RequestMapping(value = "/info/mobile", method = RequestMethod.GET)
     public ModelMap findByMobile(@RequestParam String mobile) {
@@ -157,11 +158,11 @@ public class UserManagerController extends BaseController {
     /**
      * 用户申请绑定企业
      *
-     * @author wangmh
-     * @date 2018/1/31 18:22
-     * @param userUU 用户uu号
+     * @param userUU  用户uu号
      * @param spaceUU 企业uu号
      * @return 用户信息
+     * @author wangmh
+     * @date 2018/1/31 18:22
      */
     @RequestMapping(value = "/apply/bind", method = RequestMethod.POST)
     public ModelMap bindUserSpace(@RequestParam Long userUU, Long spaceUU) {
@@ -185,9 +186,10 @@ public class UserManagerController extends BaseController {
 
     /**
      * 根据用户uu号查询分页查询申请信息
+     *
      * @param userUU 用户uu号
-     * @param page 当前页,默认值为1
-     * @param size 每页大小,默认值为20
+     * @param page   当前页,默认值为1
+     * @param size   每页大小,默认值为20
      * @return org.springframework.data.domain.Page,content为ApplyUserSpace集合
      */
     @RequestMapping(value = "/apply/info", method = RequestMethod.GET)
@@ -197,7 +199,8 @@ public class UserManagerController extends BaseController {
 
     /**
      * 用户解除绑定企业
-     * @param userUU 用户uu号
+     *
+     * @param userUU  用户uu号
      * @param spaceUU 企业uu号
      * @return
      */
@@ -209,8 +212,9 @@ public class UserManagerController extends BaseController {
 
     /**
      * 企业添加已注册用户
-     * @param appId 应用id
-     * @param userUU 用户uu号
+     *
+     * @param appId   应用id
+     * @param userUU  用户uu号
      * @param spaceUU 企业uu号
      * @return
      */
@@ -222,8 +226,9 @@ public class UserManagerController extends BaseController {
 
     /**
      * 企业添加未注册用户
-     * @param appId 应用id
-     * @param user 用户信息
+     *
+     * @param appId   应用id
+     * @param user    用户信息
      * @param spaceUU 企业uu号
      * @return
      */
@@ -254,7 +259,7 @@ public class UserManagerController extends BaseController {
 
     /**
      * 接口调用验证密码登录
-     *
+     * <p>
      * <pre>
      * 这个比较特殊,指定应用可能密码为空,需要借用其他应用的密码来校验
      * </pre>
@@ -284,11 +289,12 @@ public class UserManagerController extends BaseController {
 
     /**
      * erp修改用户信息 如果type为password则修改密码,为mobile则修改手机号,为email则修改邮箱
-     * @param type 修改类型
-     * @param userUU 用户uu号
-     * @param spaceUU 企业uu号
+     *
+     * @param type     修改类型
+     * @param userUU   用户uu号
+     * @param spaceUU  企业uu号
      * @param password 密码
-     * @param data 其他数据
+     * @param data     其他数据
      * @return
      */
     @RequestMapping(value = "/update/{type}/{userUU}/{spaceUU}", method = RequestMethod.POST)
@@ -319,6 +325,7 @@ public class UserManagerController extends BaseController {
 
     /**
      * 众创商机导入注册
+     *
      * @param user 用户信息(主要是用户名,手机号,邮箱和密码,密码base64加密)
      * @return
      */
@@ -348,6 +355,7 @@ public class UserManagerController extends BaseController {
 
     /**
      * erp根据token获取用户信息
+     *
      * @param token tokenId
      * @return
      */
@@ -368,6 +376,7 @@ public class UserManagerController extends BaseController {
 
     /**
      * 根据手机号获取所在企业信息
+     *
      * @param mobile 用户手机号
      * @return
      */
@@ -399,7 +408,8 @@ public class UserManagerController extends BaseController {
 
     /**
      * (消息)根据企业uu号和用户uu号获取用户和企业信息
-     * @param userUU 用户uu号
+     *
+     * @param userUU  用户uu号
      * @param spaceUU 企业uu号
      * @return
      */
@@ -414,7 +424,7 @@ public class UserManagerController extends BaseController {
             return error("企业不存在");
         }
         if (!user.getUserSpaces().contains(userspace)) {
-            return error("用户(" + userUU  +")不属于企业(" + spaceUU+ ")");
+            return error("用户(" + userUU + ")不属于企业(" + spaceUU + ")");
         }
         ModelMap data = new ModelMap();
         data.addAttribute("mobile", user.getMobile());
@@ -435,33 +445,37 @@ public class UserManagerController extends BaseController {
 
     /**
      * 获取本月用户注册数量
+     *
      * @return
      */
     @RequestMapping(value = "/currentMonth/count", method = RequestMethod.GET)
     public ModelMap countInCurrentMonth() {
-        return new ModelMap("count",  userService.countInCurrentMonth());
+        return new ModelMap("count", userService.countInCurrentMonth());
     }
 
     /**
      * 获取上个月用户注册数量
+     *
      * @return
      */
     @RequestMapping(value = "/lastMonth/count", method = RequestMethod.GET)
     public ModelMap countInLastMonth() {
-        return new ModelMap("count",  userService.countInLastMonth());
+        return new ModelMap("count", userService.countInLastMonth());
     }
 
     /**
      * 获取本周用户注册数量
+     *
      * @return
      */
     @RequestMapping(value = "/currentWeek/count", method = RequestMethod.GET)
     public ModelMap countInCurrentWeek() {
-        return new ModelMap("count",  userService.countInCurrentWeek());
+        return new ModelMap("count", userService.countInCurrentWeek());
     }
 
     /**
      * 获取指定应用注册数量
+     *
      * @param fromApps 应用id,逗号分隔
      * @return
      */
@@ -473,27 +487,67 @@ public class UserManagerController extends BaseController {
 
     /**
      * 获取指定应用本月注册数量
+     *
      * @param fromApps 应用id,逗号分隔
      * @return
      */
     @RequestMapping(value = "/currentMonth/count/app", method = RequestMethod.GET)
     public ModelMap countInCurrentMonth(String fromApps) {
         String[] apps = fromApps.split(",");
-        return success(userService.countInCurrentMonth(Arrays.asList(apps)));
+        return success(userService.countInCurrentMonth(new ArrayList<>(Arrays.asList(apps))));
     }
 
     /**
      * 获取指定应用本周注册数量
+     *
      * @param fromApps 应用id,逗号分隔
      * @return
      */
     @RequestMapping(value = "/currentWeek/count/app", method = RequestMethod.GET)
     public ModelMap countInCurrentWeek(String fromApps) {
         String[] apps = fromApps.split(",");
-        return success(userService.countInCurrentWeek(Arrays.asList(apps)));
+        return success(userService.countInCurrentWeek(new ArrayList<>(Arrays.asList(apps))));
     }
+
+    /**
+     * 获取指定应用当天注册数量
+     *
+     * @param fromApps 应用id,逗号分隔
+     * @return
+     */
+    @RequestMapping(value = "/today/count/app", method = RequestMethod.GET)
+    public ModelMap countInToday(String fromApps) {
+        String[] apps = fromApps.split(",");
+        return success(userService.countInToday(new ArrayList<>(Arrays.asList(apps))));
+    }
+
+    /**
+     * 获取指定应用前一天注册数量
+     * @param fromApps 应用id,逗号分隔
+     *
+     * @return
+     */
+    @RequestMapping(value = "/yesterday/count/app", method = RequestMethod.GET)
+    public ModelMap countInYesterday(String fromApps) {
+        String[] apps = fromApps.split(",");
+        return success(userService.countInYesterday(new ArrayList<>(Arrays.asList(apps))));
+    }
+
+    /**
+     * 获取指定应用上一个月注册数量
+     *
+     * @param fromApps 应用id,逗号分隔
+     * @return
+     */
+    @RequestMapping(value = "/lastMonth/count/app", method = RequestMethod.GET)
+    public ModelMap countInLastMonth(String fromApps) {
+        String[] apps = fromApps.split(",");
+        return success(userService.countgInLastMonth(new ArrayList<>(Arrays.asList(apps))));
+    }
+
     /**
      * 根据用户IMID获取女用户信息
+     *
      * @param imId 用户的IMID
      * @return 用户信息
      */

+ 21 - 0
sso-server/src/main/java/com/uas/sso/service/UserService.java

@@ -329,6 +329,27 @@ public interface UserService {
      */
     Map<String, Long> countInCurrentWeek(List<String> fromApps);
 
+    /**
+     * 获取指定应用当天注册量
+     * @param fromApps 应用id集合
+     * @return key: appId, value: count
+     */
+    Map<String, Long> countInToday(List<String> fromApps);
+
+    /**
+     * 获取指定应用前一天注册量
+     * @param fromApps 应用id集合
+     * @return key: appId, value: count
+     */
+    Map<String, Long> countInYesterday(List<String> fromApps);
+
+    /**
+     * 获取指定应用上一个月注册量
+     * @param fromApps 应用id集合
+     * @return key: appId, value: count
+     */
+    Map<String, Long> countgInLastMonth(List<String> fromApps);
+
     /**
      * 根据微信用户unionID获取用户信息
      * @param unionid 用户unionID

+ 81 - 38
sso-server/src/main/java/com/uas/sso/service/impl/UserServiceImpl.java

@@ -23,6 +23,7 @@ import com.uas.sso.support.SyncFail;
 import com.uas.sso.util.AccountTypeUtils;
 import com.uas.sso.util.CountUtils;
 import com.uas.sso.util.PasswordLevelUtils;
+import net.sf.ehcache.search.aggregator.Count;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.PageRequest;
@@ -34,6 +35,7 @@ import org.springframework.util.Assert;
 import org.springframework.util.CollectionUtils;
 import org.springframework.util.StringUtils;
 
+import javax.persistence.Version;
 import javax.persistence.criteria.*;
 import javax.validation.constraints.NotNull;
 import java.sql.Timestamp;
@@ -254,9 +256,9 @@ public class UserServiceImpl implements UserService {
     /**
      * 校验用户密码
      *
-     * @param oldUser 用户信息
+     * @param oldUser  用户信息
      * @param password 需要校验的密码
-     * @param isEncry 需校验的密码是否被加密
+     * @param isEncry  需校验的密码是否被加密
      */
     private void checkPassword(User oldUser, String password, boolean isEncry) {
         // 密码未加密,转换成加密后的密码
@@ -408,12 +410,13 @@ public class UserServiceImpl implements UserService {
         syncUserBindSpace(userUU, spaceUU);
 
         // 保存日志
-        userLogger.info(user, Type.BIND_USERSPACE.getValue()+spaceUU);
+        userLogger.info(user, Type.BIND_USERSPACE.getValue() + spaceUU);
     }
 
     /**
      * 同步用户绑定企业关系
-     * @param userUU 用户uu号
+     *
+     * @param userUU  用户uu号
      * @param spaceUU 企业uu号
      */
     private void syncUserBindSpace(Long userUU, Long spaceUU) {
@@ -422,7 +425,8 @@ public class UserServiceImpl implements UserService {
 
     /**
      * 同步用户解除绑定企业关系
-     * @param userUU 用户uu号
+     *
+     * @param userUU  用户uu号
      * @param spaceUU 企业uu号
      */
     private void syncUserUnbindSpace(Long userUU, Long spaceUU) {
@@ -431,9 +435,10 @@ public class UserServiceImpl implements UserService {
 
     /**
      * 同步用户与企业的关系
-     * @param userUU 用户uu号
+     *
+     * @param userUU  用户uu号
      * @param spaceUU 企业uu号
-     * @param type 类型 (bind or unbind)
+     * @param type    类型 (bind or unbind)
      */
     private void syncRelation(final Long userUU, final Long spaceUU, final String type) {
         Userspace userspace = userspaceService.findOne(spaceUU);
@@ -492,7 +497,7 @@ public class UserServiceImpl implements UserService {
         syncUserUnbindSpace(userUU, spaceUU);
 
         // 保存日志
-        userLogger.info(user, Type.UNBIND_USERSPACE.getValue()+spaceUU);
+        userLogger.info(user, Type.UNBIND_USERSPACE.getValue() + spaceUU);
     }
 
     @Override
@@ -505,7 +510,7 @@ public class UserServiceImpl implements UserService {
         if (CollectionUtils.isEmpty(userQuestions)) {
             user.setQuestions(questions);
         } else {
-            for (int i=0; i<questions.size(); i++) {
+            for (int i = 0; i < questions.size(); i++) {
                 if (userQuestions.get(i) == null) {
                     user.getQuestions().add(questions.get(i));
                 } else {
@@ -541,7 +546,7 @@ public class UserServiceImpl implements UserService {
         user.setPassword(getEncryPassword(Const.ENCRY_FORMAT, noEncryPwd, user.getSalt()));
         user.setPasswordLevel(PasswordLevelUtils.checkPasswordLevel(noEncryPwd).getValue());
 
-        user = syncUserInfo(user , noEncryPwd, "用户修改密码", null);
+        user = syncUserInfo(user, noEncryPwd, "用户修改密码", null);
 
         return userDao.save(user);
     }
@@ -652,6 +657,10 @@ public class UserServiceImpl implements UserService {
         List<Map<String, Object>> counts = userDao.getCountByRegisterDate(start, end, fromApps);
         for (Map<String, Object> count : counts) {
             data.put((String) count.get("appId"), (Long) count.get("count"));
+            fromApps.remove(count.get("appId"));
+        }
+        for(String fromApp: fromApps){
+            data.put(fromApp, 0L);
         }
         return data;
     }
@@ -721,6 +730,36 @@ public class UserServiceImpl implements UserService {
         });
     }
 
+    @Override
+    public Map<String, Long> countInToday(List<String> fromApps) {
+        return CountUtils.countInToday(new CountCallBack<Map<String, Long>>() {
+            @Override
+            public Map<String, Long> countByTime(Calendar start, Calendar end) {
+                return countByRegisterDate(new Timestamp(start.getTimeInMillis()), new Timestamp(end.getTimeInMillis()), fromApps);
+            }
+        });
+    }
+
+    @Override
+    public Map<String, Long> countInYesterday(List<String> fromApps) {
+        return CountUtils.countInYesterday(new CountCallBack<Map<String, Long>>() {
+            @Override
+            public Map<String, Long> countByTime(Calendar start, Calendar end) {
+                return countByRegisterDate(new Timestamp(start.getTimeInMillis()), new Timestamp(end.getTimeInMillis()), fromApps);
+            }
+        });
+    }
+
+    @Override
+    public Map<String, Long> countgInLastMonth(List<String> fromApps) {
+        return CountUtils.countInLastMonth(new CountCallBack<Map<String, Long>>() {
+            @Override
+            public Map<String, Long> countByTime(Calendar start, Calendar end) {
+                return countByRegisterDate(new Timestamp(start.getTimeInMillis()), new Timestamp(end.getTimeInMillis()), fromApps);
+            }
+        });
+    }
+
     @Override
     public User findByWxUnionid(String unionid) {
         return userDao.findByWxUnionid(unionid);
@@ -844,7 +883,8 @@ public class UserServiceImpl implements UserService {
 
     /**
      * 设置用户第三方openId,不同应用对应不同字段
-     * @param user 用户信息
+     *
+     * @param user        用户信息
      * @param foreignInfo
      * @return
      */
@@ -870,9 +910,10 @@ public class UserServiceImpl implements UserService {
 
     /**
      * 同步用户信息到各个应用
-     * @param user 用户信息
+     *
+     * @param user       用户信息
      * @param noEncryPwd 未加密密码,用于同步im
-     * @param msg 同步信息描述,用户区分同步类型
+     * @param msg        同步信息描述,用户区分同步类型
      */
     private User syncUserInfo(User user, String noEncryPwd, final String msg, App otherApp) {
         List<App> apps = appService.findDefaultUseApp();
@@ -930,33 +971,35 @@ public class UserServiceImpl implements UserService {
 
     /**
      * 同步信息到指定应用
+     *
      * @param formData 同步数据
-     * @param msg 同步信息
-     * @param apps 需要同步的应用
+     * @param msg      同步信息
+     * @param apps     需要同步的应用
      */
     private void syncUserInfo(final Map<String, Object> formData, final String msg, List<App> apps) {
-       for (final App app : apps) {
-           executorService.execute(new Runnable() {
-               @Override
-               public void run() {
-                   String url = app.getBackUserUrl();
-                   if (StringUtils.isEmpty(url)) {
-                       return;
-                   }
-                   HttpUtil.ResponseWrap res;
-                   try {
-                       res = HttpUtil.doPost(url, formData, 10000);
-                       if (!res.isSuccess()) {
-                           SyncLog syncLog = syncLogger.error(app.getUid(), msg + ",同步用户信息失败", JSON.toJSONString(formData), res.getContent());
-                           SyncFail.add(syncLog.getId(), formData, url, app.getUid());
-                       } else {
-                           syncLogger.info(app.getUid(), msg + ",同步用户信息成功", JSON.toJSONString(formData));
-                       }
-                   } catch (Exception e) {
-                       syncLogger.error(app.getUid(), msg + ",同步用户信息失败", JSON.toJSONString(formData), e.getMessage());
-                   }
-               }
-           });
-       }
+        for (final App app : apps) {
+            executorService.execute(new Runnable() {
+                @Override
+                public void run() {
+                    String url = app.getBackUserUrl();
+                    if (StringUtils.isEmpty(url)) {
+                        return;
+                    }
+                    HttpUtil.ResponseWrap res;
+                    try {
+                        url = "http://127.0.0.1:28810/api/public/user";
+                        res = HttpUtil.doPost(url, formData, 10000);
+                        if (!res.isSuccess()) {
+                            SyncLog syncLog = syncLogger.error(app.getUid(), msg + ",同步用户信息失败", JSON.toJSONString(formData), res.getContent());
+                            SyncFail.add(syncLog.getId(), formData, url, app.getUid());
+                        } else {
+                            syncLogger.info(app.getUid(), msg + ",同步用户信息成功", JSON.toJSONString(formData));
+                        }
+                    } catch (Exception e) {
+                        syncLogger.error(app.getUid(), msg + ",同步用户信息失败", JSON.toJSONString(formData), e.getMessage());
+                    }
+                }
+            });
+        }
     }
 }

+ 54 - 6
sso-server/src/main/java/com/uas/sso/util/CountUtils.java

@@ -3,6 +3,9 @@ package com.uas.sso.util;
 import com.uas.sso.exception.VisibleError;
 import com.uas.sso.i.CountCallBack;
 
+import java.sql.Timestamp;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
 import java.util.Calendar;
 import java.util.Date;
 
@@ -15,6 +18,7 @@ public class CountUtils {
 
     /**
      * 获取当前月的数量
+     *
      * @param countCallBack 用于给调用者自定义统计方法
      * @return
      */
@@ -29,6 +33,7 @@ public class CountUtils {
 
     /**
      * 获取上个月的数量
+     *
      * @param countCallBack 用于给调用者自定义统计方法
      * @return
      */
@@ -43,16 +48,13 @@ public class CountUtils {
 
     /**
      * 获取上个月的数量
+     *
      * @param countCallBack 用于给调用者自定义统计方法
      * @return
      */
     public static <T> T countInCurrentWeek(CountCallBack<T> countCallBack) {
-        Date date = new Date();
-        if (date == null) {
-            throw new VisibleError("获取当前时间失败");
-        }
         Calendar start = Calendar.getInstance();
-        start.setTime(date);
+        start.setTime(todayStartTime());
         int dayofweek = start.get(Calendar.DAY_OF_WEEK);
         if (dayofweek == 1) {
             dayofweek += 7;
@@ -60,7 +62,53 @@ public class CountUtils {
         start.add(Calendar.DATE, 2 - dayofweek);
         Calendar end = Calendar.getInstance();
         end.setTime(start.getTime());
-        end.add(Calendar.DAY_OF_WEEK, 6);
+        end.add(Calendar.DAY_OF_WEEK, 7);
+        return countCallBack.countByTime(start, end);
+    }
+
+    public static <T> T countInToday(CountCallBack<T> countCallBack) {
+        Calendar start = Calendar.getInstance();
+        start.setTime(todayStartTime());
+        Calendar end = Calendar.getInstance();
+        end.setTime(todayEndTime());
+        return countCallBack.countByTime(start, end);
+    }
+
+    public static <T> T countInYesterday(CountCallBack<T> countCallBack) {
+        Calendar start = Calendar.getInstance();
+        start.setTime(todayStartTime());
+        //获取当天的开始时间-24小时=昨天的开始时间
+        start.add(Calendar.HOUR_OF_DAY, -24);
+        Calendar end = Calendar.getInstance();
+        end.setTime(todayEndTime());
+        //获取当天的结束时间-24小时=昨天的结束时间
+        end.add(Calendar.HOUR_OF_DAY, -24);
         return countCallBack.countByTime(start, end);
     }
+
+    private static Date todayStartTime() {
+        Calendar todayStart = Calendar.getInstance();
+        todayStart.set(Calendar.HOUR_OF_DAY, 0);
+        todayStart.set(Calendar.MINUTE, 0);
+        todayStart.set(Calendar.SECOND, 0);
+        todayStart.set(Calendar.MILLISECOND, 0);
+        return todayStart.getTime();
+    }
+
+    private static Date todayEndTime() {
+        Calendar todayEnd = Calendar.getInstance();
+        todayEnd.set(Calendar.HOUR_OF_DAY, 23);
+        todayEnd.set(Calendar.MINUTE, 59);
+        todayEnd.set(Calendar.SECOND, 59);
+        todayEnd.set(Calendar.MILLISECOND, 999);
+        return todayEnd.getTime();
+    }
+
+    private static Date changeToDate(String input) throws ParseException {
+        String date = input;
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        Date time = simpleDateFormat.parse(date);
+        return new Timestamp(time.getTime());
+    }
+
 }