zhengkaixin 3 سال پیش
والد
کامیت
4cf60a080b
13فایلهای تغییر یافته به همراه2382 افزوده شده و 207 حذف شده
  1. 2 26
      getJob.html
  2. 0 0
      img/sex0.png
  3. 0 0
      img/sex1.png
  4. BIN
      img/sex2.png
  5. 53 142
      index.html
  6. 492 0
      js/jquery.loadTemplate.js
  7. 146 0
      js/qrcode.js
  8. 31 0
      linkjs/constant.js
  9. 24 1
      linkjs/getJob.js
  10. 79 0
      linkjs/index.js
  11. 1489 0
      linkjs/indexcopy.js
  12. 50 0
      linkjs/recruit.js
  13. 16 38
      recruit.html

+ 2 - 26
getJob.html

@@ -82,32 +82,8 @@
 					  <th>招聘人数</th>
 					  <th>招聘人数</th>
 					</tr>
 					</tr>
 				  </thead>
 				  </thead>
-				  <tbody>
-					<tr>
-					  <td>企业名称</td>
-					  <td>5</td>
-					  <td>20</td>
-					</tr>
-					<tr>
-					  <td>企业名称</td>
-					  <td>5</td>
-					  <td>20</td>
-					</tr>
-					<tr>
-					  <td>企业名称</td>
-					  <td>5</td>
-					  <td>20</td>
-					</tr>
-					<tr>
-					  <td>企业名称</td>
-					  <td>5</td>
-					  <td>20</td>
-					</tr>
-					<tr>
-					  <td>企业名称</td>
-					  <td>5</td>
-					  <td>20</td>
-					</tr>
+				  <tbody class="data-companyList">
+					
 				  </tbody>
 				  </tbody>
 				</table>
 				</table>
 				<!-- <div class="tab-more">查看更多</div> -->
 				<!-- <div class="tab-more">查看更多</div> -->

+ 0 - 0
img/Frame 106.png → img/sex0.png


+ 0 - 0
img/Frame 105.png → img/sex1.png


BIN
img/sex2.png


+ 53 - 142
index.html

@@ -20,17 +20,18 @@
 <div class="app">
 <div class="app">
 	<div class="head">
 	<div class="head">
 		<div class="head-left">
 		<div class="head-left">
-			<img src="./img/logo.png" alt="">
+			<img class="data-company-logo" src="./img/logo.png" alt="">
+			
 			<div class="head-text">
 			<div class="head-text">
-				<h1>湖北荆鹏软件集团有限公司</h1>
+				<h1 class="data-company-name"></h1>
 				<div class="head-label">
 				<div class="head-label">
-					<span>1-50人</span>
-					<span>IT行业/计算机硬件</span>
+					<span class="data-scale" ></span>
+					<span class="data-industry"  ></span>
 				</div>
 				</div>
 			</div>
 			</div>
 		</div>
 		</div>
 		<div class="head-right">
 		<div class="head-right">
-			<h1>席位号<span>A01</span></h1>
+			<h1>席位号<span class="data-seatNumber">A01</span></h1>
 		</div>
 		</div>
 	</div>
 	</div>
 	<div class="main">
 	<div class="main">
@@ -40,131 +41,52 @@
 				<span>企业介绍</span>
 				<span>企业介绍</span>
 			</div>
 			</div>
 			<div class="main-content">
 			<div class="main-content">
-				<div class="main-about">
-					<p>湖北荆鹏集团组建于2009年6月,其前身为于1998年9
-					月18日成立的湖北荆鹏软件开发有限公司。现有注册资金1000万元。
-					</p>
-					<p>集团是一家综合性IT研发企业,于2001年、2002年
-					分别被湖北省科技厅、湖北省信息产业厅认证为省级高
-					新技术企业与省级软件企业:于2009年4月通过
-					SO9000质量管理体系认证。</p>
+				<div class="main-about data-introduction">
+					
 				</div>
 				</div>
-				<video width="500" height="300" class="main-video">
-					<source src="myvideo.mp4" type="video/mp4"></source>
-					<source src="myvideo.ogv" type="video/ogg"></source>
-					<source src="myvideo.webm" type="video/webm"></source>
-					<object width="" height="" type="application/x-shockwave-flash" data="myvideo.swf">
-						<param name="movie" value="myvideo.swf" />
-						<param name="flashvars" value="autostart=true&amp;file=myvideo.swf" />
-					</object>
-				</video>
+			
+				
+				
 			</div>
 			</div>
 		</div>
 		</div>
+		<script type="text/text/x-jquery-tmpl" id="tabpanel-temp">
+		<div role="tabpanel" class="tab-pane " id="${id}">
+								  <div class="work-row">
+									  <p >招聘人数:${positionNumber}</p><p>学历要求:${educationName}</p>
+								  </div>
+								  <div class="work-row">
+								  	<p>性别要求:${positionSexN}</p><p>工作经验:${workYearName}</p>
+								  </div>
+									<div class="work-main">
+										<div class="title"> 职责描述:</div>
+										<div class="content">
+											${positionMessage}
+										</div>
+										<div class="title"> 任职要求:</div>
+										<div class="content">
+										${requirements}
+										 </div>
+									</div>
+		</div> 
+		</script>
 		<div class="main-middle">
 		<div class="main-middle">
 			<div class="main-title">
 			<div class="main-title">
 				<img src="./img/Frame%2096.png" alt="">
 				<img src="./img/Frame%2096.png" alt="">
-				<span>招聘职位(4)</span>
+				<span class="data-recruitmentList-length">招聘职位()</span>
 			</div>
 			</div>
 			<div class="main-content">
 			<div class="main-content">
 				<ul class="main-nav-tabs" role="tablist">
 				<ul class="main-nav-tabs" role="tablist">
-				   <li role="presentation" class="active"><a href="#home" aria-controls="home" role="tab" data-toggle="tab">JAVA开发</a></li>
-				   <li role="presentation"><a href="#profile" aria-controls="profile" role="tab" data-toggle="tab">前端开发</a></li>
-				   <li role="presentation"><a href="#messages" aria-controls="messages" role="tab" data-toggle="tab">PHP开发</a></li>
-				   <li role="presentation"><a href="#settings" aria-controls="settings" role="tab" data-toggle="tab">UI设计师</a></li>
+				   
 				 </ul>
 				 </ul>
 				<div class="main-tab">
 				<div class="main-tab">
+					
 					<div class="tab-content">
 					<div class="tab-content">
-					  <div role="tabpanel" class="tab-pane active" id="home">
-						  <div class="work-row">
-							  <p>招聘人数:2</p><p>学历要求:大学本科</p>
-						  </div>
-						  <div class="work-row">
-						  	<p>性别要求:不限</p><p>工作经验:2年以上</p>
-						  </div>
-							<div class="work-main">
-								<div class="title"> 职责描述:</div>
-								<div class="content">
-									<p>1、参与业务需求设计讨论,进行应用程序开发;</p>
-									<p>2、负责平台软件框架的研究,设计和实现、关键技术验证和选型等工作;</p>
-									<p>3、完成项目设计、编码、测试和优化;</p>
-									<p>4、编写相关的开发文档,如技术文档,设计文档,测试文档等;</p>
-									<p>5、对所开发的平台产品、SDK进行版本更新及维护。</p>
-								</div>
-								<div class="title"> 任职要求:</div>
-								<div class="content">
-									<p>1、大专以上学历,3年以上工作经验;</p>
-									<p>2、有扎实的JAVA编程基础,良好的数据结构和算法,较强的逻辑思维能力;</p>
-									<p>3、熟悉相关架构,熟练开发、调试、适配程序;</p>
-									<p>4、熟练Dubbo,mybtis,maven,Spring mvc,Spring boot,Spring Cloud,等,对分布式开发有一定经验。</p>
-								</div>
-							</div>
-					  </div>
-					  <div role="tabpanel" class="tab-pane" id="profile">
-						  <div class="work-row">
-						  							  <p>招聘人数:2</p><p>学历要求:大学本科</p>
-						  </div>
-						  <div class="work-row">
-						  	<p>性别要求:不限</p><p>工作经验:2年以上</p>
-						  </div>
-							<div class="work-main">
-								<div class="title"> 职责描述:</div>
-								<div class="content">
-									<p>1、参与业务需求设计讨论,进行应用程序开发;</p>
-									<p>2、负责平台软件框架的研究,设计和实现、关键技术验证和选型等工作;</p>
-									<p>3、完成项目设计、编码、测试和优化;</p>
-									<p>4、编写相关的开发文档,如技术文档,设计文档,测试文档等;</p>
-								
-								</div>
-								<div class="title"> 任职要求:</div>
-								<div class="content">
-									<p>1、大专以上学历,3年以上工作经验;</p>
-									<p>2、有扎实的JAVA编程基础,良好的数据结构和算法,较强的逻辑思维能力;</p>
-									<p>3、熟悉相关架构,熟练开发、调试、适配程序;</p>
-								</div>
-							</div>
-					  </div>
-					  <div role="tabpanel" class="tab-pane" id="messages"><div class="work-row">
-							  <p>招聘人数:2</p><p>学历要求:大学本科</p>
-						  </div>
-						  <div class="work-row">
-						  	<p>性别要求:不限</p><p>工作经验:2年以上</p>
-						  </div>
-							<div class="work-main">
-								<div class="title"> 职责描述:</div>
-								<div class="content">
-									<p>1、参与业务需求设计讨论,进行应用程序开发;</p>
-									<p>2、负责平台软件框架的研究,设计和实现、关键技术验证和选型等工作;</p>
-									<p>3、完成项目设计、编码、测试和优化;</p>
-								
-								</div>
-								<div class="title"> 任职要求:</div>
-								<div class="content">
-									<p>1、大专以上学历,3年以上工作经验;</p>
-									<p>2、有扎实的JAVA编程基础,良好的数据结构和算法,较强的逻辑思维能力;</p>
-							</div>
-							</div></div>
-					  <div role="tabpanel" class="tab-pane" id="settings"><div class="work-row">
-							  <p>招聘人数:2</p><p>学历要求:大学本科</p>
-						  </div>
-						  <div class="work-row">
-						  	<p>性别要求:不限</p><p>工作经验:2年以上</p>
-						  </div>
-							<div class="work-main">
-								<div class="title"> 职责描述:</div>
-								<div class="content">
-									<p>1、参与业务需求设计讨论,进行应用程序开发;</p>
-									<p>2、负责平台软件框架的研究,设计和实现、关键技术验证和选型等工作;</p>
-							
-								</div>
-								<div class="title"> 任职要求:</div>
-								<div class="content">
-									<p>1、大专以上学历,3年以上工作经验;</p>
-								</div>
-							</div></div>
-					</div>
+					 
+					</div> 
 					<div class="tab-code">
 					<div class="tab-code">
 						<div class="tab-code-img">
 						<div class="tab-code-img">
-							<img src="./img/1634806459.png" alt="">
+ 							<div id="qrcode"></div>
+
 							<p>扫描二维码投递简历</p>
 							<p>扫描二维码投递简历</p>
 						</div>
 						</div>
 					</div>
 					</div>
@@ -174,40 +96,24 @@
 		<div class="main-right">
 		<div class="main-right">
 			<div class="main-title">
 			<div class="main-title">
 				<img src="./img/Frame%2094.png" alt="">
 				<img src="./img/Frame%2094.png" alt="">
-				<span>简历投递记录(3)</span>
+				<span class="data-jobRecruitmentList-length">简历投递记录()</span>
 			</div>
 			</div>
 			<div class="main-content">
 			<div class="main-content">
-				<div class="deliver">
-					<div class="deliver-item">
-						<img src="./img/Frame%20105.png" alt="">
-						<div class="deliver-text">
-							<div class="deliver-title">
-								<h2>乔女士</h2>
-								<span>08-01 12:21:21</span>
-							</div>
-							<p>投递了UI设计岗位</p>
-						</div>
-					</div>
+				<script type="text/text/x-jquery-tmpl" id="deliver-temp">
 					<div class="deliver-item">
 					<div class="deliver-item">
-						<img src="./img/Frame%20105.png" alt="">
+						<img src="./img/sex${sex}.png" alt="">
 						<div class="deliver-text">
 						<div class="deliver-text">
 							<div class="deliver-title">
 							<div class="deliver-title">
-								<h2>乔女士</h2>
-								<span>08-01 12:21:21</span>
+								<h2>${name}</h2>
+								<span>${time}</span>
 							</div>
 							</div>
-							<p>投递了UI设计岗位</p>
-						</div>
-					</div>
-					<div class="deliver-item">
-						<img src="./img/Frame%20106.png" alt="">
-						<div class="deliver-text">
-							<div class="deliver-title">
-								<h2>乔女士</h2>
-								<span>08-01 12:21:21</span>
-							</div>
-							<p>投递了UI设计岗位</p>
+							<p>投递了${job}</p>
 						</div>
 						</div>
 					</div>
 					</div>
+				</script>
+				<div class="deliver">
+					
+				 
 				</div>
 				</div>
 			</div>
 			</div>
 		</div>
 		</div>
@@ -217,6 +123,10 @@
 <script src="js/jquery.min.js"></script>
 <script src="js/jquery.min.js"></script>
 <!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 -->
 <!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 -->
 <script src="js/bootstrap.min.js"></script>
 <script src="js/bootstrap.min.js"></script>
+<script src="js/qrcode.js"></script>
+<script src="js/jquery.loadTemplate.js"></script>
+<script src="./linkjs/index.js" ></script>
+
 </body>
 </body>
 <style>
 <style>
 	.work-row{
 	.work-row{
@@ -264,6 +174,7 @@
 		margin-top: 10px;
 		margin-top: 10px;
 	}
 	}
 	.main-nav-tabs{
 	.main-nav-tabs{
+		flex-wrap: wrap;
 		display: flex;
 		display: flex;
 		align-items: center;
 		align-items: center;
 	}
 	}

+ 492 - 0
js/jquery.loadTemplate.js

@@ -0,0 +1,492 @@
+/*!
+ * jQuery Templates Plugin 1.0.0pre
+ * http://github.com/jquery/jquery-tmpl
+ * Requires jQuery 1.4.2
+ *
+ * Copyright 2011, Software Freedom Conservancy, Inc.
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ */
+(function( factory ) {
+	if (typeof define === 'function' && define.amd) {
+		// Loading from AMD script loader. Register as an anonymous module.
+		define( ['jquery'], factory );
+	} else {
+		// Browser using plain <script> tag
+		factory( jQuery );
+	}
+}(function( jQuery ){
+	var oldManip = jQuery.fn.domManip, tmplItmAtt = "_tmplitem", htmlExpr = /^[^<]*(<[\w\W]+>)[^>]*$|\{\{\! /,
+		newTmplItems = {}, wrappedItems = {}, appendToTmplItems, topTmplItem = { key: 0, data: {} }, itemKey = 0, cloneIndex = 0, stack = [];
+
+	function newTmplItem( options, parentItem, fn, data ) {
+		// Returns a template item data structure for a new rendered instance of a template (a 'template item').
+		// The content field is a hierarchical array of strings and nested items (to be
+		// removed and replaced by nodes field of dom elements, once inserted in DOM).
+		var newItem = {
+			data: data || (data === 0 || data === false) ? data : (parentItem ? parentItem.data : {}),
+			_wrap: parentItem ? parentItem._wrap : null,
+			tmpl: null,
+			parent: parentItem || null,
+			nodes: [],
+			calls: tiCalls,
+			nest: tiNest,
+			wrap: tiWrap,
+			html: tiHtml,
+			update: tiUpdate
+		};
+		if ( options ) {
+			jQuery.extend( newItem, options, { nodes: [], parent: parentItem });
+		}
+		if ( fn ) {
+			// Build the hierarchical content to be used during insertion into DOM
+			newItem.tmpl = fn;
+			newItem._ctnt = newItem._ctnt || newItem.tmpl( jQuery, newItem );
+			newItem.key = ++itemKey;
+			// Keep track of new template item, until it is stored as jQuery Data on DOM element
+			(stack.length ? wrappedItems : newTmplItems)[itemKey] = newItem;
+		}
+		return newItem;
+	}
+
+	// Override appendTo etc., in order to provide support for targeting multiple elements. (This code would disappear if integrated in jquery core).
+	jQuery.each({
+		appendTo: "append",
+		prependTo: "prepend",
+		insertBefore: "before",
+		insertAfter: "after",
+		replaceAll: "replaceWith"
+	}, function( name, original ) {
+		jQuery.fn[ name ] = function( selector ) {
+			var ret = [], insert = jQuery( selector ), elems, i, l, tmplItems,
+				parent = this.length === 1 && this[0].parentNode;
+
+			appendToTmplItems = newTmplItems || {};
+			if ( parent && parent.nodeType === 11 && parent.childNodes.length === 1 && insert.length === 1 ) {
+				insert[ original ]( this[0] );
+				ret = this;
+			} else {
+				for ( i = 0, l = insert.length; i < l; i++ ) {
+					cloneIndex = i;
+					elems = (i > 0 ? this.clone(true) : this).get();
+					jQuery( insert[i] )[ original ]( elems );
+					ret = ret.concat( elems );
+				}
+				cloneIndex = 0;
+				ret = this.pushStack( ret, name, insert.selector );
+			}
+			tmplItems = appendToTmplItems;
+			appendToTmplItems = null;
+			jQuery.tmpl.complete( tmplItems );
+			return ret;
+		};
+	});
+
+	jQuery.fn.extend({
+		// Use first wrapped element as template markup.
+		// Return wrapped set of template items, obtained by rendering template against data.
+		tmpl: function( data, options, parentItem ) {
+			return jQuery.tmpl( this[0], data, options, parentItem );
+		},
+
+		// Find which rendered template item the first wrapped DOM element belongs to
+		tmplItem: function() {
+			return jQuery.tmplItem( this[0] );
+		},
+
+		// Consider the first wrapped element as a template declaration, and get the compiled template or store it as a named template.
+		template: function( name ) {
+			return jQuery.template( name, this[0] );
+		},
+
+		domManip: function( args, table, callback, options ) {
+			if ( args[0] && jQuery.isArray( args[0] )) {
+				var dmArgs = jQuery.makeArray( arguments ), elems = args[0], elemsLength = elems.length, i = 0, tmplItem;
+				while ( i < elemsLength && !(tmplItem = jQuery.data( elems[i++], "tmplItem" ))) {}
+				if ( tmplItem && cloneIndex ) {
+					dmArgs[2] = function( fragClone ) {
+						// Handler called by oldManip when rendered template has been inserted into DOM.
+						jQuery.tmpl.afterManip( this, fragClone, callback );
+					};
+				}
+				oldManip.apply( this, dmArgs );
+			} else {
+				oldManip.apply( this, arguments );
+			}
+			cloneIndex = 0;
+			if ( !appendToTmplItems ) {
+				jQuery.tmpl.complete( newTmplItems );
+			}
+			return this;
+		}
+	});
+
+	jQuery.extend({
+		// Return wrapped set of template items, obtained by rendering template against data.
+		tmpl: function( tmpl, data, options, parentItem ) {
+			var ret, topLevel = !parentItem;
+			if ( topLevel ) {
+				// This is a top-level tmpl call (not from a nested template using {{tmpl}})
+				parentItem = topTmplItem;
+				tmpl = jQuery.template[tmpl] || jQuery.template( null, tmpl );
+				wrappedItems = {}; // Any wrapped items will be rebuilt, since this is top level
+			} else if ( !tmpl ) {
+				// The template item is already associated with DOM - this is a refresh.
+				// Re-evaluate rendered template for the parentItem
+				tmpl = parentItem.tmpl;
+				newTmplItems[parentItem.key] = parentItem;
+				parentItem.nodes = [];
+				if ( parentItem.wrapped ) {
+					updateWrapped( parentItem, parentItem.wrapped );
+				}
+				// Rebuild, without creating a new template item
+				return jQuery( build( parentItem, null, parentItem.tmpl( jQuery, parentItem ) ));
+			}
+			if ( !tmpl ) {
+				return []; // Could throw...
+			}
+			if ( typeof data === "function" ) {
+				data = data.call( parentItem || {} );
+			}
+			if ( options && options.wrapped ) {
+				updateWrapped( options, options.wrapped );
+			}
+			ret = jQuery.isArray( data ) ?
+				jQuery.map( data, function( dataItem ) {
+					return dataItem ? newTmplItem( options, parentItem, tmpl, dataItem ) : null;
+				}) :
+				[ newTmplItem( options, parentItem, tmpl, data ) ];
+			return topLevel ? jQuery( build( parentItem, null, ret ) ) : ret;
+		},
+
+		// Return rendered template item for an element.
+		tmplItem: function( elem ) {
+			var tmplItem;
+			if ( elem instanceof jQuery ) {
+				elem = elem[0];
+			}
+			while ( elem && elem.nodeType === 1 && !(tmplItem = jQuery.data( elem, "tmplItem" )) && (elem = elem.parentNode) ) {}
+			return tmplItem || topTmplItem;
+		},
+
+		// Set:
+		// Use $.template( name, tmpl ) to cache a named template,
+		// where tmpl is a template string, a script element or a jQuery instance wrapping a script element, etc.
+		// Use $( "selector" ).template( name ) to provide access by name to a script block template declaration.
+
+		// Get:
+		// Use $.template( name ) to access a cached template.
+		// Also $( selectorToScriptBlock ).template(), or $.template( null, templateString )
+		// will return the compiled template, without adding a name reference.
+		// If templateString includes at least one HTML tag, $.template( templateString ) is equivalent
+		// to $.template( null, templateString )
+		template: function( name, tmpl ) {
+			if (tmpl) {
+				// Compile template and associate with name
+				if ( typeof tmpl === "string" ) {
+					// This is an HTML string being passed directly in.
+					tmpl = buildTmplFn( tmpl );
+				} else if ( tmpl instanceof jQuery ) {
+					tmpl = tmpl[0] || {};
+				}
+				if ( tmpl.nodeType ) {
+					// If this is a template block, use cached copy, or generate tmpl function and cache.
+					tmpl = jQuery.data( tmpl, "tmpl" ) || jQuery.data( tmpl, "tmpl", buildTmplFn( tmpl.innerHTML ));
+					// Issue: In IE, if the container element is not a script block, the innerHTML will remove quotes from attribute values whenever the value does not include white space.
+					// This means that foo="${x}" will not work if the value of x includes white space: foo="${x}" -> foo=value of x.
+					// To correct this, include space in tag: foo="${ x }" -> foo="value of x"
+				}
+				return typeof name === "string" ? (jQuery.template[name] = tmpl) : tmpl;
+			}
+			// Return named compiled template
+			return name ? (typeof name !== "string" ? jQuery.template( null, name ):
+				(jQuery.template[name] ||
+					// If not in map, and not containing at least on HTML tag, treat as a selector.
+					// (If integrated with core, use quickExpr.exec)
+					jQuery.template( null, htmlExpr.test( name ) ? name : jQuery( name )))) : null;
+		},
+
+		encode: function( text ) {
+			// Do HTML encoding replacing < > & and ' and " by corresponding entities.
+			return ("" + text).split("<").join("&lt;").split(">").join("&gt;").split('"').join("&#34;").split("'").join("&#39;");
+		}
+	});
+
+	jQuery.extend( jQuery.tmpl, {
+		tag: {
+			"tmpl": {
+				_default: { $2: "null" },
+				open: "if($notnull_1){__=__.concat($item.nest($1,$2));}"
+				// tmpl target parameter can be of type function, so use $1, not $1a (so not auto detection of functions)
+				// This means that {{tmpl foo}} treats foo as a template (which IS a function).
+				// Explicit parens can be used if foo is a function that returns a template: {{tmpl foo()}}.
+			},
+			"wrap": {
+				_default: { $2: "null" },
+				open: "$item.calls(__,$1,$2);__=[];",
+				close: "call=$item.calls();__=call._.concat($item.wrap(call,__));"
+			},
+			"each": {
+				_default: { $2: "$index, $value" },
+				open: "if($notnull_1){$.each($1a,function($2){with(this){",
+				close: "}});}"
+			},
+			"if": {
+				open: "if(($notnull_1) && $1a){",
+				close: "}"
+			},
+			"else": {
+				_default: { $1: "true" },
+				open: "}else if(($notnull_1) && $1a){"
+			},
+			"html": {
+				// Unecoded expression evaluation.
+				open: "if($notnull_1){__.push($1a);}"
+			},
+			"=": {
+				// Encoded expression evaluation. Abbreviated form is ${}.
+				_default: { $1: "$data" },
+				open: "if($notnull_1){__.push($.encode($1a));}"
+			},
+			"!": {
+				// Comment tag. Skipped by parser
+				open: ""
+			}
+		},
+
+		// This stub can be overridden, e.g. in jquery.tmplPlus for providing rendered events
+		complete: function( items ) {
+			newTmplItems = {};
+		},
+
+		// Call this from code which overrides domManip, or equivalent
+		// Manage cloning/storing template items etc.
+		afterManip: function afterManip( elem, fragClone, callback ) {
+			// Provides cloned fragment ready for fixup prior to and after insertion into DOM
+			var content = fragClone.nodeType === 11 ?
+				jQuery.makeArray(fragClone.childNodes) :
+				fragClone.nodeType === 1 ? [fragClone] : [];
+
+			// Return fragment to original caller (e.g. append) for DOM insertion
+			callback.call( elem, fragClone );
+
+			// Fragment has been inserted:- Add inserted nodes to tmplItem data structure. Replace inserted element annotations by jQuery.data.
+			storeTmplItems( content );
+			cloneIndex++;
+		}
+	});
+
+	//========================== Private helper functions, used by code above ==========================
+
+	function build( tmplItem, nested, content ) {
+		// Convert hierarchical content into flat string array
+		// and finally return array of fragments ready for DOM insertion
+		var frag, ret = content ? jQuery.map( content, function( item ) {
+			return (typeof item === "string") ?
+				// Insert template item annotations, to be converted to jQuery.data( "tmplItem" ) when elems are inserted into DOM.
+				(tmplItem.key ? item.replace( /(<\w+)(?=[\s>])(?![^>]*_tmplitem)([^>]*)/g, "$1 " + tmplItmAtt + "=\"" + tmplItem.key + "\" $2" ) : item) :
+				// This is a child template item. Build nested template.
+				build( item, tmplItem, item._ctnt );
+		}) :
+		// If content is not defined, insert tmplItem directly. Not a template item. May be a string, or a string array, e.g. from {{html $item.html()}}.
+		tmplItem;
+		if ( nested ) {
+			return ret;
+		}
+
+		// top-level template
+		ret = ret.join("");
+
+		// Support templates which have initial or final text nodes, or consist only of text
+		// Also support HTML entities within the HTML markup.
+		ret.replace( /^\s*([^<\s][^<]*)?(<[\w\W]+>)([^>]*[^>\s])?\s*$/, function( all, before, middle, after) {
+			frag = jQuery( middle ).get();
+
+			storeTmplItems( frag );
+			if ( before ) {
+				frag = unencode( before ).concat(frag);
+			}
+			if ( after ) {
+				frag = frag.concat(unencode( after ));
+			}
+		});
+		return frag ? frag : unencode( ret );
+	}
+
+	function unencode( text ) {
+		// Use createElement, since createTextNode will not render HTML entities correctly
+		var el = document.createElement( "div" );
+		el.innerHTML = text;
+		return jQuery.makeArray(el.childNodes);
+	}
+
+	// Generate a reusable function that will serve to render a template against data
+	function buildTmplFn( markup ) {
+		return new Function("jQuery","$item",
+			// Use the variable __ to hold a string array while building the compiled template. (See https://github.com/jquery/jquery-tmpl/issues#issue/10).
+			"var $=jQuery,call,__=[],$data=$item.data;" +
+
+			// Introduce the data as local variables using with(){}
+			"with($data){__.push('" +
+
+			// Convert the template into pure JavaScript
+			jQuery.trim(markup)
+				.replace( /([\\'])/g, "\\$1" )
+				.replace( /[\r\t\n]/g, " " )
+				.replace( /\$\{([^\}]*)\}/g, "{{= $1}}" )
+				.replace( /\{\{(\/?)(\w+|.)(?:\(((?:[^\}]|\}(?!\}))*?)?\))?(?:\s+(.*?)?)?(\(((?:[^\}]|\}(?!\}))*?)\))?\s*\}\}/g,
+				function( all, slash, type, fnargs, target, parens, args ) {
+					var tag = jQuery.tmpl.tag[ type ], def, expr, exprAutoFnDetect;
+					if ( !tag ) {
+						throw "Unknown template tag: " + type;
+					}
+					def = tag._default || [];
+					if ( parens && !/\w$/.test(target)) {
+						target += parens;
+						parens = "";
+					}
+					if ( target ) {
+						target = unescape( target );
+						args = args ? ("," + unescape( args ) + ")") : (parens ? ")" : "");
+						// Support for target being things like a.toLowerCase();
+						// In that case don't call with template item as 'this' pointer. Just evaluate...
+						expr = parens ? (target.indexOf(".") > -1 ? target + unescape( parens ) : ("(" + target + ").call($item" + args)) : target;
+						exprAutoFnDetect = parens ? expr : "(typeof(" + target + ")==='function'?(" + target + ").call($item):(" + target + "))";
+					} else {
+						exprAutoFnDetect = expr = def.$1 || "null";
+					}
+					fnargs = unescape( fnargs );
+					return "');" +
+						tag[ slash ? "close" : "open" ]
+							.split( "$notnull_1" ).join( target ? "typeof(" + target + ")!=='undefined' && (" + target + ")!=null" : "true" )
+							.split( "$1a" ).join( exprAutoFnDetect )
+							.split( "$1" ).join( expr )
+							.split( "$2" ).join( fnargs || def.$2 || "" ) +
+						"__.push('";
+				}) +
+			"');}return __;"
+		);
+	}
+	function updateWrapped( options, wrapped ) {
+		// Build the wrapped content.
+		options._wrap = build( options, true,
+			// Suport imperative scenario in which options.wrapped can be set to a selector or an HTML string.
+			jQuery.isArray( wrapped ) ? wrapped : [htmlExpr.test( wrapped ) ? wrapped : jQuery( wrapped ).html()]
+		).join("");
+	}
+
+	function unescape( args ) {
+		return args ? args.replace( /\\'/g, "'").replace(/\\\\/g, "\\" ) : null;
+	}
+	function outerHtml( elem ) {
+		var div = document.createElement("div");
+		div.appendChild( elem.cloneNode(true) );
+		return div.innerHTML;
+	}
+
+	// Store template items in jQuery.data(), ensuring a unique tmplItem data data structure for each rendered template instance.
+	function storeTmplItems( content ) {
+		var keySuffix = "_" + cloneIndex, elem, elems, newClonedItems = {}, i, l, m;
+		for ( i = 0, l = content.length; i < l; i++ ) {
+			if ( (elem = content[i]).nodeType !== 1 ) {
+				continue;
+			}
+			elems = elem.getElementsByTagName("*");
+			for ( m = elems.length - 1; m >= 0; m-- ) {
+				processItemKey( elems[m] );
+			}
+			processItemKey( elem );
+		}
+		function processItemKey( el ) {
+			var pntKey, pntNode = el, pntItem, tmplItem, key;
+			// Ensure that each rendered template inserted into the DOM has its own template item,
+			if ( (key = el.getAttribute( tmplItmAtt ))) {
+				while ( pntNode.parentNode && (pntNode = pntNode.parentNode).nodeType === 1 && !(pntKey = pntNode.getAttribute( tmplItmAtt ))) { }
+				if ( pntKey !== key ) {
+					// The next ancestor with a _tmplitem expando is on a different key than this one.
+					// So this is a top-level element within this template item
+					// Set pntNode to the key of the parentNode, or to 0 if pntNode.parentNode is null, or pntNode is a fragment.
+					pntNode = pntNode.parentNode ? (pntNode.nodeType === 11 ? 0 : (pntNode.getAttribute( tmplItmAtt ) || 0)) : 0;
+					if ( !(tmplItem = newTmplItems[key]) ) {
+						// The item is for wrapped content, and was copied from the temporary parent wrappedItem.
+						tmplItem = wrappedItems[key];
+						tmplItem = newTmplItem( tmplItem, newTmplItems[pntNode]||wrappedItems[pntNode] );
+						tmplItem.key = ++itemKey;
+						newTmplItems[itemKey] = tmplItem;
+					}
+					if ( cloneIndex ) {
+						cloneTmplItem( key );
+					}
+				}
+				el.removeAttribute( tmplItmAtt );
+			} else if ( cloneIndex && (tmplItem = jQuery.data( el, "tmplItem" )) ) {
+				// This was a rendered element, cloned during append or appendTo etc.
+				// TmplItem stored in jQuery data has already been cloned in cloneCopyEvent. We must replace it with a fresh cloned tmplItem.
+				cloneTmplItem( tmplItem.key );
+				newTmplItems[tmplItem.key] = tmplItem;
+				pntNode = jQuery.data( el.parentNode, "tmplItem" );
+				pntNode = pntNode ? pntNode.key : 0;
+			}
+			if ( tmplItem ) {
+				pntItem = tmplItem;
+				// Find the template item of the parent element.
+				// (Using !=, not !==, since pntItem.key is number, and pntNode may be a string)
+				while ( pntItem && pntItem.key != pntNode ) {
+					// Add this element as a top-level node for this rendered template item, as well as for any
+					// ancestor items between this item and the item of its parent element
+					pntItem.nodes.push( el );
+					pntItem = pntItem.parent;
+				}
+				// Delete content built during rendering - reduce API surface area and memory use, and avoid exposing of stale data after rendering...
+				delete tmplItem._ctnt;
+				delete tmplItem._wrap;
+				// Store template item as jQuery data on the element
+				jQuery.data( el, "tmplItem", tmplItem );
+			}
+			function cloneTmplItem( key ) {
+				key = key + keySuffix;
+				tmplItem = newClonedItems[key] =
+					(newClonedItems[key] || newTmplItem( tmplItem, newTmplItems[tmplItem.parent.key + keySuffix] || tmplItem.parent ));
+			}
+		}
+	}
+
+	//---- Helper functions for template item ----
+
+	function tiCalls( content, tmpl, data, options ) {
+		if ( !content ) {
+			return stack.pop();
+		}
+		stack.push({ _: content, tmpl: tmpl, item:this, data: data, options: options });
+	}
+
+	function tiNest( tmpl, data, options ) {
+		// nested template, using {{tmpl}} tag
+		return jQuery.tmpl( jQuery.template( tmpl ), data, options, this );
+	}
+
+	function tiWrap( call, wrapped ) {
+		// nested template, using {{wrap}} tag
+		var options = call.options || {};
+		options.wrapped = wrapped;
+		// Apply the template, which may incorporate wrapped content,
+		return jQuery.tmpl( jQuery.template( call.tmpl ), call.data, options, call.item );
+	}
+
+	function tiHtml( filter, textOnly ) {
+		var wrapped = this._wrap;
+		return jQuery.map(
+			jQuery( jQuery.isArray( wrapped ) ? wrapped.join("") : wrapped ).filter( filter || "*" ),
+			function(e) {
+				return textOnly ?
+					e.innerText || e.textContent :
+					e.outerHTML || outerHtml(e);
+			});
+	}
+
+	function tiUpdate() {
+		var coll = this.nodes;
+		jQuery.tmpl( null, null, null, this).insertBefore( coll[0] );
+		jQuery( coll ).remove();
+	}
+}));

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 146 - 0
js/qrcode.js


+ 31 - 0
linkjs/constant.js

@@ -0,0 +1,31 @@
+var Constant = {
+	//根据当前环境修改
+	serverUrl: "",
+	query:{}
+};
+//开发环境
+
+if(window.location.href.indexOf("http://127.0.0.1:8848/")>=0){
+	Constant.serverUrl="http://192.168.33.162:8086/jp-employment-server/"
+	Constant.baseUrl="http://xpgj.xiaoxinda.com/jp-employment-mobile"
+}
+
+function getQueryVariable(variable)
+{
+       var query = window.location.search.substring(1);
+       var vars = query.split("&");
+       for (var i=0;i<vars.length;i++) {
+               var pair = vars[i].split("=");
+			   Constant.query[pair[0]]=pair[1];
+       }
+       
+}
+
+getQueryVariable()
+
+Constant.serverUrl+="mobile/dataScreenApi/"
+
+if (typeof module != "undefined") {
+  module.exports = Constant;
+}
+export default Constant;

+ 24 - 1
linkjs/getJob.js

@@ -1,4 +1,27 @@
 $(function() {
 $(function() {
+	import('./constant.js').then(model=>{
+		constant=model.default
+		console.log(constant)
+		employmentOnlineData()
+		
+	})
+	//公共属性
+	var constant={};
+	var common={};
+	
+	
+	function employmentOnlineData() {
+		
+		 $.post(constant.serverUrl+"employmentOnlineData",{
+			
+		 },function(data,status){
+			  console.log(data,status)
+			  for(var i in data.data.companyList){
+			  		var obj=data.data.companyList[i];
+			  		$(".data-companyList").append("<tr> <td>"+obj.name+"</td> <td>"+obj.postNum+"</td> <td>"+obj.peopleNum+"</td></tr>")
+			  }
+		 })
+	}
 	function createBar2() {
 	function createBar2() {
 		
 		
 		var chartDom = document.getElementById('main2');
 		var chartDom = document.getElementById('main2');
@@ -130,5 +153,5 @@ $(function() {
 	createBar1();
 	createBar1();
 	createBar2();
 	createBar2();
 	createBar3();
 	createBar3();
-	
+
 })
 })

+ 79 - 0
linkjs/index.js

@@ -0,0 +1,79 @@
+$(function() {
+	//公共属性
+	var constant={};
+	var common={};
+	
+	import('./constant.js').then(model=>{
+		constant=model.default
+		console.log(constant)
+		seatData()
+		
+	})
+	
+	
+	 function seatData(){
+		var seatNumber=constant.query.id;
+		 $.post(constant.serverUrl+"seatData",{
+			 seatNumber:seatNumber
+		 },function(data,status){
+			 console.log(data,status)
+			 if(data.result){
+				 $(".data-company-logo").attr("src",data.data.company.logo)
+				$(".data-company-name").text(data.data.company.name)
+				$(".data-industry").text(data.data.industry)
+				$(".data-scale").text(data.data.scale)
+				$(".data-seatNumber").text(seatNumber)
+				$(".data-introduction").html(data.data.company.introduction)
+				$(".data-recruitmentList-length").text("招聘职位("+(data.data.recruitmentList.length)+")")
+				for(var i in data.data.recruitmentList){
+					var obj=data.data.recruitmentList[i];
+					
+					$(".main-nav-tabs").append('<li role="presentation"><a href="#'+obj.id+'" aria-controls="profile" role="tab" data-toggle="tab">'+obj.positionName+'</a></li>')
+					$(".main-nav-tabs").children().first().addClass("active")
+				
+				}
+			
+				$("#tabpanel-temp").tmpl(data.data.recruitmentList).appendTo(".tab-content")
+				$(".tab-content").children().first().addClass("active")
+				
+				
+				new QRCode(document.getElementById("qrcode"),constant.baseUrl+ "/#/pages/job/index/companyInfo/companyInfo?id="+data.data.companyId);  // 设置要生成二维码的链接
+				common.companyId=data.data.companyId;
+				resumeDeliverData()
+				setInterval(function(){
+					resumeDeliverData()
+				},10*1000)
+			 }else{
+				 alert(data.message)
+			 }
+		 })
+	}
+	function resumeDeliverData(){
+		var id=common.companyId;
+		$.post(constant.serverUrl+"resumeDeliverData",{
+					 companyId:id
+		},function(data,status){
+				console.log(data)
+				var list=data.data.data.map(item=>{
+					var myname=item.jobUserName.substring(0,1)
+					
+					if(item.jobUserSex==2){
+						myname+="**"
+					}else{
+						myname+=(item.jobUserSex==1?'男士':'女士')
+					}
+					return {
+						name:myname,
+						sex:item.jobUserSex,
+						job:item.jobRecruitment.positionName,
+						time:item.createTime
+					}
+				})
+				$(".deliver").children().remove()
+				$("#deliver-temp").tmpl(list).appendTo(".deliver")
+				$(".data-jobRecruitmentList-length").text("简历投递记录("+data.data.recordsTotal+")")
+				
+		})
+		
+	}
+})

+ 1489 - 0
linkjs/indexcopy.js

@@ -0,0 +1,1489 @@
+// var marquee2 = document.getElementById("marquee2");
+// 		  marquee2.start();
+// 		  var marquee1 = document.getElementById("marquee1");
+// 		    marquee1.start();
+$(function() { // 初始化内容
+	$("#gogogo2").click(function() {
+	 $(".tabbbbb1").hide();
+	 $(".tabbbbb2").show();
+	 $("body").attr("id","bg2")
+	})
+	$("#gogogo").click(function() {
+	 $(".tabbbbb2").hide();
+	 $(".tabbbbb1").show();
+	  $("body").attr("id","")
+	})
+	
+	var url = "/wzzgh-fwdt/healthScore/largeScreen?orgId="
+
+	//  $.post(url,function(data,status){
+	var data = {
+		"errorList": [{
+				"orgtype": "基层",
+				"level": "warning3",
+				"createTime": "2021-08-06",
+				"warntype": null,
+				"name": "温州市眼镜有限公司",
+				"closeTime":"2021-08-19",
+				"id": "c734573b-2e90-43de-8a1b-2acecdd99f9f",
+				"source": "a",
+				"openTime": "2021-08-06",
+				"type": 1,
+				"status": 1
+			},
+			{
+				"orgtype": "基层",
+				"level": "warning3",
+				"createTime": "2021-07-08",
+				"openTime": "2021-07-08",
+				"warntype": null,
+				"name": "温州市龙丰橡胶工业有限公司",
+				"closeTime": "2021-07-19",
+				"id": "26320f33-5fc4-4fdc-8e10-27e2713cb047",
+				"source": "a",
+				
+				"type": 1,
+				"status": 1
+			},
+			{
+				"orgtype": "基层",
+				"level": "warning2",
+				"createTime": "2021-07-10",
+				"warntype": null,
+				"name": "温州市娄桥晓光打火机配件厂",
+				"closeTime": "2021-08-18",
+				"id": "01418d5e-5fd1-4d25-a50d-00bf1486cedf",
+				"source": "a",
+				"openTime": "2021-07-11",
+				"type": 1,
+				"status": 1
+			},
+			{
+				"orgtype": "基层",
+				"level": "warning2",
+				"createTime": "2021-06-13",
+				"warntype": null,
+				"name": "温州市瓯海娄桥化建有限公司",
+				"closeTime": "2021-06-13",
+				"id": "07dbf847-e82e-4e2c-8565-d5667877b80b",
+				"source": "a",
+				"openTime": "2021-06-13",
+				"type": 1,
+				"status": 1
+			},
+			{
+				"orgtype": "基层",
+				"level": "warning1",
+				"createTime": "2021-06-13",
+				"warntype": null,
+				"name": "温州联丰皮塑有限公司",
+				"closeTime": null,
+				"id": "1ca5716f-0dfe-4b7b-829c-74765f80cb3a",
+				"source": "a",
+				"openTime": "2021-07-07",
+				"type": 1,
+				"status": 1
+			},
+			{
+				"orgtype": "基层",
+				"level": "warning1",
+				"createTime":  "2021-05-25",
+				"warntype": null,
+				"name": "民政橡胶",
+				"closeTime": null,
+				"id": "52bfbac4-4d2d-4a74-8554-0d637d91e718",
+				"source": "a",
+				"openTime": "2021-07-08",
+				"type": 1,
+				"status": 1
+			},
+			{
+				"orgtype": "基层",
+				"level": "warning1",
+				"createTime":  "2021-05-21",
+				"warntype": null,
+				"name": "娄桥新丰润滑油加工厂",
+				"closeTime": null,
+				"id": "57fa436a-99a5-450b-bfbe-cad6de1ff01c",
+				"source": "a",
+				"openTime": "2021-07-07",
+				"type": 1,
+				"status": 1
+			},
+			
+		],
+		"topList": [{
+
+				h:"森马",	"score": 92,
+				list: [10,
+					10,
+					2,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10
+				],
+				"orgName": "森马集团有限公司",
+				"top": 1
+			},{
+			h:"钟铮锁业",	"score": 92,
+				list: [10,
+					10,
+					2,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10
+				],
+				"orgName": "浙江钟铮锁业有限公司工会",
+				"top": 1
+			},  {
+
+			h:"",	"score": 92,
+				list: [10,
+					10,
+					2,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10
+				],
+				"orgName": "温州立华科技发展有限公司工会",
+				"top": 1
+			}, {
+
+			h:"长虹眼镜",	"score": 91,
+				list: [10,
+					10,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "温州市瓯海长虹眼镜有限公司工会",
+				"top": 1
+			}, {
+
+			h:"康豪鞋材",	"score": 91,
+				list: [10,
+					10,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "温州市康豪鞋材有限公司工会",
+				"top": 1
+			}, {
+
+			h:"创新新材料",	"score": 92,
+				list: [10,
+					10,
+					2,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "温州创新新材料股份有限公司工会",
+				"top": 1
+			}, {
+
+			h:"温州伊斯利",	"score": 91,
+				list: [10,
+					10,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "温州伊斯利鞋业有限公司工会",
+				"top": 1
+			}, {
+
+			h:"城建集团",	"score": 92,
+				list: [10,
+					10,
+					2,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "温州城建集团有限公司工会",
+				"top": 1
+			}, {
+
+			h:"晓锋五金厂",	"score": 91,
+				list: [10,
+					10,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "温州市瓯海娄桥晓锋五金厂工会",
+				"top": 1
+			}, {
+
+			h:"朗驰实业",	"score": 91,
+				list: [10,
+					10,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "温州朗驰实业有限公司",
+				"top": 1
+			}, {
+				h:"瑞新集团",
+				"score": 91,
+				list: [10,
+					10,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "瑞新集团有限公司",
+				"top": 1
+			}, {
+
+			h:"浙江蓝图",	"score": 91,
+				list: [10,
+					10,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "浙江蓝图包装有限公司",
+				"top": 1
+			}, {
+
+			h:"大东集团",	"score": 91,
+				list: [10,
+					10,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "大东集团有限公司",
+				"top": 1
+			}, {
+
+			h:"",	"score": 91,
+				list: [10,
+					10,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "温州市进泰鞋业有限公司",
+				"top": 1
+			}, {
+
+			h:"",	"score": 91,
+				list: [10,
+					10,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "温州海明威光学有限公司",
+				"top": 1
+			}, {
+
+			h:"",	"score": 91,
+				list: [10,
+					10,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "温州市瓯海中亨鞋材有限公司",
+				"top": 1
+			}, {
+
+			h:"意达石化",	"score": 85,
+				list: [10,
+					9,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					5,
+				],
+				"orgName": "温州市意达石化泵业有限公司",
+				"top": 1
+			}, {
+
+			h:"温州鼎圣",	"score": 84,
+				list: [9,
+					9,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					10,
+					5,
+					5,
+				],
+				"orgName": "温州鼎圣制鞋机械有限公司",
+				"top": 1
+			}, {
+
+			h:"创新住宅",	"score": 85,
+				list: [10,
+					9,
+					1,
+					10,
+					10,
+					10,
+					5,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "温州创新住宅预制构件制造有限公司",
+				"top": 1
+			}, {
+
+			h:"温州恒驰",	"score": 83,
+				list: [9,
+					8,
+					1,
+					10,
+					10,
+					10,
+					5,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "温州市恒驰汽车配件有限公司",
+				"top": 1
+			}, {
+
+			h:"三虎动力",	"score": 85,
+				list: [10,
+					9,
+					1,
+					10,
+					10,
+					10,
+					5,
+					5,
+					10,
+					5,
+					10,
+				],
+				"orgName": "温州三虎动力部件有限公司",
+				"top": 1
+			}, {
+
+			h:"物产总公司",	"score": 76,
+				list: [10,
+					10,
+					1,
+					10,
+					10,
+					10,
+					10,
+					5,
+					0,
+					5,
+					5,
+				],
+				"orgName": "温州市瓯海区物产总公司",
+				"top": 1
+			}, {
+
+			h:"娄桥新丰",	"score": 65,
+				list: [9,
+					0,
+					1,
+					10,
+					10,
+					10,
+					5,
+					5,
+					5,
+					5,
+					5,
+				],
+				"orgName": "娄桥新丰润滑油加工厂",
+				"top": 1
+			}, {
+
+			h:"民政橡胶",	"score": 69,
+				list: [8,
+					0,
+					1,
+					10,
+					10,
+					10,
+					5,
+					5,
+					10,
+					5,
+					5,
+				],
+				"orgName": "民政橡胶",
+				"top": 1
+			}, {
+
+			h:"联丰皮塑",	"score": 64,
+				list: [9,
+					9,
+					1,
+					10,
+					10,
+					0,
+					10,
+					5,
+					0,
+					5,
+					5,
+				],
+				"orgName": "温州联丰皮塑有限公司",
+				"top": 1
+			}, {
+
+			h:"娄桥化建",	"score": 57,
+				list: [9,
+					7,
+					1,
+					10,
+					10,
+					0,
+					10,
+					5,
+					0,
+					5,
+					0,
+				],
+				"orgName": "温州市瓯海娄桥化建有限公司",
+				"top": 1
+			}, {
+
+			h:"娄桥晓光",	"score": 57,
+				list: [9,
+					7,
+					1,
+					10,
+					10,
+					0,
+					5,
+					5,
+					5,
+					5,
+					0,
+				],
+				"orgName": "温州市娄桥晓光打火机配件厂",
+				"top": 1
+			}, {
+
+			h:"龙丰橡胶",	"score": 39,
+				list: [8,
+					0,
+					1,
+					10,
+					10,
+					0,
+					0,
+					5,
+					0,
+					5,
+					0,
+				],
+				"orgName": "温州市龙丰橡胶工业有限公司",
+				"top": 1
+			}, {
+
+			h:"瓯海眼镜",	"score": 39,
+				list: [8,
+					0,
+					1,
+					10,
+					10,
+					0,
+					0,
+					5,
+					0,
+					5,
+					0,
+				],
+				"orgName": "温州市眼镜有限公司",
+				"top": 1
+			}
+
+		],
+		"obj2": {
+			"rows1": [{
+					"mystatus": 1,
+					"mysum": 5
+				},
+				{
+					"mystatus": 2,
+					"mysum": 2
+				},
+				
+				{
+					"mystatus": 3,
+					"mysum": 0
+				},
+				{
+					"mystatus": 4,
+					"mysum": 6
+				}
+			]
+		},
+		"obj1": {
+			"rows1": []
+		},
+		"obj3": {
+			"rows1": [
+				
+				{
+						"months": "2021-04",
+						"mysum": 0
+					},
+					{
+						"months": "2021-05",
+						"mysum": 1
+					},
+					
+					{
+						"months": "2021-06",
+						"mysum": 2
+					},
+					{
+						"months": "2021-07",
+						"mysum": 1
+					},
+					{
+						"months": "2021-08",
+						"mysum": 1
+					},
+					{
+						"months": "2021-09",
+						"mysum": 1
+					}
+					
+					
+			],
+			"rows2": [
+				
+			
+				{
+					"months": "2021-04",
+					"mysum": 6
+				},
+				{
+					"months": "2021-05",
+					"mysum": 5
+				},
+				
+				{
+					"months": "2021-06",
+					"mysum": 2
+				},
+				{
+					"months": "2021-07",
+					"mysum": 2
+				},
+				{
+					"months": "2021-08",
+					"mysum": 0
+				},
+				{
+					"months": "2021-09",
+					"mysum": 0
+				}
+				
+			
+			]
+		}
+	}
+	createBar13("11", data.obj2, "1")
+	createBar14("11", data.obj3, "1")
+
+	var topList = data.topList.sort(function(a, b) {
+		return b.score - a.score
+	})
+
+	$("#topListNum").html(topList.length);
+
+	for (var i in topList) {
+		var obj = topList[i];
+		data.obj1.rows1.push({
+			score: obj.score
+		})
+		$("#topListBody").append(
+			$("<tr num='"+i+"'> <td>" + obj.orgName + " </td> <td style='width: 100px;'>" + obj.score + " </td></tr>")
+		);
+	}
+	
+	
+	$(".tabbbbb1 .map-item").click(function(){
+		var ptext =$(this).find("p").html();
+		if(ptext=="蓝图二期"){
+			ptext="浙江蓝图"
+		}
+		if(ptext.indexOf("森马")>-1){
+			ptext="森马"
+		}
+		var obj = topList.find((item)=>{
+			if(ptext==item.h){
+				return true;
+			}else{
+				return false;
+			}
+		});
+		
+		for(var i in  obj.list){
+			var numm= obj.list[i]
+			var test =$("#new332 tr:eq("+i+")").find("td").eq(2).html()
+			
+			$("#new332 tr:eq("+i+")").find("td").eq(5).html(numm+"分"==test?
+			"<b style='color:#07bc2d'>"+numm+"分</b>":"<b style='color:red'>"+numm+"分</b>")
+		}
+		$("#myModalLabelqqq").html("<span>所属工会:</span>"+obj.orgName)
+		
+		$("#sumNum").html(obj.score+"分")
+		$("#myModal4").modal("show")
+	})
+	
+	$("#topListBody tr").click(function(){
+		var num =$(this).attr("num");
+		var obj = topList[num];
+		
+		for(var i in  obj.list){
+			var numm= obj.list[i]
+			var test =$("#new332 tr:eq("+i+")").find("td").eq(2).html()
+			
+			$("#new332 tr:eq("+i+")").find("td").eq(5).html(numm+"分"==test?
+			"<b style='color:#07bc2d'>"+numm+"分</b>":"<b style='color:red'>"+numm+"分</b>")
+		}
+		$("#myModalLabelqqq").html("<span>所属工会:</span>"+obj.orgName)
+		
+		$("#sumNum").html(obj.score+"分")
+		$("#myModal4").modal("show")
+	})
+
+	function createBar6(data) {
+		
+		
+		var dom = document.getElementById("container6");
+		var myChart = echarts.init(dom);
+		
+		var list=data.sort(function(a,b){
+			return a.list[i]-b.list[i]
+		})
+		var names=list.map(function(item){
+			return item.orgName
+		})
+		
+		var values=list.map(function(item){
+			return item.list[i]
+		})
+		var values2=[];
+		var map = new Map();
+		for(var i1 in values){
+			var k=values[i1];
+			var obj=map.get(k);
+			if(obj){
+				obj.value+=1;
+				
+			}else{
+				obj={
+					name:k+"分",
+					value:1
+				}
+				values2.push(obj);
+			}
+			map.set(k,obj);
+		}
+		var values2=values2.sort(function(a,b){
+			return b.value-a.value
+		})
+		myChart.setOption({
+			label: {
+			       alignTo: 'edge',
+			       formatter: '{b}\n{d}%',
+			       minMargin: 5,
+			       edgeDistance: 10,
+			       lineHeight: 15,
+			       rich: {
+			         time: {
+			           fontSize: 10,
+			           color: '#999'
+			         }
+			       }
+			     },
+			darkMode:true,
+			textStyle:{
+					color:"#FFFFFF"
+			},
+			tooltip: {
+				trigger: 'item',
+				axisPointer: {
+					type: 'shadow'
+				},
+					formatter: function(params){
+							       	console.log(params)
+									if(params.seriesIndex==0){
+										return params.name + '<br />' + '共有'+params.value+'个工会<br/>占比'+params.percent+ '%'
+									}
+									if(params.seriesIndex==1){
+										return params.data +"分"
+									}
+								}
+			},
+
+			grid: [
+				{
+					width: '50%',
+					  top: '1%',
+					left: '3%',
+					right: '4%',
+					bottom: '3%',
+					containLabel: true
+				}, {
+                top: 100,
+                width: '50%',
+                bottom: 10,
+                left: 800,
+                containLabel: true
+            }
+			],
+			xAxis: {
+				type: 'value',
+				boundaryGap: [0, 0.01]
+			},
+			yAxis: {
+				type: 'category',
+				data: names
+			},
+			series: [{
+					name: 'a',
+					type: 'pie',
+					radius: '55%',
+					data:values2,
+					center: ['75%','50%'],
+				},{
+				name: '数据',
+				type: 'bar',
+				data:values,
+					itemStyle: {
+										normal: {
+											color: function(params) {
+												//var colorList =colors;
+												return "#4175c2";//colorList[params.dataIndex]
+				
+											},
+											 
+										},
+									}
+			}]
+		});
+
+	}
+	createBar11("11", data.obj1, "1")
+
+	// <tr>
+	//     <td>工会名称</td>
+	//     <td>100分</td>
+	//     <td>99.80分</td>
+	//     </tr>
+	var errorList = data.errorList;
+	$("#errorListNum").html(errorList.length);
+	var map = new Map();
+	map.set("warning3", "红色预警");
+	map.set("warning2", "橙色预警");
+	map.set("warning1", "黄色预警");
+
+	map.set(1, "基础型");
+	map.set(2, "提升型");
+	map.set(3, "即知即改型");
+	map.set(4, "企业生产经营情况");
+
+
+
+	for (var i in errorList) {
+		var obj = errorList[i];
+		var date = obj.createTime
+	
+
+
+
+		$("#errorListBody").append(
+			$("<tr num='"+i+"'> <td>" + obj.name + " </td> <td style='width: 100px;' class='class"+obj.level+"'>" + map.get(obj.level) +
+				" </td><td style='width: 80px;'>" + map.get(obj.type) + " </td><td style='width: 120px;'>" +
+				date+ " </td></tr>")
+		);
+	}
+	createBar(data.obj1.rows1.length, 103 - data.obj1.rows1.length, "已关联工会", "container", data.obj1.rows1
+		.length + "/" + 103);
+	createBar(8, 2, "预警&处置", "container4", "7/2");
+
+	$("#errorListBody tr").click(function(){
+		var num =$(this).attr("num");
+		
+		var obj = errorList[num];
+		$("#myModalLabelwwww").html("<span>所属工会:</span>"+obj.name)
+			$(".warning3").hide()
+			$(".warning2").hide()
+			$(".warning1").hide()
+		
+		var sz=[
+			{
+				w1:" 13:51",w2:" 15:23",w3:" 08:12",
+			},
+			{
+				w1:" 10:25",w2:" 13:42",w3:" 08:38",
+			},
+			{
+				w1:" 09:31",w2:" 11:07",w3:" 09:59",
+			},
+			{
+				w1:" 10:31",w2:" 11:21",w3:" 14:39",
+			},
+		];
+		var w1=sz[parseInt(num)%4].w1
+		var w2=sz[parseInt(num)%4].w2
+		var w3=sz[parseInt(num)%4].w3
+		if(obj.level=="warning3"){
+			$(".ob1").text("分数低于40分");
+			$(".ob2").text("红色预警");
+			$(".warning3").show()
+			
+		}
+		if(obj.level=="warning2"){
+			$(".ob1").text("分数低于60分");
+			$(".ob2").text("橙色预警");
+			$(".warning2").show()
+			
+		}
+		if(obj.level=="warning1"){
+			$(".ob1").text("分数低于70分");
+			$(".ob2").text("黄色预警");
+			$(".warning1").show()
+			
+			 
+		}
+		$("#createTime").text(obj.createTime+w1);
+		$(".ob3").text(obj.createTime +w1);
+		$("#openTime").text(obj.openTime+w2);
+		$("#closeTime").text(obj.closeTime+w3);
+		
+		$("#myModal3").modal("show");
+	})
+
+	// <tr>
+	//     <td>工会名称</td>
+	//     <td>黄色预警</td>
+	//     <td>基础型</td>
+	//     <td>2021-08-15</td>
+	//     </tr>
+
+
+	// });
+
+	function createBar(a, b, title, id, t2) {
+		var dom = document.getElementById(id);
+		var myChart = echarts.init(dom);
+
+		myChart.setOption({
+			color: ["#00a1fa", "#004668"],
+			series: [{
+				// name: this.title,
+				type: 'pie',
+				selectedMode: 'single',
+				radius: ['100%', '90%'], // 将0改成50%,修改圆的内径
+				clockwise: false,
+				label: {
+					normal: {
+						position: 'inner',
+						show: false
+					}
+				},
+
+				data: [{
+						value: a,
+						name: '使用'
+					},
+					{
+						value: b,
+						name: '未使用'
+					}
+				]
+			}],
+			graphic: { // 添加原生图形元素组件
+				elements: [{
+						type: 'text', // 组件类型
+						left: 'center', //定位
+						top: '34%', // 定位
+						style: { // 样式
+							text: title, //文字
+							fontSize: 13, //文字大小
+							textAlign: 'center', //定位
+							width: 30,
+							height: 30,
+							fill: '#FFFFFF' // 字体颜色
+						}
+					},
+					{
+						type: 'text',
+						left: 'center',
+						top: '52%',
+						style: {
+							text: t2,
+							fontSize: 16,
+							textAlign: 'center',
+							width: 30,
+							height: 25,
+							fill: '#00a1fa'
+						}
+					}
+				]
+			}
+		});
+
+	}
+
+	function createBar13(title, data, clickEvent) {
+
+		var dom = document.getElementById("container2");
+		var myChart = echarts.init(dom);
+
+		var arr1 = 0;
+		var arr2 = 0;
+		var arr3 = 0;
+		var arr4 = 0;
+
+
+		for (var i in data.rows1) {
+			var mystatus = data.rows1[i].mystatus;
+			if (mystatus == 1) {
+				arr1 = data.rows1[i].mysum;
+			} else if (mystatus == 2) {
+				arr2 = data.rows1[i].mysum;
+			} else if (mystatus == 3) {
+				arr3 = data.rows1[i].mysum;
+			} else if (mystatus == 4) {
+				arr4 = data.rows1[i].mysum;
+			}
+		}
+
+		var option = {
+
+			tooltip: {
+				trigger: 'item',
+				formatter: '{b}预警共{c}个' //这是关键,在需要的地方加上就行了
+			},
+			color: ['#37A2DA', '#3BBF03', '#FFCB01', '#FF6200', '#FF2525'],
+
+			
+textStyle:{
+				color:"#FFFFFF"
+			},
+			xAxis: {
+				type: 'category',
+				data: ["未处置", "处置中", "已处置", "已关闭"]
+			},
+			yAxis: {
+				type: 'value'
+			},
+			series: [{
+				name: '未处置',
+				type: 'bar',
+				showBackground: true,
+				backgroundStyle: {
+					color: 'rgba(180, 180, 180, 0.2)'
+				},
+				data: [arr1, arr2, arr3, arr4],
+				itemStyle: {
+
+					normal: {
+
+						//好,这里就是重头戏了,定义一个list,然后根据所以取得不同的值,这样就实现了,
+
+						color: function(params) {
+
+							// build a color map as your need.
+
+							var colorList = ['#FF6200', '#FFCB01', '#3BBF03', '#aaa'];
+
+							return colorList[params.dataIndex]
+
+						},
+
+						//以下为是否显示,显示位置和显示格式的设置了
+
+						label: {
+
+							show: true,
+
+							position: 'top',
+
+							//                             formatter: '{c}'
+
+							formatter: '{b}\n{c}'
+
+						}
+
+					}
+
+				},
+
+				//设置柱的宽度,要是数据太少,柱子太宽不美观~
+
+				//	barWidth:70,
+			}]
+		};
+		myChart.setOption(option);
+		myChart.on('click', function(params) {
+			//console.log(params)
+		});
+
+	}
+
+	function createBar14(title, data, clickEvent) {
+
+		var dom = document.getElementById("container3");
+		var myChart = echarts.init(dom);
+		var map = new Map();
+		var names = [];
+		
+		for (var i in data.rows1) {
+			var item = data.rows1[i]
+			if (map.has(item.months)) {
+
+			} else {
+				names.push(item.months)
+				map.set(item.months, [0, 0]);
+			}
+			map.get(item.months)[0] = item.mysum;
+		}
+		for (var i in data.rows2) {
+			var item = data.rows2[i]
+			if (map.has(item.months)) {
+
+			} else {
+				names.push(item.months)
+				map.set(item.months, [0, 0]);
+			}
+			map.get(item.months)[1] = item.mysum;
+		}
+		var data1 = [];
+		var data2 = [];
+		var series = [];
+		names.sort()
+
+		for (var i in names) {
+			var name = names[i];
+			var sz = map.get(name)
+			data1.push(sz[0])
+			data2.push(sz[1])
+		}
+
+		series.push({
+			name: "产生",
+			type: 'line',
+			data: data2,
+
+		});
+		series.push({
+			name: "关闭",
+			type: 'line',
+			data: data1,
+
+		});
+		var option = {
+
+			tooltip: {
+				trigger: 'item',
+				formatter: '{a}{c}个预警' //这是关键,在需要的地方加上就行了
+			},
+			color: ['#37A2DA', '#3BBF03', '#FFCB01', '#FF6200', '#FF2525'],
+			textStyle:{
+				color:"#FFFFFF"
+			},
+
+			xAxis: {
+				type: 'category',
+				data: names
+			},
+			yAxis: {},
+			series: series
+		};
+		//console.log(option)
+		myChart.setOption(option);
+		myChart.on('click', function(params) {
+			//console.log(params)
+		});
+
+	}
+
+	function uniq(array) {
+		var temp = [];
+		var index = [];
+		var l = array.length;
+		for (var i = 0; i < l; i++) {
+			for (var j = i + 1; j < l; j++) {
+				if (array[i] === array[j]) {
+					i++;
+					j = i;
+				}
+			}
+			temp.push(array[i]);
+			index.push(i);
+		}
+
+		return temp;
+	}
+
+	function createBar11(title, data, type) {
+		var x = 0;
+		var map = new Map();
+		var dom = document.getElementById("container1");
+		var myChart = echarts.init(dom);
+
+
+		var mydata = [];
+		var mydata1 = [];
+		var mydata2 = [];
+		var innum = 0;
+		var avgnum = 0;
+		var colors = []
+		if (type == "1") {
+			colors = ['#37A2DA', '#3BBF03', '#FFCB01', '#FF6200', '#FF2525']
+
+			var arr1 = new Array();
+			var arr2 = new Array();
+			var arr3 = new Array();
+			var arr4 = new Array();
+			var arr5 = new Array();
+
+			for (var i in data.rows1) {
+				var score = data.rows1[i].score;
+				if (score >= 91) {
+					arr1.push(score);
+				} else if (score >= 70) {
+					arr2.push(score);
+				} else if (score >= 60) {
+					arr3.push(score);
+				} else if (score >= 40) {
+					arr4.push(score);
+				} else if (score >= 0) {
+					arr5.push(score);
+				}
+				avgnum = avgnum + Number(score);
+			}
+			mydata = [{
+					value: arr1.length,
+					name: '优秀 100-91'
+				},
+				{
+					value: arr2.length,
+					name: '健康 90-70'
+				},
+				{
+					value: arr3.length,
+					name: '黄色预警 69-60'
+				},
+				{
+					value: arr4.length,
+					name: '橙色预警 59-40'
+				},
+				{
+					value: arr5.length,
+					name: '红色预警 39-0'
+				}
+			];
+
+
+		}
+
+
+		for (var i in mydata) {
+			var mod = mydata[i]
+
+			mydata1.push(mod.name);
+			mydata2.push(mod.value);
+			if (mod.name.length > 10) {
+				x = -5;
+			}
+		}
+
+		if (type == "2" || type == "1") {
+			avgnum = avgnum / data.rows1.length;
+			var arr = [];
+			for (var i in data.rows1) {
+				var score = data.rows1[i].score;
+				arr.push(Number(score))
+			}
+
+			arr = uniq(arr);
+
+			if (arr.length % 2 == 0) {
+				innum = arr[arr.length / 2] + arr[arr.length / 2 - 1];
+				innum = innum / 2;
+			}
+			if (arr.length % 2 == 1) {
+				innum = arr[(arr.length - 1) / 2];
+			}
+			title = title + "\n平均数:" + avgnum.toFixed(2) + "\n中位数:" + innum.toFixed(2)
+			$("#num1").html(avgnum.toFixed(2))
+			$("#num2").html(innum.toFixed(2))
+
+		}
+
+		var option = {
+			color: colors,
+			label: {
+			       alignTo: 'edge',
+			       formatter: '{b}\n{d}%',
+			       minMargin: 5,
+			       edgeDistance: 10,
+			       lineHeight: 15,
+			       rich: {
+			         time: {
+			           fontSize: 10,
+			           color: '#999'
+			         }
+			       }
+			     },
+			title: {
+				text: '',
+				subtext: '',
+				left: 'center'
+			},
+			tooltip: {
+				trigger: 'item',
+				formatter: function(params) {
+					console.log(params)
+					if (params.seriesIndex == 0) {
+						return params.name + '<br />' + '共有' + params.value + '个工会<br/>占比' + params
+							.percent + '%'
+					}
+					if (params.seriesIndex == 1) {
+						return params.name + '<br />' + '共有' + params.value + '个工会'
+					}
+				}
+			},
+			legend: {
+				orient: 'vertical',
+				  left:"right",
+				textStyle: {
+					color: '#FFFFFF'
+				},
+			},
+			series: [{
+					// name: 'a',
+					type: 'pie',
+					radius: '50%',
+					data: mydata,
+
+					emphasis: {
+
+						itemStyle: {
+							shadowBlur: 10,
+							shadowOffsetX: 0,
+							shadowColor: 'rgba(0, 0, 0, 0.5)',
+							//shadowColor: 'rgba(53, 230, 0, 0.5)'
+
+
+						}
+					}
+				},
+
+			]
+		}
+
+		myChart.setOption(option);
+
+		myChart.on('click', function(params) {
+			//console.log(params)
+		});
+	}
+
+
+
+	var speed = 100;
+
+	function getMy(str) {
+		return document.getElementById(str)
+	}
+	var demo = getMy("topListContent");
+	var demo4 = getMy("topListBody");
+
+	var ttt = 0;
+
+	function Marquee1() {
+
+
+		if (demo.offsetHeight < demo4.offsetHeight) {
+
+		}
+
+		ttt = ttt + 2;
+
+		$("#topListContent").scrollTop(ttt)
+		if (demo4.offsetHeight - demo.offsetHeight + 80 < ttt) {
+
+			console.log(demo.offsetTop + "--a---" + demo.offsetHeight + "c" + ttt)
+			console.log(demo4.offsetTop + "---b--" + demo4.offsetHeight + "ddd   " + demo4.clientHeight)
+			$("#topListContent").scrollTop(0)
+			ttt = 0;
+		}
+
+	}
+	var MyMar1 = setInterval(Marquee1, speed) //设置定时器
+	//鼠标移上时清除定时器达到滚动停止的目的
+	demo.onmouseover = function() {
+		clearInterval(MyMar1)
+	}
+	//鼠标移开时重设定时器
+	demo.onmouseout = function() {
+		ttt = $("#topListContent").scrollTop()
+		MyMar1 = setInterval(Marquee1, speed)
+	}
+	
+	
+	var demok = getMy("errorListContent");
+	var demok4 = getMy("errorListBody");
+	
+	var ttt2 = 0;
+	
+	function Marquee2() {
+	
+		ttt2 = ttt2 + 2;
+	
+		$("#errorListContent").scrollTop(ttt2)
+		if (demok4.offsetHeight - demok.offsetHeight + 80 < ttt2) {
+			$("#errorListContent").scrollTop(0)
+			ttt2 = 0;
+		}
+	
+	}
+	var MyMar2 = setInterval(Marquee2, speed) //设置定时器
+	//鼠标移上时清除定时器达到滚动停止的目的
+	demok.onmouseover = function() {
+		clearInterval(MyMar2)
+	}
+	//鼠标移开时重设定时器
+	demok.onmouseout = function() {
+		ttt2 = $("#errorListContent").scrollTop()
+		MyMar2 = setInterval(Marquee2, speed)
+	}
+	
+	//-->
+	var i=0;
+	$("#myModal2Btn").click(function(){
+		$("#myModal2").modal("show")
+		i=3;
+		createBar6(topList);
+	})
+	$("#myModalLabelTable tr").click(function(){
+		var num =$(this).attr("num");
+		console.log(num)
+		$(".bgindex").removeClass("bgindex")
+		$(this).addClass("bgindex");
+		if(num){
+			i=num;
+			createBar6(topList);
+		}
+	
+	})
+});

+ 50 - 0
linkjs/recruit.js

@@ -1,4 +1,54 @@
 $(function() {
 $(function() {
+	
+	//公共属性
+	var constant={};
+	var common={};
+	
+	import('./constant.js').then(model=>{
+		constant=model.default
+		console.log(constant)
+		jobFairScreenData()
+		
+	})
+	function jobFairScreenData(){
+		var jobFairId=1;
+		 $.post(constant.serverUrl+"jobFairScreenData",{
+			 jobFairId:jobFairId
+		 },function(data,status){
+			 console.log(data,status)
+			 $(".data-jobFair-name").text(data.data.jobFair.name)
+			 $(".data-jobFair-name-start-end").text("开始日期:"+data.data.jobFair.startTime+" 至 "+data.data.jobFair.endTime)
+			 $(".data-jobFair-introduce").text(data.data.jobFair.introduce)
+			 
+			 if(data.data.jobFair.videoUrl){
+				 $(".jobFair-img").remove()
+				 $(".jobFair-video").show()
+				  $(".jobFair-video").attr("src",data.data.jobFair.videoUrl);
+			 }else if(data.data.jobFair.imgUrls){
+			 	$(".jobFair-video").remove()
+				
+				 $(".jobFair-img").show()
+			 	 $(".jobFair-img").attr("src",data.data.jobFair.imgUrls);
+			 				 
+			 }else{
+				 $(".jobFair-video").remove()
+				  $(".jobFair-img").remove()
+			 }
+			 $(".data-jobFairCompanyList-length").text(data.data.jobFairCompanyList.length)
+			 
+			 $(".data-recruitmentNum").text(data.data.recruitmentNum)
+			 $(".data-totalNum").text(data.data.totalNum)
+			 $(".data-recruitsNum").text(data.data.recruitsNum)
+			 $(".data-todayNum").text(data.data.todayNum)
+			 $(".data-resumeNum").text(data.data.resumeNum)
+			 
+			 
+			 for(var i in data.data.jobFairCompanyList){
+				 var obj=data.data.jobFairCompanyList[i];
+				  $(".data-jobFairCompanyList").append("<tr> <td>"+obj.companyName+"</td> <td>"+obj.recruitmentNums+"</td> <td>"+obj.num+"</td></tr>")
+			 }
+		})
+	}
 	function createBar2() {
 	function createBar2() {
 		
 		
 		var chartDom = document.getElementById('main2');
 		var chartDom = document.getElementById('main2');

+ 16 - 38
recruit.html

@@ -34,7 +34,7 @@
         </div> -->
         </div> -->
       </div>
       </div>
       <div class="head-mid">
       <div class="head-mid">
-        <h2>荆州市开发区2021年金秋招聘会</h2>
+        <h2 class="data-jobFair-name">荆州市开发区2021年金秋招聘会</h2>
         <h4>Jingzhou Development Zone Offline Job Fair</h4>
         <h4>Jingzhou Development Zone Offline Job Fair</h4>
       </div>
       </div>
       <div class="head-right">
       <div class="head-right">
@@ -58,16 +58,18 @@
 			</div>
 			</div>
 			<div class="content">
 			<div class="content">
 				<div class="about">
 				<div class="about">
-					<h3>荆州市开发区2021年金秋招聘会</h3>
-					<h4>开始日期:2021-09-22 至 2021-09-24</h4>
-					<p>招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介招聘会文字简介。</p>
+					<h3  class="data-jobFair-name"></h3>
+					<h4 class="data-jobFair-name-start-end"></h4>
+					<p class="data-jobFair-introduce"></p>
 				</div>
 				</div>
-				<video src="https://cdn.modao.cc/Default_video.mp4" width="470px" height="250px"></video>
+				<img  class="jobFair-img" style="display: none;"  src="https://cdn.modao.cc/Default_video.mp4" width="470px" height="250px"></img>
+				
+				<video class="jobFair-video" style="display: none;" src="https://cdn.modao.cc/Default_video.mp4" width="470px" height="250px"></video>
 			</div>
 			</div>
 		</div>
 		</div>
 		<div class="main-left-table">
 		<div class="main-left-table">
 			<div class="title">
 			<div class="title">
-				<h3>招聘企业</h3><span>10</span>
+				<h3>招聘企业</h3><span class="data-jobFairCompanyList-length">10</span>
 			</div>
 			</div>
 			<div class="content">
 			<div class="content">
 				<table class="table table-bordered">
 				<table class="table table-bordered">
@@ -78,32 +80,8 @@
 					  <th>招聘人数</th>
 					  <th>招聘人数</th>
 					</tr>
 					</tr>
 				  </thead>
 				  </thead>
-				  <tbody>
-					<tr>
-					  <td>企业名称</td>
-					  <td>5</td>
-					  <td>20</td>
-					</tr>
-					<tr>
-					  <td>企业名称</td>
-					  <td>5</td>
-					  <td>20</td>
-					</tr>
-					<tr>
-					  <td>企业名称</td>
-					  <td>5</td>
-					  <td>20</td>
-					</tr>
-					<tr>
-					  <td>企业名称</td>
-					  <td>5</td>
-					  <td>20</td>
-					</tr>
-					<tr>
-					  <td>企业名称</td>
-					  <td>5</td>
-					  <td>20</td>
-					</tr>
+				  <tbody  class="data-jobFairCompanyList" >
+					 
 				  </tbody>
 				  </tbody>
 				</table>
 				</table>
 				<!-- <div class="tab-more">查看更多</div> -->
 				<!-- <div class="tab-more">查看更多</div> -->
@@ -115,27 +93,27 @@
 			<div class="dataInfo">
 			<div class="dataInfo">
 				<div class="dataInfo-item">
 				<div class="dataInfo-item">
 					<p>入场企业数</p>
 					<p>入场企业数</p>
-					<span>10</span>
+					<span class="data-jobFairCompanyList-length"></span>
 				</div>
 				</div>
 				<div class="dataInfo-item">
 				<div class="dataInfo-item">
 					<p>招聘岗位数</p>
 					<p>招聘岗位数</p>
-					<span>60</span>
+					<span class="data-recruitmentNum"></span>
 				</div>
 				</div>
 				<div class="dataInfo-item">
 				<div class="dataInfo-item">
 					<p>招聘人数</p>
 					<p>招聘人数</p>
-					<span>1280</span>
+					<span class="data-recruitsNum"></span>
 				</div>
 				</div>
 				<div class="dataInfo-item">
 				<div class="dataInfo-item">
 					<p>总入场人数</p>
 					<p>总入场人数</p>
-					<span>3580</span>
+					<span class="data-totalNum" ></span>
 				</div>
 				</div>
 				<div class="dataInfo-item">
 				<div class="dataInfo-item">
 					<p>今日入场人数</p>
 					<p>今日入场人数</p>
-					<span>560</span>
+					<span class="data-todayNum"></span>
 				</div>
 				</div>
 				<div class="dataInfo-item">
 				<div class="dataInfo-item">
 					<p>投递简历数</p>
 					<p>投递简历数</p>
-					<span>280</span>
+					<span class="data-resumeNum"></span>
 				</div>
 				</div>
 			</div>
 			</div>
 			<div class="dataChart" id="main1">
 			<div class="dataChart" id="main1">

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است