修改後台同步設備
This commit is contained in:
		
							parent
							
								
									b4c150a1d4
								
							
						
					
					
						commit
						4d38c0d73d
					
				@ -95,6 +95,7 @@ namespace Backend.Controllers
 | 
			
		||||
                { "@created_by", myUserInfo.Userinfo_guid}
 | 
			
		||||
            };
 | 
			
		||||
 | 
			
		||||
            if (actionName != "CompareData" && controllerName != "NiagaraDataSynchronize") //skip the log
 | 
			
		||||
                backendRepository.InsertOperatorLog(operatorLog, "operation_back_log");
 | 
			
		||||
 | 
			
		||||
            //operatorLogRepository.Add(operatorLog, properties);
 | 
			
		||||
 | 
			
		||||
@ -8,6 +8,7 @@ using Microsoft.Extensions.Logging;
 | 
			
		||||
using Backend.Services;
 | 
			
		||||
using Backend.Services.Implement;
 | 
			
		||||
using Repository.Models;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
 | 
			
		||||
namespace Backend.Controllers
 | 
			
		||||
{
 | 
			
		||||
@ -69,13 +70,14 @@ namespace Backend.Controllers
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        /// <returns></returns>
 | 
			
		||||
        [HttpPost]
 | 
			
		||||
        public async Task<ApiResult<bool>> CompareData(List<Device_value> ds, string building)
 | 
			
		||||
        public async Task<ApiResult<bool>> CompareData([FromBody] List<Device_value> ds)
 | 
			
		||||
        {
 | 
			
		||||
            bool result = false;
 | 
			
		||||
 | 
			
		||||
            ApiResult<bool> apiResult = new ApiResult<bool>();
 | 
			
		||||
            try
 | 
			
		||||
            {
 | 
			
		||||
                
 | 
			
		||||
                var building = ds.FirstOrDefault().building;
 | 
			
		||||
                await niagaraDataSynchronizeRepository.InsertNiagaraTagList(ds, building);
 | 
			
		||||
                await niagaraDataSynchronizeRepository.InsertItemFromNiagara(ds, building);
 | 
			
		||||
                await niagaraDataSynchronizeRepository.DeviceComparison();
 | 
			
		||||
 | 
			
		||||
@ -144,11 +144,19 @@
 | 
			
		||||
                //比對資料,有差異的話,再同步到device等資料表
 | 
			
		||||
                var url_synchronize_data = "/NiagaraDataSynchronize/CompareData/";
 | 
			
		||||
 | 
			
		||||
                var send_data = {
 | 
			
		||||
                    ds: ds,
 | 
			
		||||
                    building: building
 | 
			
		||||
                }
 | 
			
		||||
                $.post(url_synchronize_data, send_data, function (rel) {
 | 
			
		||||
                $.each(ds, function (i, v) {
 | 
			
		||||
                    v.building = building;
 | 
			
		||||
                })
 | 
			
		||||
 | 
			
		||||
                $.ajax({
 | 
			
		||||
                    method: "POST",
 | 
			
		||||
                    url: url_synchronize_data,
 | 
			
		||||
                    data: JSON.stringify(ds),
 | 
			
		||||
                    cache: false,
 | 
			
		||||
                    async: false,
 | 
			
		||||
                    contentType: "application/json; charset=UTF-8",
 | 
			
		||||
                    dataType: 'json',
 | 
			
		||||
                    success: function (rel) {
 | 
			
		||||
                        if (rel.code != "0000") {
 | 
			
		||||
                            toast_error(rel.msg);
 | 
			
		||||
                            document.getElementById('loadDataText').innerText = "比對資料出錯了!";
 | 
			
		||||
@ -157,7 +165,8 @@
 | 
			
		||||
                        var time = today.getHours() + ":" + today.getMinutes() + ":" + today.getSeconds();
 | 
			
		||||
                        var dateTime = date + ' ' + time;
 | 
			
		||||
                        document.getElementById('loadDataText').innerText = "比對完成 \n" + dateTime;
 | 
			
		||||
                }, 'json');
 | 
			
		||||
                    },
 | 
			
		||||
                });
 | 
			
		||||
            }
 | 
			
		||||
            else {
 | 
			
		||||
                document.getElementById('loadDataText').innerText = "查無資料 無法比對!";
 | 
			
		||||
 | 
			
		||||
@ -10,7 +10,6 @@ using System.Threading.Tasks;
 | 
			
		||||
using System.Transactions;
 | 
			
		||||
using Repository.Models;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
namespace Repository.BackendRepository.Implement
 | 
			
		||||
{
 | 
			
		||||
    public class NiagaraDataSynchronizeRepository : BackendRepository, INiagaraDataSynchronizeRepository
 | 
			
		||||
@ -389,7 +388,13 @@ namespace Repository.BackendRepository.Implement
 | 
			
		||||
                        {
 | 
			
		||||
                            foreach (var data in result)
 | 
			
		||||
                            {
 | 
			
		||||
                                StringBuilder sqlString = new StringBuilder();
 | 
			
		||||
                                sqlString.Append(@"select * from building_menu where building_tag = '" + data.device_building_tag + "' and main_system_tag = '" + data.device_system_tag + "' and sub_system_tag = '" + data.device_name_tag + "'");
 | 
			
		||||
                                var bm = (await conn.QueryAsync<building_menu>(sqlString.ToString())).ToList<building_menu>();
 | 
			
		||||
 | 
			
		||||
                                #region insert building_menu
 | 
			
		||||
                                if (bm.Count == 0)
 | 
			
		||||
                                {
 | 
			
		||||
                                    sb.Append(@"insert building_menu(building_tag, main_system_tag, sub_system_tag, device_building_tag, device_system_tag,
 | 
			
		||||
                                  is_link, created_by, created_at, updated_by, updated_at)
 | 
			
		||||
                                  VALUES ('" + data.device_building_tag + "', '" +
 | 
			
		||||
@ -398,6 +403,7 @@ namespace Repository.BackendRepository.Implement
 | 
			
		||||
                                          data.device_building_tag + "', '" +
 | 
			
		||||
                                          data.device_system_tag + "', " +
 | 
			
		||||
                                          "1, 'B43E3CA7-96DD-4FC7-B6E6-974ACC3B0878', now(), 'B43E3CA7-96DD-4FC7-B6E6-974ACC3B0878', now() );");
 | 
			
		||||
                                }
 | 
			
		||||
                                #endregion
 | 
			
		||||
                            }
 | 
			
		||||
                            if (sb.Length > 0)
 | 
			
		||||
 | 
			
		||||
@ -47,6 +47,7 @@ namespace Repository.Models
 | 
			
		||||
        public string value { get; set; }
 | 
			
		||||
        public string tag_name { get; set; }
 | 
			
		||||
        public string point_name { get; set; }
 | 
			
		||||
        public string building { get; set; }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public class Device_item8
 | 
			
		||||
@ -93,4 +94,10 @@ namespace Repository.Models
 | 
			
		||||
        public string device_point_name { get; set; }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public class building_menu
 | 
			
		||||
    {
 | 
			
		||||
        public string building_tag { get; set; }
 | 
			
		||||
        public string device_system_tag { get; set; }
 | 
			
		||||
        public string device_name_tag { get; set; }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user