网站
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 
 

1028 linhas
48 KiB

  1. /**
  2. * Created by Administrator on 2021/4/5.
  3. */
  4. define(['jquery', "template", "Tools", 'swiper', 'itemsApi', 'swiper'], function ($, template, Tools ,Swiper) {
  5. //数据存储
  6. var module = {
  7. data: {
  8. //焦点图数据
  9. focusListTop: [],
  10. showImgInformationDetail:'',
  11. loginNow:'',
  12. isFirst:'',
  13. timer:null,
  14. timer2:null,
  15. biddinglistInformationDetailLength:-1,
  16. biddingTimeType:0,
  17. biddinglistInformationDetail:[],
  18. timeConfig:0.00
  19. },
  20. };
  21. var tools = new Tools();
  22. module.init = function (page) {
  23. //获取焦点图信息
  24. tools.doGet(websitePicture, {picType:1,status:0,orderByColumn:'picSort',isAsc:'desc'}, module.focusNewsTop , true);
  25. //底部友情链接
  26. tools.doGet(friendsLinks, {}, module.bottomFriendsLinks, true);
  27. //网站配置信息(网站名称 底部联系方式 公安备案号 网站备案号)
  28. tools.getWebConfig();
  29. module.data.loginNow = tools.getCookie('Admin-Token');
  30. //浏览次数
  31. tools.doGet(outProject, {id:getQueryVariable('id')}, module.projectNum,true);
  32. setTimeout(function(){//项目基本信息
  33. tools.doGet(outProject + '/id/'+getQueryVariable('id'), {}, module.outProjectInformation,true);
  34. },100)
  35. //焦点图
  36. setTimeout(function () {
  37. module.swiperBanner();
  38. },5000)
  39. setTimeout(function(){//项目基本信息
  40. tools.doGet(showImg + '/'+getQueryVariable('id'), {}, module.showImgInformation,true);
  41. },100)
  42. tools.doGet(webConfig, {}, module.webConfigInformation, true)
  43. };
  44. //焦点图数据
  45. module.focusNewsTop = function (data) {
  46. if (data.code == 200) {
  47. let focusArray = [];
  48. if(data.data.length<1){
  49. focusArray.push({
  50. picUrl:'../../../static/images/banner1.png'
  51. },{
  52. picUrl:'../../../static/images/banner2.png'
  53. },{
  54. picUrl:'../../../static/images/banner3.png'
  55. })
  56. }else{
  57. data.data.forEach(res=>{
  58. focusArray.push({
  59. picUrl:'/api'+res.picUrl
  60. })
  61. })
  62. }
  63. module.data.focusListTop = focusArray;
  64. var bannerFocusDataTop = template('bannerFocusDataTop', module.data);
  65. $("#bannerFocusTopContent").html(bannerFocusDataTop);
  66. new Swiper('#bannerFocusWrapTop', {
  67. paginationClickable: true,
  68. autoplay : 4000,
  69. loop:true
  70. })
  71. }
  72. }
  73. //获取地址栏参数
  74. function getQueryVariable(variable){
  75. var query = window.location.search.substring(1);
  76. var vars = query.split("&");
  77. for (var i=0;i<vars.length;i++) {
  78. var pair = vars[i].split("=");
  79. if(pair[0] == variable){return pair[1];}
  80. }
  81. return(false);
  82. }
  83. //网站配置信息
  84. module.webConfigInformation = function (data) {
  85. if (data.code == 200) {
  86. var content = data.data;
  87. console.log(content)
  88. //document.getElementById('time').innerHTML = '延时周期:'+content[8].configValue+content[8].remark+'<i class="wh">?</i>'
  89. module.data.timeConfig = parseFloat(content[8].configValue);
  90. module.data.titleConfig = content[9].configValue;
  91. module.data.importantTitle = content[7].configName+':'+ content[7].configValue.substr(3).substr(0,(content[7].configValue.substr(3).length-4));
  92. module.data.know = content[6].configValue;
  93. $("#know").html(content[6].configValue);
  94. // + '<span style="margin-left: 10px;"></span>' + content[6].configValue
  95. }
  96. }
  97. //底部友情链接
  98. module.bottomFriendsLinks = function (data) {
  99. if (data.code == 200) {
  100. var content = data.data;
  101. console.log(content)
  102. module.data.friendsLinksList = content;
  103. var friendsLinksData = template('friendsLinksData', module.data);
  104. $("#friendsLinksContent").html(friendsLinksData);
  105. }
  106. }
  107. module.dataCompare = function(signupStartTime,signupStopTime,biddingStartTime,biddingStopTime){
  108. // console.log('aaaaaaaaaaa')
  109. var signupStartTime = signupStartTime;
  110. var signupStopTime = signupStopTime;
  111. var biddingStartTime = biddingStartTime;
  112. var biddingStopTime = biddingStopTime;
  113. var nowTime = Date.parse(new Date($.ajax({type:'HEAD',async:false,data:{i: Date.parse(new Date())}}).getResponseHeader("Date")));
  114. // console.log(new Date($.ajax({type:'HEAD',async:false,data:{i: Date.parse(new Date())}}).getResponseHeader("Date")))
  115. var beginTimes=signupStartTime.substring(0,10).split('-');
  116. var endTimes=signupStopTime.substring(0,10).split('-');
  117. var biddingBeginTimes=biddingStartTime.substring(0,10).split('-');
  118. var biddingEndTimes=biddingStopTime.substring(0,10).split('-');
  119. signupStartTime=beginTimes[1]+'/'+beginTimes[2]+'/'+beginTimes[0]+' '+signupStartTime.substring(10,19);
  120. signupStopTime=endTimes[1]+'/'+endTimes[2]+'/'+endTimes[0]+' '+signupStopTime.substring(10,19);
  121. biddingStartTime=biddingBeginTimes[1]+'/'+biddingBeginTimes[2]+'/'+biddingBeginTimes[0]+' '+biddingStartTime.substring(10,19);
  122. biddingStopTime=biddingEndTimes[1]+'/'+biddingEndTimes[2]+'/'+biddingEndTimes[0]+' '+biddingStopTime.substring(10,19);
  123. //时间差
  124. var leftTime = Date.parse(biddingStopTime)-nowTime;
  125. //报名开始时间差
  126. var signupLeftTime = Date.parse(signupStartTime)-nowTime;
  127. //报名结束时间差
  128. var signDownLeftTime = Date.parse(signupStopTime)-nowTime;
  129. //定义变量 d,h,m,s保存倒计时的时间
  130. var d,h,m,s;
  131. if(Date.parse(biddingStartTime)<nowTime&&nowTime<Date.parse(biddingStopTime)){
  132. //正在竞价
  133. // console.log('正在竞价')
  134. module.data.biddingTimeType = 1;
  135. if(module.data.outProjectInformationDetail.biddingType == '自由竞价'){
  136. document.getElementById('biddingTable').style.display = 'none';
  137. document.getElementById('biddingTitle').style.display = 'block';
  138. document.getElementById('biddingTitle').innerHTML = '竞价进行中...';
  139. }
  140. // document.getElementById('swiperType').style.display = 'block';
  141. d = Math.floor(leftTime/1000/60/60/24);
  142. h = Math.floor(leftTime/1000/60/60%24);
  143. m = Math.floor(leftTime/1000/60%60);
  144. s = Math.floor(leftTime/1000%60);
  145. // console.log('<span>距竞价结束还有:'+d+'</span>天<span>'+h+'</span>时<span>'+m+'</span>分<span>'+s+'</span>秒')
  146. $('#countType').html('竞价中')
  147. $('#countDown').html('<span>距竞价结束还有:'+d+'</span>天<span>'+h+'</span>时<span>'+m+'</span>分<span>'+s+'</span>秒')
  148. }else if (nowTime>Date.parse(biddingStopTime)){
  149. //竞价结束
  150. $('#countType').html('')
  151. $('#countDown').html('竞价结束')
  152. // document.getElementById('swiperType').style.display = 'none';
  153. document.getElementById('biddingTable').style.display = 'table';
  154. document.getElementById('biddingTitle').style.display = 'none';
  155. module.data.biddingTimeType = 2;
  156. }else if (nowTime<Date.parse(biddingStartTime)){
  157. leftTime = Date.parse(biddingStartTime)-nowTime;
  158. d = Math.floor(leftTime/1000/60/60/24);
  159. h = Math.floor(leftTime/1000/60/60%24);
  160. m = Math.floor(leftTime/1000/60%60);
  161. s = Math.floor(leftTime/1000%60);
  162. $('#countType').html('未开始')
  163. $('#countDown').html('<span>距竞价开始还有:'+d+'</span>天<span>'+h+'</span>时<span>'+m+'</span>分<span>'+s+'</span>秒')
  164. //竞价暂未开始
  165. document.getElementById('biddingTitle').innerHTML = '竞价暂未开始...';
  166. module.data.biddingTimeType = 3;
  167. }
  168. if(Date.parse(signupStartTime)<nowTime&&nowTime<Date.parse(signupStopTime)){
  169. //正在报名
  170. module.data.signupTimeType = 1;
  171. // document.getElementById('swiperType').style.display = 'block';
  172. d = Math.floor(signDownLeftTime/1000/60/60/24);
  173. h = Math.floor(signDownLeftTime/1000/60/60%24);
  174. m = Math.floor(signDownLeftTime/1000/60%60);
  175. s = Math.floor(signDownLeftTime/1000%60);
  176. $('#countType').html('报名中')
  177. $('#countDown').html('<span>距报名结束还有:'+d+'</span>天<span>'+h+'</span>时<span>'+m+'</span>分<span>'+s+'</span>秒')
  178. }else if (nowTime>Date.parse(signupStopTime)){
  179. //报名结束
  180. module.data.signupTimeType = 2;
  181. }else if (nowTime<Date.parse(signupStartTime)){
  182. //报名暂未开始
  183. module.data.signupTimeType = 3;
  184. d = Math.floor(signupLeftTime/1000/60/60/24);
  185. h = Math.floor(signupLeftTime/1000/60/60%24);
  186. m = Math.floor(signupLeftTime/1000/60%60);
  187. s = Math.floor(signupLeftTime/1000%60);
  188. $('#countType').html('未开始')
  189. $('#countDown').html('<span>距报名开始还有:'+d+'</span>天<span>'+h+'</span>时<span>'+m+'</span>分<span>'+s+'</span>秒')
  190. }
  191. //moneyText:出价输入框
  192. //moneyBtn:出价按钮
  193. //signYes:已报名显示文字
  194. //signNo:未报名显示文字
  195. //signBtn:已登录但未报名跳转报名按钮
  196. //signBtn2:未登录跳转登录按钮
  197. //noAction:未开始显示文字
  198. if(module.data.loginNow){ //判断是否登录(已登录)
  199. if(module.data.signup == 1){ //判断是否报名(已报名)
  200. if( module.data.biddingTimeType == 1 ){ //判断当前竞价状态(竞价中)
  201. document.getElementById('signYes').style.display = 'none';
  202. document.getElementById('signNo').style.display = 'none';
  203. document.getElementById('signBtn').style.display = 'none';
  204. document.getElementById('signBtn2').style.display = 'none';
  205. document.getElementById('noAction').style.display = 'none';
  206. document.getElementById('moneyText').style.display = 'table-row';
  207. document.getElementById('moneyBtn').style.display = 'flex';
  208. }else if( module.data.biddingTimeType == 3 ){ //判断当前竞价状态(竞价未开始)
  209. document.getElementById('moneyText').style.display = 'none';
  210. document.getElementById('moneyBtn').style.display = 'none';
  211. document.getElementById('signNo').style.display = 'none';
  212. document.getElementById('signBtn').style.display = 'none';
  213. document.getElementById('signBtn2').style.display = 'none';
  214. document.getElementById('noAction').style.display = 'none';
  215. document.getElementById('signYes').style.display = 'block';
  216. }else{ //判断当前竞价状态(竞价结束)
  217. $('.swiperInput').css('display','none');
  218. $('#timeDown').css('display','none');
  219. clearInterval(module.data.timeDown)
  220. }
  221. }else{ //判断是否报名(未报名)
  222. if( module.data.signupTimeType == 1 ){ //判断当前报名状态(正在报名)
  223. document.getElementById('moneyText').style.display = 'none';
  224. document.getElementById('moneyBtn').style.display = 'none';
  225. document.getElementById('signNo').style.display = 'none';
  226. document.getElementById('signBtn2').style.display = 'none';
  227. document.getElementById('noAction').style.display = 'none';
  228. document.getElementById('signYes').style.display = 'none';
  229. document.getElementById('signBtn').style.display = 'block';
  230. }else if( module.data.signupTimeType == 3 ){ //判断当前报名状态(报名未开始)
  231. document.getElementById('moneyText').style.display = 'none';
  232. document.getElementById('moneyBtn').style.display = 'none';
  233. document.getElementById('signBtn2').style.display = 'none';
  234. document.getElementById('signYes').style.display = 'none';
  235. document.getElementById('signBtn').style.display = 'none';
  236. document.getElementById('signNo').style.display = 'none';
  237. document.getElementById('noAction').style.display = 'block';
  238. }else{ //判断当前报名状态(报名结束)
  239. document.getElementById('moneyText').style.display = 'none';
  240. document.getElementById('moneyBtn').style.display = 'none';
  241. document.getElementById('signBtn2').style.display = 'none';
  242. document.getElementById('noAction').style.display = 'none';
  243. document.getElementById('signYes').style.display = 'none';
  244. document.getElementById('signBtn').style.display = 'none';
  245. document.getElementById('signNo').style.display = 'block';
  246. }
  247. }
  248. }else{ //判断是否登录(未登录)
  249. if( module.data.biddingTimeType == 2 ){//判断当前竞价状态(竞价结束)
  250. $('.swiperInput').css('display','none')
  251. }else{
  252. document.getElementById('signBtn2').style.display = 'block';
  253. }
  254. }
  255. if(module.data.outProjectInformationDetail.biddingType != '自由竞价' && module.data.biddingTimeType != 2){
  256. document.getElementById('biddingTable').style.display = 'table';
  257. document.getElementById('biddingTitle').style.display = 'none';
  258. }
  259. }
  260. module.projectNum = function(data){
  261. console.log(data)
  262. }
  263. module.signup = function(data){
  264. console.log(data)
  265. module.data.signup = data.data;
  266. module.data.isFirst = data.signup.isFirst;
  267. var outProjectInformationData = template('outProjectInformationData', module.data);
  268. $("#outProjectInformationContent").html(outProjectInformationData);
  269. }
  270. goBond = function(){
  271. var nowTime = Date.parse(new Date());
  272. var signupStopTime = Date.parse(module.data.outProjectInformationDetail.signupStopTime)
  273. if (nowTime>signupStopTime){
  274. tools.initError('报名已结束!');
  275. return;
  276. }
  277. if (module.data.signHistory == 1){
  278. tools.initError('已报名,请耐心等待审核结果!');
  279. return;
  280. }
  281. tools.doGet(userData, {}, module.userData);
  282. }
  283. module.userData = function(data){
  284. if (data.code == 200) {
  285. var content = data.user;
  286. //console.log(content)
  287. module.data.userId = content.userId;
  288. tools.doGet(userMember + '/' + content.userId, {}, module.userMember);//memberType 1个人 2单位
  289. }
  290. }
  291. module.userMember = function(data){
  292. if (data.code == 200) {
  293. var content = data.data;
  294. if (content.auditStatus == 'Y'){
  295. tools.skip('bond.html?id='+getQueryVariable('id'))
  296. }else{
  297. tools.initError("交易中心审核注册信息后方可进行报名!");
  298. }
  299. }
  300. }
  301. //项目基本信息
  302. module.outProjectInformation = function (data) {
  303. if (data.code == 200) {
  304. var content = data.data;
  305. module.data.biddingStopTime = content.biddingStopTime;
  306. for(var i = 0 ; i < content.fileUrlList.length ; i++){
  307. content.fileUrlList[i].fileUrl = serverApi+content.fileUrlList[i].fileUrl;
  308. }
  309. module.data.outProjectInformationDetail = content;
  310. setTimeout(function(){
  311. var outProjectInformationData = template('outProjectInformationData', module.data);
  312. $("#outProjectInformationContent").html(outProjectInformationData);
  313. var timName = document.getElementById('timeDown');
  314. if(timName){
  315. var t = 3;
  316. module.data.timeDown = setInterval(function(){
  317. // console.log($('#countType').html())
  318. // if ($('#countType').html()!='竞价中'){
  319. // clearInterval(module.data.timeDown)
  320. // document.getElementById('timeDown').style.display = 'none';
  321. // return;
  322. // }
  323. timName.innerHTML = t+'<b style="color: #666666">秒后自动刷新</b>';
  324. t--;
  325. document.getElementById('timeDown').style.display = 'inline-block';
  326. if(t<0){
  327. t = 3;
  328. let biddingStartTime = content.biddingStartTime;
  329. let biddingStopTime = content.biddingStopTime;
  330. var nowTime = Date.parse(new Date());
  331. if(Date.parse(biddingStartTime)<nowTime&&nowTime<Date.parse(biddingStopTime)){
  332. //正在竞价
  333. //交易项目竞价记录
  334. tools.doGet(biddinglist, {projectId:getQueryVariable('id')}, module.biddinglistInformation,true);
  335. }
  336. }
  337. }, 1000)
  338. }
  339. },2000)
  340. $("#know").html(module.data.know);
  341. //挂牌价格字典
  342. tools.doGet(Dictionaries+'/price_unit', {}, module.unitDictionaries,true);
  343. //经济类型字典
  344. tools.doGet(Dictionaries+'/economic_type', {}, module.economicTypeDictionaries,true);
  345. //项目类型字典
  346. tools.doGet(Dictionaries+'/project_type', {}, module.projectNumberDictionaries,true);
  347. //农地性质字典
  348. // tools.doGet(Dictionaries+'/sub_object_type', {}, module.projectTypeDictionaries,true);
  349. //前次转出方式
  350. tools.doGet(Dictionaries+'/rollout_type', {}, module.oneoutDictionaries,true);
  351. //面积单位字典
  352. tools.doGet(Dictionaries+'/area_unit', {}, module.areaDictionaries,true);
  353. //支付方式字典
  354. tools.doGet(Dictionaries+'/payment_type', {}, module.paymentTypeDictionaries,true);
  355. //缴纳形式字典
  356. tools.doGet(Dictionaries+'/deposit_payment_type', {}, module.depositPaymentTypeDictionaries,true);
  357. //交易方式字典
  358. tools.doGet(Dictionaries+'/deal_type', {}, module.transactionDictionaries,true);
  359. //竞价方式字典
  360. tools.doGet(Dictionaries+'/bidding_type', {}, module.biddingTypeDictionaries,true);
  361. //期满处理字典
  362. tools.doGet(Dictionaries+'/expire_type', {}, module.expireTypeDictionaries,true);
  363. //期满处理字典
  364. tools.doGet(Dictionaries+'/bidding_direct', {}, module.biddingDirectDictionaries,true);
  365. //交易项目竞价记录
  366. tools.doGet(biddinglist, {projectId:getQueryVariable('id')}, module.biddinglistInformation,true);
  367. //倒计时
  368. module.data.timer = setInterval(function(){
  369. // '2023-05-17 14:56:00'
  370. let signupStartTime = module.data.outProjectInformationDetail.signupStartTime;
  371. let signupStopTime = module.data.outProjectInformationDetail.signupStopTime;
  372. let biddingStartTime = module.data.outProjectInformationDetail.biddingStartTime;
  373. let biddingStopTime = module.data.outProjectInformationDetail.biddingStopTime;
  374. var nowTime = Date.parse(new Date($.ajax({type:'HEAD',async:false,data:{i: Date.parse(new Date())}}).getResponseHeader("Date")));
  375. var difference = Date.parse(biddingStopTime)-nowTime;
  376. // var centerTime = module.data.timeConfig * 60 * 1000
  377. var centerTime = content.delayPeriod * 1000
  378. if ( 0 <= difference&&difference <= centerTime){
  379. // console.log("竞价最后两分钟")
  380. //正在竞价
  381. var m,s;
  382. if(module.data.outProjectInformationDetail.biddingType == '自由竞价'){
  383. document.getElementById('biddingTable').style.display = 'none';
  384. document.getElementById('biddingTitle').style.display = 'block';
  385. document.getElementById('biddingTitle').innerHTML = '竞价进行中...';
  386. }
  387. // document.getElementById('swiperType').style.display = 'block';
  388. module.data.biddingTimeType = 1;
  389. m = Math.floor(difference/1000/60%60);
  390. s = Math.floor(difference/1000%60);
  391. $('#countType').html('竞价中')
  392. $('#countDown').html('<span>距竞价结束还有:0</span>天<span>0</span>时<span>'+m+'</span>分<span>'+s+'</span>秒')
  393. console.log(s+'-------------'+m)
  394. if (s < 1 && m < 1){
  395. console.log("竞价结束22222222222")
  396. tools.doGet(getBiddingStopTime+getQueryVariable('id'), {}, function(data){
  397. if (data.code == 200) {
  398. var nowDate = Date.parse(new Date($.ajax({type:'HEAD',async:false,data:{i: Date.parse(new Date())}}).getResponseHeader("Date")));
  399. module.data.outProjectInformationDetail.biddingStopTime = data.data
  400. let timeNew = Date.parse(data.data) + 0 - nowDate;
  401. if (timeNew > 0) {
  402. module.data.outProjectInformationDetail.biddingStopTime = data.data;
  403. // module.dataCompare(signupStartTime,signupStopTime,biddingStartTime,data.data);
  404. }else{
  405. $('#countType').html('')
  406. $('#countDown').html('竞价结束')
  407. // document.getElementById('swiperType').style.display = 'none';
  408. document.getElementById('biddingTable').style.display = 'table';
  409. document.getElementById('biddingTitle').style.display = 'none';
  410. module.data.biddingTimeType = 2;
  411. return;
  412. }
  413. }
  414. },true);
  415. }else if(s%2 == 0&&centerTime!=0){
  416. tools.doGet(getBiddingStopTime+getQueryVariable('id'), {}, module.getBiddingStopTime,true);
  417. }
  418. }else{
  419. if (!signupStartTime){console.log('缺失报名开始时间');return;}
  420. if (!signupStopTime){console.log('缺失报名结束时间');return;}
  421. if (!biddingStartTime){console.log('缺失竞价开始时间');return;}
  422. if (!biddingStopTime){console.log('缺失竞价结束时间');return;}
  423. module.dataCompare(signupStartTime,signupStopTime,biddingStartTime,biddingStopTime);
  424. }
  425. if(module.data.outProjectInformationDetail.biddingType == '自由竞价' && module.data.biddingTimeType != 2){
  426. document.getElementById('biddingTable').style.display = 'none';
  427. document.getElementById('biddingTitle').style.display = 'block';
  428. }
  429. },1000)
  430. //倒计时
  431. // module.data.timer2 = setInterval(function(){
  432. // //交易项目竞价记录
  433. // tools.doGet(biddinglist, {projectId:getQueryVariable('id')}, module.biddinglistInformationNew,true);
  434. //
  435. // },10000)
  436. if(module.data.loginNow){
  437. //判断是否报名
  438. tools.doGet(signup, {projectId:getQueryVariable('id'),depositStatus:'1',memberId:tools.getCookie('memberId')}, module.signup);
  439. tools.doGet(signup, {projectId:getQueryVariable('id'),memberId:tools.getCookie('memberId')}, module.signup2);
  440. }
  441. }
  442. }
  443. module.getBiddingStopTime = function(data){
  444. if (data.code == 200) {
  445. $('#stopTime').html(data.data)
  446. module.data.outProjectInformationDetail.biddingStopTime = data.data
  447. }
  448. }
  449. module.signup2 = function(data){
  450. if (data.code == 200) {
  451. module.data.signHistory = data.data
  452. }
  453. }
  454. //标的物图片
  455. module.showImgInformation = function (data) {
  456. if (data.code == 200) {
  457. var content = data.data;
  458. console.log(content)
  459. var contentList = [];
  460. for(var i = 0 ; i < content.length ; i++){
  461. contentList[i] = serverApi+content[i].fileUrl;
  462. }
  463. module.data.showImgInformationDetail = contentList;
  464. console.log(contentList)
  465. var showImgInformationData = template('showImgInformationData', module.data);
  466. $("#tabDetail2").html(showImgInformationData);
  467. }
  468. }
  469. //竞价记录
  470. module.biddinglistInformation = function (data) {
  471. if (data.code == 200) {
  472. var content = data.rows;
  473. if(module.data.biddinglistInformationDetailLength == content.length){
  474. return;
  475. }
  476. console.log(module.data.outProjectInformationDetail.biddingDirect)
  477. setTimeout(function(){
  478. if(module.data.outProjectInformationDetail.biddingType != '自由竞价'){
  479. if (module.data.outProjectInformationDetail.biddingDirect == '反向竞价'||module.data.outProjectInformationDetail.biddingDirect == '2'){
  480. if (content.length>0){
  481. document.getElementById('money').value = parseFloat(parseFloat(content[0].money) - parseFloat(module.data.outProjectInformationDetail.ladderPrice)).toFixed(2);
  482. }else{
  483. document.getElementById('money').value = parseFloat(parseFloat(module.data.outProjectInformationDetail.price)).toFixed(2);
  484. // + parseFloat(module.data.outProjectInformationDetail.ladderPrice)
  485. }
  486. }else{
  487. if (content.length>0){
  488. document.getElementById('money').value = parseFloat(parseFloat(content[0].money) + parseFloat(module.data.outProjectInformationDetail.ladderPrice)).toFixed(2);
  489. }else{
  490. document.getElementById('money').value = parseFloat(parseFloat(module.data.outProjectInformationDetail.price)).toFixed(2);
  491. // + parseFloat(module.data.outProjectInformationDetail.ladderPrice)
  492. }
  493. }
  494. }
  495. },2000)
  496. module.data.biddinglistInformationDetail = content;
  497. module.data.biddinglistInformationDetailLength = content.length;
  498. var biddinglistInformationData = template('biddinglistInformationData', module.data);
  499. $("#tabDetail4").html(biddinglistInformationData);
  500. if (content.length>0){$("#nowMoney").html(content[0].money);}
  501. }
  502. }
  503. //竞价记录
  504. module.biddinglistInformationNew = function (data) {
  505. if (data.code == 200) {
  506. var content = data.rows;
  507. console.log(module.data.biddinglistInformationDetail.length+'----------------------'+content.length)
  508. if (module.data.biddinglistInformationDetailLength<content.length){
  509. let time = new Date(Date.parse(new Date())+(2 * 60 * 1000));
  510. const Y = time.getFullYear()
  511. const M = time.getMonth() + 1 < 10 ? '0'+(time.getMonth()+1) : time.getMonth()+1
  512. const D = time.getDate()
  513. const H = time.getHours() // 小时
  514. const m = time.getMinutes() // 分钟
  515. const S = time.getSeconds() // 秒
  516. module.data.biddingStopTime = Y+'-'+M+'-'+D+' '+H+':'+m+':'+S;
  517. module.data.biddinglistInformationDetailLength = content.length;
  518. }
  519. }
  520. }
  521. //焦点图滚动
  522. module.swiperBanner = function (type) {
  523. console.log('aaaa')
  524. var viewSwiper = new Swiper('.view .swiper-container', {
  525. onSlideChangeStart: function() {
  526. updateNavPosition()
  527. }
  528. })
  529. $('.view .arrow-left,.preview .arrow-left').on('click', function(e) {
  530. console.log('abc')
  531. e.preventDefault()
  532. if (viewSwiper.activeIndex == 0) {
  533. viewSwiper.swipeTo(viewSwiper.slides.length - 1, 1000);
  534. return
  535. }
  536. viewSwiper.swipePrev()
  537. })
  538. $('.view .arrow-right,.preview .arrow-right').on('click', function(e) {
  539. console.log('abc')
  540. e.preventDefault()
  541. if (viewSwiper.activeIndex == viewSwiper.slides.length - 1) {
  542. viewSwiper.swipeTo(0, 1000);
  543. return
  544. }
  545. viewSwiper.swipeNext()
  546. })
  547. var previewSwiper = new Swiper('.preview .swiper-container', {
  548. visibilityFullFit: true,
  549. slidesPerView: 'auto',
  550. onlyExternal: true,
  551. onSlideClick: function() {
  552. viewSwiper.swipeTo(previewSwiper.clickedSlideIndex)
  553. }
  554. })
  555. function updateNavPosition() {
  556. $('.preview .active-nav').removeClass('active-nav')
  557. var activeNav = $('.preview .swiper-slide').eq(viewSwiper.activeIndex).addClass('active-nav')
  558. if (!activeNav.hasClass('swiper-slide-visible')) {
  559. if (activeNav.index() > previewSwiper.activeIndex) {
  560. var thumbsPerNav = Math.floor(previewSwiper.width / activeNav.width()) - 1
  561. previewSwiper.swipeTo(activeNav.index() - thumbsPerNav)
  562. } else {
  563. previewSwiper.swipeTo(activeNav.index())
  564. }
  565. }
  566. }
  567. }
  568. //切换
  569. tabClick = function(type){
  570. //标的物介绍
  571. for (var i = 0 ; i < 4 ; i++){
  572. document.getElementById('tabDetail'+(i+1)).style.display = 'none';
  573. document.getElementById('tab'+(i+1)).classList = '';
  574. }
  575. document.getElementById('tabDetail'+type).style.display = 'block';
  576. document.getElementById('tab'+type).classList = 'active';
  577. }
  578. //挂牌价格
  579. module.unitDictionaries = function (data) {
  580. if (data.code == 200) {
  581. var content = data.data;
  582. var unit = content[(module.data.outProjectInformationDetail.unit-1)].dictLabel;
  583. module.data.outProjectInformationDetail.unit = unit;
  584. var outProjectInformationData = template('outProjectInformationData', module.data);
  585. $("#outProjectInformationContent").html(outProjectInformationData);
  586. }
  587. }
  588. //出价
  589. module.biddingSubmitMethod = function (data2) {
  590. let newMoney;
  591. if (data2.data&&data2.code==200){
  592. console.log(data2)
  593. newMoney = data2.data;
  594. }else{
  595. newMoney = module.data.outProjectInformationDetail.price;
  596. }
  597. if ($('#money').val()<=0){
  598. tools.initError('请正常出价!');
  599. return;
  600. }
  601. if (module.data.outProjectInformationDetail.biddingDirect == '反向竞价'){
  602. //判断用户出价不能高于挂牌价
  603. if(module.data.outProjectInformationDetail.price<$('#money').val()){
  604. tools.initError('出价不能高于挂牌价');
  605. return;
  606. }else{
  607. //判断当前竞价方式
  608. if (module.data.outProjectInformationDetail.biddingType=='阶梯竞价' || module.data.outProjectInformationDetail.biddingType=='公开竞价'){
  609. //判断当前是否有人出价
  610. if (data2.data){
  611. //判断用户出价不能高于当前出价最低价格
  612. if(newMoney < $('#money').val()){
  613. tools.initError('不能高于当前最低价格!');
  614. return;
  615. }
  616. }
  617. }
  618. }
  619. }else{
  620. if(module.data.outProjectInformationDetail.price>$('#money').val()){
  621. tools.initError('出价不能低于挂牌价');
  622. return;
  623. }else{
  624. //判断当前竞价方式
  625. if (module.data.outProjectInformationDetail.biddingType=='阶梯竞价' || module.data.outProjectInformationDetail.biddingType=='公开竞价'){
  626. //判断当前是否有人出价
  627. if (data2.data){
  628. //判断用户出价不能低于当前出价最高价格
  629. if(newMoney >= $('#money').val()){
  630. tools.initError('不能低于当前最高价格!');
  631. return;
  632. }
  633. }
  634. }
  635. }
  636. }
  637. var data = {};
  638. var projectId = getQueryVariable('id');
  639. var memberId = tools.getCookie('memberId');
  640. var userId = tools.getCookie('userId');
  641. var userAccount = tools.getCookie('phone');
  642. var userName = tools.getCookie('userName');
  643. var money = parseFloat($('#money').val());
  644. var loginTime = Date.now($.ajax({type:'HEAD',async:false,data:{i: Date.parse(new Date())}}).getResponseHeader("Date"));
  645. data['projectId'] = projectId;
  646. data['memberId'] = memberId;
  647. data['userId'] = userId;
  648. data['userAccount'] = userAccount;
  649. data['userName'] = userName;
  650. data['money'] = money;
  651. data['loginTime'] = loginTime;
  652. tools.doPost(biddingSubmit, data, module.biddingSubmitOpen);
  653. }
  654. module.biddingSubmitOpen = function(){
  655. tools.doGet(getBiddingStopTime+getQueryVariable('id'), {}, function(data){
  656. if (data.code == 200) {
  657. var nowDate = Date.parse(new Date($.ajax({type:'HEAD',async:false,data:{i: Date.parse(new Date())}}).getResponseHeader("Date")));
  658. module.data.outProjectInformationDetail.biddingStopTime = data.data
  659. let timeNew = Date.parse(data.data) + 0 - nowDate;
  660. if (timeNew > 0) {
  661. module.data.outProjectInformationDetail.biddingStopTime = data.data;
  662. module.dataCompare(
  663. module.data.outProjectInformationDetail.signupStartTime,
  664. module.data.outProjectInformationDetail.signupStopTime,
  665. module.data.outProjectInformationDetail.biddingStartTime,data.data);
  666. }else{
  667. $('#countType').html('')
  668. $('#countDown').html('竞价结束')
  669. // document.getElementById('swiperType').style.display = 'none';
  670. document.getElementById('biddingTable').style.display = 'table';
  671. document.getElementById('biddingTitle').style.display = 'none';
  672. module.data.biddingTimeType = 2;
  673. return;
  674. }
  675. }
  676. },true);
  677. tools.initError('出价成功');
  678. // $('#money').val(0)
  679. }
  680. //经济类型
  681. module.economicTypeDictionaries = function (data) {
  682. if (data.code == 200 && module.data.outProjectInformationDetail.economicType!='') {
  683. var content = data.data;
  684. if(content[(module.data.outProjectInformationDetail.economicType-1)] != undefined){
  685. var economicType = content[(module.data.outProjectInformationDetail.economicType-1)].dictLabel;
  686. module.data.outProjectInformationDetail.economicType = economicType;
  687. var outProjectInformationData = template('outProjectInformationData', module.data);
  688. $("#outProjectInformationContent").html(outProjectInformationData);
  689. }
  690. }
  691. }
  692. //项目类型
  693. module.projectNumberDictionaries = function (data) {
  694. if (data.code == 200 && module.data.outProjectInformationDetail.projectNumber!='') {
  695. var content = data.data;
  696. var projectNumber = content.filter(function (e) { return e.dictValue == module.data.outProjectInformationDetail.projectNumber; })[0].dictLabel;
  697. module.data.outProjectInformationDetail.projectNumber = projectNumber;
  698. var outProjectInformationData = template('outProjectInformationData', module.data);
  699. $("#outProjectInformationContent").html(outProjectInformationData);
  700. }
  701. }
  702. //农地性质
  703. module.projectTypeDictionaries = function (data) {
  704. if (data.code == 200 && module.data.outProjectInformationDetail.projectType!='') {
  705. var content = data.data;
  706. console.log(content)
  707. console.log((module.data.outProjectInformationDetail.projectType-1))
  708. var projectType = content[(module.data.outProjectInformationDetail.projectType-1)].dictLabel;
  709. module.data.outProjectInformationDetail.projectType = projectType;
  710. var outProjectInformationData = template('outProjectInformationData', module.data);
  711. $("#outProjectInformationContent").html(outProjectInformationData);
  712. }
  713. }
  714. //前次转出方式
  715. module.oneoutDictionaries = function (data) {
  716. if (data.code == 200 && module.data.outProjectInformationDetail.oneout!='') {
  717. var content = data.data;
  718. if(module.data.outProjectInformationDetail.oneout == 0){
  719. module.data.outProjectInformationDetail.oneout = '无';
  720. }else{
  721. var oneout = content[(module.data.outProjectInformationDetail.oneout-1)].dictLabel;
  722. module.data.outProjectInformationDetail.oneout = oneout;
  723. }
  724. var rollout = content[(module.data.outProjectInformationDetail.rollout-1)].dictLabel;
  725. module.data.outProjectInformationDetail.rollout = rollout;
  726. var outProjectInformationData = template('outProjectInformationData', module.data);
  727. $("#outProjectInformationContent").html(outProjectInformationData);
  728. }
  729. }
  730. //面积单位
  731. module.areaDictionaries = function (data) {
  732. if (data.code == 200 && module.data.outProjectInformationDetail.allCountUnit!='') {
  733. var content = data.data;
  734. var allCountUnit = content[(module.data.outProjectInformationDetail.allCountUnit-1)].dictLabel;
  735. module.data.outProjectInformationDetail.allCountUnit = allCountUnit;
  736. if(module.data.outProjectInformationDetail.subjectList.length>0){
  737. for(var i = 0 ; i < module.data.outProjectInformationDetail.subjectList.length ; i++){
  738. module.data.outProjectInformationDetail.subjectList[i].areaUnit = content[(module.data.outProjectInformationDetail.subjectList[i].areaUnit-1)].dictLabel;
  739. }
  740. }
  741. var outProjectInformationData = template('outProjectInformationData', module.data);
  742. $("#outProjectInformationContent").html(outProjectInformationData);
  743. }
  744. }
  745. //支付方式
  746. module.paymentTypeDictionaries = function (data) {
  747. if (data.code == 200 && module.data.outProjectInformationDetail.paymentType!='') {
  748. var content = data.data;
  749. var paymentType = content[(module.data.outProjectInformationDetail.paymentType-1)].dictLabel;
  750. module.data.outProjectInformationDetail.paymentType = paymentType;
  751. var outProjectInformationData = template('outProjectInformationData', module.data);
  752. $("#outProjectInformationContent").html(outProjectInformationData);
  753. }
  754. }
  755. //缴纳形式
  756. module.depositPaymentTypeDictionaries = function (data) {
  757. if (data.code == 200 && module.data.outProjectInformationDetail.depositPaymentType!='') {
  758. var content = data.data;
  759. var depositPaymentType = content[(module.data.outProjectInformationDetail.depositPaymentType-1)].dictLabel;
  760. module.data.outProjectInformationDetail.depositPaymentType = depositPaymentType;
  761. var outProjectInformationData = template('outProjectInformationData', module.data);
  762. $("#outProjectInformationContent").html(outProjectInformationData);
  763. }
  764. }
  765. //交易方式
  766. module.transactionDictionaries = function (data) {
  767. if (data.code == 200 && module.data.outProjectInformationDetail.dealType!='') {
  768. var content = data.data;
  769. var dealType = content[(module.data.outProjectInformationDetail.dealType-1)].dictLabel;
  770. module.data.outProjectInformationDetail.dealType = dealType;
  771. var outProjectInformationData = template('outProjectInformationData', module.data);
  772. $("#outProjectInformationContent").html(outProjectInformationData);
  773. }
  774. }
  775. //竞价方式
  776. module.biddingTypeDictionaries = function (data) {
  777. if (data.code == 200 && module.data.outProjectInformationDetail.biddingType!='') {
  778. var content = data.data;
  779. var biddingType = content[(module.data.outProjectInformationDetail.biddingType-1)].dictLabel;
  780. module.data.outProjectInformationDetail.biddingType = biddingType;
  781. var outProjectInformationData = template('outProjectInformationData', module.data);
  782. $("#outProjectInformationContent").html(outProjectInformationData);
  783. }
  784. }
  785. //系统是否
  786. module.expireTypeDictionaries = function (data) {
  787. if (data.code == 200 && module.data.outProjectInformationDetail.expire!='') {
  788. var content = data.data;
  789. var expire = content[(module.data.outProjectInformationDetail.expire-1)].dictLabel;
  790. module.data.outProjectInformationDetail.expire = expire;
  791. var outProjectInformationData = template('outProjectInformationData', module.data);
  792. $("#outProjectInformationContent").html(outProjectInformationData);
  793. }
  794. }
  795. //系统是否
  796. module.biddingDirectDictionaries = function (data) {
  797. if (data.code == 200 && module.data.outProjectInformationDetail.biddingDirect!='') {
  798. var content = data.data;
  799. var biddingDirect = content[(module.data.outProjectInformationDetail.biddingDirect-1)].dictLabel;
  800. module.data.outProjectInformationDetail.biddingDirect = biddingDirect;
  801. var outProjectInformationData = template('outProjectInformationData', module.data);
  802. $("#outProjectInformationContent").html(outProjectInformationData);
  803. }
  804. }
  805. changeProMoney = function(){
  806. tools.doGet(projectNewBidMoney+getQueryVariable('id'), {}, module.biddingSubmitMethod);
  807. }
  808. changeProMoneyFirst = function(){
  809. tools.doGet(projectNewBidMoney+getQueryVariable('id'), {}, module.biddingSubmitMethodFirst);
  810. }
  811. module.biddingSubmitMethodFirst = function (data) {
  812. if (data.code == 200) {
  813. let newMoney;
  814. if (data.data){
  815. newMoney = data.data;
  816. }else{
  817. newMoney = module.data.outProjectInformationDetail.price;
  818. }
  819. console.log(newMoney);
  820. var data = {};
  821. var projectId = getQueryVariable('id');
  822. var memberId = tools.getCookie('memberId');
  823. var userId = tools.getCookie('userId');
  824. var userAccount = tools.getCookie('phone');
  825. var userName = tools.getCookie('userName');
  826. var money = parseFloat(newMoney);
  827. // var loginTime = tools.getNowFormatDate();
  828. var loginTime = Date.now($.ajax({type:'HEAD',async:false,data:{i: Date.parse(new Date())}}).getResponseHeader("Date"));
  829. data['projectId'] = projectId;
  830. data['memberId'] = memberId;
  831. data['userId'] = userId;
  832. data['userAccount'] = userAccount;
  833. data['userName'] = userName;
  834. data['money'] = money;
  835. data['loginTime'] = loginTime;
  836. tools.doPost(biddingSubmit, data, module.biddingSubmitOpen);
  837. }
  838. }
  839. //向上加价
  840. upMoney = function(){
  841. if (module.data.outProjectInformationDetail.biddingDirect == '反向竞价'){
  842. if (module.data.biddinglistInformationDetail.length<1){
  843. if(module.data.outProjectInformationDetail.price <= $('#money').val()){
  844. tools.initError('出价不能高于挂牌价格');
  845. return;
  846. }
  847. }else{
  848. if(module.data.biddinglistInformationDetail[0].money <= (parseFloat($('#money').val())+parseFloat(module.data.outProjectInformationDetail.ladderPrice)).toFixed(2)){
  849. tools.initError('出价不能高于当前出价最低价格');
  850. return;
  851. }
  852. }
  853. }else{
  854. if (module.data.biddinglistInformationDetail.length<1){
  855. if(module.data.outProjectInformationDetail.price>$('#money').val()){
  856. tools.initError('出价不能低于挂牌价格');
  857. return;
  858. }
  859. }else{
  860. if(module.data.biddinglistInformationDetail[0].money>=$('#money').val()){
  861. tools.initError('出价不能低于当前出价最高价格');
  862. return;
  863. }
  864. }
  865. }
  866. $('#money').val() == null||$('#money').val() == ''?$('#money').val(0):'';
  867. console.log($('#money').val())
  868. module.data.outProjectInformationDetail.ladderPrice?$('#money').val((parseFloat($('#money').val())+parseFloat(module.data.outProjectInformationDetail.ladderPrice)).toFixed(2)):document.getElementById('money').value += 1
  869. }
  870. //向下降价
  871. downMoney = function(){
  872. if (module.data.outProjectInformationDetail.biddingDirect == '反向竞价'){
  873. if (module.data.biddinglistInformationDetail.length<1){
  874. if(module.data.outProjectInformationDetail.price<$('#money').val()){
  875. tools.initError('出价不能高于挂牌价格');
  876. return;
  877. }
  878. }else{
  879. if(module.data.biddinglistInformationDetail[0].money<$('#money').val()){
  880. tools.initError('出价不能高于当前出价最低价格');
  881. return;
  882. }
  883. }
  884. }else{
  885. if (module.data.biddinglistInformationDetail.length<1){
  886. if(module.data.outProjectInformationDetail.price>=$('#money').val()){
  887. tools.initError('出价不能低于挂牌价格');
  888. return;
  889. }
  890. }else{
  891. if(module.data.biddinglistInformationDetail[0].money>=(parseFloat($('#money').val())-parseFloat(module.data.outProjectInformationDetail.ladderPrice)).toFixed(2)){
  892. tools.initError('出价不能低于当前出价最高价格');
  893. return;
  894. }
  895. }
  896. }
  897. $('#money').val() == null?$('#money').val(0):'';
  898. if ($('#money').val() == 0)return;
  899. module.data.outProjectInformationDetail.ladderPrice?$('#money').val((parseFloat($('#money').val())-parseFloat(module.data.outProjectInformationDetail.ladderPrice)).toFixed(2)):document.getElementById('money').value -= 1
  900. }
  901. moneyChange = function(){
  902. if (module.data.outProjectInformationDetail.biddingDirect == '反向竞价'){
  903. if(module.data.outProjectInformationDetail.price<$('#money').val()){
  904. $('#money').val(module.data.outProjectInformationDetail.price-1);
  905. }
  906. }
  907. }
  908. //登陆跳转
  909. goLogin = function(){
  910. tools.initDialog('登陆提示', '登陆后可参与竞价,是否登录?', function () {
  911. tools.skip('../login/login.html')
  912. }, '登录', function () { }, "取消")
  913. }
  914. return module;
  915. });