PageSourceSearch

https://ytc.cn/pgfile/individual.js

js ytc.cn collected 2026-10-07 19:43:10 UTC 8,180 bytes, 239 lines download raw bytes

1var searchIndex = "000960"
2  , options_data = {
3		secCode: searchIndex
4	}
5  , options = {
6    type: "GET",
7    data: options_data,
8    url:"/system/resource/loaddata/companyGeneralization.jsp",
9    loadingPlugin: window.Loading($(".company-info"))
10};
11var config = {
12    template: {
13        trendTemStr: $("#trendTemplate").html()
14    },
15    minuteUrl: "/system/resource/loaddata/getTimeData.jsp",
16    kUrl: "/system/resource/loaddata/getHistoryData.jsp",
17    charts: {},
18    chartDataState: {},
19    codeReg: /^399?/,
20    code: searchIndex
21};
22function initElements() {
23    config.elements = {
24        trendWrap: $(".trend-wrap"),
25        minuteWrap: $("#minutely"),
26        dayWrap: $("#daily"),
27        weekWrap: $("#weekly"),
28        monthWrap: $("#monthly"),
29        trendTabs: $(".pic-tabs", ".trend-wrap"),
30        trendDetailWrap: $(".detail-info", ".trend-detail-wrap")
31    }
32}
33function setChartData() {
34    $.when(ajaxRequest({
35        url: config.minuteUrl,
36        type: "GET",
37        data: setRequestParam("minute"),
38        loadingPlugin: window.Loading(config.elements.trendWrap)
39    })).done(function(t) {
40        if (t && "0" === t.code && (config.chartDataState.minute = !0),
41        config.isChinext = 17 === t.data.groupId,
42        config.isCDR = !0 === t.data.isCDR,
43        config.isChinext && !0 !== t.data.isDelisting && $(".trend-wrap").addClass("chinext-wrap"),
44        buildBasicInfo(t.data),
45        (config.isChinext || config.isCDR) && !0 !== t.data.isDelisting) {
46            var e = 2 === t.data.isNoProfit ? '<span class="sign">U</span>' : ""
47              , a = 2 === t.data.isVoteDifferent ? '<span class="sign">W</span>' : ""
48              , n = e + (1 === t.data.isVIE ? '<span class="sign">V</span>' : "") + a;
49            $(".gemSign").html(n),
50            n && $(".item-right").css("padding-right", "85px")
51        }
52        $(".update-time").text(t.datetime);
53        var i = {
54            data: t,
55            grid: {
56                index: [["4%", 20, "8%", 65]],
57                sec: [["4%", 60, "48%", 60], ["65%", 60, "7%", 60]]
58            }
59        };
60        if ($.isEmptyObject(config.charts.minuteChart)) {
61            var l = new s.ui.controls.mLineChart(config.elements.minuteWrap,i);
62            config.charts.minuteChart = l
63        } else
64            config.charts.minuteChart.updateOption(i)
65    })
66}
67function setDayChartData() {
68    $.when(ajaxRequest({
69        url: config.kUrl,
70        type: "GET",
71        data: setRequestParam("day"),
72        loadingPlugin: window.Loading(config.elements.dayWrap)
73    })).done(function(t) {
74        t && "0" === t.code && (config.chartDataState.day = !0);
75        var e = {
76            data: t,
77            grid: [["4%", 68, "48%", 32], ["65%", 68, "16%", 32]]
78        };
79        if ($.isEmptyObject(config.charts.dayChart)) {
80            var a = new s.ui.controls.kLineChart(config.elements.dayWrap,e);
81            config.charts.dayChart = a
82        } else
83            config.charts.dayChart.updateOption(e)
84    })
85}
86function setWeekChartData() {
87    $.when(ajaxRequest({
88        url: config.kUrl,
89        type: "GET",
90        data: setRequestParam("week"),
91        loadingPlugin: window.Loading(config.elements.weekWrap)
92    })).done(function(t) {
93        t && "0" === t.code && (config.chartDataState.week = !0);
94        var e = {
95            data: t,
96            grid: [["4%", 68, "48%", 32], ["65%", 68, "16%", 32]]
97        };
98        if ($.isEmptyObject(config.charts.weekChart)) {
99            var a = new s.ui.controls.kLineChart(config.elements.weekWrap,e);
100            config.charts.weekChart = a
101        } else
102            config.charts.weekChart.updateOption(e)
103    })
104}
105function setMonthChartData() {
106    $.when(ajaxRequest({
107        url: config.kUrl,
108        type: "GET",
109        data: setRequestParam("month"),
110        loadingPlugin: window.Loading(config.elements.monthWrap)
111    })).done(function(t) {
112        t && "0" === t.code && (config.chartDataState.month = !0);
113        var e = {
114            data: t,
115            grid: [["4%", 68, "48%", 32], ["65%", 68, "16%", 32]]
116        };
117        if ($.isEmptyObject(config.charts.monthChart)) {
118            var a = new s.ui.controls.kLineChart(config.elements.monthWrap,e);
119            config.charts.monthChart = a
120        } else
121            config.charts.monthChart.updateOption(e)
122    })
123}
124function switchChartData() {
125    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()
126}
127function setRequestParam(t) {
128    switch (t) {
129    case "minute":
130        return {
131            marketId: 1,
132            code: config.code
133        };
134    case "day":
135        return {
136            cycleType: 32,
137            marketId: 1,
138            code: config.code
139        };
140    case "week":
141        return {
142            cycleType: 33,
143            marketId: 1,
144            code: config.code
145        };
146    case "month":
147        return {
148            cycleType: 34,
149            marketId: 1,
150            code: config.code
151        }
152    }
153}
154function buildBasicInfo(t) {
155    var e = _.template(config.template.trendTemStr);
156    t.isIndex = config.codeReg.test(t.code),
157    t.newIsDown = /^\-/.test(t.deltaPercent),
158    t.openIsDown = +t.open < +t.close,
159    t.highIsDown = +t.high < +t.close,
160    t.lowIsDown = +t.low < +t.close,
161    t.isChinext = config.isChinext,
162    calcuUnit(t),
163    tradingStatusFilter(t);
164    var a = e(t);
165    config.elements.trendDetailWrap.empty().append(a)
166}
167function calcuUnit(t) {
168    function e(t, e) {
169        return function(t) {
170            var e = {};
171            return void 0 === t || (1 <= t / 1e8 ? (e.value = (t / 1e8).toFixed(2),
172            e.unit = "亿") : 1 <= t / 1e4 ? (e.value = (t / 1e4).toFixed(2),
173            e.unit = "万") : (e.value = t,
174            e.unit = "")),
175            e
176        }(t)
177    }
178    var a = e(t.volume);
179    t.volume = a.value,
180    t.volumeUnit = a.unit;
181    var n = e(t.amount);
182    t.amount = n.value,
183    t.amountUnit = n.unit;
184    var i = e(t.volumeAhT);
185    t.volumeAhT = i.value,
186    t.volumeAhTUnit = i.unit;
187    var s = e(t.amountAhT);
188    t.amountAhT = s.value,
189    t.amountAhTUnit = s.unit
190}
191function tradingStatusFilter(t) {
192    config.isEnglish ? (t.tradingPhaseCode1 = {
193        2: "Opening Auction",
194        3: "Continuous Auction",
195        11: "Market Break",
196        7: "Closing Auction",
197        0: "Market Closed",
198        6: "Temporary Trading Halt",
199        12: "Suspension due to Volatility",
200        4: "All-day Suspension"
201    }[t.tradingPhaseCode1] || "--",
202    t.tradingPhaseCode2 = {
203        8: "Accept Order",
204        9: "Continuous Trading",
205        0: "Market Closed",
206        4: "All-day Suspension",
207        11: "Market Break",
208        6: "Temporary Trading Halt"
209    }[t.tradingPhaseCode2] || "--") : (t.tradingPhaseCode1 = {
210        2: "开盘集合竞价",
211        3: "连续竞价",
212        11: "休市",
213        7: "收盘集合竞价",
214        0: "闭市",
215        6: "临时停牌",
216        12: "波动性中断",
217        4: "全天停牌"
218    }[t.tradingPhaseCode1] || "--",
219    t.tradingPhaseCode2 = {
220        8: "接受申报",
221        9: "连续交易",
222        0: "闭市",
223        4: "全天停牌",
224        11: "休市",
225        6: "临时停牌"
226    }[t.tradingPhaseCode2] || "--")
227}
228function switchTabs() {
229    config.elements.trendTabs.delegate(">li", "click", function(t) {
230        var e = $(this).index();
231        config.chartDataState.index = e,
232        switchChartData(),
233        $(this).addClass("active").siblings("li").removeClass("active"),
234        $(".tab-panel", config.elements.trendWrap).removeClass("active").eq(e).addClass("active")
235    })
236}
237initElements(),
238switchChartData(),
239switchTabs();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.