From a07bb243714eac69322659a97c35364d52181f24 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=83=A1=E6=89=BF=E6=B7=9E?= <644344980@qq.com>
Date: Tue, 8 Aug 2017 08:18:21 +0800
Subject: [PATCH 1/8] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E4=B8=80=E9=94=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/main/webapp/WEB-INF/view/web/index/forget.html   | 5 ++++-
 src/main/webapp/WEB-INF/view/web/index/register.html | 2 +-
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/main/webapp/WEB-INF/view/web/index/forget.html b/src/main/webapp/WEB-INF/view/web/index/forget.html
index 848e24c..32945ec 100644
--- a/src/main/webapp/WEB-INF/view/web/index/forget.html
+++ b/src/main/webapp/WEB-INF/view/web/index/forget.html
@@ -26,9 +26,12 @@
 	                <input type="text" name="authCode"  class="u-field-input u-field-input-auth" placeholder="请输入验证码" maxlength="11">
 	                <input class="u-field-send" type="button" style="border:none" onclick="sendPasswordBackSms()" id="authCode" value="获取验证码">
 	            </div>
-                <div class="u-btn" style="color:#fff">
+                <div class="u-btn" style="color:#fff;margin-bottom:10px;">
                     <div class="u-field-send" onclick="resetPass()">重置密码</div>
                 </div>
+                <div style="text-align:center">
+                	<a href="#(contextPath)/" style="color:grey">返回登录</a>
+                </div>
             </div>
         </div>
     </div>
diff --git a/src/main/webapp/WEB-INF/view/web/index/register.html b/src/main/webapp/WEB-INF/view/web/index/register.html
index 25f55a4..e92877b 100644
--- a/src/main/webapp/WEB-INF/view/web/index/register.html
+++ b/src/main/webapp/WEB-INF/view/web/index/register.html
@@ -35,7 +35,7 @@
             <div class="u-btn" onclick="reg()">
                 <div class="u-btn-register"></div>
             </div>
-            <a class="" href="#(contextPath)/index">已有账号,立即登录</a>
+            <a style="color:grey" href="#(contextPath)/index" >已有账号,立即登录</a>
         </div>
     </div>
 </div>
-- 
Gitee


From 3f610004e76eccc565ea1a3df728a59dc4e3875e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=83=A1=E6=89=BF=E6=B7=9E?= <644344980@qq.com>
Date: Tue, 8 Aug 2017 08:25:38 +0800
Subject: [PATCH 2/8] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E6=95=B4=E6=94=B9?=
 =?UTF-8?q?=E4=B8=80=E9=94=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/main/java/com/tianpengtech/front/web/task/TaskService.java | 2 +-
 src/main/webapp/WEB-INF/view/web/task/task_add_new.html        | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/tianpengtech/front/web/task/TaskService.java b/src/main/java/com/tianpengtech/front/web/task/TaskService.java
index 3f1adcc..7b1a408 100644
--- a/src/main/java/com/tianpengtech/front/web/task/TaskService.java
+++ b/src/main/java/com/tianpengtech/front/web/task/TaskService.java
@@ -78,7 +78,7 @@ public class TaskService {
     	Validator validator = new Validator();
     	int status = (auth==null)?Authenticate.STATUS_FAILURE:auth.getInt(Authenticate.STATUS);
     	validator.addRule(new NumbericMustBeEqual(status, Authenticate.STATUS_SUCCESS, "当前用户资质认证审核未通过,不允许提交任务"));
-    	validator.addRule(new StringLengthBetween(task.getStr(Task.TASK_TITLE),"任务标题不能为空",1,30));
+    	validator.addRule(new StringLengthBetween(task.getStr(Task.TASK_TITLE),"任务标题只能是1-15个字符",1,15));
     	validator.addRule(new StringMustBeRequired(DateUtils.formateData(start, DateUtils.YYMMdd_FORMAT),"任务开始时间不能为空"));
     	validator.addRule(new StringMustBeRequired(DateUtils.formateData(end,DateUtils.YYMMdd_FORMAT),"任务结束时间不能为空"));
     	validator.addRule(new NumbericMustBeGreaterEqualThan(end.getTime(),start.getTime(),"任务结束日期必须在开始日期之后"));
diff --git a/src/main/webapp/WEB-INF/view/web/task/task_add_new.html b/src/main/webapp/WEB-INF/view/web/task/task_add_new.html
index 85eb6dc..045596c 100644
--- a/src/main/webapp/WEB-INF/view/web/task/task_add_new.html
+++ b/src/main/webapp/WEB-INF/view/web/task/task_add_new.html
@@ -22,7 +22,7 @@
                 <div class="u-row-title">任务标题:</div>
                 <div class="u-row-box">
                     <div class="u-row-box-input">
-                        <input name="task.task_title" placeholder="请输入任务标题信息,最多30个字符" class="u-row-cell-input" id="task_title" maxlength="20" />
+                        <input name="task.task_title" placeholder="请输入任务标题信息,最多15个字符" class="u-row-cell-input" id="task_title" maxlength="15" />
                     </div>
                 </div>
             </div>
-- 
Gitee


From 9adda1931a28eb0c391a7bb7267da88dc7a9b1f3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=83=A1=E6=89=BF=E6=B7=9E?= <644344980@qq.com>
Date: Tue, 8 Aug 2017 08:35:07 +0800
Subject: [PATCH 3/8] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E8=BF=B7=E5=A4=B1?=
 =?UTF-8?q?=E5=9B=BE=E7=89=87?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/main/webapp/assets/front/web/css/main.css  | 2 +-
 src/main/webapp/assets/front/web/css/main.scss | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/main/webapp/assets/front/web/css/main.css b/src/main/webapp/assets/front/web/css/main.css
index beb7daa..aea40d0 100644
--- a/src/main/webapp/assets/front/web/css/main.css
+++ b/src/main/webapp/assets/front/web/css/main.css
@@ -1370,7 +1370,7 @@ ul li {
               width: 24px;
               height: 24px; }
             .c-article .g-passport-base-info .m-card .m-info .m-mid .m-row .u-key .u-icon-company {
-              background: url("../resources/icon-mc.jpg") center/contain no-repeat; }
+              background: url("../resources/icon-mc.png") center/contain no-repeat; }
             .c-article .g-passport-base-info .m-card .m-info .m-mid .m-row .u-key .u-icon-address {
               background: url("../resources/icon-dz.jpg") center/contain no-repeat; }
             .c-article .g-passport-base-info .m-card .m-info .m-mid .m-row .u-key .u-icon-name {
diff --git a/src/main/webapp/assets/front/web/css/main.scss b/src/main/webapp/assets/front/web/css/main.scss
index 544c09d..243a146 100644
--- a/src/main/webapp/assets/front/web/css/main.scss
+++ b/src/main/webapp/assets/front/web/css/main.scss
@@ -1690,7 +1690,7 @@ ul li {
                 height:24px;
               }
               .u-icon-company{
-                background: url("../resources/icon-mc.jpg") center/contain no-repeat;
+                background: url("../resources/icon-mc.png") center/contain no-repeat;
               }
               .u-icon-address{
                 background: url("../resources/icon-dz.jpg") center/contain no-repeat;
-- 
Gitee


From 3cd7302a2ec42de5e571817f1334a997fd336783 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=83=A1=E6=89=BF=E6=B7=9E?= <644344980@qq.com>
Date: Wed, 9 Aug 2017 06:35:19 +0800
Subject: [PATCH 4/8] =?UTF-8?q?=E6=9B=B4=E6=8D=A2=E6=89=8B=E6=9C=BA?=
 =?UTF-8?q?=E7=9F=AD=E4=BF=A1=E6=A8=A1=E6=9D=BF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../tianpengtech/common/util/SendSmsMsg.java   | 12 +++++++++---
 .../mobile/login/MobileLoginController.java    |  3 ++-
 .../front/web/passport/PassportService.java    |  6 +++---
 .../web/passport/PassportWebController.java    |  3 ++-
 src/main/resources/sms.properties              | 18 ++++++++++--------
 5 files changed, 26 insertions(+), 16 deletions(-)

diff --git a/src/main/java/com/tianpengtech/common/util/SendSmsMsg.java b/src/main/java/com/tianpengtech/common/util/SendSmsMsg.java
index 3fe46d7..52d2bff 100644
--- a/src/main/java/com/tianpengtech/common/util/SendSmsMsg.java
+++ b/src/main/java/com/tianpengtech/common/util/SendSmsMsg.java
@@ -33,9 +33,15 @@ public class SendSmsMsg {
     private static final String domain = "dysmsapi.aliyuncs.com";
     //    static final String accessKeyId = "LTAIvQPdztlGanRB";
 //    static final String accessKeySecret = "KSxwLrQR7BdijGWYzGv21T3HTwTvMO";
+    
+    
+    public static final String TEMPLATE_REG_SMS="SMS_76595520";//发送注册验证码
+    public static final String TEMPLATE_PASS_BACK_SMS="SMS_76595518";//忘记密码验证码
+    
+    
     private static final String accessKeyId = prop.get("accessKeyId");
     private static final String accessKeySecret = prop.get("accessKeySecret");
-    public static boolean send(String mobile,String code) {
+    public static boolean send(String mobile,String code,String templateCode) {
         IClientProfile profile = DefaultProfile.getProfile("cn-beijing", accessKeyId, accessKeySecret);
         try {
             DefaultProfile.addEndpoint("cn-beijing", "cn-beijing", product, domain);
@@ -49,8 +55,8 @@ public class SendSmsMsg {
 //        request.setSignName("铂数网络");
 //        request.setTemplateCode("SMS_76595520");
         request.setSignName(prop.get("signName"));
-        request.setTemplateCode(prop.get("templateCode"));
-        request.setTemplateParam("{\"code\":\""+code+"\"}");
+        request.setTemplateCode(templateCode);
+        request.setTemplateParam("{\"code\":\""+code+"\",\"product\":\"象漾\"}");
         SendSmsResponse sendSmsResponse = null;
         try {
             sendSmsResponse = acsClient.getAcsResponse(request);
diff --git a/src/main/java/com/tianpengtech/front/mobile/login/MobileLoginController.java b/src/main/java/com/tianpengtech/front/mobile/login/MobileLoginController.java
index 4ac62cd..10dd8d1 100644
--- a/src/main/java/com/tianpengtech/front/mobile/login/MobileLoginController.java
+++ b/src/main/java/com/tianpengtech/front/mobile/login/MobileLoginController.java
@@ -6,6 +6,7 @@ import com.jfinal.kit.Ret;
 import com.jfinal.kit.StrKit;
 import com.jfinal.plugin.activerecord.tx.Tx;
 import com.tianpengtech.common.util.IpKit;
+import com.tianpengtech.common.util.SendSmsMsg;
 import com.tianpengtech.front.mobile.common.intercepter.MobileRequestInterceptor;
 import com.tianpengtech.front.mobile.common.intercepter.TokenCheckInterceptor;
 import com.tianpengtech.front.mobile.common.util.R;
@@ -60,7 +61,7 @@ public class MobileLoginController extends BaseController {
             return;
         }
         String ip = IpKit.getRealIp(getRequest());
-        Ret ret=passportService.sendAuthCode(mobile,ip);
+        Ret ret=passportService.sendAuthCode(mobile,ip,SendSmsMsg.TEMPLATE_REG_SMS);
         if (ret.isOk()){
             R r=R.ok("发送成功");
             r.p("code",ret.get("code"));
diff --git a/src/main/java/com/tianpengtech/front/web/passport/PassportService.java b/src/main/java/com/tianpengtech/front/web/passport/PassportService.java
index dd622c0..9751b6a 100644
--- a/src/main/java/com/tianpengtech/front/web/passport/PassportService.java
+++ b/src/main/java/com/tianpengtech/front/web/passport/PassportService.java
@@ -93,7 +93,7 @@ public class PassportService {
     /**
      * 发送手机验证码
      */
-    public Ret sendAuthCode(String mobile,String ip){
+    public Ret sendAuthCode(String mobile,String ip,String templateCode){
         //防止恶意发送验证码
         //缓存过期时间为5分钟, 5分钟内超过5次就不允许发送了
         Integer count=CacheKit.get(User.AUTH_CODE_CACHENAME,ip+mobile+"_count");
@@ -110,7 +110,7 @@ public class PassportService {
         CacheKit.put(User.AUTH_CODE_CACHENAME,ip+mobile,code);
         if (SendSmsMsg.isSend){
             //发送短信验证码
-            if (SendSmsMsg.send(mobile,code+"")){
+            if (SendSmsMsg.send(mobile,code+"",templateCode)){
                 return Ret.ok();
             }else{
                 return Ret.fail();
@@ -147,7 +147,7 @@ public class PassportService {
      */
     public Ret sendAuthCodeByPasswordBack(String mobile,String ip,Integer user_type){
         if (isMobileExists(mobile,user_type)){
-            return sendAuthCode(mobile,ip);
+            return sendAuthCode(mobile,ip,SendSmsMsg.TEMPLATE_PASS_BACK_SMS);
         }else{
             return Ret.fail("msg","用户不存在");
         }
diff --git a/src/main/java/com/tianpengtech/front/web/passport/PassportWebController.java b/src/main/java/com/tianpengtech/front/web/passport/PassportWebController.java
index 8b3e001..f5add1c 100644
--- a/src/main/java/com/tianpengtech/front/web/passport/PassportWebController.java
+++ b/src/main/java/com/tianpengtech/front/web/passport/PassportWebController.java
@@ -14,6 +14,7 @@ import com.tianpengtech.common.model.user.User;
 import com.tianpengtech.common.util.IpKit;
 import com.tianpengtech.common.util.JsonUtil;
 import com.tianpengtech.common.util.QiNiuUtil;
+import com.tianpengtech.common.util.SendSmsMsg;
 import com.tianpengtech.front.web.common.constant.Page;
 import com.tianpengtech.front.web.common.controller.BaseController;
 import com.tianpengtech.front.web.common.interceptor.PassportInterceptor;
@@ -71,7 +72,7 @@ public class PassportWebController extends BaseController {
     public void sendAuthcode(){
         String ip = IpKit.getRealIp(getRequest());
         String mobile = getPara("mobile");
-        renderJson(srv.sendAuthCode(mobile,ip));
+        renderJson(srv.sendAuthCode(mobile,ip,SendSmsMsg.TEMPLATE_REG_SMS));
     }
     /**
      * 找回密码发送验证码
diff --git a/src/main/resources/sms.properties b/src/main/resources/sms.properties
index 52665bb..444a53c 100644
--- a/src/main/resources/sms.properties
+++ b/src/main/resources/sms.properties
@@ -3,14 +3,16 @@
 #apikey = d73376b0b813442a91c0337556e8d8b1
 #templateid = 16
 
-isSend = true
+
 #dev SMS config
-accessKeyId = LTAIYOrnhcUCJnPJ
-accessKeySecret = GcOxh9LGvb44StevmhPKV7I6elKV0d
-signName = \u516c\u56fd\u680b
-templateCode = SMS_82105038
+#accessKeyId = LTAIYOrnhcUCJnPJ
+#accessKeySecret = GcOxh9LGvb44StevmhPKV7I6elKV0d
+#signName = \u516c\u56fd\u680b
+#templateCode = SMS_82105038
 
-#accessKeyId = LTAIvQPdztlGanRB
-#accessKeySecret = KSxwLrQR7BdijGWYzGv21T3HTwTvMO
-#signName = \u94C2\u6570\u7F51\u7EDC
+
+isSend = true
+accessKeyId = LTAIvQPdztlGanRB
+accessKeySecret = KSxwLrQR7BdijGWYzGv21T3HTwTvMO
+signName = \u94C2\u6570\u7F51\u7EDC
 #templateCode = SMS_76595520
\ No newline at end of file
-- 
Gitee


From 4a82e549aec721b745cdd324934aeb56f88a50f1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=83=A1=E6=89=BF=E6=B7=9E?= <644344980@qq.com>
Date: Thu, 10 Aug 2017 06:57:32 +0800
Subject: [PATCH 5/8] =?UTF-8?q?=E4=BF=AE=E6=AD=A3tio=E5=85=B3=E9=97=AD?=
 =?UTF-8?q?=E5=BC=82=E5=B8=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../java/com/tianpengtech/common/plugin/im/ImStartPlugin.java    | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/main/java/com/tianpengtech/common/plugin/im/ImStartPlugin.java b/src/main/java/com/tianpengtech/common/plugin/im/ImStartPlugin.java
index 97ba993..dd3bb23 100644
--- a/src/main/java/com/tianpengtech/common/plugin/im/ImStartPlugin.java
+++ b/src/main/java/com/tianpengtech/common/plugin/im/ImStartPlugin.java
@@ -49,6 +49,7 @@ public class ImStartPlugin implements IPlugin{
 	@Override
 	public boolean stop() {
 		aioServer.stop();
+		System.exit(0);
 		return true;
 	}
 }
-- 
Gitee


From c46e2728a7f4ca6ffc30cb9f17be063ab0793d73 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=83=A1=E6=89=BF=E6=B7=9E?= <644344980@qq.com>
Date: Fri, 11 Aug 2017 07:21:46 +0800
Subject: [PATCH 6/8] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E6=95=B4=E6=94=B9?=
 =?UTF-8?q?=E6=84=8F=E8=A7=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../java/com/tianpengtech/common/model/fair/Fair.java     | 4 ++--
 .../java/com/tianpengtech/common/model/task/Task.java     | 2 +-
 .../front/web/common/interceptor/WebsiteInterceptor.java  | 6 ++++++
 .../tianpengtech/front/web/task/TaskWebController.java    | 1 +
 .../webapp/WEB-INF/view/web/main/platform_welcome.html    | 8 ++++----
 src/main/webapp/WEB-INF/view/web/task/task_detail.html    | 4 +++-
 src/main/webapp/WEB-INF/view/web/task/task_success.html   | 7 +++++--
 7 files changed, 22 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/tianpengtech/common/model/fair/Fair.java b/src/main/java/com/tianpengtech/common/model/fair/Fair.java
index 0f4e654..281f659 100644
--- a/src/main/java/com/tianpengtech/common/model/fair/Fair.java
+++ b/src/main/java/com/tianpengtech/common/model/fair/Fair.java
@@ -136,7 +136,7 @@ public class Fair extends AbstractBaseModel<Fair> {
 		BigDecimal cvs=fair.getBigDecimal("num");
 		long click=getClick();
 		double d=0;
-		if(fair.getBigDecimal("num")!=null){
+		if(fair.getBigDecimal("num")!=null&&click>0){
 			d=cvs.doubleValue()/click;
 		}
 		DecimalFormat df=(DecimalFormat) DecimalFormat.getInstance();
@@ -174,7 +174,7 @@ public class Fair extends AbstractBaseModel<Fair> {
 		BigDecimal cvs= new BigDecimal(0);
 		long click=getClick();
 		double d=0;
-		if(fair.getBigDecimal("num")!=null){
+		if(fair.getBigDecimal("num")!=null && click>0){
 			d = cvs.doubleValue()/click/getOrders();
 		}
 		DecimalFormat df=(DecimalFormat) DecimalFormat.getInstance();
diff --git a/src/main/java/com/tianpengtech/common/model/task/Task.java b/src/main/java/com/tianpengtech/common/model/task/Task.java
index ebbcba8..13827bf 100644
--- a/src/main/java/com/tianpengtech/common/model/task/Task.java
+++ b/src/main/java/com/tianpengtech/common/model/task/Task.java
@@ -176,7 +176,7 @@ public class Task extends AbstractBaseModel<Task> {
 	 * @return
 	 */
 	public List<Fair> getFairTop(){
-		String sql = "select fair.*,SUM(tw."+TaskWh.CLICK_NUM+") cnum from "+TaskWh.dao.tableName()+" tw left join "+Fair.dao.tableName()+" fair on fair."+Fair.ID+"=tw."+TaskWh.WH_ID+" where "+TaskWh.TASK_ID+ "=? and tw."+TaskWh.DELETETAG+"="+TaskWh.DELETE_STATUS_NO+" GROUP BY "+TaskWh.WH_ID+" ORDER by SUM(tw."+TaskWh.CLICK_NUM+") desc LIMIT 6";
+		String sql = "select fair.*,SUM(tw."+TaskWh.CLICK_NUM+") cnum from "+TaskWh.dao.tableName()+" tw left join "+Fair.dao.tableName()+" fair on fair."+Fair.ID+"=tw."+TaskWh.WH_ID+" where "+TaskWh.TASK_ID+ "=? and tw."+TaskWh.DELETETAG+"="+TaskWh.DELETE_STATUS_NO+" GROUP BY "+TaskWh.WH_ID+" ORDER by SUM(tw."+TaskWh.CLICK_NUM+") desc LIMIT 3";
 		return Fair.dao.findByCache(Fair.FAIR_CACHE_NAME,TASK_CACHE_MAIN_FAIR_TOP_KEY+get(ID),sql,new Object[]{get(ID)});
 	}
 
diff --git a/src/main/java/com/tianpengtech/front/web/common/interceptor/WebsiteInterceptor.java b/src/main/java/com/tianpengtech/front/web/common/interceptor/WebsiteInterceptor.java
index 9c135f6..bd87bb0 100644
--- a/src/main/java/com/tianpengtech/front/web/common/interceptor/WebsiteInterceptor.java
+++ b/src/main/java/com/tianpengtech/front/web/common/interceptor/WebsiteInterceptor.java
@@ -2,6 +2,7 @@ package com.tianpengtech.front.web.common.interceptor;
 
 import com.jfinal.aop.Interceptor;
 import com.jfinal.aop.Invocation;
+import com.jfinal.core.Controller;
 
 /**
  * Templates constant intercept
@@ -11,5 +12,10 @@ public class WebsiteInterceptor implements Interceptor {
     public void intercept(Invocation i) {
         //todo set Website field to JF templates from web_config.properties
         i.invoke();
+        Controller controller = i.getController();
+        String host = controller.getRequest().getRemoteHost();
+        int port = controller.getRequest().getLocalPort();
+        controller.setAttr("host", host);
+        controller.setAttr("port", port);
     }
 }
diff --git a/src/main/java/com/tianpengtech/front/web/task/TaskWebController.java b/src/main/java/com/tianpengtech/front/web/task/TaskWebController.java
index ecea970..208fd9f 100644
--- a/src/main/java/com/tianpengtech/front/web/task/TaskWebController.java
+++ b/src/main/java/com/tianpengtech/front/web/task/TaskWebController.java
@@ -279,6 +279,7 @@ public class TaskWebController extends BaseController {
 		renderTemplate("h5_preview.html");
 	}
 	
+	@Clear(PassportInterceptor.class)
 	public void showH5(){
 		
 		int id = getParaToInt(Task.ID,GlobalConfigConstant.DEFAULT_VALUE_ZERO);
diff --git a/src/main/webapp/WEB-INF/view/web/main/platform_welcome.html b/src/main/webapp/WEB-INF/view/web/main/platform_welcome.html
index b8b8262..8b0bd08 100644
--- a/src/main/webapp/WEB-INF/view/web/main/platform_welcome.html
+++ b/src/main/webapp/WEB-INF/view/web/main/platform_welcome.html
@@ -94,7 +94,7 @@
                                 <i class="u-text">#(task.dateString)</i>
                             </div>
                         </div>
-                        <div class="u-btn" style="border-radius:3px;">
+                        <div class="u-btn" style="border-radius:3px;border: 1px solid #f97a5b;background-color: #f97a5b; ">
                             <div class="u-btn-progress"></div>
                             <div class="u-btn-text">#(task.status())...</div>
                         </div>
@@ -102,7 +102,7 @@
                     <ul class="u-member">
                         #for(fair : task.fairTop)
                         <li class="u-content" onclick="fairDetail('#(fair.id)')">
-                            <div class="u-head" style='background-image: url("#(contextPath)#(fair.photo)")'></div>
+                            <div class="u-head" style='background-image: url("#(contextPath)#(fair.photo)"); border-radius: 100%; box-shadow: #333 1px 1px 1px;'></div>
                             <div class="u-name">#(fair.name)</div>
                             <div class="u-data">
                                 <i class="u-data-icon"></i>
@@ -135,7 +135,7 @@
                                 <i class="u-text">#(task.dateString)</i>
                             </div>
                         </div>
-                        <div class="u-btn" style="border-radius:3px;">
+                        <div class="u-btn" style="border-radius:3px;border: 1px solid #f97a5b;background-color: #f97a5b;">
                             <div class="u-btn-progress"></div>
                             <div class="u-btn-text">#(task.status())...</div>
                         </div>
@@ -143,7 +143,7 @@
                     <ul class="u-member">
                         #for(fair : task.fairTop)
                         <li class="u-content" onclick="fairDetail('#(fair.id)')">
-                            <div class="u-head" style='background: url("#(contextPath)#(fair.photo)") center/cover no-repeat;'></div>
+                            <div class="u-head" style='background: url("#(contextPath)#(fair.photo)") center/cover no-repeat; border-radius: 100%;box-shadow: #333 1px 1px 1px;'></div>
                             <div class="u-name">#(fair.name)</div>
                             <div class="u-data">
                                 <i class="u-data-icon"></i>
diff --git a/src/main/webapp/WEB-INF/view/web/task/task_detail.html b/src/main/webapp/WEB-INF/view/web/task/task_detail.html
index 3d50b50..eafe60f 100644
--- a/src/main/webapp/WEB-INF/view/web/task/task_detail.html
+++ b/src/main/webapp/WEB-INF/view/web/task/task_detail.html
@@ -45,7 +45,9 @@
                         <div class="u-text-title">任务链接</div>
                         <div class="u-content">
                         #if(task.h5_type==2)
-                        	<a href="#(contextPath)/platform/task/viewH5?id=#(task.id)">预览页面</a>
+                        	<a href="#(contextPath)/platform/task/viewH5?id=#(task.id)">
+                        		#(host):#(port)#(contextPath)/platform/task/showH5?id=#(task.id)
+                        	</a>
                         #else
                         	当前任务暂无H5预览页面
                         #end
diff --git a/src/main/webapp/WEB-INF/view/web/task/task_success.html b/src/main/webapp/WEB-INF/view/web/task/task_success.html
index 9c0ab2d..e598126 100644
--- a/src/main/webapp/WEB-INF/view/web/task/task_success.html
+++ b/src/main/webapp/WEB-INF/view/web/task/task_success.html
@@ -10,7 +10,7 @@
                 <div class="u-task-icon"></div>
                 <div class="u-task-text">恭喜您成功创建任务!</div>
             </div>
-            <div class="m-task-card-column" style="margin-top:30px;">
+            <div class="m-task-card-column" style="margin-top:30px;padding:35px;">
                 <div class="u-title">基本信息</div>
                 <ul class="m-task-list">
                     <li class="m-task-cell">
@@ -32,7 +32,10 @@
                     #if(task.h5_type==2)
 	                    <li class="m-task-cell">
 	                        <div class="u-task-key">任务链接:</div>
-	                        <div class="u-task-value">#(task.task_url ?? "链接生成中")</div>
+	                        <div class="u-task-value">
+	                        	<a href="#(contextPath)/platform/task/showH5?id=#(task.id)" target="_blank">
+	                        	#(host):#(port)#(contextPath)/platform/task/showH5?id=#(task.id)</a>
+	                        </div>
 	                    </li>
                     #end
                     <li class="m-task-cell">
-- 
Gitee


From c63c002a6769357f90c58938f30d9ed9a5ea8ed0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=83=A1=E6=89=BF=E6=B7=9E?= <644344980@qq.com>
Date: Fri, 11 Aug 2017 08:09:07 +0800
Subject: [PATCH 7/8] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E6=95=B4=E6=94=B9?=
 =?UTF-8?q?=E6=84=8F=E8=A7=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../com/tianpengtech/common/model/task/Task.java     |  7 +++++++
 .../web/common/interceptor/WebsiteInterceptor.java   |  2 +-
 .../front/web/task/TaskWebController.java            |  1 +
 src/main/webapp/WEB-INF/view/web/task/showH5.html    | 12 ++++++++++++
 4 files changed, 21 insertions(+), 1 deletion(-)

diff --git a/src/main/java/com/tianpengtech/common/model/task/Task.java b/src/main/java/com/tianpengtech/common/model/task/Task.java
index 13827bf..24eeefe 100644
--- a/src/main/java/com/tianpengtech/common/model/task/Task.java
+++ b/src/main/java/com/tianpengtech/common/model/task/Task.java
@@ -170,6 +170,13 @@ public class Task extends AbstractBaseModel<Task> {
 		return num;
 	}
 
+	public String web_url(){
+		String webUrl = getStr(WEB_URL);
+		if(webUrl==null){
+			webUrl = "";
+		}
+		return (webUrl.startsWith("http")?webUrl:"http://"+webUrl);
+	}
 
 	/**
 	 * 获取点击量前三的网红信息
diff --git a/src/main/java/com/tianpengtech/front/web/common/interceptor/WebsiteInterceptor.java b/src/main/java/com/tianpengtech/front/web/common/interceptor/WebsiteInterceptor.java
index bd87bb0..be76f7f 100644
--- a/src/main/java/com/tianpengtech/front/web/common/interceptor/WebsiteInterceptor.java
+++ b/src/main/java/com/tianpengtech/front/web/common/interceptor/WebsiteInterceptor.java
@@ -15,7 +15,7 @@ public class WebsiteInterceptor implements Interceptor {
         Controller controller = i.getController();
         String host = controller.getRequest().getRemoteHost();
         int port = controller.getRequest().getLocalPort();
-        controller.setAttr("host", host);
+        controller.setAttr("host", "http://106.14.177.36");
         controller.setAttr("port", port);
     }
 }
diff --git a/src/main/java/com/tianpengtech/front/web/task/TaskWebController.java b/src/main/java/com/tianpengtech/front/web/task/TaskWebController.java
index 208fd9f..8feaf5b 100644
--- a/src/main/java/com/tianpengtech/front/web/task/TaskWebController.java
+++ b/src/main/java/com/tianpengtech/front/web/task/TaskWebController.java
@@ -285,6 +285,7 @@ public class TaskWebController extends BaseController {
 		int id = getParaToInt(Task.ID,GlobalConfigConstant.DEFAULT_VALUE_ZERO);
 		List<TaskSource> source = service.findSourceByTask(id);
 		setAttr("sources", source);
+		setAttr("task", Task.dao.findById(id));
 		renderTemplate("showH5.html");
 	}
 }
diff --git a/src/main/webapp/WEB-INF/view/web/task/showH5.html b/src/main/webapp/WEB-INF/view/web/task/showH5.html
index 76f3eea..47f4722 100644
--- a/src/main/webapp/WEB-INF/view/web/task/showH5.html
+++ b/src/main/webapp/WEB-INF/view/web/task/showH5.html
@@ -11,8 +11,20 @@
 	<img style="width: 100%"
 		 src="#(s.source??'')">
 	#end
+	
+	#if(task.web_url??)
+		#set(url = task.web_url())
+		<div style="color:#fff;padding:10px;width:30%;margin-top:1rem;text-align:center;
+		cursor: pointer;margin-left:auto;margin-right:auto;background-color:#62bcc0" onclick="window.location.href='#(url)'">查看更多</div>
+	#end
 </div>
 #end
 #define script()
+<script>
+function open(url){
+	alert(url);
+	//window.location.href=url;
+}
+</script>
 <script type="application/javascript" data-main="#(contextPath)/assets/front/web/script/platform_feedback" src="#(contextPath)/assets/front/web/script/require.js"></script>
 #end
\ No newline at end of file
-- 
Gitee


From ee70de4bdd3658f8f749d478bcb4ccefa1e631e9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=83=A1=E6=89=BF=E6=B7=9E?= <644344980@qq.com>
Date: Mon, 14 Aug 2017 23:58:58 +0800
Subject: [PATCH 8/8] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E6=95=B4=E6=94=B9?=
 =?UTF-8?q?=E6=84=8F=E8=A7=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../AuthenticateAdminServiceImpl.java         |  2 +-
 .../admin/fair/FairAdminServiceImpl.java      |  2 +-
 .../admin/task/TaskAdminServiceImpl.java      |  2 +-
 .../com/tianpengtech/common/MyConfig.java     |  2 ++
 .../tianpengtech/common/util/PageUtil.java    | 24 +++++++++++++++++++
 .../authenticate/authenticate-reason.html     |  2 +-
 .../WEB-INF/view/admin/fair/fair-reason.html  |  2 +-
 .../WEB-INF/view/admin/task/task-reason.html  |  2 +-
 .../WEB-INF/view/web/main/platform.html       |  9 ++++++-
 .../WEB-INF/view/web/task/task_list.html      | 14 +++++------
 src/main/webapp/assets/front/web/css/main.css |  2 +-
 .../webapp/assets/front/web/css/main.scss     |  2 +-
 .../webapp/assets/front/web/script/main.js    |  7 +++++-
 .../front/web/script/platform_fair_detail.js  |  4 ++++
 14 files changed, 59 insertions(+), 17 deletions(-)
 create mode 100644 src/main/java/com/tianpengtech/common/util/PageUtil.java

diff --git a/src/main/java/com/tianpengtech/admin/authenticate/AuthenticateAdminServiceImpl.java b/src/main/java/com/tianpengtech/admin/authenticate/AuthenticateAdminServiceImpl.java
index 062d42c..af6442b 100644
--- a/src/main/java/com/tianpengtech/admin/authenticate/AuthenticateAdminServiceImpl.java
+++ b/src/main/java/com/tianpengtech/admin/authenticate/AuthenticateAdminServiceImpl.java
@@ -84,7 +84,7 @@ public class AuthenticateAdminServiceImpl extends AbstractAdmin implements IAdmi
 		String content = params.getStr(Opertion.CONTENT);
 		Validator validator = new Validator();
 		if(status==Authenticate.STATUS_FAILURE){
-			validator.addRule( new StringLengthBetween(content,"拒绝理由必须是1-150个字符之间",1,150));
+			validator.addRule( new StringLengthBetween(content,"拒绝理由必须是1-40个字符之间",1,40));
 		}
 		validator.addRule( new NumbericMustBeGreaterThan(id,0,"id值必须要大于0")).excute();
 		
diff --git a/src/main/java/com/tianpengtech/admin/fair/FairAdminServiceImpl.java b/src/main/java/com/tianpengtech/admin/fair/FairAdminServiceImpl.java
index 2b21723..5a3027b 100644
--- a/src/main/java/com/tianpengtech/admin/fair/FairAdminServiceImpl.java
+++ b/src/main/java/com/tianpengtech/admin/fair/FairAdminServiceImpl.java
@@ -106,7 +106,7 @@ public class FairAdminServiceImpl extends AbstractAdmin implements IAdminOpt{
 		String content = params.getStr(Opertion.CONTENT);
 		Validator validator = new Validator();
 		if(status==Fair.STATUS_FAILURE){
-			validator.addRule( new StringLengthBetween(content,"拒绝理由必须是1-150个字符之间",1,150));
+			validator.addRule( new StringLengthBetween(content,"拒绝理由必须是1-40个字符之间",1,40));
 		}
 		validator.addRule( new NumbericMustBeGreaterThan(id,0,"id值必须要大于0")).excute();
 		model.set(Fair.ID, id);
diff --git a/src/main/java/com/tianpengtech/admin/task/TaskAdminServiceImpl.java b/src/main/java/com/tianpengtech/admin/task/TaskAdminServiceImpl.java
index b178fb9..0c64a91 100644
--- a/src/main/java/com/tianpengtech/admin/task/TaskAdminServiceImpl.java
+++ b/src/main/java/com/tianpengtech/admin/task/TaskAdminServiceImpl.java
@@ -85,7 +85,7 @@ public class TaskAdminServiceImpl extends AbstractAdmin implements IAdminOpt{
 		String content = params.getStr(Opertion.CONTENT);
 		Validator validator = new Validator();
 		if(status==Task.STATUS_FAILURE){
-			validator.addRule( new StringLengthBetween(content,"拒绝理由必须是1-150个字符之间",1,150));
+			validator.addRule( new StringLengthBetween(content,"拒绝理由必须是1-40个字符之间",1,40));
 		}
 		validator.addRule( new NumbericMustBeGreaterThan(id,0,"id值必须要大于0")).excute();
 		model.set(Task.ID, id);
diff --git a/src/main/java/com/tianpengtech/common/MyConfig.java b/src/main/java/com/tianpengtech/common/MyConfig.java
index 86da728..c8dd216 100644
--- a/src/main/java/com/tianpengtech/common/MyConfig.java
+++ b/src/main/java/com/tianpengtech/common/MyConfig.java
@@ -41,6 +41,7 @@ import com.tianpengtech.common.plugin.quartz.QuartzPlugin;
 import com.tianpengtech.common.plugin.shiro.ext.ShiroPlugin;
 import com.tianpengtech.common.plugin.shiro.tag.ShiroTag;
 import com.tianpengtech.common.util.DruidUtil;
+import com.tianpengtech.common.util.PageUtil;
 import com.tianpengtech.common.util.QiNiuUtil;
 import com.tianpengtech.front.mobile.MobileRoutes;
 import com.tianpengtech.front.web.WebRoutes;
@@ -182,6 +183,7 @@ public class MyConfig extends JFinalConfig {
         me.addSharedFunction("/WEB-INF/view/admin/lay_out/__layout.html");
         me.addSharedStaticMethod(Generator.class);
         me.addSharedStaticMethod(ShiroTag.class);
+        me.addSharedStaticMethod(PageUtil.class);
         me.addSharedObject("AppName","颜控网络运营支持系统平台");
 
         /* web */
diff --git a/src/main/java/com/tianpengtech/common/util/PageUtil.java b/src/main/java/com/tianpengtech/common/util/PageUtil.java
new file mode 100644
index 0000000..6c588ba
--- /dev/null
+++ b/src/main/java/com/tianpengtech/common/util/PageUtil.java
@@ -0,0 +1,24 @@
+package com.tianpengtech.common.util;
+
+public class PageUtil {
+
+	/**
+	 * 截取字符串
+	 * @param content
+	 * @param maxLength
+	 * @return
+	 */
+	public static String maxLength(String content,int maxLength){
+		String result ="暂无最新消息";
+		if(isTooLong(content, maxLength)){
+			result = content.substring(0, maxLength);
+			result = result+"...";
+		}
+		return result;
+	}
+	
+	public static boolean isTooLong(String content,int maxLength){
+		String result = (content==null)?"":content;
+		return result.length()> maxLength;
+	}
+}
diff --git a/src/main/webapp/WEB-INF/view/admin/authenticate/authenticate-reason.html b/src/main/webapp/WEB-INF/view/admin/authenticate/authenticate-reason.html
index ed6e77c..66f9e5d 100644
--- a/src/main/webapp/WEB-INF/view/admin/authenticate/authenticate-reason.html
+++ b/src/main/webapp/WEB-INF/view/admin/authenticate/authenticate-reason.html
@@ -31,7 +31,7 @@
    		<div class="row cl">
 	        <label class="form-label col-xs-4 col-sm-3"><span class="c-red">*</span>拒绝理由</label>
 	        <div class="formControls col-xs-8 col-sm-9">
-	        	<textarea name="content" class="textarea" rows="5"> </textarea>
+	        	<textarea name="content" class="textarea" rows="5" maxlength="40" placeholder="请输入简短的拒绝理由,最多40个字符..."></textarea>
 	        </div>
 	    </div>
 	    <div class="row cl">
diff --git a/src/main/webapp/WEB-INF/view/admin/fair/fair-reason.html b/src/main/webapp/WEB-INF/view/admin/fair/fair-reason.html
index 69f87d6..7fc599c 100644
--- a/src/main/webapp/WEB-INF/view/admin/fair/fair-reason.html
+++ b/src/main/webapp/WEB-INF/view/admin/fair/fair-reason.html
@@ -31,7 +31,7 @@
    		<div class="row cl">
 	        <label class="form-label col-xs-4 col-sm-3"><span class="c-red">*</span>拒绝理由</label>
 	        <div class="formControls col-xs-8 col-sm-9">
-	        	<textarea name="content" class="textarea" rows="5"> </textarea>
+	        	<textarea name="content" class="textarea" rows="5" maxlength="40" placeholder="请输入简短的拒绝理由,最多40个字符..."></textarea>
 	        </div>
 	    </div>
 	    <div class="row cl">
diff --git a/src/main/webapp/WEB-INF/view/admin/task/task-reason.html b/src/main/webapp/WEB-INF/view/admin/task/task-reason.html
index 0fcaa9b..ff383b6 100644
--- a/src/main/webapp/WEB-INF/view/admin/task/task-reason.html
+++ b/src/main/webapp/WEB-INF/view/admin/task/task-reason.html
@@ -31,7 +31,7 @@
    		<div class="row cl">
 	        <label class="form-label col-xs-4 col-sm-3"><span class="c-red">*</span>拒绝理由</label>
 	        <div class="formControls col-xs-8 col-sm-9">
-	        	<textarea name="content" class="textarea" rows="5"> </textarea>
+	        	<textarea name="content" class="textarea" rows="5" maxlength="40" placeholder="请输入简短的拒绝理由,最多40个字符..."></textarea>
 	        </div>
 	    </div>
 	    <div class="row cl">
diff --git a/src/main/webapp/WEB-INF/view/web/main/platform.html b/src/main/webapp/WEB-INF/view/web/main/platform.html
index 17a0fa7..24a985e 100644
--- a/src/main/webapp/WEB-INF/view/web/main/platform.html
+++ b/src/main/webapp/WEB-INF/view/web/main/platform.html
@@ -46,7 +46,14 @@
                     <div class="u-icon"></div>
                     <span class="u-text" data-href="#(contextPath)/passport/form">最新消息:</span>
                     ###<span class="u-name">犀利的大菜菜</span>
-                    <span class="u-content" id="content">#(record.msg??'暂无最新消息') #(record.create_time??'')</span>
+                    <span class="u-content" id="content">
+                    #if(isTooLong(record.msg,40))
+                    	#(maxLength(record.msg,40)) <a href="javascript:;" onclick="showMsg()" style="color:#ccc9c9">[查看详情]</a> #(record.create_time??'')
+                    	<input type="hidden" value="#(record.msg)" id="msg">
+                    #else
+                    	#(record.msg??'暂无最新消息') #(record.create_time??'')
+                    #end
+                    </span>
                     <span class="u-time" id="msgTime"></span>
                 </div>
             </header>
diff --git a/src/main/webapp/WEB-INF/view/web/task/task_list.html b/src/main/webapp/WEB-INF/view/web/task/task_list.html
index b664ee9..d8e1edc 100644
--- a/src/main/webapp/WEB-INF/view/web/task/task_list.html
+++ b/src/main/webapp/WEB-INF/view/web/task/task_list.html
@@ -20,7 +20,7 @@
                 </div>
             </div>
         </div>
-        <div class="m-select">
+        <div class="m-select" style="margin-top:20px;">
             <div data-status="" class="u-select-option u-select-option-active">全部</div>
             <div data-status="1" class="u-select-option">未开始</div>
             <div data-status="2" class="u-select-option">进行中</div>
@@ -31,12 +31,12 @@
         <table class="m-task-list" style="margin-top: 20px;padding-top: 0;">
             <thead>
                 <tr>
-                    <th>起始日期</th>
-                    <th>任务标题</th>
-                    <th>点击量</th>
-                    <th>转化量</th>
-                    <th>任务状态</th>
-                    <th width="150">操作</th>
+                    <th width="10%">起始日期</th>
+                    <th width="40%">任务标题</th>
+                    <th width="10%">点击量</th>
+                    <th width="10%">转化量</th>
+                    <th width="10%">任务状态</th>
+                    <th width="20%">操作</th>
                 </tr>
             </thead>
             <tbody id="tbody"></tbody>
diff --git a/src/main/webapp/assets/front/web/css/main.css b/src/main/webapp/assets/front/web/css/main.css
index aea40d0..9637924 100644
--- a/src/main/webapp/assets/front/web/css/main.css
+++ b/src/main/webapp/assets/front/web/css/main.css
@@ -245,7 +245,7 @@ ul li {
   align-items: center;
   justify-content: flex-start;
   box-sizing: border-box;
-  padding: 40px 0;
+  padding: 15px 0;
   width: 100%;
   background-color: #f2f2fd;
   transition: 0.3s all ease-out;
diff --git a/src/main/webapp/assets/front/web/css/main.scss b/src/main/webapp/assets/front/web/css/main.scss
index 243a146..fd8381a 100644
--- a/src/main/webapp/assets/front/web/css/main.scss
+++ b/src/main/webapp/assets/front/web/css/main.scss
@@ -309,7 +309,7 @@ ul li {
   align-items: center;
   justify-content: flex-start;
   box-sizing: border-box;
-  padding:40px 0;
+  padding:15px 0;
   width:100%;
   background-color: #f2f2fd;
   transition: $nav_transition;
diff --git a/src/main/webapp/assets/front/web/script/main.js b/src/main/webapp/assets/front/web/script/main.js
index 814b2ca..f0807c2 100644
--- a/src/main/webapp/assets/front/web/script/main.js
+++ b/src/main/webapp/assets/front/web/script/main.js
@@ -10,7 +10,6 @@ require(["jquery","common","layer"],(a,b,c)=>{
 })
 const init = ()=>{
 	$(".u-btn-logout").on("click",()=>{
-		console.log(layer);
 		layer.confirm("确定要退出当前系统吗?", {
             btn: ['确定','取消'] //按钮
         }, function(){
@@ -24,6 +23,12 @@ const init = ()=>{
 //		}
     });
 }
+
+let showMsg=function(){
+	let msg = $("#msg").val();
+	layer.alert(msg);
+}
+
 const monitor = ()=>{
     $(".u-switch").on("click",()=>{
         $(".g-nav").toggleClass("g-nav-hide");
diff --git a/src/main/webapp/assets/front/web/script/platform_fair_detail.js b/src/main/webapp/assets/front/web/script/platform_fair_detail.js
index 30f8cb5..fdeffb6 100644
--- a/src/main/webapp/assets/front/web/script/platform_fair_detail.js
+++ b/src/main/webapp/assets/front/web/script/platform_fair_detail.js
@@ -15,6 +15,10 @@ const monitor = ()=>{
     	if(status=="off"){
     		$(".g-fair-task-info .m-cell-active").removeClass("m-cell-active");
             $(this).parent().parent().parent().addClass("m-cell-active");
+            $(".u-content-btn").each(function (i,item){
+            	console.log(item);
+            	$(item).attr("data-status","off");
+            });
             $(this).attr("data-status","open");
     	}else{
     		$(".g-fair-task-info .m-cell-active").removeClass("m-cell-active");
-- 
Gitee