2022-03-10 14:24:13 +08:00
|
|
|
|
<!DOCTYPE html>
|
|
|
|
|
<html lang="en">
|
2022-07-08 11:10:28 +08:00
|
|
|
|
<script type='text/javascript' src="../officecontrol/jquery.js"></script>
|
|
|
|
|
|
2022-03-10 14:24:13 +08:00
|
|
|
|
<head>
|
|
|
|
|
<meta charset="UTF-8">
|
|
|
|
|
<title>开标倒计时-招标采购中心</title>
|
|
|
|
|
<link href="css/countDown.css" rel="stylesheet" type="text/css">
|
|
|
|
|
</head>
|
2022-07-08 11:10:28 +08:00
|
|
|
|
|
2022-03-10 14:24:13 +08:00
|
|
|
|
<body>
|
|
|
|
|
<!--内容区-->
|
|
|
|
|
<div>
|
|
|
|
|
<!--红头-->
|
|
|
|
|
<div class="headerArea">
|
|
|
|
|
<img src="images/logo.svg" alt="" width="30" class="headerPic" />
|
|
|
|
|
<h2>中国联通智慧供应链平台 | 招标采购中心</h2>
|
|
|
|
|
</div>
|
|
|
|
|
<!--//红头-->
|
|
|
|
|
<!--倒计时区-->
|
|
|
|
|
<div class="countDownBlock">
|
|
|
|
|
<div class="timeNow" id="dateTime">
|
2022-07-08 11:10:28 +08:00
|
|
|
|
<span>00</span>/
|
|
|
|
|
<span>00</span>/
|
|
|
|
|
<span>00</span>
|
|
|
|
|
<span>00</span>:
|
|
|
|
|
<span>00</span>:
|
|
|
|
|
<span>00</span>
|
2022-03-10 14:24:13 +08:00
|
|
|
|
</div>
|
|
|
|
|
<!--主区域-->
|
|
|
|
|
<!--天数三位数时,请引用在countDownArea后,加countDownSpe即可-->
|
|
|
|
|
<div class="countDownArea countDownSpe">
|
|
|
|
|
<h2 id="deptName"></h2>
|
|
|
|
|
<table class="countTable" cellspacing="0" cellpadding="0">
|
|
|
|
|
<colgroup>
|
|
|
|
|
<col width="10%" />
|
|
|
|
|
<col width="40%" />
|
|
|
|
|
<col width="10%" />
|
|
|
|
|
<col width="*" />
|
|
|
|
|
</colgroup>
|
|
|
|
|
<tbody>
|
|
|
|
|
<tr>
|
|
|
|
|
<td>项目名称:</td>
|
|
|
|
|
<td colspan="3" id="projectName"></td>
|
|
|
|
|
</tr>
|
|
|
|
|
<tr>
|
|
|
|
|
<td>项目编号:</td>
|
|
|
|
|
<td id="projectNumber"></td>
|
|
|
|
|
<td>标段名称:</td>
|
|
|
|
|
<td id="sectionName"></td>
|
|
|
|
|
</tr>
|
|
|
|
|
<tr>
|
|
|
|
|
<td>标段编号:</td>
|
|
|
|
|
<td id="sectionNumber"></td>
|
|
|
|
|
<td>开标时间:</td>
|
|
|
|
|
<td id="openTime"></td>
|
|
|
|
|
</tr>
|
|
|
|
|
</tbody>
|
|
|
|
|
</table>
|
|
|
|
|
<div class="countDownTime">
|
|
|
|
|
<p>距开标还有:</p>
|
|
|
|
|
<div class="showTime">
|
|
|
|
|
<span class="timeType01" id="dd">000</span><i>天</i>
|
|
|
|
|
<span class="timeType01" id="hh">00</span><i>时</i>
|
|
|
|
|
<span class="timeType01" id="mm">00</span><i>分</i>
|
|
|
|
|
<span class="timeType01" id="ss">00</span><i>秒</i>
|
|
|
|
|
</div>
|
|
|
|
|
<!--到开标时间(可点击),样式为:countBtn02;未到开标时间(不可点击),样式为:countBtn01-->
|
|
|
|
|
<button type="button" id="openButton" class="countBtn countBtn01"></button>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<!--//主区域-->
|
|
|
|
|
</div>
|
|
|
|
|
<!--//倒计时区-->
|
|
|
|
|
</div>
|
|
|
|
|
<!--//内容区-->
|
|
|
|
|
<script>
|
|
|
|
|
var getDescOpenRoomTimer = "";//剩余时间修正定时
|
|
|
|
|
var getTimer = "";//开标时间修正定时
|
|
|
|
|
var systemTimer = "";//系统时间计算
|
|
|
|
|
|
|
|
|
|
var aa = getQueryVariable("aa");
|
|
|
|
|
var bb = getQueryVariable("bb");
|
|
|
|
|
var roomType = getQueryVariable("roomType");
|
|
|
|
|
var openRoomId = getQueryVariable("cc");
|
|
|
|
|
|
|
|
|
|
var token = sessionStorage.getItem('Authorization');
|
|
|
|
|
var userData = sessionStorage.getItem('userData');
|
|
|
|
|
var obj = JSON.parse(userData);
|
|
|
|
|
|
|
|
|
|
var roleData = sessionStorage.getItem('roleData');
|
|
|
|
|
var role = JSON.parse(roleData);
|
|
|
|
|
var roleCode = role.roleCode;
|
|
|
|
|
|
|
|
|
|
$("#deptName").html(obj.deptName);
|
2022-07-08 11:10:28 +08:00
|
|
|
|
var service_opentime = "";//开标时间
|
2022-03-10 14:24:13 +08:00
|
|
|
|
var openState = 0;//未开
|
|
|
|
|
var projectId = "";
|
|
|
|
|
var sectionId = "";
|
|
|
|
|
|
|
|
|
|
var oping_n = 0;
|
|
|
|
|
var oping_y = 0;
|
|
|
|
|
var oping_t = 0;
|
|
|
|
|
var oping_h = 0;
|
|
|
|
|
var oping_m = 0;
|
|
|
|
|
var oping_s = 0;
|
2022-07-08 11:10:28 +08:00
|
|
|
|
function getOpening() {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
$.ajax({
|
2022-07-08 11:10:28 +08:00
|
|
|
|
url: "/api/biz-service-ebtp-opening/v1/bizbidopenroom/getOpenRoomById/" + openRoomId,
|
|
|
|
|
headers: {
|
|
|
|
|
"Authorization": token
|
2022-03-10 14:24:13 +08:00
|
|
|
|
},
|
2022-07-08 11:10:28 +08:00
|
|
|
|
type: "GET",
|
|
|
|
|
success: function (re) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
var data = re.data;
|
|
|
|
|
$("#projectName").html(data.projectName);
|
|
|
|
|
$("#projectNumber").html(data.ebpProjectNumber);
|
|
|
|
|
$("#sectionName").html(data.sectionName);
|
|
|
|
|
$("#sectionNumber").html(data.sectionNo);
|
|
|
|
|
openState = data.roomState;
|
|
|
|
|
projectId = data.projectId;
|
|
|
|
|
sectionId = data.sectionId;
|
2022-07-08 11:10:28 +08:00
|
|
|
|
if (data.opingTime != null && data.opingTime != "") {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
service_opentime = data.opingTime;
|
|
|
|
|
$("#openTime").html(data.opingTime);
|
|
|
|
|
var openTime = data.opingTime.split(" ");
|
|
|
|
|
var date = openTime[0].split("-");
|
|
|
|
|
oping_n = date[0];
|
|
|
|
|
oping_y = date[1];
|
|
|
|
|
oping_t = date[2];
|
|
|
|
|
var time = openTime[1].split(":");
|
|
|
|
|
oping_h = time[0];
|
|
|
|
|
oping_m = time[1];
|
|
|
|
|
oping_s = time[2];
|
|
|
|
|
|
|
|
|
|
getTime();
|
|
|
|
|
getTimer = setInterval(getTime, 30000);//开标时间修正
|
|
|
|
|
getDescOpenRoomTime();
|
|
|
|
|
getDescOpenRoomTimer = setInterval(getDescOpenRoomTime, 30000);//剩余时间修正
|
2022-07-08 11:10:28 +08:00
|
|
|
|
|
2022-03-10 14:24:13 +08:00
|
|
|
|
systemTimer = setInterval(systemTime, 1000);//系统时间计算
|
2022-07-08 11:10:28 +08:00
|
|
|
|
} else {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
$("#openTime").html("开标日期异常")
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
getOpening();
|
|
|
|
|
|
|
|
|
|
var n = 0;
|
|
|
|
|
var y = 0;
|
|
|
|
|
var t = 0;
|
|
|
|
|
var h = 0;
|
|
|
|
|
var m = 0;
|
|
|
|
|
var s = 0;
|
2022-07-08 11:10:28 +08:00
|
|
|
|
|
2022-03-10 14:24:13 +08:00
|
|
|
|
//获取开标时间
|
2022-07-08 11:10:28 +08:00
|
|
|
|
function getTime() {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
$.ajax({
|
2022-07-08 11:10:28 +08:00
|
|
|
|
url: "/api/biz-service-ebtp-extend/v1/timeService/getServiceSystemTime",
|
|
|
|
|
headers: {
|
|
|
|
|
"Authorization": token
|
2022-03-10 14:24:13 +08:00
|
|
|
|
},
|
2022-07-08 11:10:28 +08:00
|
|
|
|
async: true,
|
|
|
|
|
type: "GET",
|
|
|
|
|
success: function (re) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
n = re.data.year;
|
|
|
|
|
y = re.data.month;
|
|
|
|
|
t = re.data.date;
|
|
|
|
|
h = re.data.hour;
|
|
|
|
|
m = re.data.minute;
|
|
|
|
|
s = re.data.second;
|
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
});
|
2022-03-10 14:24:13 +08:00
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
|
|
|
|
|
|
2022-03-10 14:24:13 +08:00
|
|
|
|
|
|
|
|
|
var dd = 0;
|
|
|
|
|
var hh = 0;
|
|
|
|
|
var mm = 0;
|
|
|
|
|
var ss = 0;
|
2022-07-08 11:10:28 +08:00
|
|
|
|
|
2022-03-10 14:24:13 +08:00
|
|
|
|
//获取剩余时间差
|
2022-07-08 11:10:28 +08:00
|
|
|
|
function getDescOpenRoomTime() {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
$.ajax({
|
2022-07-08 11:10:28 +08:00
|
|
|
|
url: "/api/biz-service-ebtp-extend/v1/timeService/getDescOpenRoomTime",
|
|
|
|
|
data: {
|
|
|
|
|
openTime: service_opentime
|
2022-03-10 14:24:13 +08:00
|
|
|
|
},
|
2022-07-08 11:10:28 +08:00
|
|
|
|
headers: {
|
|
|
|
|
"Authorization": token
|
2022-03-10 14:24:13 +08:00
|
|
|
|
},
|
2022-07-08 11:10:28 +08:00
|
|
|
|
async: true,
|
|
|
|
|
type: "GET",
|
|
|
|
|
success: function (re) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
dd = re.data.date;
|
|
|
|
|
hh = re.data.hour;
|
|
|
|
|
mm = re.data.minute;
|
|
|
|
|
ss = re.data.second;
|
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
});
|
2022-03-10 14:24:13 +08:00
|
|
|
|
}
|
|
|
|
|
var timeover = false;
|
|
|
|
|
//系统时间定时更新
|
|
|
|
|
function systemTime() {
|
2022-07-08 11:10:28 +08:00
|
|
|
|
s = s + 1;
|
|
|
|
|
if (s == 60) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
s = 1;
|
2022-07-08 11:10:28 +08:00
|
|
|
|
m = m + 1;
|
2022-03-10 14:24:13 +08:00
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
if (m == 60) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
m = 1;
|
2022-07-08 11:10:28 +08:00
|
|
|
|
h = h + 1;
|
2022-03-10 14:24:13 +08:00
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
if (h == 24) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
h = 0;
|
2022-07-08 11:10:28 +08:00
|
|
|
|
t = t + 1;
|
|
|
|
|
}
|
|
|
|
|
$('#dateTime span').eq(0).html(n);
|
|
|
|
|
$('#dateTime span').eq(1).html(y < 10 ? "0" + y : y);
|
|
|
|
|
$('#dateTime span').eq(2).html(t < 10 ? "0" + t : t);
|
|
|
|
|
$('#dateTime span').eq(3).html(h < 10 ? "0" + h : h);
|
|
|
|
|
$('#dateTime span').eq(4).html(m < 10 ? "0" + m : m);
|
|
|
|
|
$('#dateTime span').eq(5).html(s < 10 ? "0" + s : s);
|
|
|
|
|
for (var i = 0; i < $('#dateTime').length; i++) {
|
|
|
|
|
if ($('div').eq(i).text().length == 1) {
|
|
|
|
|
$('div').eq(i).html(function (index, html) {
|
|
|
|
|
return 0 + html;
|
|
|
|
|
});
|
|
|
|
|
}
|
2022-03-10 14:24:13 +08:00
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
if (!timeover) {
|
|
|
|
|
openJsystemTime();
|
2022-03-10 14:24:13 +08:00
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
}
|
2022-03-10 14:24:13 +08:00
|
|
|
|
|
|
|
|
|
//剩余时间定时
|
2022-07-08 11:10:28 +08:00
|
|
|
|
function openJsystemTime() {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
|
2022-07-08 11:10:28 +08:00
|
|
|
|
ss = ss - 1;
|
|
|
|
|
if (ss < 0) {
|
|
|
|
|
if (mm > 0 && hh > 0 && dd > 0) {
|
|
|
|
|
mm = mm - 1;
|
2022-03-10 14:24:13 +08:00
|
|
|
|
ss = 59;
|
2022-07-08 11:10:28 +08:00
|
|
|
|
} else {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
ss = 0;
|
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
|
2022-03-10 14:24:13 +08:00
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
if (mm < 0) {
|
|
|
|
|
if (hh > 0 && dd > 0) {
|
|
|
|
|
hh = hh - 1;
|
2022-03-10 14:24:13 +08:00
|
|
|
|
mm = 59;
|
2022-07-08 11:10:28 +08:00
|
|
|
|
} else {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
mm = 0
|
|
|
|
|
}
|
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
if (hh < 0) {
|
|
|
|
|
if (dd > 0) {
|
|
|
|
|
dd = dd - 1;
|
2022-03-10 14:24:13 +08:00
|
|
|
|
hh = 23;
|
2022-07-08 11:10:28 +08:00
|
|
|
|
} else {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
dd = 0;
|
|
|
|
|
}
|
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
if (dd < 0) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
dd = 0;
|
|
|
|
|
}
|
|
|
|
|
|
2022-07-08 11:10:28 +08:00
|
|
|
|
if (roleCode == "ebtp-agency-project-manager" || roleCode == "ebtp-purchase") {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
$("#openButton").text('开 标');
|
|
|
|
|
} else {
|
|
|
|
|
$("#openButton").text('进入开标大厅');
|
2022-07-08 11:10:28 +08:00
|
|
|
|
if (openState == 0) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
$("#openButton").hide();
|
|
|
|
|
} else {
|
|
|
|
|
$("#openButton").show();
|
|
|
|
|
}
|
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
|
|
|
|
|
if (ss <= 0 && mm <= 0 && hh <= 0 && dd <= 0) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
dd = 0;
|
|
|
|
|
hh = 0;
|
|
|
|
|
mm = 0;
|
|
|
|
|
ss = 0;
|
|
|
|
|
//可以开标
|
2022-07-08 11:10:28 +08:00
|
|
|
|
$("#openButton").removeClass("countBtn01").attr("class", "countBtn countBtn02");
|
|
|
|
|
$("#openButton").bind("click", function () {
|
|
|
|
|
if (openState == 0) {
|
|
|
|
|
if (roleCode == "ebtp-agency-project-manager" || roleCode == "ebtp-purchase") {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
opening();//未开标先开标
|
2022-07-08 11:10:28 +08:00
|
|
|
|
} else {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
supplierOpening();//供应商进入开标室
|
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
|
|
|
|
|
} else {//否则直接进入
|
2022-03-10 14:24:13 +08:00
|
|
|
|
onClickToOpenRoom();
|
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
|
2022-03-10 14:24:13 +08:00
|
|
|
|
})
|
|
|
|
|
//可以开标后 结束除系统时间更新外所有定时
|
|
|
|
|
clearInterval(getTimer);
|
|
|
|
|
clearInterval(getDescOpenRoomTimer);
|
2022-07-08 11:10:28 +08:00
|
|
|
|
timeover = true;
|
2022-03-10 14:24:13 +08:00
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
|
|
|
|
|
$("#dd").html(dd < 10 ? "00" + dd : dd < 100 ? "0" + dd : dd);
|
|
|
|
|
$("#hh").html(hh < 10 ? "0" + hh : hh);
|
|
|
|
|
$("#mm").html(mm < 10 ? "0" + mm : mm);
|
|
|
|
|
$("#ss").html(ss < 10 ? "0" + ss : ss);
|
2022-03-10 14:24:13 +08:00
|
|
|
|
}
|
|
|
|
|
|
2022-07-08 11:10:28 +08:00
|
|
|
|
|
|
|
|
|
function opening() {
|
|
|
|
|
var puData = { "projectId": projectId, "sectionId": sectionId, "id": openRoomId, "roomState": "1" };
|
2022-03-10 14:24:13 +08:00
|
|
|
|
|
|
|
|
|
$.ajax({
|
2022-07-08 11:10:28 +08:00
|
|
|
|
url: "/api/biz-service-ebtp-opening/v1/bizbidopenroom/updateOpenRoom",
|
|
|
|
|
data: JSON.stringify(puData),
|
|
|
|
|
contentType: 'application/json',
|
|
|
|
|
dataType: "json",
|
|
|
|
|
headers: {
|
|
|
|
|
"Authorization": token,
|
|
|
|
|
"token": token
|
2022-03-10 14:24:13 +08:00
|
|
|
|
},
|
2022-07-26 15:08:55 +08:00
|
|
|
|
type: "POST",
|
2022-07-08 11:10:28 +08:00
|
|
|
|
success: function (re) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
//开标成功进入开标室
|
2022-07-08 11:10:28 +08:00
|
|
|
|
if (re.success) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
onClickToOpenRoom();
|
2022-07-08 11:10:28 +08:00
|
|
|
|
} else {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
alert(re.message);
|
|
|
|
|
}
|
|
|
|
|
},
|
2022-07-08 11:10:28 +08:00
|
|
|
|
error: function (re) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
alert(re.message);
|
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
});
|
2022-03-10 14:24:13 +08:00
|
|
|
|
}
|
|
|
|
|
|
2022-07-08 11:10:28 +08:00
|
|
|
|
function supplierOpening() {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
//重新获取开标室信息
|
|
|
|
|
getOpening();
|
2022-07-08 11:10:28 +08:00
|
|
|
|
if (openState == 0) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
alert("请等待业务经理开标");
|
2022-07-08 11:10:28 +08:00
|
|
|
|
} else {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
onClickToOpenRoom();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2022-07-08 11:10:28 +08:00
|
|
|
|
function onClickToOpenRoom() {
|
|
|
|
|
window.location.href = "/room/index?aa=" + aa + "&bb=" + bb + "&roomType=" + roomType;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function getQueryVariable(variable) {
|
2022-03-10 14:24:13 +08:00
|
|
|
|
var query = window.location.search.substring(1);
|
|
|
|
|
var vars = query.split("&");
|
2022-07-08 11:10:28 +08:00
|
|
|
|
for (var i = 0; i < vars.length; i++) {
|
|
|
|
|
var pair = vars[i].split("=");
|
|
|
|
|
if (pair[0] == variable) { return pair[1]; }
|
2022-03-10 14:24:13 +08:00
|
|
|
|
}
|
2022-07-08 11:10:28 +08:00
|
|
|
|
return (false);
|
2022-03-10 14:24:13 +08:00
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
</body>
|
2022-07-08 11:10:28 +08:00
|
|
|
|
|
2022-03-10 14:24:13 +08:00
|
|
|
|
</html>
|