Ejemplo n.º 1
0
        /// <summary>
        /// 查询年检代办配置
        /// </summary>
        /// <param name="servicePid"></param>
        /// <param name="carNoPrefix"></param>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        public Tuple <List <VehicleAnnualInspectionAgentModel>, int> SelectVehicleAnnualInspectionAgent
            (string servicePid, string carNoPrefix, int pageIndex, int pageSize)
        {
            var result     = null as List <VehicleAnnualInspectionAgentModel>;
            var totalCount = 0;

            try
            {
                var configs = dbScopeManagerConfigurationRead.Execute(conn =>
                                                                      DalVehicleAnnualInspectionAgent.SelectVehicleAnnualInspectionAgent(conn, servicePid, carNoPrefix, pageIndex, pageSize, out totalCount))
                              ?? new List <VehicleAnnualInspectionAgentModel>();
                var allService = GetAllAnnualInspectionService();
                configs.ForEach(
                    f =>
                {
                    var service   = allService.Where(w => string.Equals(w.ServicePid, f.ServicePid))?.FirstOrDefault();
                    f.ServiceName = service?.ServiceName;
                });
                result = configs;
            }
            catch (Exception ex)
            {
                result = null;
                Logger.Error("SelectVehicleAnnualInspectionAgent", ex);
            }
            return(Tuple.Create(result, totalCount));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 判断年检配置唯一性
        /// 同PID同城市(车牌前缀),只能有一条启用的数据
        /// PID、车牌前缀、供应商简称 作唯一性约束
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool IsExistAnnualInspectionAgent(VehicleAnnualInspectionAgentModel model)
        {
            var result = true;

            try
            {
                result = dbScopeManagerConfigurationRead.Execute
                             (conn => DalVehicleAnnualInspectionAgent.IsExistAnnualInspectionAgent(conn, model));
            }
            catch (Exception ex)
            {
                Logger.Error("IsExistAnnualInspectionAgent", ex);
            }
            return(result);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 获取所有车牌前缀
        /// </summary>
        /// <returns></returns>
        public Dictionary <string, List <string> > GetAllCarNoPrefix()
        {
            var result = null as Dictionary <string, List <string> >;

            try
            {
                var prefix = dbScopeManagerGungnirRead.Execute(conn => DalVehicleAnnualInspectionAgent.GetAllCarNoPrefix(conn));
                result = prefix.GroupBy(s => s.ProvinceName).ToDictionary(c => c.Key, c => c.Select(s => s.PlatePrefix).Distinct().ToList());
            }
            catch (Exception ex)
            {
                Logger.Error("GetAllCarNoPrefix", ex);
            }
            return(result);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 获取所有年检代办服务
        /// </summary>
        /// <returns></returns>
        public List <AnnualInspectionServiceModel> GetAllAnnualInspectionService()
        {
            var result = null as List <AnnualInspectionServiceModel>;

            try
            {
                result = dbScopeManagerProductcatalogRead.Execute
                             (conn => DalVehicleAnnualInspectionAgent.GetAllAnnualInspectionService(conn));
            }
            catch (Exception ex)
            {
                Logger.Error("GetAllAnnualInspectionService", ex);
            }
            return(result ?? new List <AnnualInspectionServiceModel>());
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 查询年检代办操作日志
        /// </summary>
        /// <param name="logType"></param>
        /// <param name="identityId"></param>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        public List <AnnualInspectionOprLogModel> SelectAnnualInspectionOprLog
            (string logType, string identityId, int pageIndex = 1, int pageSize = 20)
        {
            var result = null as List <AnnualInspectionOprLogModel>;

            try
            {
                result = dbScopeManagerTuhulog.Execute
                             (conn => DalVehicleAnnualInspectionAgent.SelectAnnualInspectionOprLog(conn, logType, identityId, pageIndex, pageSize));
            }
            catch (Exception ex)
            {
                Logger.Error("SelectAnnualInspectionOprLog", ex);
            }
            return(result);
        }
Ejemplo n.º 6
0
        public bool AddVehicleOnlineAnnualInspectionAgent(VehicleAnnualInspectionAgentModel model, string user)
        {
            var result = false;

            try
            {
                var oldValue = GetVehicleOnlineAnnualInspectionAgent(model.ServicePid, model.Province, model.City, model.Village);
                if (oldValue == null)
                {
                    var pkid = dbScopeManagerConfiguration.Execute
                                   (conn => DalVehicleAnnualInspectionAgent.AddVehicleOnlineAnnualInspectionAgent(conn, model));
                    result     = pkid > 0;
                    model.PKID = pkid;
                }
                else if (oldValue.IsDeleted)
                {
                    model.PKID = oldValue.PKID;
                    result     = dbScopeManagerConfiguration.Execute
                                     (conn => DalVehicleAnnualInspectionAgent.UpdateVehicleOnlineAnnualInspectionAgent(conn, model));
                }

                model.CreateDateTime     = DateTime.Now;
                model.LastUpdateDateTime = DateTime.Now;
                var log = new AnnualInspectionOprLogModel
                {
                    LogType       = "VehicleOnlineAnnualInspectionAgent",
                    IdentityId    = $"{model.Province}_{model.City}_{model.Village}",
                    OperationType = "Add",
                    OldValue      = null,
                    NewValue      = JsonConvert.SerializeObject(model),
                    Remarks       = $"添加{model.Province}_{model.City}_{model.Village},供应商:{model.VenderShortName}," +
                                    $"服务Pid:{model.ServicePid},联系电话:{model.TelNum},联系邮箱:{model.Email} " +
                                    $"的{model.ServiceName}服务",
                    Operator = user,
                };
                LoggerManager.InsertLog("AnnualInspectOprLog", log);
            }
            catch (Exception ex)
            {
                result = false;
                Logger.Error("AddVehicleOnlineAnnualInspectionAgent", ex);
            }
            return(result);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// 删除年检代办配置
        /// </summary>
        /// <param name="carNoPrefix"></param>
        /// <param name="telNum"></param>
        /// <param name="servicePid"></param>
        /// <param name="user"></param>
        /// <returns></returns>
        public bool DeleteVehicleOnlineAnnualInspectionAgent
            (string servicePid, string province, string city, string village, string user)
        {
            var result = false;

            try
            {
                var oldValue = GetVehicleOnlineAnnualInspectionAgent(servicePid, province, city, village);
                if (oldValue != null && !oldValue.IsDeleted)
                {
                    result = dbScopeManagerConfiguration.Execute(conn => DalVehicleAnnualInspectionAgent.DeleteVehicleAnnualInspectionAgent(conn, oldValue.PKID));
                    if (!result)
                    {
                        throw new Exception($"DeleteVehicleOnlineAnnualInspectionAgent,待删除数据{JsonConvert.SerializeObject(oldValue)}");
                    }
                    var log = new AnnualInspectionOprLogModel
                    {
                        LogType       = "VehicleAnnualInspectionAgent",
                        IdentityId    = $"{province}_{city}_{village}",
                        OperationType = "Delete",
                        OldValue      = JsonConvert.SerializeObject(oldValue),
                        NewValue      = null,
                        Remarks       = $"删除{oldValue.Province}_{oldValue.City}_{oldValue.Village},供应商:{oldValue.VenderShortName}," +
                                        "服务Pid:{model.ServicePid},联系电话:{model.TelNum},联系邮箱:{model.Email}" +
                                        "的{model.ServiceName}服务的年检代办服务",
                        Operator = user,
                    };
                    LoggerManager.InsertLog("AnnualInspectOprLog", log);
                }
                else
                {
                    result = true;
                }
            }
            catch (Exception ex)
            {
                result = false;
                Logger.Error("DeleteVehicleOnlineAnnualInspectionAgent", ex);
            }
            return(result);
        }
Ejemplo n.º 8
0
        /// <summary>
        /// 删除年检代办配置
        /// </summary>
        /// <param name="carNoPrefix"></param>
        /// <param name="telNum"></param>
        /// <param name="servicePid"></param>
        /// <param name="user"></param>
        /// <returns></returns>
        public bool DeleteVehicleAnnualInspectionAgent
            (string servicePid, string telNum, string carNoPrefix, string user)
        {
            var result = false;

            try
            {
                var oldValue = GetVehicleAnnualInspectionAgent(servicePid, telNum, carNoPrefix);
                if (oldValue != null && !oldValue.IsDeleted)
                {
                    result = dbScopeManagerConfiguration.Execute(conn => DalVehicleAnnualInspectionAgent.DeleteVehicleAnnualInspectionAgent(conn, oldValue.PKID));
                    if (!result)
                    {
                        throw new Exception($"DeleteVehicleAnnualInspectionAgent失败,待删除数据{JsonConvert.SerializeObject(oldValue)}");
                    }
                    var log = new AnnualInspectionOprLogModel
                    {
                        LogType       = "VehicleAnnualInspectionAgent",
                        IdentityId    = $"{carNoPrefix}_{servicePid}_{telNum}",
                        OperationType = "Delete",
                        OldValue      = JsonConvert.SerializeObject(oldValue),
                        NewValue      = null,
                        Remarks       = $"删除{oldValue.CarNoPrefix},供应商:{oldValue.VenderShortName},服务Pid:{oldValue.ServicePid}," +
                                        $"联系人:{oldValue.Contact},联系电话:{oldValue.TelNum}的年检代办服务",
                        Operator = user,
                    };
                    LoggerManager.InsertLog("AnnualInspectOprLog", log);
                }
                else
                {
                    result = true;
                }
            }
            catch (Exception ex)
            {
                result = false;
                Logger.Error("DeleteVehicleAnnualInspectionAgent", ex);
            }
            return(result);
        }
Ejemplo n.º 9
0
        /// <summary>
        /// 更新年检代办配置
        /// </summary>
        /// <param name="model"></param>
        /// <param name="user"></param>
        /// <returns></returns>
        public bool UpdateVehicleAnnualInspectionAgent
            (VehicleAnnualInspectionAgentModel model, string user)
        {
            var result = false;

            try
            {
                var oldValue = GetVehicleAnnualInspectionAgent(model.ServicePid, model.TelNum, model.CarNoPrefix);
                if (oldValue != null)
                {
                    result = dbScopeManagerConfiguration.Execute(conn =>
                                                                 DalVehicleAnnualInspectionAgent.UpdateVehicleAnnualInspectionAgent(conn, model));
                    if (!result)
                    {
                        throw new Exception($"UpdateVehicleAnnualInspectionAgent失败,待更新数据{JsonConvert.SerializeObject(model)}");
                    }
                    model.CreateDateTime     = oldValue.CreateDateTime;
                    model.LastUpdateDateTime = DateTime.Now;
                    var log = new AnnualInspectionOprLogModel
                    {
                        LogType       = "VehicleAnnualInspectionAgent",
                        IdentityId    = $"{model.CarNoPrefix}_{model.ServicePid}_{model.TelNum}",
                        OperationType = "Update",
                        OldValue      = JsonConvert.SerializeObject(oldValue),
                        NewValue      = JsonConvert.SerializeObject(model),
                        Remarks       = $"更新{model.CarNoPrefix},供应商:{model.VenderShortName},服务Pid:{model.ServicePid}," +
                                        $"联系人:{model.Contact},联系电话{model.TelNum}的{model.ServiceName}服务",
                        Operator = user,
                    };
                    LoggerManager.InsertLog("AnnualInspectOprLog", log);
                }
            }
            catch (Exception ex)
            {
                result = false;
                Logger.Error("UpdateVehicleAnnualInspectionAgent", ex);
            }
            return(result);
        }
Ejemplo n.º 10
0
        /// <summary>
        /// 刷新年检代办服务缓存
        /// </summary>
        /// <returns></returns>
        public bool RefreshAnnualInspectionAgentCache()
        {
            var result = false;

            try
            {
                var models      = dbScopeManagerGungnirRead.Execute(conn => DalVehicleAnnualInspectionAgent.GetAllCarNoPrefix(conn));
                var carNoPrefix = models?.Select(s => s.PlatePrefix).ToList();
                if (carNoPrefix != null && carNoPrefix.Any())
                {
                    using (var client = new Service.Config.CacheClient())
                    {
                        var cacheResult = client.RefreshVehicleAnnualInspectionAgentCache(carNoPrefix);
                        cacheResult.ThrowIfException(true);
                        result = cacheResult.Result;
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.Error("RefreshAnnualInspectionAgentCache", ex);
            }
            return(result);
        }
Ejemplo n.º 11
0
 /// <summary>
 /// 获取年检代办配置
 /// </summary>
 /// <param name="servicePid"></param>
 /// <param name="telNum"></param>
 /// <param name="carNoPrefix"></param>
 /// <returns></returns>
 private VehicleAnnualInspectionAgentModel GetVehicleAnnualInspectionAgent
     (string servicePid, string telNum, string carNoPrefix)
 {
     return(dbScopeManagerConfigurationRead.Execute
                (conn => DalVehicleAnnualInspectionAgent.GetAnnualInspectionAgent(conn, servicePid, telNum, carNoPrefix)));
 }
Ejemplo n.º 12
0
 private VehicleAnnualInspectionAgentModel GetVehicleOnlineAnnualInspectionAgent
     (string servicePid, string province, string city, string village)
 {
     return(dbScopeManagerConfigurationRead.Execute
                (conn => DalVehicleAnnualInspectionAgent.GetAnnualOnlineInspectionAgent(conn, servicePid, province, city, village)));
 }