1. 修改地圖總覽 - 裝置容量小數點第三位

2. 畫面調整
3. 運維廠商加入統編、備註
This commit is contained in:
Kai 2021-09-10 14:15:55 +08:00
parent d654170415
commit 4b59d59b7c
23 changed files with 189 additions and 61 deletions

View File

@ -29,6 +29,52 @@ namespace SolarPower.Controllers
{
return View();
}
[HttpPost]
public ApiResult<Dictionary<string, List<PowerStation>>> GetPowerStationCollapse(string filter)
{
ApiResult<Dictionary<string, List<PowerStation>>> apiResult = new ApiResult<Dictionary<string, List<PowerStation>>>();
try
{
List<string> where = new List<string>();
Dictionary<string, object> where_entities = new Dictionary<string, object>();
if (!string.IsNullOrEmpty(filter))
{
var temp_psname_where = $@" ps.Name LIKE CONCAT('%', @Filter, '%')";
where.Add(temp_psname_where);
where_entities.Add("Filter", filter);
}
//抓出 除了自建自用
var temp_solarType_where = $@" ps.SolarType != 2";
where.Add(temp_solarType_where);
var powerStations = myPowerStationService.GetMyPowerStations(myUser, 1, null, where, where_entities);
var siteDBNamePowerStationId = new Dictionary<string, List<PowerStation>>();
var powerStation_Group = powerStations.GroupBy(x => x.CityName).ToList();
foreach (var stations in powerStation_Group)
{
siteDBNamePowerStationId.Add(stations.Key, stations.ToList());
}
apiResult.Code = "0000";
apiResult.Data = siteDBNamePowerStationId;
}
catch (Exception exception)
{
apiResult.Code = "9999";
Logger.LogError("【" + controllerName + "/" + actionName + "】");
Logger.LogError("【" + controllerName + "/" + actionName + "】" + exception.Message);
}
apiResult.Msg = errorCode.GetString(apiResult.Code);
return apiResult;
}
public async Task<ApiResult<string>> SaveSoldMoney(ElectricitySoldRecord post)
{
ApiResult<string> apiResult = new ApiResult<string>();

View File

@ -912,7 +912,9 @@ namespace SolarPower.Controllers
CreatedBy = myUser.Id,
ContactPerson = post.ContactPerson,
PowerStationId = post.PowerStationId,
Type = post.Type
Type = post.Type,
TaxIDNumber = post.TaxIDNumber,
Remark = post.Remark
};
List<string> properties = new List<string>()
{
@ -923,7 +925,9 @@ namespace SolarPower.Controllers
"CreatedBy",
"ContactPerson",
"PowerStationId",
"Type"
"Type",
"TaxIDNumber",
"Remark",
};
await powerStationRepository.AddOperation(operation, properties, powerStation.SiteDB);
@ -941,7 +945,9 @@ namespace SolarPower.Controllers
CreatedBy = myUser.Id,
ContactPerson = post.ContactPerson,
PowerStationId = post.PowerStationId,
Type = post.Type
Type = post.Type,
TaxIDNumber = post.TaxIDNumber,
Remark = post.Remark
};
List<string> properties = new List<string>()
{
@ -952,7 +958,9 @@ namespace SolarPower.Controllers
"CreatedBy",
"ContactPerson",
"PowerStationId",
"Type"
"Type",
"TaxIDNumber",
"Remark",
};
await powerStationRepository.UpdateOperation(operation, properties, powerStation.SiteDB);
apiResult.Code = "0000";

View File

@ -2194,6 +2194,11 @@ ALTER TABLE `power_station`
ALTER TABLE `power_station`
ADD COLUMN `Status` TINYINT(4) UNSIGNED NOT NULL DEFAULT 0 COMMENT '是否啟用, 0:否 1:是' AFTER `AreaId`;
-- 運維廠商 加入 統一編號、備註欄位 20210910
ALTER TABLE `operation_firm`
ADD COLUMN `TaxIDNumber` VARCHAR(8) NULL DEFAULT NULL COMMENT '統一編號' AFTER `Email`,
ADD COLUMN `Remark` VARCHAR(255) NULL DEFAULT NULL COMMENT '備註' AFTER `TaxIDNumber`;
/*!40101 SET SQL_MODE=IFNULL(@OLD_SQL_MODE, '') */;
/*!40014 SET FOREIGN_KEY_CHECKS=IFNULL(@OLD_FOREIGN_KEY_CHECKS, 1) */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;

View File

@ -375,6 +375,8 @@ namespace SolarPower.Models.PowerStation
public string ContactPerson { get; set; }//聯絡人
public string Phone { get; set; }//電話
public string Email { get; set; }//Email
public string TaxIDNumber { get; set; }//統一編號
public string Remark { get; set; }//備註
}
/// <summary>

View File

@ -531,6 +531,8 @@ namespace SolarPower.Repository.Implement
`ContactPerson` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '',
`Phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '',
`Email` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'Email',
`TaxIDNumber` VARCHAR(8) NULL DEFAULT NULL COMMENT '' COLLATE 'utf8mb4_unicode_ci',
`Remark` VARCHAR(255) NULL DEFAULT NULL COMMENT '' COLLATE 'utf8mb4_unicode_ci',
`CreatedBy` int(10) unsigned NOT NULL COMMENT '',
`CreatedAt` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '',
`UpdatedBy` int(10) unsigned DEFAULT NULL COMMENT '',

View File

@ -84,10 +84,17 @@ namespace SolarPower.Repository.Implement
{
show_enable_str = "";
}
var now = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
var sql = @"SELECT ps.*, c.Name AS CityName
var sql = $@"SELECT ps.*, c.Name AS CityName, wf.Wx
FROM power_station ps
LEFT JOIN city c ON ps.CityId = c.Id";
LEFT JOIN city c ON ps.CityId = c.Id
LEFT JOIN (SELECT * FROM (
SELECT MAX(w.Id) AS aa FROM weather_forecast w
WHERE '{now}' BETWEEN w.StartTime AND w.EndTime
GROUP BY w.LocationName
) A
LEFT JOIN weather_forecast B ON A.aa = B.Id) wf ON c.Name = wf.LocationName";
if (myUser.Role.Layer == (int)RoleLayerEnum.CompanyAdmin)
{ //公司管理員

View File

@ -48,9 +48,9 @@
<div class="pr-3">
<div class="btn-group btn-group-md">
<button type="button" class="btn btn-success waves-effect waves-themed btn-change-searchType" id="Group0" onclick="changeType(0,this)">日</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group1" onclick="changeType(1,this)">日區間</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group2" onclick="changeType(2,this)">月</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group3" onclick="changeType(3,this)">年</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group1" onclick="changeType(1,this)">自訂區間</button>
</div>
</div>
<div class="pr-3" id="quickSearchOption">

View File

@ -52,9 +52,9 @@
<div class="pr-3">
<div class="btn-group btn-group-md">
<button type="button" class="btn btn-success waves-effect waves-themed btn-change-searchType" id="Group0" onclick="changeType(0,this)">日</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group1" onclick="changeType(1,this)">日區間</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group2" onclick="changeType(2,this)">月</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group3" onclick="changeType(3,this)">年</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group1" onclick="changeType(1,this)">自訂區間</button>
</div>
</div>
<div class="pr-3" id="quickSearchOption">
@ -102,11 +102,11 @@
<div class="card-body">
<div class="d-flex justify-content-between">
<p id="today_money_label">當日發電金額</p>
<p><span class="color-info-700 fs-xl font-weight-bold" id="today_money">0.00</span></p>
<p><span class="color-info-700 fs-xl font-weight-bold" id="today_money">0</span></p>
</div>
<div class="d-flex justify-content-between">
<p id="money-card-subtitle-total">總發金額</p>
<p><span class="color-info-700 fs-xl font-weight-bold" id="total_money">0.00</span></p>
<p><span class="color-info-700 fs-xl font-weight-bold" id="total_money">0</span></p>
</div>
</div>
</div>
@ -408,7 +408,7 @@
return;
}
$('#total_kwh').html(rel.data.all_kwh.toFixed(2));
$('#total_money').html(rel.data.all_money.toFixed(2));
$('#total_money').html(rel.data.all_money.toFixed());
$('#total_kwhkwp').html(rel.data.all_KWH_KWP.toFixed(2));
$('#total_PR').html(rel.data.all_PR.toFixed(2));
$('#total_carbon').html(rel.data.all_Carbon.toFixed(2));
@ -416,7 +416,7 @@
$('#today_kwh').html(rel.data.now_kwh.toFixed(2));
$('#today_money').html(rel.data.now_money.toFixed(2));
$('#today_money').html(rel.data.now_money.toFixed());
$('#today_kwhkwp').html(rel.data.now_KWH_KWP.toFixed(2));
$('#today_PR').html(rel.data.now_PR.toFixed(2));
$('#today_carbon').html(rel.data.now_Carbon.toFixed(2));

View File

@ -48,9 +48,9 @@
<div class="pr-3">
<div class="btn-group btn-group-md">
<button type="button" class="btn btn-success waves-effect waves-themed btn-change-searchType" id="Group0" onclick="changeType(0,this)">日</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group1" onclick="changeType(1,this)">日區間</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group2" onclick="changeType(2,this)">月</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group3" onclick="changeType(3,this)">年</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group1" onclick="changeType(1,this)">自訂區間</button>
</div>
</div>
<div class="pr-3" id="quickSearchOption">

View File

@ -138,9 +138,9 @@
<div class="pr-3">
<div class="btn-group btn-group-md">
<button type="button" class="btn btn-success waves-effect waves-themed btn-change-searchType" id="Group0" onclick="changeType(0,this)">60天內</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group1" onclick="changeType(1,this)">日區間</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group2" onclick="changeType(2,this)">月</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group3" onclick="changeType(3,this)">年</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group1" onclick="changeType(1,this)">自訂區間</button>
</div>
</div>
<div class="pr-3">
@ -341,7 +341,7 @@
function GetPowerStationCollapse(filter) {
var url = "/StationReport/GetPowerStationCollapse"
var url = "/ElectricitySoldRecord/GetPowerStationCollapse"
var send_data = {
Filter: filter
@ -398,7 +398,7 @@
'<div class="mr-2">' +
'<input type="checkbox" class="" name="selectedInverterLayer2[]" value="' + inverter.id + '" valueName ="' + inverter.name + '" checked>' +
'</div>' +
'<h5 class="font-weight-bold">' + inverter.name + '</h5>' +
'<h5 class="font-weight-bold mb-0">' + inverter.name + '</h5>' +
'</div>' +
'</li>';
}
@ -408,7 +408,7 @@
'<div class="mr-2">' +
'<input type="checkbox" class="" name="selectedInverterLayer2[]" value="' + inverter.id + '" valueName ="' + inverter.name + '">' +
'</div>' +
'<h5 class="font-weight-bold">' + inverter.name + '</h5>' +
'<h5 class="font-weight-bold mb-0">' + inverter.name + '</h5>' +
'</div>' +
'</li>';
}

View File

@ -197,6 +197,16 @@
}, {
"data": "subTotalCapacity"
}],
"columnDefs": [{
'targets': 2,
'searchable': false,
'orderable': false,
'createdCell': function (td, cellData, rowData, row, col) {
@*$(td).append('<div class="row"></div>');*@
cellData = cellData.toFixed(3);
$(td).html(cellData);
}
}],
"language": {
"emptyTable": "查無資料",
"processing": "處理中...",
@ -243,7 +253,7 @@
$("#today_carbon").html(mapOverview.today_carbon.toFixed(2));
$("#total_carbon").html(mapOverview.total_carbon.toFixed(2));
$("#total_power_station_count").html(mapOverview.totalPowerStationCount);
$("#total_capacity").html(mapOverview.totalCapacity.toFixed(2));
$("#total_capacity").html(mapOverview.totalCapacity.toFixed(3));
$("#update_at").html(mapOverview.updatedAt);
capacityTable.clear().rows.add(mapOverview.capacityDataTables).draw();
@ -261,7 +271,7 @@
var contentString = '<div id="content">' +
'<div id="siteNotice"></div>' +
'<h1 id="firstHeading" class="firstHeading">' +
'<a href="StationOverview/Info?stationId=' + item.id + '">' +
'<a href="StationOverview/Info?stationId=' + item.id + '" target="_blank">' +
item.name +
'</a>' +
'</h1>' +
@ -271,7 +281,8 @@
'<div>即時總發電量:' + item.today_kWh + '</div>'+
'<div>即時平均日照度:' + item.today_irradiance + '</div>'+
'<div>發電小時:' + item.solarHour + '</div>' +
'<div>裝置容量:' + item.generatingCapacity + '</div>' +
'<div>裝置容量:' + item.generatingCapacity.toFixed(3) + '</div>' +
'<div>掛錶日期:' + item.electricityMeterAt + '</div>' +
'<div>天氣:' + item.wx + '</div>'+
'</div>' +
'</div>' +

View File

@ -187,9 +187,9 @@
<div class="pr-3">
<div class="btn-group btn-group-md">
<button type="button" class="btn btn-success waves-effect waves-themed btn-change-searchType" id="Group0" onclick="changeType(0,this)">日</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group1" onclick="changeType(1,this)">日區間</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group2" onclick="changeType(2,this)">月</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group3" onclick="changeType(3,this)">年</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group1" onclick="changeType(1,this)">自訂區間</button>
</div>
</div>
<div class="pr-3" id="quickSearchOption">
@ -502,7 +502,7 @@
'<div class="mr-2">' +
'<input type="checkbox" class="" name="selectedInverterLayer2[]" value="' + inverter.id + '" valueName ="' + inverter.name + '" checked>' +
'</div>' +
'<h5 class="font-weight-bold">' + inverter.name + '</h5>' +
'<h5 class="font-weight-bold mb-0">' + inverter.name + '</h5>' +
'</div>' +
'</li>';
}
@ -512,7 +512,7 @@
'<div class="mr-2">' +
'<input type="checkbox" class="" name="selectedInverterLayer2[]" value="' + inverter.id + '" valueName ="' + inverter.name + '">' +
'</div>' +
'<h5 class="font-weight-bold">' + inverter.name + '</h5>' +
'<h5 class="font-weight-bold mb-0">' + inverter.name + '</h5>' +
'</div>' +
'</li>';
}

View File

@ -420,7 +420,7 @@
'<div class="mr-2">' +
'<input type="checkbox" class="" name="selectedInverterLayer2[]" value="' + inverter.id + '" valueName ="' + inverter.name + '" checked>' +
'</div>' +
'<h5 class="font-weight-bold">' + inverter.name + '</h5>' +
'<h5 class="font-weight-bold mb-0">' + inverter.name + '</h5>' +
'</div>' +
'</li>';
}
@ -430,7 +430,7 @@
'<div class="mr-2">' +
'<input type="checkbox" class="" name="selectedInverterLayer2[]" value="' + inverter.id + '" valueName ="' + inverter.name + '">' +
'</div>' +
'<h5 class="font-weight-bold">' + inverter.name + '</h5>' +
'<h5 class="font-weight-bold mb-0">' + inverter.name + '</h5>' +
'</div>' +
'</li>';
}

View File

@ -355,7 +355,7 @@
$('#solarTable' + val.cityId).find('tbody').append('<tr data-id="' + val.id + '" datacity-id="' + val.cityId + '"">' +
'<td>' + val.id + '</td>' +
'<td>' + val.name + '</td>' +
'<td>' + val.generatingCapacity.toFixed(2) + '</td>' +
'<td>' + val.generatingCapacity.toFixed(3) + '</td>' +
'<td>' + val.inverterAmount + '</td>' +
'<td>' + val.electricityMeterAt + '</td>' +

View File

@ -522,6 +522,10 @@
}, {
"data": "function"
}],
"columnDefs": [{
'targets': 0,
'visible': false
}],
"language": {
"emptyTable": "查無資料",
"processing": "處理中...",
@ -622,6 +626,10 @@
}, {
"data": "function"
}],
"columnDefs": [{
'targets': 0,
'visible': false
}],
"language": {
"emptyTable": "查無資料",
"processing": "處理中...",
@ -1661,7 +1669,7 @@
$("#estimated_recovery_time_text").html(powerStationData.estimatedRecoveryTime);
$("#created_by_text").html(powerStationData.creatorName);
$("#generating_capacity_text").html(powerStationData.generatingCapacity);
$("#generating_capacity_text").html(powerStationData.generatingCapacity.toFixed(3));
$("#escrow_name_text").html(powerStationData.escrowName);
$("#coordinate_text").html(powerStationData.coordinate);
$("#created_at_text").html(powerStationData.createdAt);
@ -2095,6 +2103,8 @@
ContactPerson: $("#Operation_name_modal").val(),
Phone: $("#Operation_phone_modal").val(),
Email: $("#Operation_email_modal").val(),
TaxIDNumber: $("#Operation_taxIDNumber_modal").val(),
Remark: $("#Operation_remark_modal").val(),
}
$.post(url, send_data, function (rel) {
@ -2167,6 +2177,8 @@
$("#Operation_name_modal").val(rel.data.contactPerson);
$("#Operation_phone_modal").val(rel.data.phone);
$("#Operation_email_modal").val(rel.data.email);
$("#Operation_taxIDNumber_modal").val(rel.data.taxIDNumber);
$("#Operation_remark_modal").val(rel.data.remark);
$("#Operation-modal").modal();
}, 'json');
@ -3066,6 +3078,13 @@
},
Operation_role_modal: {
required: true
},
Operation_taxIDNumber_modal: {
required: true,
maxlength: 8
},
Operation_remark_modal: {
maxlength: 255
}
}
});

View File

@ -66,6 +66,18 @@
<input type="text" id="Operation_email_modal" name="Operation_email_modal" class="form-control">
</div>
</div>
<div class="form-group col-lg-6">
<div style="margin-bottom: 0.3rem">
<label class="form-label" for="Operation_taxIDNumber_modal"><span class="text-danger">*</span>統一編號</label>
<input type="text" id="Operation_taxIDNumber_modal" name="Operation_taxIDNumber_modal" class="form-control" maxlength="8">
</div>
</div>
<div class="form-group col-lg-12">
<div style="margin-bottom: 0.3rem">
<label class="form-label" for="Operation_remark_modal">備註</label>
<textarea id="Operation_remark_modal" name="Operation_remark_modal" class="form-control" maxlength="255"></textarea>
</div>
</div>
</div>
</form>
</div>

View File

@ -109,7 +109,14 @@
<aside class="page-sidebar">
<div class="page-logo">
<a href="#" class="page-logo-link press-scale-down">
@if (!string.IsNullOrEmpty(ViewBag.myUser.Company.Logo))
{
<img src="@ViewBag.myUser.Company.Logo" alt="SmartAdmin WebApp" aria-roledescription="logo"> <span class="page-logo-text mr-1"></span> <span class="position-absolute text-white opacity-50 small pos-top pos-right mr-2 mt-n2"></span>
}
else
{
<span class="page-logo-text mr-1">@ViewBag.myUser.Company.Name</span>
}
<!--<i class="fal fa-angle-down d-inline-block ml-1 fs-lg color-primary-300"></i>-->
</a>
</div>
@ -152,7 +159,7 @@
@if (ViewBag.myUser.Role.Layer == (int)RoleLayerEnum.PlatformAdmin || ViewBag.auths.Contains("MapOverview") || ViewBag.auths.Contains("StationOverview"))
{
<li class="@(ViewData["MainNum"] == "1" ? "active open" : "")">
<a href="#" title="Category" data-filter-tags="category">
<a href="#" title="總覽" data-filter-tags="category">
<i class="fal fa-ballot-check"></i>
<span class="nav-link-text" data-i18n="nav.category">總覽</span>
</a>
@ -194,7 +201,7 @@
|| ViewBag.auths.Contains("StationOverview_OperationRecord"))
{
<li class="@(ViewData["MainNum"] == "2" ? "active open" : "")">
<a href="javascript:void(0);" title="Category" data-filter-tags="category">
<a href="javascript:void(0);" title="電站資訊" data-filter-tags="category">
<i class="fal fa-file"></i>
<span class="nav-link-text" data-i18n="nav.category">電站資訊</span>
</a>
@ -238,7 +245,7 @@
|| ViewBag.auths.Contains("AnalysisInverter"))
{
<li class="@(ViewData["MainNum"] == "3" ? "active open" : "")">
<a href="#" title="Category" data-filter-tags="category">
<a href="#" title="交叉分析" data-filter-tags="category">
<i class="fal fa-crosshairs"></i>
<span class="nav-link-text" data-i18n="nav.category">交叉分析</span>
</a>
@ -277,7 +284,7 @@
|| ViewBag.auths.Contains("NoticeSchedule"))
{
<li class="@(ViewData["MainNum"] == "4" ? "active open" : "")">
<a href="#" title="Category" data-filter-tags="category">
<a href="#" title="報表查詢" data-filter-tags="category">
<i class="fal fa-file-chart-line"></i>
<span class="nav-link-text" data-i18n="nav.category">報表查詢</span>
</a>
@ -324,7 +331,7 @@
@if (ViewBag.myUser.Role.Layer == (int)RoleLayerEnum.PlatformAdmin || ViewBag.auths.Contains("ExceptionRecord"))
{
<li class="@(ViewData["MainNum"] == "5" ? "active open" : "")">
<a href="#" title="Category" data-filter-tags="category">
<a href="#" title="即時告警" data-filter-tags="category">
<i class="fal fa-siren-on"></i>
<span class="nav-link-text" data-i18n="nav.category">即時告警</span>
</a>
@ -341,7 +348,7 @@
@if (ViewBag.myUser.Role.Layer == (int)RoleLayerEnum.PlatformAdmin || ViewBag.auths.Contains("PowerStation") || ViewBag.auths.Contains("Operation") || ViewBag.auths.Contains("OperationRecord"))
{
<li class="@(ViewData["MainNum"] == "6" ? "active open" : "")">
<a href="#" title="Category" data-filter-tags="category">
<a href="#" title="運維管理" data-filter-tags="category">
<i class="fal fa-rabbit-fast"></i>
<span class="nav-link-text" data-i18n="nav.category">運維管理</span>
</a>
@ -377,7 +384,7 @@
@if (ViewBag.myUser.Role.Layer == (int)RoleLayerEnum.PlatformAdmin || ViewBag.auths.Contains("Company") || ViewBag.auths.Contains("User") || ViewBag.auths.Contains("Role") || ViewBag.auths.Contains("User"))@*TODO修改定時任務權限*@
{
<li class="@(ViewData["MainNum"] == "7" ? "active open" : "")">
<a href="#" title="Category" data-filter-tags="category">
<a href="#" title="系統管理" data-filter-tags="category">
<i class="fal fa-cog"></i>
<span class="nav-link-text" data-i18n="nav.category">系統管理</span>
</a>

View File

@ -410,7 +410,7 @@
statusicon = 'NULL'; break;
}
$('#card_' + val.id).find('#solarName').html(statusicon + val.name);
@*$('#card_' + val.id).find('#weathericon')[0].setAttribute("class", 'fal fa-' + val.todayWeather + ' fa-2x');*@
$('#card_' + val.id).find('#weathericon')[0].setAttribute("class", 'fal fa-' + val.todayWeather + ' fa-2x');
$('#card_' + val.id).find('#Temp').html((val.todayWeatherTemp == -99)? "": val.todayWeatherTemp + '°C');
var type = "";
switch (val.solarType) {
@ -427,11 +427,11 @@
$('#card_' + val.id).find('#editSolarUrl').attr('href', localurl + '/Info?stationId=' + val.id);
$('#card_' + val.id).find('#date').html(time.getMonth() + "/" + time.getDate() + " " + time.getHours() + ":" + time.getMinutes());
$('#card_' + val.id).find('#today_kwh').html(val.today_kWh.toFixed(2));
$('#card_' + val.id).find('#Capacity').html(val.generatingCapacity.toFixed(2));
$('#card_' + val.id).find('#Capacity').html(val.generatingCapacity.toFixed(3));
@if (ViewBag.myUser.Role.Auths.Contains("ShowMoney"))
{
<text>
$('#card_' + val.id).find('#PowerRate').html((val.today_kWh * val.powerRate).toFixed(2));
$('#card_' + val.id).find('#PowerRate').html((val.today_kWh * val.powerRate).toFixed());
</text>
}
$('#card_' + val.id).find('#PR').html(val.today_PR);
@ -455,7 +455,7 @@
$('#solarTable').find('tbody').append('<tr>' +
'<td>' + val.code + '</td>' +
'<td>' + val.name + '</td>' +
'<td>' + val.generatingCapacity.toFixed(2) + '</td>' +
'<td>' + val.generatingCapacity.toFixed(3) + '</td>' +
'<td>' + val.total_kWh.toFixed(2) + '</td>' +
'<td>' + val.today_kWh.toFixed(2) + '</td>' +
'<td>' + val.solarHour.toFixed(2) + '</td>' +
@ -465,7 +465,7 @@
@if (ViewBag.myUser.Role.Auths.Contains("ShowMoney"))
{
<text>
'<td>' + val.today_Money.toFixed(2) + '</td>' +
'<td>' + val.today_Money.toFixed() + '</td>' +
</text>
}
'<td>' + val.electricityMeterAt + '</td>' +

View File

@ -5,6 +5,7 @@
}
@using SolarPower.Models.Role
@model RoleLayerEnum
@*<ol class="breadcrumb page-breadcrumb" >
<li class="breadcrumb-item"><a href="javascript:void(0);">總覽</a></li>
<li class="breadcrumb-item">@ViewData["Title"]</li>
@ -223,8 +224,8 @@
$("#avg_PR").html(stationOverview.avg_PR.toFixed(2));
$("#today_kwhkwp").html(stationOverview.today_kwhkwp.toFixed(2));
$("#avg_kwhkwp").html(stationOverview.avg_kwhkwp.toFixed(2));
$("#total_money").html(stationOverview.total_money.toFixed(2));
$("#today_money").html(stationOverview.today_money.toFixed(2));
$("#total_money").html(stationOverview.total_money.toFixed());
$("#today_money").html(stationOverview.today_money.toFixed());
$("#today_carbon").html(stationOverview.today_carbon.toFixed(2));
$("#total_carbon").html(stationOverview.total_carbon.toFixed(2));
$("#update_at").html(stationOverview.updatedAt);
@ -1743,7 +1744,7 @@
$("#escrow_name_text").html(powerStationData.escrowName);
$("#created_by_text").html(powerStationData.creatorName);
$("#generating_capacity_text").html(powerStationData.generatingCapacity);
$("#generating_capacity_text").html(powerStationData.generatingCapacity.toFixed(3));
$("#estimated_recovery_time_text").html(powerStationData.estimatedRecoveryTime);
$("#coordinate_text").html(powerStationData.coordinate);
@ -2608,7 +2609,7 @@
}
$("#Invertercard-Name").html(rel.data.name);
$("#Invertercard-kwh").html(rel.data.kwh);
$("#Invertercard-money").html(rel.data.today_Money);
$("#Invertercard-money").html(rel.data.today_Money.toFixed());
$("#Invertercard-pr").html(rel.data.today_PR);
var str = "<div class='progress progress-sm ' id='prbar'>" +
"<div class='progress-bar bg-info' role = 'progressbar' style = 'width: " + rel.data.today_PR + "%;' aria - valuenow='" + rel.data.today_PR + "' aria - valuemin='0' aria - valuemax='100' ></div > </div >"

View File

@ -34,7 +34,7 @@
<div class="col-12">
<div class="row mb-2">
<div class="col-4 btn-group">
<button type="button" class="btn btn-success waves-effect waves-themed btn-change-inverter-kwhbar" onclick="ChangeInverterkwhBarDaily(this)">日區間</button>
<button type="button" class="btn btn-success waves-effect waves-themed btn-change-inverter-kwhbar" onclick="ChangeInverterkwhBarDaily(this)">日</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-inverter-kwhbar" onclick="ChangeInverterkwhBarMonthly(this)">月</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-inverter-kwhbar" onclick="ChangeInverterkwhBarQuaryerly(this)">季</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-inverter-kwhbar" onclick="ChangeInverterkwhBarAnnual(this)">年</button>

View File

@ -4,7 +4,7 @@
<li class=" w-100">
<div class="mx-auto" style="width: 20%;">
<div class="card border m-auto m-lg-0" id="Invertercard">
<a href="0station.html"> <img src="img/card-backgrounds/cover-3-lg.png" class="card-img-top" alt="..."> </a>
<a href="javascript:void(0)"> <img src="img/card-backgrounds/cover-3-lg.png" class="card-img-top" alt="..."> </ahref>
<div class="card-body d-flex justify-content-between pb-0 px-2">
<h4 class="font-weight-bold" style="line-height: 27px;" id="Invertercard-Name"> <a href="javascript:void(0);" class="btn btn-success btn-sm btn-icon rounded-circle waves-effect waves-themed"> <i class="fal fa-check"></i> </a> 新竹巨城站</h4>
<p class="card-text"><i class="fal fa-cloud-sun-rain fa-2x" id="Invertercard-weathericon"></i></p>

View File

@ -189,9 +189,9 @@
<div class="pr-3">
<div class="btn-group btn-group-md">
<button type="button" class="btn btn-success waves-effect waves-themed btn-change-searchType" id="Group0" onclick="changeType(0,this)">日</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group1" onclick="changeType(1,this)">日區間</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group2" onclick="changeType(2,this)">月</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group3" onclick="changeType(3,this)">年</button>
<button type="button" class="btn btn-secondary waves-effect waves-themed btn-change-searchType" id="Group1" onclick="changeType(1,this)">自訂區間</button>
</div>
</div>
<div class="pr-3" id="quickSearchOption">
@ -614,7 +614,7 @@
'<div class="mr-2">' +
'<input type="checkbox" class="" name="selectedInverterLayer2[]" value="' + inverter.id + '" valueName ="' + inverter.name + '" checked>' +
'</div>' +
'<h5 class="font-weight-bold">' + inverter.name + '</h5>' +
'<h5 class="font-weight-bold mb-0">' + inverter.name + '</h5>' +
'</div>' +
'</li>';
}
@ -624,7 +624,7 @@
'<div class="mr-2">' +
'<input type="checkbox" class="" name="selectedInverterLayer2[]" value="' + inverter.id + '" valueName ="' + inverter.name + '">' +
'</div>' +
'<h5 class="font-weight-bold">' + inverter.name + '</h5>' +
'<h5 class="font-weight-bold mb-0">' + inverter.name + '</h5>' +
'</div>' +
'</li>';
}

View File

@ -6,6 +6,7 @@ for details on configuring this project to bundle and minify static web assets.
html {
font-size: 16px;
}
@media (min-width: 768px) {
html {
font-size: 18px;
@ -21,8 +22,7 @@ label.error {
#power-station-images-form .dz-preview .dz-progress,
#power-station-single-line-form .dz-preview .dz-progress,
#record-file-div .dz-preview .dz-progress
{
#record-file-div .dz-preview .dz-progress {
display: none;
}
@ -30,3 +30,11 @@ label.error {
.swal2-container {
z-index: 2051;
}
.select2-container--disabled .select2-selection__choice {
padding-right: 5px !important;
}
.highcharts-credits {
display: none;
}