Merge branch 'Willy'

This commit is contained in:
b110212000 2021-06-18 12:37:22 +08:00
commit 5f1b2655bf
8 changed files with 52 additions and 12 deletions

View File

@ -829,6 +829,18 @@ namespace SolarPower.Controllers
{
if (Device.Id == 0)
{
PowerStation powerStation = null;
powerStation = await powerStationRepository.GetOneAsync(Device.PowerStationId);
string Number = await powerStationRepository.GetFinalSerialNumber(Device.PowerStationId, Device.Type);
var tempSerialNumber = 0;
if (!string.IsNullOrEmpty(Number))
{
tempSerialNumber = Convert.ToInt32(Number) + 1;
}
else
{
tempSerialNumber = 1;
}
Device DeviceInfo = new Device()
{
Brand = Device.Brand,
@ -841,9 +853,10 @@ namespace SolarPower.Controllers
Remark = Device.Remark,
TableName = Device.TableName,
Type = Device.Type,
UID = Device.PowerStationId + "-" + Device.Type,
UID = powerStation.Code + "-" + Device.Type + "-" + tempSerialNumber.ToString().PadLeft(3,'0'),
CreatedBy = myUser.Id,
TypeName = Device.TypeName
TypeName = Device.TypeName,
SerialNumber = tempSerialNumber.ToString().PadLeft(3, '0')
};
List<string> properties = new List<string>()
{
@ -859,7 +872,8 @@ namespace SolarPower.Controllers
"Type",
"UID",
"CreatedBy",
"TypeName"
"TypeName",
"SerialNumber"
};
await powerStationRepository.AddDevice(DeviceInfo,properties);
@ -878,9 +892,6 @@ namespace SolarPower.Controllers
Name = Device.Name,
ProductModel = Device.ProductModel,
Remark = Device.Remark,
TableName = Device.TableName,
Type = Device.Type,
UID = Device.PowerStationId + "-" + Device.Type,
CreatedBy = myUser.Id,
TypeName = Device.TypeName
};
@ -894,9 +905,6 @@ namespace SolarPower.Controllers
"Name",
"ProductModel",
"Remark",
"TableName",
"Type",
"UID",
"CreatedBy",
"TypeName"
};

View File

@ -819,6 +819,7 @@ INSERT INTO `variable` (`id`, `name`, `value`, `remark`) VALUES
/******************************
** SQL修改從以下開始新增 **
*******************************/
ALTER TABLE `device` ADD COLUMN `SerialNumber` VARCHAR(3) NULL DEFAULT NULL COMMENT '單一設備流水號' COLLATE 'utf8mb4_unicode_ci' AFTER `PowerStationId`;/* 設備流水號 - 2021/6/18 12:21:00 */

View File

@ -37,7 +37,7 @@ namespace SolarPower.Helper
var passwordStr = ed.DESDecrypt(dbConfig.Password);
//var connStr = $"server={serverStr};database={databaseStr};user={rootStr};password={passwordStr};charset=utf8;";
var connStr = @"server=127.0.0.1;database=solar_power;user=root;password=000000;charset=utf8;";
var connStr = @"server=127.0.0.1;port=3308;database=solar_power;user=root;password=00000000;charset=utf8;";
this._connectionString = connStr;
}

View File

@ -330,6 +330,7 @@ namespace SolarPower.Models.PowerStation
{
public string UID { get; set; }//設備編號
public int CreatedBy { get; set; }//建立者
public string SerialNumber { get; set; }
}
/// <summary>
///設備dataTable

View File

@ -786,5 +786,28 @@ namespace SolarPower.Repository.Implement
conn.Close();
}
}
public async Task<string> GetFinalSerialNumber(int PowerStationId, string Type)
{
string Num;
using IDbConnection conn = _databaseHelper.GetConnection();
conn.Open();
var trans = conn.BeginTransaction();
try
{
var sql = "SELECT SerialNumber FROM device WHERE PowerStationId = @PowerStationId AND Type = @Type ORDER BY SerialNumber DESC";
Num = await conn.QueryFirstOrDefaultAsync<string>(sql, new { PowerStationId = PowerStationId, Type = Type });
trans.Commit();
}
catch (Exception exception)
{
trans.Rollback();
throw exception;
}
finally
{
conn.Close();
}
return Num;
}
}
}

View File

@ -181,5 +181,12 @@ namespace SolarPower.Repository.Interface
/// <param name="properties"></param>
/// <returns></returns>
Task UpdateException(ExceptionModal Exception, List<string> properties);
/// <summary>
/// 取最後一個設備流水號
/// </summary>
/// <param name="PowerStationId"></param>
/// <param name="Type"></param>
/// <returns></returns>
Task<string> GetFinalSerialNumber(int PowerStationId, string Type);
}
}

View File

@ -1471,7 +1471,7 @@
toast_error(rel.msg);
return;
}
document.getElementById('Device_Type_modal').disabled = true;
$("#Device_Name_modal").val(rel.data.name);
$("#Device_Type_modal").val(rel.data.type);
$("#Device_Brand_modal").val(rel.data.brand);

View File

@ -79,7 +79,7 @@
</div>
<div class="form-group col-lg-6">
<div style="margin-bottom: 0.3rem">
<label class="form-label" for="Device_Remark_modal"><span class="text-danger">*</span>備註</label>
<label class="form-label" for="Device_Remark_modal">備註</label>
<input type="text" id="Device_Remark_modal" name="Device_Remark_modal" class="form-control">
</div>
</div>