123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286 |
- BemsWebApplication.setprice = function (params, viewInfo) {
- var priceTypeDataSource = [{
- FuelTypeId: 1,
- PriceTypeId: 1,
- PriceTypeIdDesc: ""
- }];
- var priceCodeDataSource;
- var beforeSelectPriceTypeId;
- var energySelectButton = "power";
- function getSitePrice(SiteID, FuelTypeId, PriceCode) {
- var dataSource = new DevExpress.data.DataSource({
- store: new DevExpress.data.ODataStore({
- url: 'http://localhost:3403/BemsDataService.svc/BemsSitePrice'
- }),
- expand: 'BemsPriceType',
- requireTotalCount: true,
- pageSize: 100
- });
- dataSource.filter([
- ["SiteID", "=", SiteID],
- "and",
- ["FuelTypeId", "=", FuelTypeId]
- //"and",
- //["PriceCode", "=", PriceCode]
- ]);
- dataSource.load()
- .done(function (result) {
- $("#priceSelect").dxSelectBox("instance").option('value', result[0].BemsPriceType.PriceTypeId);
- beforeSelectPriceTypeId = result[0].BemsPriceType.PriceTypeId;
- })
- .fail(function (error) {
- alert(error);
- });
- }
- function getPriceType(FuelTypeId) {
- var dataSource = new DevExpress.data.DataSource({
- store: {
- type: "odata",
- //url: "http://61.33.215.51:8086/BemsDataService.svc/BemsFormula"
- url: "http://localhost:3403/BemsDataService.svc/BemsPriceType"
- },
- map: function (itemData) {
- return {
- PriceTypeId: itemData.PriceTypeId,
- PriceTypeIdDesc: itemData.PriceTypeIdDesc,
- FuelTypeId: itemData.FuelTypeId
- }
- },
- requireTotalCount: true,
- pageSize: 100
- });
- dataSource.filter([
- ["FuelTypeId", "=", FuelTypeId]
- ]);
- dataSource.sort({ getter: "PriceTypeIdDesc", asc: true });
- dataSource.load()
- .done(function (result) {
- priceTypeDataSource = dataSource;
- //var array = PriceTypeDataSourceToArray(priceTypeDataSource);
- //$("#priceSelect").dxSelectBox("instance").option('items', array);
- $("#priceSelect").dxSelectBox("instance").option('dataSource', priceTypeDataSource);
- $("#priceSelect").dxSelectBox("instance").option('displayExpr', 'PriceTypeIdDesc');
- $("#priceSelect").dxSelectBox("instance").option('valueExpr', "PriceTypeId");
- getSitePrice(BWA.UserInfo.SiteId(), result[0].FuelTypeId);//PriceCode P038 청구요금
- //$("#priceSelect").dxSelectBox("instance").option('value', priceTypeDataSource._items[0].PriceTypeIdDesc);
- })
- .fail(function (error) {
- alert(error);
- });
- }
- function PriceTypeDataSourceToArray(dataSource) {
- var resultArray = new Array(dataSource._items.length);
- /*for (var i = 0; i < dataSource._items.length; i++) {
- resultArray[i] = new Array(3);
- }*/
- /*for (var i = 0; i < dataSource._items.length;i++) {
- resultArray[i][0] = dataSource._items[i].PriceTypeId;
- resultArray[i][1] = dataSource._items[i].PriceTypeIdDesc;
- resultArray[i][2] = dataSource._items[i].FuelTypeId;
- }*/
- for (var i = 0; i < dataSource._items.length; i++) {
- resultArray[i] = dataSource._items[i].PriceTypeIdDesc;
- }
- return resultArray;
- }
- function getPriceCode(FuelTypeId) {
- var dataSource = new DevExpress.data.DataSource({
- store: {
- type: "odata",
- url: "http://localhost:3403/BemsDataService.svc/BemsPriceCode"
- },
- map: function (itemData) {
- return {
- PriceCode: itemData.PriceCode,
- PriceCodeDesc: itemData.PriceCodeDesc,
- FuelTypeId: itemData.FuelTypeId,
- Unit: itemData.Unit
- }
- },
- requireTotalCount: true,
- pageSize: 100
- });
- dataSource.filter([
- ["FuelTypeId", "=", FuelTypeId]
- ]);
- dataSource.sort({ getter: "PriceCode", asc: true });
- dataSource.load()
- .done(function (result) {
- priceCodeDataSource = result;
- var $PriceCodeLayOut = $('#PriceCodeLayOut'); // finds the <PriceCodeLayOut> element
- $('#PriceCodeLayOut').empty();
- for (var i = 0; i < result.length; i++) {
- $('<input type="text" class="fl setInputId" style="width:150px;height:24px;" readonly>') // creates a new HTML element
- .appendTo($PriceCodeLayOut) // appends a new HTML element to the <body> element
- $('<div class="fl setSwitchId" style="margin-right:45px;">')
- .appendTo($PriceCodeLayOut)
- .dxSwitch();
- if (i % 4 == 3) {
- $('<br>').appendTo($PriceCodeLayOut)
- $('<br>').appendTo($PriceCodeLayOut)
- $('<br>').appendTo($PriceCodeLayOut)
- }
- }
- var setInputIds = document.querySelectorAll('.setInputId');
- var setSwitchIds = document.querySelectorAll('.setSwitchId');
- for (var i = 0; i < result.length; i++) {
- setInputIds[i].id = 'input' + i;
- setInputIds[i].value = result[i].PriceCodeDesc;
- setSwitchIds[i].id = 'switch' + i;
- $('#switch' + i).dxSwitch("instance").option('onText', 'On');
- $('#switch' + i).dxSwitch("instance").option('offText', 'Off');
- }
- getPriceCodeYN(BWA.UserInfo.SiteId(), FuelTypeId);
- })
- .fail(function (error) {
- alert(error);
- });
- }
- function getPriceCodeYN(SiteID, FuelTypeId) {
- var dataSource = new DevExpress.data.DataSource({
- store: new DevExpress.data.ODataStore({
- url: 'http://localhost:3403/BemsDataService.svc/BemsSitePrice'
- }),
- //expand: 'BemsPriceType',
- requireTotalCount: true,
- pageSize: 100
- });
- dataSource.filter([
- ["SiteID", "=", SiteID],
- "and",
- ["FuelTypeId", "=", FuelTypeId],
- ]);
- dataSource.sort({ getter: "PriceCode", asc: true });
- dataSource.load()
- .done(function (result) {
- for (var i = 0; i < result.length; i++) {
- var tmpYN;
- if (result[i].UseYN == "Y") {
- tmpYN = true;
- } else {
- tmpYN = false;
- }
- $("#switch" + i).dxSwitch("instance").option('value', tmpYN);
- }
- })
- .fail(function (error) {
- alert(error);
- });
- }
- function saveSettings() {
- var dataSource = new DevExpress.data.DataSource({
- store: {
- type: "odata",
- url: "http://localhost:3403/BemsDataService.svc/BemsSitePrice"
- },
- requireTotalCount: true,
- pageSize: 100
- });
- var FuelTypeId;
- //if ($("#powerBtn").css("background-image") == "linear-gradient(180deg, rgb(155, 171, 195) 0%, rgb(65, 97, 140) 100%)") {
- if (energySelectButton == "power") {
- FuelTypeId = 1;
- //} else if ($("#gasBtn").css("background-image") == "linear-gradient(180deg, rgb(155, 171, 195) 0%, rgb(65, 97, 140) 100%)") {
- }else if (energySelectButton == "gas") {
- FuelTypeId = 2;
- //} else if ($("#waterBtn").css("background-image") == "linear-gradient(180deg, rgb(155, 171, 195) 0%, rgb(65, 97, 140) 100%)") {
- }else if (energySelectButton == "water") {
- FuelTypeId = 3;
- } else {
- alert("에너지원이 선택되지 않았습니다.");
- }
- dataSource.filter([
- ["FuelTypeId", "=", FuelTypeId]
- ]);
- var selectPriceTypeId = parseInt($("#priceSelect").dxSelectBox("instance").option('value'));
- var failCnt = 0;
- for (var i = 0; i < priceCodeDataSource.length; i++) {
- var UseYN = $("#switch" + i).dxSwitch("instance").option('value');
- if (UseYN == true) {
- UseYN = 'Y';
- } else {
- UseYN = 'N';
- }
- dataSource.store().update({ SiteID: BWA.UserInfo.SiteId(), FuelTypeId: FuelTypeId, PriceCode: priceCodeDataSource[i].PriceCode }, { PriceTypeId: selectPriceTypeId, UseYN: UseYN })
- //dataSource.store().update({ SiteID: BWA.UserInfo.SiteId(), FuelTypeId: FuelTypeId, PriceCode: priceCodeDataSource[i].PriceCode }, { PriceTypeId: selectPriceTypeId, UseYN: UseYN })
- .done(function(key, result){
- //alert(key + "/" + result);
- })
- .fail(function (error) {
- //alert(error);
- failCnt++;
- });
- }
- if (failCnt > 0) {
- alert("저장에 실패 했습니다.");
- } else {
- alert("저장되었습니다.");
- }
- /*var context = new DevExpress.data.ODataContext({
- url: "http://localhost:3403/BemsDataService.svc",
- entities: {
- BemsSitePrice: {
- key: ["SiteID", "FuelTypeId", "PriceTypeId","PriceCode"],
- keyType: { SiteID: "Int32", FuelTypeId: "Int32",PriceTypeId:"Int32", PriceCode: "String" }
- }
- }
- });
- context.BemsSitePrice.update({ SiteID: BWA.UserInfo.SiteId(), FuelTypeId: 1, PriceTypeId: 10, PriceCode: 'P002' }, { PriceTypeId: 11 }).done(function (key, result) {
- var test = result;
- }).fail(function (error) { alert(error);});*/
- }
- function handleViewShown() {
- getPriceType(1);
- getPriceCode(1);
- }
- var searchViewOptions = {
- //templete function
- };
- function handleSearchInSearchView() {
- //templete function
- }
- var viewModel = $.extend(BWA.CommonView.create(params, viewInfo, searchViewOptions, ko.observable(null), handleViewShown, null, handleSearchInSearchView),
- {
- priceSelect : {
- dataSource: priceTypeDataSource
- },
- powerButtonClicked : function () {
- $("#powerBtn").css("background-image", "linear-gradient(180deg,#9babc3 0%,#41618c 100%)");
- $("#gasBtn").css("background-image", "linear-gradient(rgb(56,88,130) 0%, rgb(44,68,101)100%)");
- $("#waterBtn").css("background-image", "linear-gradient(rgb(56,88,130) 0%, rgb(44,68,101)100%)");
- getPriceType(1);
- getPriceCode(1);
- },
- gasButtonClicked : function () {
- $("#gasBtn").css("background-image", "linear-gradient(180deg,#9babc3 0%,#41618c 100%)");
- $("#powerBtn").css("background-image", "linear-gradient(rgb(56,88,130) 0%, rgb(44,68,101)100%)");
- $("#waterBtn").css("background-image", "linear-gradient(rgb(56,88,130) 0%, rgb(44,68,101)100%)");
- getPriceType(2);
- getPriceCode(2);
- },
- waterButtonClicked : function () {
- $("#waterBtn").css("background-image", "linear-gradient(180deg,#9babc3 0%,#41618c 100%)");
- $("#gasBtn").css("background-image", "linear-gradient(rgb(56,88,130) 0%, rgb(44,68,101)100%)");
- $("#powerBtn").css("background-image", "linear-gradient(rgb(56,88,130) 0%, rgb(44,68,101)100%)");
- getPriceType(3);
- getPriceCode(3);
- },
- saveButtonClicked: function () {
- saveSettings();
- }
- });
- return viewModel;
- };
|