Explorar o código

Merge branch 'test' of jishutao/jitao-server into prod

anderx %!s(int64=4) %!d(string=hai) anos
pai
achega
b56a3758b4

+ 1 - 1
.idea/artifacts/jitao_server_war.xml

@@ -1,6 +1,6 @@
 <component name="ArtifactManager">
   <artifact type="war" build-on-make="true" name="jitao-server:war">
-    <output-path>$PROJECT_DIR$/out</output-path>
+    <output-path>$PROJECT_DIR$/target</output-path>
     <properties id="maven-jee-properties">
       <options>
         <module>jitao-server</module>

+ 4 - 0
.idea/artifacts/jitao_server_war_exploded.xml

@@ -70,6 +70,10 @@
           <element id="library" level="project" name="Maven: cglib:cglib:2.2.2" />
           <element id="library" level="project" name="Maven: asm:asm:3.3.1" />
           <element id="library" level="project" name="Maven: org.hibernate:hibernate-validator:5.2.4.Final" />
+          <element id="library" level="project" name="Maven: javax.xml.bind:jaxb-api:2.3.0" />
+          <element id="library" level="project" name="Maven: com.sun.xml.bind:jaxb-impl:2.3.0" />
+          <element id="library" level="project" name="Maven: com.sun.xml.bind:jaxb-core:2.3.0" />
+          <element id="library" level="project" name="Maven: javax.activation:activation:1.1.1" />
           <element id="library" level="project" name="Maven: javax.validation:validation-api:1.1.0.Final" />
           <element id="library" level="project" name="Maven: org.jboss.logging:jboss-logging:3.2.1.Final" />
           <element id="library" level="project" name="Maven: com.fasterxml:classmate:1.1.0" />

+ 12 - 0
.idea/dataSources.xml

@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="DataSourceManagerImpl" format="xml" multifile-model="true">
+    <data-source source="LOCAL" name="aft@localhost" uuid="b79c7483-ae84-4235-8d5c-363d095ca943">
+      <driver-ref>mysql.8</driver-ref>
+      <synchronize>true</synchronize>
+      <jdbc-driver>com.mysql.cj.jdbc.Driver</jdbc-driver>
+      <jdbc-url>jdbc:mysql://localhost:3306/aft</jdbc-url>
+      <working-dir>$ProjectFileDir$</working-dir>
+    </data-source>
+  </component>
+</project>

+ 32 - 0
.idea/free-mybatis-generator-config.xml

@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="PersistentConfig">
+    <option name="historyConfigList">
+      <map>
+        <entry key="jt_news">
+          <value>
+            <Config>
+              <option name="comment" value="true" />
+              <option name="daoMvnPath" value="src/main/java" />
+              <option name="daoName" value="JtNewsMapper" />
+              <option name="daoPackage" value="com.goafanti.common.dao" />
+              <option name="daoPostfix" value="Mapper" />
+              <option name="modelMvnPath" value="src/main/java" />
+              <option name="modelName" value="JtNews" />
+              <option name="modelPackage" value="com.goafanti.common.model" />
+              <option name="name" value="jt_news" />
+              <option name="overrideJava" value="true" />
+              <option name="overrideXML" value="true" />
+              <option name="primaryKey" value="" />
+              <option name="projectFolder" value="$PROJECT_DIR$" />
+              <option name="tableName" value="jt_news" />
+              <option name="useSchemaPrefix" value="true" />
+              <option name="xmlMvnPath" value="src/main/java" />
+              <option name="xmlPackage" value="com.goafanti.common.mapper" />
+            </Config>
+          </value>
+        </entry>
+      </map>
+    </option>
+  </component>
+</project>

+ 5 - 0
.idea/misc.xml

@@ -1,5 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
+  <component name="EntryPointsManager">
+    <list size="1">
+      <item index="0" class="java.lang.String" itemvalue="org.springframework.stereotype.Service" />
+    </list>
+  </component>
   <component name="FrameworkDetectionExcludesConfiguration">
     <file type="web" url="file://$PROJECT_DIR$" />
     <type id="Spring" />

+ 3 - 1
jitao-server.iml

@@ -19,7 +19,9 @@
       <configuration />
     </facet>
   </component>
-  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8" inherit-compiler-output="true">
+  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
+    <output url="file://$MODULE_DIR$/target/classes" />
+    <output-test url="file://$MODULE_DIR$/target/test-classes" />
     <content url="file://$MODULE_DIR$">
       <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
       <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />

+ 97 - 46
src/main/java/com/goafanti/common/controller/PublicController.java

@@ -9,11 +9,17 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.UUID;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import com.goafanti.common.model.JtNews;
+import com.goafanti.news.bo.InputJtNews;
+import com.goafanti.news.bo.OutJtNews;
+import com.goafanti.news.service.EventPlanningService;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -83,7 +89,7 @@ public class PublicController extends BaseController {
 
 	@Resource
 	private FieldGlossoryService			fieldGlossoryService;
-	
+
 	@Resource
 	private CommentService commentService;
 
@@ -92,35 +98,35 @@ public class PublicController extends BaseController {
 
 	@Autowired
 	private DistrictGlossoryService	districtGlossoryService;
-	
+
 	@Autowired
 	private UserIdentityService userIdentityService;
-	
+
 	@Autowired
 	private AchievementService achievementService;
-	
+
 	@Autowired
 	private DemandService demandService;
-	
+
 	@Autowired
 	private JtBusinessService jtBusinessService;
-	
+
 	@Value(value = "${patentTemplate}")
 	private String					patentTemplate		= null;
 
 	@Resource(name = "passwordUtil")
 	private PasswordUtil			passwordUtil;
-	
+
 	@Resource
 	private	VoucherDetailService	voucherDetailService;
 	@Resource
 	private VoucherService		voucherService;
 	@Resource
-	private JDBCIdGenerator	jDBCIdGenerator;
+	private EventPlanningService	eventPlanningService;
 
 	/**
 	 * 获取验证码
-	 * 
+	 *
 	 * @param response
 	 */
 	@RequestMapping(value = "/getVCode", method = RequestMethod.GET)
@@ -145,11 +151,10 @@ public class PublicController extends BaseController {
 
 	/**
 	 * 手机验证码
-	 * 
+	 *
 	 * @param mobile
 	 * @param sign
 	 *            是否用与找回密码
-	 * @param type
 	 * @return
 	 */
 	@RequestMapping(value = "/getMCode", method = RequestMethod.GET)
@@ -189,7 +194,7 @@ public class PublicController extends BaseController {
 	}
 
 	/**
-	 * 
+	 *
 	 * @param mobile
 	 * @param res
 	 * @return
@@ -213,7 +218,7 @@ public class PublicController extends BaseController {
 
 	/**
 	 * 下载图片
-	 * 
+	 *
 	 * @param response
 	 * @param path
 	 * @param request
@@ -268,7 +273,7 @@ public class PublicController extends BaseController {
 
 	/**
 	 * 删除图片文件(public图片)
-	 * 
+	 *
 	 * @param path
 	 * @return
 	 */
@@ -300,12 +305,10 @@ public class PublicController extends BaseController {
 
 	/**
 	 * 下载文件
-	 * 
-	 * @param res
+	 *
 	 * @param fileName
 	 * @param response
 	 * @param path
-	 * @param request
 	 * @return
 	 */
 	@RequestMapping(value = "/downloadFile", method = RequestMethod.GET)
@@ -386,7 +389,7 @@ public class PublicController extends BaseController {
 	}
 
 	/**
-	 * 
+	 *
 	 * @param mobileCode
 	 * @return
 	 */
@@ -422,7 +425,7 @@ public class PublicController extends BaseController {
 
 	/**
 	 * 重置密码
-	 * 
+	 *
 	 * @param resetCode
 	 * @param mobile
 	 * @param type
@@ -474,7 +477,7 @@ public class PublicController extends BaseController {
 		VerifyCodeUtils.clearResetCodeTime();
 		return res;
 	}
-	
+
 	@RequestMapping(value = "/resetPassword", method = RequestMethod.POST)
 	@ResponseBody
 	public Result resetPassword(String mobile,Integer type,String newPwd,String resetCode) {
@@ -493,7 +496,7 @@ public class PublicController extends BaseController {
 			cleanCodeSession();
 			return res;
 		}
-		
+
 		if (StringUtils.isBlank(newPwd)) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "新密码"));
 			return res;
@@ -512,11 +515,11 @@ public class PublicController extends BaseController {
 		user.setPassword(passwordUtil.getEncryptPwd(user));
 		userService.updateByPrimaryKeySelective(user);
 		return res;
-		
+
 	}
-	
+
 	/**
-	 * 
+	 *
 	 * @param mobileCode
 	 * @return
 	 */
@@ -565,7 +568,7 @@ public class PublicController extends BaseController {
 		VerifyCodeUtils.clearMobileCode();
 		VerifyCodeUtils.clearMobileCodeTime();
 	}
-	
+
 	@RequestMapping(value = "/getRegisterMCode", method = RequestMethod.GET )
 	@ResponseBody
 	public Result getRegisterMCode(String mobile){
@@ -582,7 +585,7 @@ public class PublicController extends BaseController {
 		}
 		return res;
 	}
-	
+
 	@RequestMapping(value = "/getResetMCode", method = RequestMethod.GET )
 	@ResponseBody
 	public Result getResetMCode(String mobile) {
@@ -603,7 +606,7 @@ public class PublicController extends BaseController {
 		}
 		return res;
 	}
-	
+
 	/** 省市区查询 **/
 	@RequestMapping(value = "/listAllProvince" , method = RequestMethod.POST)
 	@ResponseBody
@@ -612,33 +615,33 @@ public class PublicController extends BaseController {
 		res.setData(districtGlossoryService.getProvince());
 		return res;
 	}
-	
+
 	@RequestMapping(value="/industryList", method = RequestMethod.GET)
 	@ResponseBody
 	public Result getIndustryList() {
 		Result result=new Result();
 		result.setData(userIdentityService.selectIndustryReletively());
 		return result;
-		
+
 	}
-	
+
 	@RequestMapping(value="/achievementList", method = RequestMethod.GET)
 	@ResponseBody
 	public Result getAchievements(AchievementObject achievementObject,Integer pageNo,Integer pageSize) {
 		Result result=new Result();
 		result.setData(achievementService.getAchievementObjects(achievementObject, pageNo, pageSize));
-		return result;  
+		return result;
 	}
-	
+
 	@RequestMapping(value="/demandList", method = RequestMethod.GET)
 	@ResponseBody
 	public Result getDemands(DemandListBo demandListBo,Integer pageNo,Integer pageSize) {
-		Result result=new Result();   
+		Result result=new Result();
 		result.setData(demandService.getDemandObjects(demandListBo, pageNo, pageSize));
 		return result;
 	}
-	
-	
+
+
 	@RequestMapping(value = "/comment/list", method = RequestMethod.GET)
 	@ResponseBody
 	public Result listComment(String commodityId,Integer pageNo,Integer pageSize) {
@@ -653,7 +656,7 @@ public class PublicController extends BaseController {
 		commentResult.setComments(commentService.searchComment(commodityId, pageNo, pageSize));
 		result.setData(commentResult);
 		return result;
-		
+
 	}
 
 	/**
@@ -706,7 +709,7 @@ public class PublicController extends BaseController {
 		VerifyCodeUtils.clearResetCodeTime();
 		return res;
 	}
-	
+
 	/**
 	 * 新增评价
 	 */
@@ -727,7 +730,7 @@ public class PublicController extends BaseController {
 		if(null == commentInput.getCommodityType() || commentInput.getCommodityType()<0 || commentInput.getCommodityType() > 5) {
 			result.getError().add(buildError(ErrorConstants.PARAM_ERROR,"","产品类型"));return result;
 		}
-		
+
 		int res=commentService.addNewComment(commentInput,ip);
 		if(res ==-1) {
 			result.getError().add(buildError(ErrorConstants.PARAM_ERROR,"","提交失败"));return result;
@@ -735,9 +738,9 @@ public class PublicController extends BaseController {
 		result.setData(res);
 		return result;
 	}
-	
+
 	/**
-	 * 
+	 *
 	 * @param commodityId
 	 * @param pageNo
 	 * @param pageSize
@@ -757,7 +760,7 @@ public class PublicController extends BaseController {
 		commentResult.setComments(commentService.searchUnlandedCommentList(commodityId, pageNo, pageSize));
 		result.setData(commentResult);
 		return result;
-		
+
 	}
 	/**
 	 * 服务商项目列表
@@ -779,7 +782,7 @@ public class PublicController extends BaseController {
 		res.setData(pagination);
 		return res;
 	}
-	
+
 	@SuppressWarnings("unchecked")
 	@RequestMapping(value = "/getUserVoucher", method = RequestMethod.GET)
 	@ResponseBody
@@ -794,7 +797,7 @@ public class PublicController extends BaseController {
 				if (s.equals(jt.getId())) {
 					jt.setIsGet(1);
 				}
-				
+
 			}
 		}
 		return 	res.data(p);
@@ -813,7 +816,7 @@ public class PublicController extends BaseController {
 		res.data(voucherDetailService.saveUserGetVoucher(uid,vid));
 		return res;
 	}
-	
+
 	/**
 	 * 服务商列表
 	 * @param user
@@ -828,7 +831,7 @@ public class PublicController extends BaseController {
 		res.setData(userService.selectOrganizationList(user, pageNo, pageSize));
 		return res;
 	}
-	
+
 	@SuppressWarnings("unchecked")
 	@RequestMapping(value="/invRegister",method = RequestMethod.GET)
 	@ResponseBody
@@ -886,5 +889,53 @@ public class PublicController extends BaseController {
 		map.put( "zffc",zfList);
 		return res.data(map);
 	}
-	
+
+
+	@RequestMapping(value = "/getEventPlanningList",method = RequestMethod.GET)
+	@ResponseBody
+	public  Result getEventPlanningList(InputJtNews inputJtNews){
+		Result res = new Result();
+		inputJtNews.setReleaseStatus(1);
+		Pagination<OutJtNews> p= eventPlanningService.listnewsDetails(inputJtNews);
+		List<OutJtNews> list = (List<OutJtNews>) p.getList();
+		for (OutJtNews outJtNews : list) {
+			outJtNews.setContent(removeHtmlTag(outJtNews.getContent()));
+		}
+		res.setData(p);
+		return  res;
+	}
+
+	/**
+	 * 删除Html标签
+	 */
+	public static String removeHtmlTag(String htmlStr) {
+		//定义script的正则表达式{或<script[^>]*?>[\\s\\S]*?<\\/script>
+		//String regEx_script = "<[\\s]*?script[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?script[\\s]*?>";
+		//定义style的正则表达式{或<style[^>]*?>[\\s\\S]*?<\\/style>
+//	String regEx_style = "<[\\s]*?style[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?style[\\s]*?>";
+		//定义HTML标签的正则表达式
+		String regEx_html = "<[^>]+>";
+		//定义一些特殊字符的正则表达式 如:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+		String regEx_special = "\\&[a-zA-Z]{1,10};";
+
+//	//1.过滤script标签
+//	Pattern p_script = Pattern.compile(regEx_script, Pattern.CASE_INSENSITIVE);
+//	Matcher m_script = p_script.matcher(htmlStr);
+//	htmlStr = m_script.replaceAll("");
+//	//2.过滤style标签
+//	Pattern p_style = Pattern.compile(regEx_style, Pattern.CASE_INSENSITIVE);
+//	Matcher m_style = p_style.matcher(htmlStr);
+//	htmlStr = m_style.replaceAll("");
+		//3.过滤html标签
+		Pattern p_html = Pattern.compile(regEx_html, Pattern.CASE_INSENSITIVE);
+		Matcher m_html = p_html.matcher(htmlStr);
+		htmlStr = m_html.replaceAll("");
+		//4.过滤特殊标签
+		Pattern p_special = Pattern.compile(regEx_special, Pattern.CASE_INSENSITIVE);
+		Matcher m_special = p_special.matcher(htmlStr);
+		htmlStr = m_special.replaceAll("");
+
+		return htmlStr;
+	}
+
 }

+ 31 - 9
src/main/java/com/goafanti/common/controller/WebpageController.java

@@ -11,8 +11,13 @@ import java.util.Map;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 
+import com.goafanti.common.model.*;
+import com.goafanti.news.bo.InputJtNews;
+import com.goafanti.news.bo.OutJtNews;
+import com.goafanti.news.service.EventPlanningService;
 import org.apache.commons.lang3.time.DateFormatUtils;
 import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.ResponseBody;
@@ -35,15 +40,6 @@ import com.goafanti.common.constant.AFTConstants;
 import com.goafanti.common.dao.JtBusinessCategoryMapper;
 import com.goafanti.common.dao.ProjectInterestMapper;
 import com.goafanti.common.enums.ConsultantType;
-import com.goafanti.common.model.AchievementInterest;
-import com.goafanti.common.model.Banners;
-import com.goafanti.common.model.DemandInterest;
-import com.goafanti.common.model.JtBusinessCategory;
-import com.goafanti.common.model.JtBusinessProject;
-import com.goafanti.common.model.News;
-import com.goafanti.common.model.Policy;
-import com.goafanti.common.model.User;
-import com.goafanti.common.model.UserIdentity;
 import com.goafanti.common.service.GlobalSearchService;
 import com.goafanti.common.utils.LimitLengthUtil;
 import com.goafanti.common.utils.StringUtils;
@@ -112,6 +108,9 @@ public class WebpageController extends BaseController {
 	@Resource
 	private AdminVideoService adminVideoService;
 
+	@Resource
+	private EventPlanningService eventPlanningService;
+
 	@RequestMapping(value = "/user/account/index", method = RequestMethod.GET)
 	public ModelAndView index(HttpServletRequest request, ModelAndView modelview) {
 		modelview.setViewName("/user/account/index");
@@ -1634,4 +1633,27 @@ public class WebpageController extends BaseController {
 		return modelAndView;
 	}
 
+	@RequestMapping("/portal/eventPlanning")
+	public ModelAndView eventPlanning(ModelAndView modelAndView){
+		modelAndView.setViewName("/portal/eventPlanning");
+		return modelAndView;
+	}
+
+	/**
+	 * 新闻详情
+	 * @param request
+	 * @param modelview
+	 * @return
+	 */
+	@SuppressWarnings("unchecked")
+	@RequestMapping(value = "/eventPlanning/{id}", method = RequestMethod.GET)
+	public ModelAndView newsDetails( ModelAndView modelview,@PathVariable Integer id) {
+		modelview.setViewName("/portal/eventDetails");
+		InputJtNews in = new InputJtNews();
+		in.setId(id);
+		OutJtNews out =eventPlanningService.selectNews(in);
+		modelview.addObject("news",out);
+		return modelview;
+	}
+
 }

+ 20 - 0
src/main/java/com/goafanti/common/dao/JtNewsMapper.java

@@ -0,0 +1,20 @@
+package com.goafanti.common.dao;
+
+import com.goafanti.common.model.JtNews;
+import com.goafanti.news.bo.OutJtNews;
+
+public interface JtNewsMapper {
+    int deleteByPrimaryKey(Integer id);
+
+    int insert(JtNews record);
+
+    int insertSelective(JtNews record);
+
+    JtNews selectByPrimaryKey(Integer id);
+
+    int updateByPrimaryKeySelective(JtNews record);
+
+    int updateByPrimaryKey(JtNews record);
+
+    OutJtNews selectByid(Integer id);
+}

+ 217 - 0
src/main/java/com/goafanti/common/mapper/JtNewsMapper.xml

@@ -0,0 +1,217 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.goafanti.common.dao.JtNewsMapper">
+  <resultMap id="BaseResultMap" type="com.goafanti.common.model.JtNews">
+    <id column="id" jdbcType="INTEGER" property="id" />
+    <result column="title" jdbcType="VARCHAR" property="title" />
+    <result column="publisher" jdbcType="VARCHAR" property="publisher" />
+    <result column="type" jdbcType="INTEGER" property="type" />
+    <result column="picture_url" jdbcType="VARCHAR" property="pictureUrl" />
+    <result column="status" jdbcType="INTEGER" property="status" />
+    <result column="sort" jdbcType="INTEGER" property="sort" />
+    <result column="content" jdbcType="VARCHAR" property="content" />
+    <result column="release_status" jdbcType="INTEGER" property="releaseStatus" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="release_time" jdbcType="TIMESTAMP" property="releaseTime" />
+  </resultMap>
+  <sql id="Base_Column_List">
+    id, title, publisher, `type`, picture_url, `status`, sort, content, release_status,
+    create_time, release_time
+  </sql>
+  <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
+    select
+    <include refid="Base_Column_List" />
+    from jt_news
+    where id = #{id,jdbcType=INTEGER}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
+    delete from jt_news
+    where id = #{id,jdbcType=INTEGER}
+  </delete>
+  <insert id="insert" parameterType="com.goafanti.common.model.JtNews">
+    insert into jt_news (id, title, publisher,
+      `type`, picture_url, `status`,
+      sort, content, release_status,
+      create_time, release_time)
+    values (#{id,jdbcType=INTEGER}, #{title,jdbcType=VARCHAR}, #{publisher,jdbcType=VARCHAR},
+      #{type,jdbcType=INTEGER}, #{pictureUrl,jdbcType=VARCHAR}, #{status,jdbcType=INTEGER},
+      #{sort,jdbcType=INTEGER}, #{content,jdbcType=VARCHAR}, #{releaseStatus,jdbcType=INTEGER},
+      #{createTime,jdbcType=TIMESTAMP}, #{releaseTime,jdbcType=TIMESTAMP})
+  </insert>
+  <insert id="insertSelective" parameterType="com.goafanti.common.model.JtNews">
+    insert into jt_news
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
+      <if test="title != null">
+        title,
+      </if>
+      <if test="publisher != null">
+        publisher,
+      </if>
+      <if test="type != null">
+        `type`,
+      </if>
+      <if test="pictureUrl != null">
+        picture_url,
+      </if>
+      <if test="status != null">
+        `status`,
+      </if>
+      <if test="sort != null">
+        sort,
+      </if>
+      <if test="content != null">
+        content,
+      </if>
+      <if test="releaseStatus != null">
+        release_status,
+      </if>
+      <if test="createTime != null">
+        create_time,
+      </if>
+      <if test="releaseTime != null">
+        release_time,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=INTEGER},
+      </if>
+      <if test="title != null">
+        #{title,jdbcType=VARCHAR},
+      </if>
+      <if test="publisher != null">
+        #{publisher,jdbcType=VARCHAR},
+      </if>
+      <if test="type != null">
+        #{type,jdbcType=INTEGER},
+      </if>
+      <if test="pictureUrl != null">
+        #{pictureUrl,jdbcType=VARCHAR},
+      </if>
+      <if test="status != null">
+        #{status,jdbcType=INTEGER},
+      </if>
+      <if test="sort != null">
+        #{sort,jdbcType=INTEGER},
+      </if>
+      <if test="content != null">
+        #{content,jdbcType=VARCHAR},
+      </if>
+      <if test="releaseStatus != null">
+        #{releaseStatus,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="releaseTime != null">
+        #{releaseTime,jdbcType=TIMESTAMP},
+      </if>
+    </trim>
+  </insert>
+  <update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.JtNews">
+    update jt_news
+    <set>
+      <if test="title != null">
+        title = #{title,jdbcType=VARCHAR},
+      </if>
+      <if test="publisher != null">
+        publisher = #{publisher,jdbcType=VARCHAR},
+      </if>
+      <if test="type != null">
+        `type` = #{type,jdbcType=INTEGER},
+      </if>
+      <if test="pictureUrl != null">
+        picture_url = #{pictureUrl,jdbcType=VARCHAR},
+      </if>
+      <if test="status != null">
+        `status` = #{status,jdbcType=INTEGER},
+      </if>
+      <if test="sort != null">
+        sort = #{sort,jdbcType=INTEGER},
+      </if>
+      <if test="content != null">
+        content = #{content,jdbcType=VARCHAR},
+      </if>
+      <if test="releaseStatus != null">
+        release_status = #{releaseStatus,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        create_time = #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="releaseTime != null">
+        release_time = #{releaseTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.goafanti.common.model.JtNews">
+    update jt_news
+    set title = #{title,jdbcType=VARCHAR},
+      publisher = #{publisher,jdbcType=VARCHAR},
+      `type` = #{type,jdbcType=INTEGER},
+      picture_url = #{pictureUrl,jdbcType=VARCHAR},
+      `status` = #{status,jdbcType=INTEGER},
+      sort = #{sort,jdbcType=INTEGER},
+      content = #{content,jdbcType=VARCHAR},
+      release_status = #{releaseStatus,jdbcType=INTEGER},
+      create_time = #{createTime,jdbcType=TIMESTAMP},
+      release_time = #{releaseTime,jdbcType=TIMESTAMP}
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+
+
+  <select id="findNewsList" resultType="com.goafanti.news.bo.OutJtNews">
+    select id,title,publisher,`type`,picture_url pictureUrl,status,sort,content,release_status releaseStatus,
+    date_format(create_time,'%Y-%m-%d %H:%i:%S' ) as createTimes,date_format(release_time,'%Y-%m-%d %H:%i:%S' ) as releaseTimes,
+    create_time createTime ,release_time releaseTime
+    from jt_news where 1=1
+    <if test="n.id!=null">
+      and id = #{n.id}
+    </if>
+    <if test="n.title!=null">
+      and title like concat('%',#{n.title},'%')
+    </if>
+    <if test="n.releaseStatus!=null">
+      and release_status = #{n.releaseStatus}
+    </if>
+    <if test="n.status!=null">
+      and status = #{n.status}
+    </if>
+    <if test="n.type!=null">
+      and type = #{n.type}
+    </if>
+    order by releaseStatus desc,sort desc,id desc
+    <if test="page_sql!=null">
+      ${page_sql}
+    </if>
+  </select>
+
+  <select id="findNewsCount" resultType="java.lang.Integer">
+    select count(*)
+    from jt_news where 1=1
+    <if test="n.id!=null">
+      and id = #{n.id}
+    </if>
+    <if test="n.title!=null">
+      and title like concat('%',#{n.title},'%')
+    </if>
+    <if test="n.releaseStatus!=null">
+      and release_status = #{n.releaseStatus}
+    </if>
+    <if test="n.status!=null">
+      and status = #{n.status}
+    </if>
+    <if test="n.type!=null">
+      and type = #{n.type}
+    </if>
+  </select>
+  <select id="selectByid" resultType="com.goafanti.news.bo.OutJtNews">
+    select id, title, publisher, type, picture_url pictureUrl, status, sort, release_status releaseStatus,content,
+           date_format(create_time,'%Y-%m-%d %H:%i:%S') as createTimes,create_time createTime,
+           date_format(release_time,'%Y-%m-%d %H:%i:%S') as releaseTimes ,release_time releaseTime
+    from jt_news where id = #{id,jdbcType=INTEGER}
+  </select>
+</mapper>

+ 152 - 0
src/main/java/com/goafanti/common/model/JtNews.java

@@ -0,0 +1,152 @@
+package com.goafanti.common.model;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * jt_news
+ * @author 
+ */
+public class JtNews implements Serializable {
+    private Integer id;
+
+    /**
+     * 标题
+     */
+    private String title;
+
+    /**
+     * 发布人
+     */
+    private String publisher;
+
+    /**
+     * 类型 0公司新闻 1行业新闻
+     */
+    private Integer type;
+
+    /**
+     * 图片url
+     */
+    private String pictureUrl;
+
+    /**
+     * 状态 0正常 1首页
+     */
+    private Integer status;
+
+    /**
+     * 排序
+     */
+    private Integer sort;
+
+    /**
+     * 内容
+     */
+    private String content;
+
+    /**
+     * 发布状态 0否 1是
+     */
+    private Integer releaseStatus;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    /**
+     * 发布时间
+     */
+    private Date releaseTime;
+
+    private static final long serialVersionUID = 1L;
+
+    public Integer getId() {
+        return id;
+    }
+
+    public void setId(Integer id) {
+        this.id = id;
+    }
+
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+
+    public String getPublisher() {
+        return publisher;
+    }
+
+    public void setPublisher(String publisher) {
+        this.publisher = publisher;
+    }
+
+    public Integer getType() {
+        return type;
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+
+    public String getPictureUrl() {
+        return pictureUrl;
+    }
+
+    public void setPictureUrl(String pictureUrl) {
+        this.pictureUrl = pictureUrl;
+    }
+
+    public Integer getStatus() {
+        return status;
+    }
+
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+
+    public Integer getSort() {
+        return sort;
+    }
+
+    public void setSort(Integer sort) {
+        this.sort = sort;
+    }
+
+    public String getContent() {
+        return content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+
+    public Integer getReleaseStatus() {
+        return releaseStatus;
+    }
+
+    public void setReleaseStatus(Integer releaseStatus) {
+        this.releaseStatus = releaseStatus;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Date getReleaseTime() {
+        return releaseTime;
+    }
+
+    public void setReleaseTime(Date releaseTime) {
+        this.releaseTime = releaseTime;
+    }
+}

+ 14 - 14
src/main/java/com/goafanti/common/utils/FileUtils.java

@@ -39,7 +39,7 @@ public class FileUtils {
 
 	/**
 	 * response 输出JSON
-	 * 
+	 *
 	 * @param hresponse
 	 * @param resultMap
 	 * @throws IOException
@@ -63,7 +63,7 @@ public class FileUtils {
 
 	/**
 	 * Excel报表导出
-	 * 
+	 *
 	 * @param response
 	 * @param fileName
 	 * @param workbook
@@ -97,7 +97,7 @@ public class FileUtils {
 
 	/**
 	 * 根据上传文件 拼接fileName
-	 * 
+	 *
 	 * @param mf
 	 * @param isPrivate
 	 * @param sign
@@ -109,7 +109,7 @@ public class FileUtils {
 		boolean uniq = false;
 		if (sign.indexOf("demand_picture") != -1|| sign.indexOf("achievement_picture") != -1 || sign.indexOf("user_picture")!=-1
 				|| sign.indexOf("jt_project_picture")!=-1 || sign.indexOf("jt_business_picture")!=-1 || sign.indexOf("honor_picture")!=-1
-				|| sign.indexOf("banners")!=-1|| sign.indexOf("head_portrait")!=-1 || sign.indexOf("video")!=-1 ) {
+				|| sign.indexOf("banners")!=-1|| sign.indexOf("head_portrait")!=-1 || sign.indexOf("video")!=-1 ||sign.indexOf("eventPlanning")!=-1 ) {
 			uniq = true;
 		}
 		String fileName = "";
@@ -124,7 +124,7 @@ public class FileUtils {
 		}
 		return fileName;
 	}
-	
+
 	public static String mosaicFileName( String fn, boolean isPrivate, String path, String uid) {
 		String fileName = "";
 		if (isPrivate) {
@@ -137,7 +137,7 @@ public class FileUtils {
 
 	/**
 	 * 获取下载文件名称
-	 * 
+	 *
 	 * @param path
 	 * @return
 	 */
@@ -159,7 +159,7 @@ public class FileUtils {
 
 	/**
 	 * 拼接文件路径
-	 * 
+	 *
 	 * @param root
 	 * @param params
 	 * @return
@@ -177,7 +177,7 @@ public class FileUtils {
 
 	/**
 	 * 拼接文件名字
-	 * 
+	 *
 	 * @param root
 	 * @param params
 	 * @return
@@ -196,7 +196,7 @@ public class FileUtils {
 	}
 
 	/**
-	 * 
+	 *
 	 * @param response
 	 * @param fileName
 	 * @param realFilePath
@@ -256,7 +256,7 @@ public class FileUtils {
         }
         return workbook;
         }
-	
+
 	public static Sheet pushReadFile(MultipartFile file) {
 		 //获得Workbook工作薄对象
 	       Workbook workbook = getWorkBook(file);
@@ -270,7 +270,7 @@ public class FileUtils {
 	       }
 	       return sheet;
 	}
-	
+
 	public static  int rowDispose(Sheet sheet, int firstRowNum) {
 		int lastRowNum=sheet.getLastRowNum();
 		//处理空白行
@@ -299,13 +299,13 @@ public class FileUtils {
    				    sheet.shiftRows(i+1, sheet.getLastRowNum(),-1);
    			}
    		}
-   		
+
    		if (lastRowNum<2) {
    			throw new BusinessException(new Error("未找到正确的参数。"));
 			}
 		return sheet.getLastRowNum();
 	}
-	
+
 	public static  int rowDisposeNotBlank(Sheet sheet, int firstRowNum) {
 		int lastRowNum=sheet.getLastRowNum();
 		//行数从0开始 默认使用2行做头部,则设置1
@@ -326,7 +326,7 @@ public class FileUtils {
 			}
 		return i;
 	}
-	
+
 	public static String getCellValue(Cell cell){
      	String cellValue = "";
      	if(cell == null){

+ 53 - 0
src/main/java/com/goafanti/news/bo/InputJtNews.java

@@ -0,0 +1,53 @@
+package com.goafanti.news.bo;
+
+import com.goafanti.common.model.JtNews;
+
+import java.util.Date;
+
+public class InputJtNews extends JtNews {
+
+    private Integer pageSize;
+    private Integer pageNo;
+
+    /**
+     * 创建时间
+     */
+    private String createTimes;
+
+    /**
+     * 发布时间
+     */
+    private String releaseTimes;
+
+    public String getCreateTimes() {
+        return createTimes;
+    }
+
+    public void setCreateTimes(String createTimes) {
+        this.createTimes = createTimes;
+    }
+
+    public String getReleaseTimes() {
+        return releaseTimes;
+    }
+
+    public void setReleaseTimes(String releaseTimes) {
+        this.releaseTimes = releaseTimes;
+    }
+
+    public Integer getPageSize() {
+        return pageSize;
+    }
+
+    public void setPageSize(Integer pageSize) {
+        this.pageSize = pageSize;
+    }
+
+    public Integer getPageNo() {
+        return pageNo;
+    }
+
+    public void setPageNo(Integer pageNo) {
+        this.pageNo = pageNo;
+    }
+}

+ 36 - 0
src/main/java/com/goafanti/news/bo/OutJtNews.java

@@ -0,0 +1,36 @@
+package com.goafanti.news.bo;
+
+import com.goafanti.common.model.JtNews;
+
+public class OutJtNews extends JtNews {
+
+
+
+    /**
+     * 创建时间
+     */
+    private String createTimes;
+
+    /**
+     * 发布时间
+     */
+    private String releaseTimes;
+
+    public String getCreateTimes() {
+        return createTimes;
+    }
+
+    public void setCreateTimes(String createTimes) {
+        this.createTimes = createTimes;
+    }
+
+    public String getReleaseTimes() {
+        return releaseTimes;
+    }
+
+    public void setReleaseTimes(String releaseTimes) {
+        this.releaseTimes = releaseTimes;
+    }
+
+
+}

+ 89 - 0
src/main/java/com/goafanti/news/controller/AdminEventPlanningApiController.java

@@ -0,0 +1,89 @@
+package com.goafanti.news.controller;
+
+import com.goafanti.common.bo.Result;
+import com.goafanti.common.constant.ErrorConstants;
+import com.goafanti.common.controller.BaseApiController;
+import com.goafanti.common.utils.StringUtils;
+import com.goafanti.news.bo.InputJtNews;
+import com.goafanti.news.service.EventPlanningService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletRequest;
+
+
+/**
+ * 新闻
+ */
+@RestController
+@RequestMapping(value = "/api/admin/eventPlanning")
+public class AdminEventPlanningApiController extends BaseApiController {
+	@Autowired
+	private EventPlanningService eventPlanningService;
+
+	@RequestMapping(value = "/add", method = RequestMethod.POST)
+	public Result addNews(InputJtNews in) {
+		Result res =new Result();
+		inputcheke(in, res);
+		if(!res.getError().isEmpty())return res;
+		res.data(eventPlanningService.add(in));
+		return res;
+	}
+
+	@RequestMapping(value = "/update", method = RequestMethod.POST)
+	public Result update(InputJtNews in) {
+		Result res =new Result();
+		res.data(eventPlanningService.update(in));
+		return res;
+	}
+
+	@RequestMapping(value = "/list", method = RequestMethod.GET)
+	public Result listNews(InputJtNews in) {
+		Result res =new Result();
+		res.data(eventPlanningService.listnewsDetails(in));
+		return res;
+	}
+
+	@RequestMapping(value = "/selectNews", method = RequestMethod.GET)
+	public Result selectNews(InputJtNews in) {
+		Result res =new Result();
+		if(in.getId()==null) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"ID","ID"));
+			return res;
+		}
+		if (!res.getError().isEmpty()) return res;
+		res.data(eventPlanningService.selectNews(in));
+		return res;
+	}
+
+	private Result inputcheke(InputJtNews in, Result res) {
+		if(StringUtils.isBlank(in.getContent())) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"内容","内容"));
+			return res;
+		}
+		if(StringUtils.isBlank(in.getTitle())) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"标题","标题"));
+			return res;
+		}
+		if(StringUtils.isBlank(in.getPublisher())) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"发布人","发布人"));
+			return res;
+		}
+		if(null==in.getType()) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"类型","类型"));
+			return res;
+		}
+		return res;
+	}
+
+	/** 上传图片 **/
+	@RequestMapping(value = "/uploadFile", method = RequestMethod.POST)
+	public Result uploadOrderInvoiceFile(HttpServletRequest req){
+		Result res = new Result();
+		res.setData(handleFile(res, "/eventPlanning/", false, req, "eventPlanning"));
+		return res;
+	}
+
+}

+ 19 - 0
src/main/java/com/goafanti/news/service/EventPlanningService.java

@@ -0,0 +1,19 @@
+package com.goafanti.news.service;
+
+import com.goafanti.common.model.JtNews;
+import com.goafanti.core.mybatis.page.Pagination;
+import com.goafanti.news.bo.InputJtNews;
+import com.goafanti.news.bo.OutJtNews;
+
+
+public interface EventPlanningService {
+
+
+    int add(InputJtNews in);
+
+    int update(InputJtNews in);
+
+    Pagination<OutJtNews> listnewsDetails(InputJtNews in);
+
+    OutJtNews selectNews(InputJtNews in);
+}

+ 73 - 0
src/main/java/com/goafanti/news/service/impl/EventPlanningServiceImpl.java

@@ -0,0 +1,73 @@
+package com.goafanti.news.service.impl;
+
+import com.goafanti.common.constant.AFTConstants;
+import com.goafanti.common.dao.JtNewsMapper;
+import com.goafanti.common.error.BusinessException;
+import com.goafanti.common.model.JtNews;
+import com.goafanti.common.utils.DateUtils;
+import com.goafanti.core.mybatis.BaseMybatisDao;
+import com.goafanti.core.mybatis.page.Pagination;
+import com.goafanti.news.bo.InputJtNews;
+import com.goafanti.news.bo.OutJtNews;
+import com.goafanti.news.service.EventPlanningService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.text.ParseException;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Service
+public  class EventPlanningServiceImpl extends BaseMybatisDao<JtNewsMapper> implements EventPlanningService {
+
+    @Autowired
+    private JtNewsMapper    jtNewsMapper;
+
+    @Override
+    public int add(InputJtNews in) {
+        if (in.getReleaseTimes()!=null) {
+            try {
+                in.setReleaseTime(DateUtils.parseDate(in.getReleaseTimes(), AFTConstants.YYYYMMDDHHMMSS));
+            } catch (ParseException e) {
+                throw new BusinessException("转换异常");
+            }
+        }
+        if (in.getReleaseStatus()==1&&in.getReleaseTime()==null) {
+            in.setReleaseTime(new Date());
+        }
+
+        return jtNewsMapper.insertSelective(in);
+    }
+
+    @Override
+    public int update(InputJtNews in) {
+        if (in.getReleaseTimes()!=null) {
+            try {
+
+                in.setReleaseTime(DateUtils.parseDate(in.getReleaseTimes(), AFTConstants.YYYYMMDDHHMMSS));
+            } catch (ParseException e) {
+                throw new BusinessException("转换异常");
+            }
+        }
+
+        if (in.getReleaseStatus()!=null&&in.getReleaseStatus()==1&&in.getReleaseTime()==null) {
+            in.setReleaseTime(new Date());
+        }
+
+        return jtNewsMapper.updateByPrimaryKeySelective(in);
+    }
+
+    @Override
+    public Pagination<OutJtNews> listnewsDetails(InputJtNews in) {
+        Map<String, Object> params = new HashMap<>();
+        params.put("n", in);
+        return (Pagination<OutJtNews>) findPage("findNewsList", "findNewsCount", params, in.getPageNo(),in.getPageSize());
+    }
+
+    @Override
+    public OutJtNews selectNews(InputJtNews in) {
+        return jtNewsMapper.selectByid(in.getId());
+    }
+}

+ 5 - 4
src/main/resources/props/config_local.properties

@@ -39,14 +39,15 @@ app.mobile.website=http://m.jishutao.com/1.0/template/index.html
 template.cacheable=false
 
 #static.host=//ss.jishutao.com/client/1.2.8
-#portal.host=//ss.jishutao.com/portal/1.2.11
+portal.host=//ss.jishutao.com/portal/1.2.12
 skjt.host=//ss.jishutao.com/skjt/1.3
 
 
 #本地
-#static.host=//172.16.0.255/client/1.2.8
-static.host=//172.16.0.255:3000/jitao/client/1.2.9
-portal.host=//172.16.0.255:3000/jitao/portal/1.2.11
+static.host=//172.16.1.187/client/1.2.8
+#static.host=//172.16.0.255:3000/jitao/client/1.2.9
+#portal.host=//172.16.0.255:3000/jitao/portal/1.2.12
+#portal.host=//172.16.1.187/portal/1.2.11
 
 #avatar.host=//ss.jishutao.com
 #avatar.upload.host=//ss.jishutao.com/upload

+ 1 - 0
src/main/resources/shiro_base_auth.ini

@@ -1,6 +1,7 @@
 [base_auth]
 /=device
 /index=anon
+/eventPlanning/**=anon
 /login=anon
 /user/login.html=anon
 /user/login=anon

+ 13 - 4
src/main/webapp/WEB-INF/views/common.html

@@ -51,16 +51,21 @@
 					</li>
 				</ul>
 			</div>
+			<div class="technology"><a class="technology_login" href="javascript:;" >技术创业</a><a class="technology_estimate" th:href="@{/portal/evaluation/evaluate}">技术评估</a></div>
 			<div class="APP">
 				<img th:src="${portalHost+'/img/indedImg/inded30.png'}" alt="" />
-				<a>APP下载
-					<span class="webkitDown"></span>
+				<a>APP下载<span class="webkitDown"></span>
 				</a>
+
 				<div class="xialaewm">
 					<div class="cont_rights android" id="Android">
 						<img th:src="${portalHost+'/img/erweima_android.jpg'}" alt="">
 						<p>Android版</p>
 					</div>
+					<div class="cont_rights ios" id="ios">
+						<img th:src="${portalHost+'/img/erweima_iphone.png'}" alt="">
+						<p>ios版</p>
+					</div>
 				</div>
 			</div>
 		</div>
@@ -242,7 +247,7 @@
 					</li>
 					<li th:class="${subM}=='eventPlanning'?active:''" >
 						<div>
-							<a th:href="@{/portal/thinkTank/policyList?type=0}" >活动策划</a>
+							<a th:href="@{/portal/eventPlanning}" >活动策划</a>
 						</div>
 					</li>
                      <!-- <li th:class="${subM}=='special'?active:''" >
@@ -311,10 +316,14 @@
 							<p>合作电话:0731-89907207</p>
 							<p>400-8800-962</p>
 						</div>
-						<div class="cont_right android"  style="margin-left: 210px;">
+						<div class="cont_right android"  style="margin-left: 200px;">
 							<img th:src="${portalHost+'/img/erweima_android.jpg'}" alt=""/>
 							<p>Android版</p>
 						</div>
+						<div class="cont_right ios" style="margin-right: 5px;">
+						<img th:src="${portalHost+'/img/erweima_iphone.png'}" alt="" style="width: 81px;height: 78px ;"/>
+						<p>ios版</p >
+						</div>
 						<div class="cont_right">
 							<img th:src="${portalHost+'/img/erweima.jpg'}" alt=""/>
 							<p>微信公众号</p>

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 69 - 0
src/main/webapp/WEB-INF/views/portal/eventDetails.html


+ 44 - 0
src/main/webapp/WEB-INF/views/portal/eventPlanning.html

@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head th:replace="common::header(~{::title},~{::link})">
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta http-equiv="X-UA-Compatible" content="ie=edge">
+    <title>技淘网-活动策划</title>
+    <link th:href="${portalHost + '/dll/dll.css'}" rel="stylesheet">
+    <link th:href="${portalHost + '/vendors.css'}" rel="stylesheet">
+    <link th:href="${portalHost + '/eventPlanning.css'}" rel="stylesheet">
+
+</head>
+
+<body>
+    <div class="app">
+        <div th:replace="common::nav('','eventPlanning')"></div>
+        <!-- 主体内容 -->
+        <div class="news main">
+            <div class="container">
+                <!-- 新闻列表 -->
+
+                <ul class="newslist">
+
+                </ul>
+                <!-- 新闻列表  end -->
+                <!-- 分页 -->
+                <div class="page_1"></div>
+                <!-- 分页 end -->
+            </div>
+        </div>
+        <!-- 主体内容  end -->
+        <!-- 底部 -->
+        <footer>
+            <div th:replace="common::copyright"></div>
+            <div th:replace="common::login"></div>
+        </footer>
+    </div>
+        <div th:replace="common::footer(~{::script})">
+            <script type="text/javascript" th:src="${portalHost + '/dll/dll.js'}"></script>
+            <script type="text/javascript" th:src="${portalHost + '/vendors.js'}"></script>
+            <script type="text/javascript" th:src="${portalHost + '/eventPlanning.js'}"></script>
+        </div>
+</body>
+</html>

+ 1 - 1
src/main/webapp/WEB-INF/views/portal/service/services.html

@@ -85,7 +85,7 @@
                         <span>发布我的服务需求</span>
                     </li>
                     <li>
-                    	<a onclick="openZoosUrl('chatwin');">
+                    	<a class="reldemand">
                         <img th:src="${portalHost+'/img/newMenu/serves_3.png'}" alt="">
                         <span>技术创业</span>
                         </a>

+ 0 - 7
src/main/webapp/WEB-INF/views/user/signIn.html

@@ -32,13 +32,6 @@
 						<span class="Tips "></span>
 					</div>
 					<div class="zhuce_input">
-						<img th:src="${portalHost+'/img/indedImg/enroll4.png'}" alt=""/>
-						<input type="text" name="cellCode" placeholder="手机验证码" id="photo_num" autocomplete="off" />
-						<input type="button" id="photo" value="获取验证码" disabled="disabled"/>
-						<span class="star"> * </span>
-						<span class="Tips"></span>
-					</div>
-					<div class="zhuce_input">
 						<img th:src="${portalHost+'/img/indedImg/enroll6.png'}" alt=""/>
 						<input type="password" name="userPassword" placeholder="请输入密码" id="userpassword" autocomplete="off"/>
 						<span class="star"> * </span>