 (function($, doc) {
 $.ready(function() {
 	$.plusReady(function() {

 		var userid = plus.storage.getItem('userid');
 		var currWindow = plus.webview.currentWebview();
 		var demandId= currWindow.demandId;
 		var oCost={
 			'0' : '请选择预算范围',
			'1' : '1万元以内',
			'2' : '1-5万元' ,
			'3' : '5-10万元' ,
			'4' : '10-20万元' ,
			'5' : '20-50万元' ,
			'6' : '50万元以上'
		};
		var oSpend= {
			'0' : '请选择预期时长',
			'1' : '1个月内',
			'2' : '1-3个月' ,
			'3' : '3-6个月' ,
			'4' : '6-12个月' ,
			'5' : '1年以上' 
		};
 		/**
 		 * 获取对象属性的值
 		 * 主要用于过滤三级联动中，可能出现的最低级的数据不存在的情况，实际开发中需要注意这一点；
 		 * @param {Object} obj 对象
 		 * @param {String} param 属性名
 		 */
 		var _getParam = function(obj, param) {
 			return obj[param] || '';
 		};
 		//普通示例
 		var userPicker = new $.PopPicker();
 		userPicker.setData([{
 			value: '1',
 			text: '1万元以内'
 		}, {
 			value: '2',
 			text: '1-5万元'
 		}, {
 			value: '3',
 			text: '5-10万元'
 		}, {
 			value: '4',
 			text: '10-20万元'
 		}, {
 			value: '5',
 			text: '20-50万元'
 		}, {
 			value: '6',
 			text: '50万元以上'
 		}]);
 		var showUserPickerButton = doc.getElementById('showDegreePicker');
 		var degreeResult = doc.getElementById('degreeResult');
 		showUserPickerButton.addEventListener('tap', function(event) {
 			userPicker.show(function(items) {
 				degreeResult.innerText = items[0].text;
 				showUserPickerButton.setAttribute('flag',items[0].value);
 				//返回 false 可以阻止选择框的关闭
 				//return false;
 			});
 		}, false);
 	
 	var userPicker1 = new $.PopPicker();
 	userPicker1.setData([{
 		value: '1',
 		text: '1个月内'
 	}, {
 		value: '2',
 		text: '1-3个月'
 	}, {
 		value: '3',
 		text: '3-6个月'
 	}, {
 		value: '4',
 		text: '6-12个月'
 	}, {
 		value: '5',
 		text: '1年以上'
 	}]);
 	var ExpecteDuration = doc.getElementById('ExpecteDuration');
 	var ExpecteResult = doc.getElementById('ExpecteResult');
 	ExpecteDuration.addEventListener('tap', function(event) {
 		userPicker1.show(function(items) {
 			ExpecteResult.innerText = items[0].text;
 			ExpecteDuration.setAttribute("flag",items[0].value) 
 			//返回 false 可以阻止选择框的关闭
 			//return false;
 		});
 	}, false);

 	//==========年份选择==========
 	var result = doc.getElementById('yearResult');
 	var btns = doc.getElementById('showYearPicker');
 	btns.addEventListener('tap', function() {
 		var optionsJson = this.getAttribute('data-options') || '{}';
 		var options = JSON.parse(optionsJson);
 		//options.beginDate = new Date('2017-08-11'); //设置开始日期 
 		var id = this.getAttribute('id');
 		/*
 		 * 首次显示时实例化组件
 		 * 示例为了简洁，将 options 放在了按钮的 dom 上
 		 * 也可以直接通过代码声明 optinos 用于实例化 DtPicker
 		 */
 		var oD = new Date();
 		oDy = oD.getFullYear();
 		oDm = parseInt(oD.getMonth()) + 0;
 		console.log(oDm)
 		oDd = parseInt(oD.getDate()) + 1;
 		console.log(oDd)
 		var oc = oDy + "-" + oDm + "-" + oDd
 		options.beginDate = new Date( oDy , oDm , oDd); //设置开始日期 
 		options.endYear = new Date().getFullYear() + 100;
 		var picker = new $.DtPicker(options);
 		picker.show(function(rs) {
 			/*
 			 * rs.value 拼合后的 value
 			 * rs.text 拼合后的 text
 			 * rs.y 年，可以通过 rs.y.vaue 和 rs.y.text 获取值和文本
 			 * rs.m 月，用法同年
 			 * rs.d 日，用法同年
 			 * rs.h 时，用法同年
 			 * rs.i 分（minutes 的第二个字母），用法同年
 			 */
 			if(rs.y.text == "至今") {
 				result.innerText = "至今"
 			} else {
 				result.innerText = rs.y.text + "年" + rs.m.text + "月" + rs.d.text + "日";
 				btns.setAttribute("flag",rs.y.text+ rs.m.text + rs.d.text)
 			}

 			/* 
 			 * 返回 false 可以阻止选择框的关闭
 			 * return false;
 			 */
 			/*
 			 * 释放组件资源，释放后将将不能再操作组件
 			 * 通常情况下，不需要示放组件，new DtPicker(options) 后，可以一直使用。
 			 * 当前示例，因为内容较多，如不进行资原释放，在某些设备上会较慢。
 			 * 所以每次用完便立即调用 dispose 进行释放，下次用时再创建新实例。
 			 */
 			picker.dispose();
 		});
 	}, false);
 	var cityPicker = new $.PopPicker({
 		layer: 2
 	});
 	cityPicker.setData(cityData);
 	var showCityPickerButton = doc.getElementById('showCityPicker');
	var cityResult=document.querySelector("#cityResult")
 	showCityPickerButton.addEventListener('tap', function(event) {
 		cityPicker.show(function(items) {
 			cityResult.innerText = items[0].text + "-" + items[1].text;
 			showCityPickerButton.setAttribute('city',items[1].text);
 			showCityPickerButton.setAttribute('province',items[0].text)
 		});
 	}, false);
 	queryDemand();
 	/*个人信息*/
 	function queryDemand() {
 		$.ajax(baseUrl + '/ajax/demand/qo' , {
 			dataType: 'json', //数据格式类型
 			type: 'GET', //http请求类型
 			data: {
 				"id" : demandId
 			},
 			timeout: 10000,
 			async: true,
 			success: function(data) {
 				console.log(JSON.stringify(data))
 				if(data.success) {
 					var $data=data.data;
 					document.querySelector("#cityResult").innerHTML=$data.province + "-" + $data.city ;
					document.querySelector("#showCityPicker").setAttribute('city', data.data.city );
 					document.querySelector("#showCityPicker").setAttribute('province', data.data.province );
 					document.querySelector("#yearResult").innerHTML=$data.invalidDay.substr(0,4) +"年"+ $data.invalidDay.substr(4,2) +"月"+ $data.invalidDay.substr(6,2)+"日";
					document.querySelector("#showYearPicker").setAttribute('flag', $data.invalidDay );
					document.querySelector("#phone").value= $data.contactNum ;
					if($data.cost) {
						document.querySelector("#degreeResult").innerHTML=oCost[ $data.cost ] ;
						document.querySelector("#showDegreePicker").setAttribute('flag', $data.cost );
					}
					if($data.duration) {
						document.querySelector("#ExpecteResult").innerHTML=oSpend[ $data.duration ] ;
						document.querySelector("#ExpecteDuration").setAttribute('flag', $data.duration );
					}
 				}
 			},
 			error: function() {
 				plus.nativeUI.toast("服务器链接超时", toastStyle);
 			}
 		});
 	}
 	/*检查格式是否合格*/
 	function  checkout() {
 		var arr=[];
 			arr[0] = {
 				demand : document.querySelector("#cityResult"),
 				alertTitle : "所在城市" ,
 				txt : "请选择所在城市" ,
 				length : 2
 			},
 			arr[1] = {
 				demand : document.querySelector("#yearResult"),
 				alertTitle : "需求有效期" ,
 				txt : "请选择需求的截止日期" ,
 				length : 2
 			},
 			arr[2] = {
 				demand : document.querySelector("#phone"),
 				fontNum : 50,
 				alertTitle : "联系电话" ,
 				length : 3
 			};
 			for(var i in arr) {
 				if( arr[i].length ==3) {
 					if( arr[i].demand.value.replace(/(^\s*)|(\s*$)/g,"")=="") {
		 				plus.nativeUI.toast("请填写" + arr[i].alertTitle , "toastStyle");
		 				return;
		 			}else if( arr[i].demand.value.length >50 ) {
		 				plus.nativeUI.toast( arr[i].alertTitle +"不可超过"+ arr[i].fontNum +"个字", "toastStyle");
		 				return;
		 			}
 				} else {
 					if( arr[i].demand.innerHTML== arr[i].txt) {
		 				plus.nativeUI.toast("请填写" + arr[i].alertTitle , "toastStyle");
		 				return;
		 			}
 				}
 			}
 			return 1;
 	}
 	/*发布需求*/
 	document.querySelector("#publishDemand").addEventListener( "tap", function() {
 		if(checkout()) {
 			var time=new Date(),
 			y=time.getFullYear();
 			m=time.getMonth()+1;
 			if(m<10) {
 				m="0"+m;
 			}
 			d=time.getDate();
 			if(d<10) {
 				d="0"+d;
 			}
 			var oTime=Number(y+""+m+""+d);
 			var seleTime=Number(btns.getAttribute("flag"));
 			if(oTime > seleTime) {
 				plus.nativeUI.toast("该需求已过期，请修改有效期，若已解决请点击「需求已完成」按钮", toastStyle);
 				return;
 			}
 			pubDemand();
 		}
 	},false);
 	/*发布需求的函数*/
 	function pubDemand() {
 		$.ajax(baseUrl + '/ajax/demand/modify' , {
 			dataType: 'json', //数据格式类型
 			type: 'post', //http请求类型
 			data: { 
 				"id":demandId ,
				"province": showCityPickerButton.getAttribute('province'),
				"city": showCityPickerButton.getAttribute('city'),
				"cost": document.querySelector("#showDegreePicker").getAttribute('flag')==null?'':document.querySelector("#showDegreePicker").getAttribute('flag'),
				"duration": document.querySelector("#ExpecteDuration").getAttribute('flag')==null?'':document.querySelector("#ExpecteDuration").getAttribute('flag'),
				"invalidDay": btns.getAttribute('flag'),
				"contactNum": document.querySelector("#phone").value,
				"modifier" : userid
 			},
 			timeout: 10000,
 			async: true,
 			success: function(data) {
 				if(data.success) {
 					$.back();
 					var web = plus.webview.getWebviewById("needShow.html");
						$.fire(web, "newId",{
								rd: 1
							});
 				}
 			},
 			error: function() {
 				plus.nativeUI.toast("服务器链接超时", toastStyle);
 			}
 		});
 	}
 })
 })
 })(mui, document);