baibx il y a 2 mois
Parent
commit
5febfb45fe

+ 14 - 0
com.sharemao.web.appserver/src/main/java/com/sharemao/app/ctrl/AppUserCtrl.java

@@ -379,6 +379,20 @@ public class AppUserCtrl {
379 379
 		return new JsonView(result, msg, code);
380 380
 	}
381 381
 
382
+	@Path("/updphone.do")
383
+	public JsonView updphone(Context context) {
384
+		String lastAccessUrl = context.getRequest().getRequestURL() + "?" + context.getRequest().getQueryString();
385
+		logger.info("请求地址:>>{" + lastAccessUrl + "}");
386
+		Map<String, String> para = context.getParas();
387
+		// 获取返回结果
388
+		Map<String, Object> result = service.updphone(para);
389
+		String msg = result.get("msg").toString();
390
+		int code = Integer.parseInt(String.valueOf(result.get("code")));
391
+		result.remove("msg");
392
+		result.remove("code");
393
+		return new JsonView(result, msg, code);
394
+	}
395
+
382 396
 	/**
383 397
 	 * 微信用户注销接口
384 398
 	 * @param context

+ 44 - 2
com.sharemao.web.appserver/src/main/java/com/sharemao/app/ctrl/PackageCtrl.java

@@ -328,5 +328,47 @@ public class PackageCtrl {
328 328
 		result.remove("code");
329 329
 		return new JsonView(result, msg, code);
330 330
 	}
331
-	
332
-}
331
+
332
+    @Path(value = "/getCurUst.do")
333
+	public JsonView getCurUst(Context context) {
334
+		String lastAccessUrl = context.getRequest().getRequestURL() + "?" + context.getRequest().getQueryString();
335
+		log.info("请求地址:>>{" + lastAccessUrl + "}");
336
+		Map<String, String> para = context.getParas();
337
+		Map<String, Object> result = packService.getCurUst(para);
338
+		log.info("result>>>>>>>>" + result);
339
+		String msg = result.get("msg").toString();
340
+		int code = Integer.parseInt(String.valueOf(result.get("code")));
341
+		result.remove("msg");
342
+		result.remove("code");
343
+		return new JsonView(result, msg, code);
344
+	}
345
+
346
+    @Path(value = "/getMyUst.do")
347
+	public JsonView getMyUst(Context context) {
348
+		String lastAccessUrl = context.getRequest().getRequestURL() + "?" + context.getRequest().getQueryString();
349
+		log.info("请求地址:>>{" + lastAccessUrl + "}");
350
+		Map<String, String> para = context.getParas();
351
+		Map<String, Object> result = packService.getMyUst(para);
352
+		log.info("result>>>>>>>>" + result);
353
+		String msg = result.get("msg").toString();
354
+		int code = Integer.parseInt(String.valueOf(result.get("code")));
355
+		result.remove("msg");
356
+		result.remove("code");
357
+		return new JsonView(result, msg, code);
358
+	}
359
+
360
+    @Path(value = "/getPkgsByDevId3.do")
361
+    public JsonView getPkgsByDevId3(Context context) {
362
+        String lastAccessUrl = context.getRequest().getRequestURL() + "?" + context.getRequest().getQueryString();
363
+        log.info("请求地址:>>{" + lastAccessUrl + "}");
364
+        Map<String, String> para = context.getParas();
365
+        // 获取返回结果
366
+        Map<String, Object> result = packService.getPkgsByDevid3(para);
367
+        String msg = result.get("msg").toString();
368
+        int code = Integer.parseInt(String.valueOf(result.get("code")));
369
+        result.remove("msg");
370
+        result.remove("code");
371
+        return new JsonView(result, msg, code);
372
+    }
373
+
374
+    }

+ 2 - 0
com.sharemao.web.appserver/src/main/java/com/sharemao/app/service/AppUserService.java

@@ -142,6 +142,8 @@ public interface AppUserService {
142 142
 	
143 143
 	public Map<String, Object> wxRegister2(Map<String, String> para);
144 144
 
145
+	public Map<String, Object> updphone(Map<String, String> para);
146
+
145 147
 	/**
146 148
 	 * 微信公众号注销登陆
147 149
 	 * @param para

+ 6 - 0
com.sharemao.web.appserver/src/main/java/com/sharemao/app/service/PackageService.java

@@ -90,4 +90,10 @@ public interface PackageService {
90 90
 	public Map<String, Object> getPkgByPkid(Map<String, String> para);
91 91
 
92 92
     public Map<String, Object> hasPkg(Map<String, String> para);
93
+
94
+    public Map<String, Object> getCurUst(Map<String, String> para);
95
+
96
+    public Map<String, Object> getMyUst(Map<String, String> para);
97
+
98
+    public Map<String, Object> getPkgsByDevid3(Map<String, String> para);
93 99
 }

+ 63 - 0
com.sharemao.web.appserver/src/main/java/com/sharemao/app/service/impl/AppUserServiceImpl.java

@@ -1284,6 +1284,69 @@ public class AppUserServiceImpl extends AppBaseService implements AppUserService
1284 1284
 		return record;
1285 1285
 	}
1286 1286
 
1287
+	public Map<String, Object> updphone(Map<String, String> para)
1288
+	{
1289
+		Map<String,Object> record = new HashMap<String, Object>();
1290
+		record.put("msg", "fail");
1291
+		int signRes = ProjectTools.devM3Sign(para);		//认证
1292
+		record.put("code", signRes);					//将认证结果写入record
1293
+
1294
+		if(signRes==0)
1295
+		{
1296
+			String	code = para.get("code");	//验证码
1297
+			String phone = para.get("phone");	//用户登录名(手机号)
1298
+			String id = para.get("id");
1299
+			String orgid=para.get("oid");
1300
+			String devid=para.get("devid");
1301
+
1302
+			logger.info("code="+code+",phone="+phone+",id="+id+",devid="+devid);
1303
+
1304
+			if(ProjectTools.isEmpty(phone) || ProjectTools.isEmpty(devid)  || ProjectTools.isEmpty(id))
1305
+			{
1306
+				record.put("msg", "缺少参数");
1307
+				record.put("code", 4);
1308
+				return record;
1309
+			}
1310
+
1311
+			//如果是znz不需要短信验证
1312
+			if( !code.equals("znz"))
1313
+			{
1314
+				if(!ProjectConstants.smsCodeMap.containsKey(phone))
1315
+				{
1316
+					//没有获取到验证码,返回验证码错误信息5
1317
+					record.put("code", 5);
1318
+					record.put("msg", "验证码错误!");
1319
+					return record;
1320
+				}
1321
+				String code2 = ProjectConstants.smsCodeMap.get(phone).getRadCode();
1322
+				long time = ProjectConstants.smsCodeMap.get(phone).getCrtTm();
1323
+				long nowTime = System.currentTimeMillis() - ProjectConstants.overTime;	//计算两分钟以前的时间,判断验证码是否超时
1324
+				if(!code.equals(code2))
1325
+				{
1326
+					//判断验证码是否正确,错误返回5
1327
+					record.put("code", 5);
1328
+					record.put("msg", "验证码错误!");
1329
+					return record;
1330
+				}
1331
+				if(time<nowTime)
1332
+				{
1333
+					//验证码超时,返回6
1334
+					record.put("code", 6);
1335
+					record.put("msg", "验证码超时,请重新获取!");
1336
+					ProjectConstants.smsCodeMap.remove(phone);
1337
+					return record;
1338
+				}
1339
+			}
1340
+
1341
+            String defSql = "UPDATE appuser SET phonenum = '"+phone+"' WHERE id = '"+id+"'";
1342
+            baseDao.excuSql(defSql);
1343
+
1344
+			record.put("msg", "OK");
1345
+			ProjectConstants.smsCodeMap.remove(phone);
1346
+		}
1347
+		return record;
1348
+	}
1349
+
1287 1350
 	@Override
1288 1351
 	public Map<String, Object> wxLogout(Map<String, String> para) 
1289 1352
 	{

+ 236 - 0
com.sharemao.web.appserver/src/main/java/com/sharemao/app/service/impl/PackageServiceImpl.java

@@ -1,8 +1,11 @@
1 1
 package com.sharemao.app.service.impl;
2 2
 
3
+import java.text.DecimalFormat;
4
+import java.text.ParseException;
3 5
 import java.text.SimpleDateFormat;
4 6
 import java.time.LocalDate;
5 7
 import java.time.format.DateTimeFormatter;
8
+import java.time.temporal.ChronoUnit;
6 9
 import java.util.ArrayList;
7 10
 import java.util.Date;
8 11
 import java.util.HashMap;
@@ -1744,4 +1747,237 @@ public class PackageServiceImpl extends AppBaseService implements PackageService
1744 1747
         return record;
1745 1748
     }
1746 1749
 
1750
+    @Override
1751
+    public Map<String, Object> getCurUst(Map<String, String> para)
1752
+    {
1753
+        Map<String, Object> record = new HashMap<String, Object>();
1754
+        record.put("msg", "fail");
1755
+        int signRes = ProjectTools.devM3Sign(para);	// 签名
1756
+        record.put("code", signRes);
1757
+//		if (signRes != 0)
1758
+//			return record;
1759
+
1760
+        String devid = para.get("devid");
1761
+        if (Tools.isEmpty(devid)) {
1762
+            record.put("code", 4);
1763
+            record.put("msg", "请求错误");	//缺少参数
1764
+            return record;
1765
+        }
1766
+
1767
+        String uusql = "SELECT ust.remain,pkvalue,ust.invalid,packid"
1768
+                + "	 FROM usersuit ust "
1769
+                + "	WHERE ust.packid>1 and ust.devid = '"+devid+"' AND ust.invalid>"+DateTimeUtil.longtime()
1770
+                +" AND ust.effect<"+DateTimeUtil.longtime()
1771
+                + " ORDER BY ust.crttm desc ";
1772
+        logger.info(uusql);
1773
+        List<Map<String, Object>> pkgLst = baseDao.getMapList(uusql);
1774
+        record.put("total", "0G");
1775
+        record.put("usevalue", "0G");
1776
+        record.put("remainvalue", "0G");
1777
+        record.put("day", 0);
1778
+        if (pkgLst!=null && !pkgLst.isEmpty()) {
1779
+            try {
1780
+                Map<String, Object> map = pkgLst.get(0);
1781
+                String invalid = String.valueOf(map.get("invalid"));
1782
+                String remain = String.valueOf(map.get("remain"));
1783
+                String pkvalue = String.valueOf(map.get("pkvalue"));
1784
+                String packid = String.valueOf(map.get("packid"));
1785
+                if (Tools.isEmpty(pkvalue)) {
1786
+                    String psql="select from package where id="+packid;
1787
+                    List<Map<String, Object>> pkgLst2 = baseDao.getMapList(psql);
1788
+                    pkvalue=String.valueOf(pkgLst2.get(0).get("pkvalue"));
1789
+                }
1790
+                long total = (long) (Double.parseDouble(pkvalue) / 1024);
1791
+                long remainvalue = (long) (Double.parseDouble(remain) / 1024);
1792
+                if (remainvalue<=0){
1793
+                    record.put("show", "buyPkg");
1794
+                }
1795
+                long usevalue = total-remainvalue;
1796
+                record.put("total", total +"G");
1797
+                record.put("usevalue", usevalue +"G");
1798
+                record.put("remainvalue", remainvalue +"G");
1799
+                LocalDate now = LocalDate.now();
1800
+                LocalDate invalidDate = LocalDate.parse(invalid, DateTimeFormatter.ofPattern("yyyyMMddHHmmss"));
1801
+                long day = ChronoUnit.DAYS.between(now, invalidDate);
1802
+                record.put("day", day);
1803
+            } catch (NumberFormatException e) {
1804
+                Tools.getExceptionMessage(e);
1805
+            }
1806
+        } else {
1807
+            record.put("show", "buyPkg");
1808
+        }
1809
+
1810
+        record.put("msg", "OK");
1811
+        return record;
1812
+    }
1813
+
1814
+    @Override
1815
+    public Map<String, Object> getMyUst(Map<String, String> para)
1816
+    {
1817
+        Map<String, Object> record = new HashMap<String, Object>();
1818
+        record.put("msg", "fail");
1819
+        int signRes = ProjectTools.devM3Sign(para);	// 签名
1820
+        record.put("code", signRes);
1821
+//		if (signRes != 0)
1822
+//			return record;
1823
+
1824
+        String devid = para.get("devid");
1825
+        if (Tools.isEmpty(devid)) {
1826
+            record.put("code", 4);
1827
+            record.put("msg", "请求错误");	//缺少参数
1828
+            return record;
1829
+        }
1830
+
1831
+        String uusql = "SELECT ust.effect,ust.invalid,pkg.pkname"
1832
+                + "	 FROM usersuit ust left join packageview pkg on ust.packid=pkg.pkid"
1833
+                + "	WHERE ust.packid>1 and ust.devid = '"+devid+"'"
1834
+                + " ORDER BY ust.invalid  ";
1835
+        logger.info(uusql);
1836
+        List<Map<String, Object>> pkgLst = baseDao.getMapList(uusql);
1837
+        if (pkgLst==null){
1838
+            pkgLst= new ArrayList<Map<String, Object>>();
1839
+        }
1840
+        for (Map<String, Object> map : pkgLst) {
1841
+            map.put("effectDate", ProjectTools.timeInt2Date(String.valueOf(map.get("effect"))));
1842
+            map.put("invalidDate", ProjectTools.timeInt2Date(String.valueOf(map.get("invalid"))));
1843
+        }
1844
+        record.put("msg", "OK");
1845
+        record.put("pkgs", pkgLst);
1846
+        return record;
1847
+    }
1848
+
1849
+    @Override
1850
+    public Map<String, Object> getPkgsByDevid3(Map<String, String> para) {
1851
+
1852
+        Map<String, Object> record = new HashMap<String, Object>();
1853
+        record.put("msg", "fail");
1854
+        int signRes = ProjectTools.devM3Sign(para); 	// 认证
1855
+        record.put("code", signRes); 	// 写入认证返回值
1856
+//		if (signRes > 0)
1857
+//			result.add(record);
1858
+//		else
1859
+        {
1860
+            String areaid = para.get("areaid");
1861
+            String orgid = para.get("oid");
1862
+            String devid = para.get("devid");
1863
+            if(Tools.isEmpty(devid) || "null".equals(devid))
1864
+            {
1865
+                record.put("code", 9);
1866
+                record.put("msg", "设备编号不能为空");
1867
+                return record;
1868
+            }
1869
+//			String devgrpid=getDevGrpId(devid);
1870
+
1871
+            if(Tools.isEmpty(areaid))
1872
+                areaid="100000";
1873
+
1874
+//            int packType=getPKTypeByDevid(devid,devgrpid);
1875
+            int packType=getDevTypeId(devid);
1876
+
1877
+            String sql =  "SELECT pkv.pkid AS id,pkg.pkgValue, pkv.pkname AS pkgName, pkv.pkgDesc, pkv.price,pkv.reorder,pkg.`invalidtime` AS expiryDay,pkg.img,pkv.protext,pkv.title,pkv.color,pkv.paytype "
1878
+                    + "	FROM packageview pkv LEFT JOIN package pkg ON pkv.`pkid` = pkg.`id` WHERE pktype=16 AND pkv.issale=1 AND pkv.orgid= "+ orgid;
1879
+
1880
+            sql += " ORDER BY pkv.reorder ASC";
1881
+            logger.info(sql);
1882
+            List<Map<String, Object>> pkgLst = baseDao.getMapList(sql);
1883
+            for (Map<String, Object> map : pkgLst) {
1884
+                DecimalFormat df = new DecimalFormat("#.##");
1885
+                map.put("price", df.format(Double.parseDouble(String.valueOf(map.get("price")))/1000));
1886
+                map.put("ts", CodecUtil.str2md5("zengnz"+map.get("price").toString()));
1887
+                String expiryDay = String.valueOf(map.get("expiryDay"));
1888
+                String expiryDayStr = "";
1889
+                String invalidDay = "";
1890
+                Date nowDate = new Date();
1891
+                switch (expiryDay) {
1892
+                    case "0":
1893
+                        expiryDayStr= "1 天";
1894
+                        nowDate = DateTimeUtil.addDay(nowDate, 1);
1895
+                        break;
1896
+                    case "1":
1897
+                        expiryDayStr= "30 天";
1898
+                        nowDate = ProjectTools.addMonth(nowDate, 1);
1899
+                        break;
1900
+                    case "2":
1901
+                        expiryDayStr= "90 天";
1902
+                        nowDate = ProjectTools.addMonth(nowDate, 3);
1903
+                        break;
1904
+                    case "3":
1905
+                        expiryDayStr= "半年";
1906
+                        nowDate = ProjectTools.addMonth(nowDate, 6);
1907
+                        break;
1908
+                    case "4":
1909
+                        expiryDayStr= "1 年";
1910
+                        nowDate = ProjectTools.addMonth(nowDate, 12);
1911
+                        break;
1912
+                    case "5":
1913
+                        expiryDayStr= "两年";
1914
+                        nowDate = ProjectTools.addMonth(nowDate, 24);
1915
+                        break;
1916
+                    case "6":
1917
+                        expiryDayStr= "7 天";
1918
+                        nowDate = DateTimeUtil.addDay(nowDate, 7);
1919
+                        break;
1920
+                    case "7":
1921
+                        expiryDayStr= "3 年";
1922
+                        nowDate = ProjectTools.addMonth(nowDate, 36);
1923
+                        break;
1924
+                    case "8":
1925
+                        expiryDayStr= "3 天";
1926
+                        nowDate = DateTimeUtil.addDay(nowDate, 3);
1927
+                        break;
1928
+                    case "9":
1929
+                        expiryDayStr= "两天";
1930
+                        nowDate = DateTimeUtil.addDay(nowDate, 2);
1931
+                        break;
1932
+                    case "11":
1933
+                        expiryDayStr= "7 个月";
1934
+                        nowDate = ProjectTools.addMonth(nowDate, 7);
1935
+                        break;
1936
+                    case "12":
1937
+                        expiryDayStr= "14 个月";
1938
+                        nowDate = ProjectTools.addMonth(nowDate, 14);
1939
+                        break;
1940
+                    case "18":
1941
+                        expiryDayStr= "15 个月";
1942
+                        nowDate = ProjectTools.addMonth(nowDate, 15);
1943
+                        break;
1944
+                    case "19":
1945
+                        expiryDayStr= "18 个月";
1946
+                        nowDate = ProjectTools.addMonth(nowDate, 18);
1947
+                        break;
1948
+                    case "13":
1949
+                        expiryDayStr= "两年半";
1950
+                        nowDate = ProjectTools.addMonth(nowDate, 28);
1951
+                        break;
1952
+                    case "14":
1953
+                        expiryDayStr= "3 年 8 个月";
1954
+                        nowDate = ProjectTools.addMonth(nowDate, 44);
1955
+                        break;
1956
+                    case "15":
1957
+                        expiryDayStr= "4 年";
1958
+                        nowDate = ProjectTools.addMonth(nowDate, 48);
1959
+                        break;
1960
+                    case "16":
1961
+                        expiryDayStr= "5 年";
1962
+                        nowDate = ProjectTools.addMonth(nowDate, 60);
1963
+                        break;
1964
+                    case "17":
1965
+                        expiryDayStr= "6 年";
1966
+                        nowDate = ProjectTools.addMonth(nowDate, 72);
1967
+                        break;
1968
+                }
1969
+                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
1970
+                invalidDay = sdf.format(nowDate);
1971
+                map.put("expiryDay", expiryDayStr);
1972
+                map.put("invalidDay", invalidDay);
1973
+                String pkvalStr=String.valueOf(df.format(Double.parseDouble(String.valueOf(map.get("pkgValue")))/1024));
1974
+                map.put("pkgValue", pkvalStr);
1975
+            }
1976
+
1977
+            record.put("msg", "OK");
1978
+            record.put("list", pkgLst);
1979
+
1980
+        }
1981
+        return record;
1982
+    }
1747 1983
 }