var searchindex = "000960"
, options_data = {
seccode: searchindex
}
, options = {
type: "get",
data: options_data,
url:"/system/resource/loaddata/companygeneralization.jsp",
loadingplugin: window.loading($(".company-info"))
};
var config = {
template: {
trendtemstr: $("#trendtemplate").html()
},
minuteurl: "/system/resource/loaddata/gettimedata.jsp",
kurl: "/system/resource/loaddata/gethistorydata.jsp",
charts: {},
chartdatastate: {},
codereg: /^399?/,
code: searchindex
};
function initelements() {
config.elements = {
trendwrap: $(".trend-wrap"),
minutewrap: $("#minutely"),
daywrap: $("#daily"),
weekwrap: $("#weekly"),
monthwrap: $("#monthly"),
trendtabs: $(".pic-tabs", ".trend-wrap"),
trenddetailwrap: $(".detail-info", ".trend-detail-wrap")
}
}
function setchartdata() {
$.when(ajaxrequest({
url: config.minuteurl,
type: "get",
data: setrequestparam("minute"),
loadingplugin: window.loading(config.elements.trendwrap)
})).done(function(t) {
if (t && "0" === t.code && (config.chartdatastate.minute = !0),
config.ischinext = 17 === t.data.groupid,
config.iscdr = !0 === t.data.iscdr,
config.ischinext && !0 !== t.data.isdelisting && $(".trend-wrap").addclass("chinext-wrap"),
buildbasicinfo(t.data),
(config.ischinext || config.iscdr) && !0 !== t.data.isdelisting) {
var e = 2 === t.data.isnoprofit ? 'u' : ""
, a = 2 === t.data.isvotedifferent ? 'w' : ""
, n = e + (1 === t.data.isvie ? 'v' : "") + a;
$(".gemsign").html(n),
n && $(".item-right").css("padding-right", "85px")
}
$(".update-time").text(t.datetime);
var i = {
data: t,
grid: {
index: [["4%", 20, "8%", 65]],
sec: [["4%", 60, "48%", 60], ["65%", 60, "7%", 60]]
}
};
if ($.isemptyobject(config.charts.minutechart)) {
var l = new s.ui.controls.mlinechart(config.elements.minutewrap,i);
config.charts.minutechart = l
} else
config.charts.minutechart.updateoption(i)
})
}
function setdaychartdata() {
$.when(ajaxrequest({
url: config.kurl,
type: "get",
data: setrequestparam("day"),
loadingplugin: window.loading(config.elements.daywrap)
})).done(function(t) {
t && "0" === t.code && (config.chartdatastate.day = !0);
var e = {
data: t,
grid: [["4%", 68, "48%", 32], ["65%", 68, "16%", 32]]
};
if ($.isemptyobject(config.charts.daychart)) {
var a = new s.ui.controls.klinechart(config.elements.daywrap,e);
config.charts.daychart = a
} else
config.charts.daychart.updateoption(e)
})
}
function setweekchartdata() {
$.when(ajaxrequest({
url: config.kurl,
type: "get",
data: setrequestparam("week"),
loadingplugin: window.loading(config.elements.weekwrap)
})).done(function(t) {
t && "0" === t.code && (config.chartdatastate.week = !0);
var e = {
data: t,
grid: [["4%", 68, "48%", 32], ["65%", 68, "16%", 32]]
};
if ($.isemptyobject(config.charts.weekchart)) {
var a = new s.ui.controls.klinechart(config.elements.weekwrap,e);
config.charts.weekchart = a
} else
config.charts.weekchart.updateoption(e)
})
}
function setmonthchartdata() {
$.when(ajaxrequest({
url: config.kurl,
type: "get",
data: setrequestparam("month"),
loadingplugin: window.loading(config.elements.monthwrap)
})).done(function(t) {
t && "0" === t.code && (config.chartdatastate.month = !0);
var e = {
data: t,
grid: [["4%", 68, "48%", 32], ["65%", 68, "16%", 32]]
};
if ($.isemptyobject(config.charts.monthchart)) {
var a = new s.ui.controls.klinechart(config.elements.monthwrap,e);
config.charts.monthchart = a
} else
config.charts.monthchart.updateoption(e)
})
}
function switchchartdata() {
config.chartdatastate.index || config.chartdatastate.minute ? 1 !== config.chartdatastate.index || config.chartdatastate.day ? 2 !== config.chartdatastate.index || config.chartdatastate.week ? 3 !== config.chartdatastate.index || config.chartdatastate.month || setmonthchartdata() : setweekchartdata() : setdaychartdata() : setchartdata()
}
function setrequestparam(t) {
switch (t) {
case "minute":
return {
marketid: 1,
code: config.code
};
case "day":
return {
cycletype: 32,
marketid: 1,
code: config.code
};
case "week":
return {
cycletype: 33,
marketid: 1,
code: config.code
};
case "month":
return {
cycletype: 34,
marketid: 1,
code: config.code
}
}
}
function buildbasicinfo(t) {
var e = _.template(config.template.trendtemstr);
t.isindex = config.codereg.test(t.code),
t.newisdown = /^\-/.test(t.deltapercent),
t.openisdown = +t.open < +t.close,
t.highisdown = +t.high < +t.close,
t.lowisdown = +t.low < +t.close,
t.ischinext = config.ischinext,
calcuunit(t),
tradingstatusfilter(t);
var a = e(t);
config.elements.trenddetailwrap.empty().append(a)
}
function calcuunit(t) {
function e(t, e) {
return function(t) {
var e = {};
return void 0 === t || (1 <= t / 1e8 ? (e.value = (t / 1e8).tofixed(2),
e.unit = "亿") : 1 <= t / 1e4 ? (e.value = (t / 1e4).tofixed(2),
e.unit = "万") : (e.value = t,
e.unit = "")),
e
}(t)
}
var a = e(t.volume);
t.volume = a.value,
t.volumeunit = a.unit;
var n = e(t.amount);
t.amount = n.value,
t.amountunit = n.unit;
var i = e(t.volumeaht);
t.volumeaht = i.value,
t.volumeahtunit = i.unit;
var s = e(t.amountaht);
t.amountaht = s.value,
t.amountahtunit = s.unit
}
function tradingstatusfilter(t) {
config.isenglish ? (t.tradingphasecode1 = {
2: "opening auction",
3: "continuous auction",
11: "market break",
7: "closing auction",
0: "market closed",
6: "temporary trading halt",
12: "suspension due to volatility",
4: "all-day suspension"
}[t.tradingphasecode1] || "--",
t.tradingphasecode2 = {
8: "accept order",
9: "continuous trading",
0: "market closed",
4: "all-day suspension",
11: "market break",
6: "temporary trading halt"
}[t.tradingphasecode2] || "--") : (t.tradingphasecode1 = {
2: "开盘集合竞价",
3: "连续竞价",
11: "休市",
7: "收盘集合竞价",
0: "闭市",
6: "临时停牌",
12: "波动性中断",
4: "全天停牌"
}[t.tradingphasecode1] || "--",
t.tradingphasecode2 = {
8: "接受申报",
9: "连续交易",
0: "闭市",
4: "全天停牌",
11: "休市",
6: "临时停牌"
}[t.tradingphasecode2] || "--")
}
function switchtabs() {
config.elements.trendtabs.delegate(">li", "click", function(t) {
var e = $(this).index();
config.chartdatastate.index = e,
switchchartdata(),
$(this).addclass("active").siblings("li").removeclass("active"),
$(".tab-panel", config.elements.trendwrap).removeclass("active").eq(e).addclass("active")
})
}
initelements(),
switchchartdata(),
switchtabs();