示例#1
0
        public async Task <ActionResult> Login(LoginViewModel model, string returnUrl)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            User user = new User()
            {
                Email = model.Email, Password = model.Password
            };

            user     =
                user = Repositorys.GetUserDetails(user);

            if (user != null)
            {
                FormsAuthentication.SetAuthCookie(model.Email, false);

                var    authTicket      = new FormsAuthenticationTicket(1, user.Email, DateTime.Now, DateTime.Now.AddMinutes(20), false, user.Roles);
                string encryptedTicket = FormsAuthentication.Encrypt(authTicket);
                var    authCookie      = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket);
                HttpContext.Response.Cookies.Add(authCookie);
                return(RedirectToAction("Index", "Home"));
            }

            else
            {
                ModelState.AddModelError("", "Invalid login attempt.");
                return(View(model));
            }
        }
示例#2
0
        static void Main(string[] args)
        {
            var         nodes    = findOpenData();
            Repositorys aa       = new Repositorys();
            var         makeconn = aa.Connection();
            var         select   = aa.select(makeconn);

            ShowOpenData(select);
            Console.ReadKey();
        }
示例#3
0
        public JsonResult SaveRepository([CustomizeValidator] WarehouseDto m)
        {
            var q = new Repositorys()
            {
                Id      = m.Id,
                Name    = m.Name,
                Address = m.Address
            };

            return(Json <string>(_warehouseRepository.Add(q), "保存成功!"));
        }
示例#4
0
        /// <summary>
        /// 获取数据列表(厂家,炉批号,质检报告)
        /// </summary>
        public PageModel GetDataListForPage(InOrderRequest request)
        {
            #region 搜索条件

            List <Parameter> parameter = new List <Parameter>();
            string where = " where 1=1 and Factory IS NOT NULL and BatchNumber IS NOT NULL and (a.UseCount+isnull(d.LockCount,0))>0 and a.ChackState=1";
            if (!string.IsNullOrWhiteSpace(request.keyword))
            {
                where += " and c.CompanyFullName like @keyword";
                parameter.Add(new Parameter("@keyword", '%' + request.keyword + '%', DbType.String, null));
            }
            if (!string.IsNullOrWhiteSpace(request.MaterialCode))
            {
                where += " and a.MaterialCode=@MaterialCode";
                parameter.Add(new Parameter("@MaterialCode", request.MaterialCode, DbType.String, null));
            }
            if (!string.IsNullOrEmpty(request.ProjectId))
            {
                where += " and a.ProjectId=@ProjectId";
                parameter.Add(new Parameter("@ProjectId", request.ProjectId, DbType.String, null));
            }
            if (!string.IsNullOrWhiteSpace(request.WorkAreaCode))
            {
                where += " and a.WorkAreaCode=@WorkAreaCode";
                parameter.Add(new Parameter("@WorkAreaCode", request.WorkAreaCode, DbType.String, null));
            }
            if (!string.IsNullOrWhiteSpace(request.CollarCode))
            {
                parameter.Add(new Parameter("@CollarCode", request.CollarCode, DbType.String, null));
            }
            parameter.Add(new Parameter("@WorkOrderItemId", request.WorkOrderItemId, DbType.Int32, null));
            #endregion

            var sql = @"select 
                                 c.CompanyFullName as InOrderSiteName,
                                 a.InsertTime as InOrderTime,
                                 a.ID as InOrderItemId,
                                 a.Factory,
                                 a.BatchNumber,
                                 a.TestReportNo,
                                 a.Count,
                                 (a.UseCount+isnull(d.LockCount,0)) as PassCount
                                from TbRawMaterialStockRecord a
                                left join TbCompany c on a.SiteCode=c.CompanyCode
                                LEFT JOIN (
                                    SELECT  StockRecordId,SUM(LockCount) AS LockCount FROM TbRMProductionMaterialLockCount
                                    WHERE SourceType=1 AND CollarCode=@CollarCode AND WorkOrderItemId=@WorkOrderItemId
                                    GROUP BY StockRecordId
                                ) AS d ON a.ID=d.StockRecordId";
            try
            {
                var data = Repositorys <RawMaterialStockRecordResponse> .FromSqlToPage(sql + where, parameter, request.rows, request.page, "InOrderTime");

                if (data.total == 0)
                {
                    //查找最近的炉批号
                    var RawMaterial = GetLastRecordForRawMaterial(request);
                    if (RawMaterial != null)
                    {
                        var a = new RawMaterialStockRecordResponse()
                        {
                            InOrderTime   = RawMaterial.InsertTime,
                            InOrderItemId = RawMaterial.ID,
                            Factory       = RawMaterial.Factory,
                            BatchNumber   = RawMaterial.BatchNumber,
                            TestReportNo  = RawMaterial.TestReportNo,
                            Count         = RawMaterial.Count,
                            PassCount     = RawMaterial.UseCountS.Value
                        };
                        var b = Repository <TbCompany> .First(p => p.CompanyCode == RawMaterial.SiteCode);

                        if (b != null)
                        {
                            a.InOrderSiteName = b.ParentCompanyName;
                        }
                        data.rows = new List <RawMaterialStockRecordResponse>()
                        {
                            a
                        };
                    }
                }
                return(data);
            }
            catch (Exception)
            {
                throw;
            }
        }
示例#5
0
        /// <summary>
        /// 获取数据列表(明细)
        /// </summary>
        public PageModel GetDataDetialForPage(RawMaterialStockRequest request)
        {
            #region 模糊搜索条件

            string where = " where 1=1 ";
            where       += " and a.MaterialCode='" + request.MaterialCode + "'";
            if (!string.IsNullOrWhiteSpace(request.SiteCode))
            {
                where += " and a.SiteCode='" + request.SiteCode + "'";
            }
            else
            {
                where += " and a.SiteCode=''";
            }
            where += " and a.WorkAreaCode='" + request.WorkAreaCode + "'";
            if (!string.IsNullOrEmpty(request.ProjectId))
            {
                where += " and a.ProjectId='" + request.ProjectId + "'";
            }
            if (!string.IsNullOrEmpty(request.ProcessFactoryCode))
            {
                where += " and s.ProcessFactoryCode='" + request.ProcessFactoryCode + "'";
            }
            if (request.IsOld)
            {
                where += " and ((a.LockCount+a.UseCount=0 and a.LockCount!=0) or a.ChackState>1)";
            }
            else
            {
                where += " and ((a.LockCount+a.UseCount!=0 or a.LockCount=0) and a.ChackState<=1)";
            }
            #endregion

            try
            {
                var sql = @"select
                                a.ID,
                                a.Factory,
                                a.BatchNumber,
                                a.InsertTime,
                                a.Count,
                                a.LockCount,
                                a.UseCount,
                                a.HistoryCount,
                                a.ChackState,
                                tsoi.Enclosure,
                                tsoi.TestReportNo
                                from 
                                TbRawMaterialStockRecord a
                                left join TbStorage s on a.StorageCode=s.StorageCode
                                LEFT JOIN TbSampleOrderItem tsoi ON tsoi.InOrderItemId=a.InOrderitemId";
                //参数化
                List <Dos.ORM.Parameter> para = new List <Dos.ORM.Parameter>();
                var data = Repositorys <RawMaterialStockItemResponse> .FromSqlToPage(sql + where, para, request.rows, request.page, "ID", "desc");

                return(data);
            }
            catch (Exception)
            {
                throw;
            }
        }
示例#6
0
        /// <summary>
        /// 获取数据列表(分页)
        /// </summary>
        public PageModel GetDataListForPage(RawMaterialStockRequest request)
        {
            #region 模糊搜索条件
            string where = " where 1=1 ";
            if (!string.IsNullOrWhiteSpace(request.MaterialName))
            {
                where += (" and b.MaterialName like '%" + request.MaterialName + "%'");
            }

            if (!string.IsNullOrWhiteSpace(request.SpecificationModel))
            {
                where += (" and b.SpecificationModel like '%" + request.SpecificationModel + "%'");
            }
            if (!string.IsNullOrWhiteSpace(request.SiteCode))
            {
                List <string> SiteList     = _workOrderLogic.GetCompanyWorkAreaOrSiteList(request.SiteCode, 5); //站点
                List <string> WorkAreaList = _workOrderLogic.GetCompanyWorkAreaOrSiteList(request.SiteCode, 4); //工区
                string        siteStr      = string.Join("','", SiteList);
                string        workAreaStr  = string.Join("','", WorkAreaList);
                where += (" and (rms.SiteCode in('" + siteStr + "') or rms.WorkAreaCode in('" + workAreaStr + "'))");
            }
            if (!string.IsNullOrEmpty(request.ProjectId))
            {
                where += (" and rms.ProjectId='" + request.ProjectId + "'");
            }
            if (!string.IsNullOrEmpty(request.ProcessFactoryCode))
            {
                where += (" and c.ProcessFactoryCode='" + request.ProcessFactoryCode + "'");
            }
            if (!string.IsNullOrEmpty(request.RebarType))
            {
                where += (" and b.RebarType='" + request.RebarType + "'");
            }
            if (!string.IsNullOrWhiteSpace(request.IsQkl))
            {
                if (request.IsQkl == "是")
                {
                    where += "and -1*((isnull(rms.LockCount,0)+isnull(rms.UseCount,0))-isnull(tbwork.WeightSmallPlan,0))>0";
                }
                else
                {
                    where += "and (isnull(rms.LockCount,0)+isnull(rms.UseCount,0))-isnull(tbwork.WeightSmallPlan,0)>=0";
                }
            }
            #endregion
            try
            {
                var sql = @"select 
                                rms.*,
                                b.MaterialName,
                                b.SpecificationModel,
								c.ProcessFactoryCode,
                                c.StorageName,
                                cp1.CompanyFullName as SiteName,
                                cp2.CompanyFullName as WorkAreaName,
                                cp3.CompanyFullName as BranchName,
                                sdd2.DictionaryText as RebarTypeText,
                                sdd3.DictionaryText as MeasurementUnitText,
								case when (isnull(rms.LockCount,0)+isnull(rms.UseCount,0))-isnull(tbwork.WeightSmallPlan,0)>=0 then 0 else -1*((isnull(rms.LockCount,0)+isnull(rms.UseCount,0))-isnull(tbwork.WeightSmallPlan,0)) end as QKl
                                from (
                                select 
                                MaterialCode,
                                ProjectId,
                                SiteCode,
                                StorageCode,
                                WorkAreaCode,
                                SUM(COUNT) as COUNT,
                                SUM(LockCount) as LockCount,
                                SUM(UseCount) as UseCount
                                FROM TbRawMaterialStockRecord
                                group by MaterialCode,SiteCode,WorkAreaCode,StorageCode,ProjectId
                                )as rms
                            left join TbCompany cp1 on rms.SiteCode=cp1.CompanyCode
                            left join TbCompany cp2 on rms.WorkAreaCode=cp2.CompanyCode
                            left join TbCompany cp3 on cp2.ParentCompanyCode=cp3.CompanyCode
                            left join TbStorage c on c.StorageCode=rms.StorageCode
                            left join TbRawMaterialArchives b on b.MaterialCode=rms.MaterialCode
                            left join TbSysDictionaryData sdd2 on b.RebarType=sdd2.DictionaryCode
                            left join TbSysDictionaryData sdd3 on b.MeasurementUnit=sdd3.DictionaryCode
							left join(select od.MaterialCode,od.MaterialName,od.SpecificationModel,isnull(sum(od.WeightSmallPlan),0) as WeightSmallPlan,wo.ProjectId,cp1.ParentCompanyCode as WorkAreaCode,cp2.ParentCompanyCode as BranchCode,wo.ProcessFactoryCode from TbWorkOrder wo 
							left join TbWorkOrderDetail od on wo.OrderCode=od.OrderCode
							left join TbCompany cp1 on wo.SiteCode=cp1.CompanyCode
							left join TbCompany cp2 on cp1.ParentCompanyCode=cp2.CompanyCode
							where wo.Examinestatus='审核完成' and wo.ProcessingState='Received'
							group by od.MaterialCode,od.MaterialName,od.SpecificationModel,wo.ProjectId,cp1.ParentCompanyCode,cp2.ParentCompanyCode,wo.ProcessFactoryCode) tbwork on rms.MaterialCode=tbwork.MaterialCode and b.MaterialName=tbwork.MaterialName and b.SpecificationModel=tbwork.SpecificationModel and rms.WorkAreaCode=tbwork.WorkAreaCode
							and c.ProcessFactoryCode=tbwork.ProcessFactoryCode "                            ;
                //参数化
                List <Dos.ORM.Parameter> para = new List <Dos.ORM.Parameter>();
                var data = Repositorys <RawMaterialStockResponse> .FromSqlToPage(sql + where, para, request.rows, request.page, "MaterialCode", "desc");

                string    sqljzgj          = @"select 
                                rms.SurplusNumber
                                from (
                                select 
                                MaterialCode,
                                ProjectId,
                                SiteCode,
                                StorageCode,
                                WorkAreaCode,
                                SUM(COUNT) as COUNT,
                                SUM(LockCount) as LockCount,
                                SUM(UseCount) as UseCount,
                                case when SUM(LockCount)+SUM(UseCount)<0 then 0 else SUM(LockCount)+SUM(UseCount) end as SurplusNumber
                                FROM TbRawMaterialStockRecord
                                group by MaterialCode,SiteCode,WorkAreaCode,StorageCode,ProjectId
                                )as rms
                            left join TbCompany cp1 on rms.SiteCode=cp1.CompanyCode
                            left join TbCompany cp2 on rms.WorkAreaCode=cp2.CompanyCode
                            left join TbCompany cp3 on cp2.ParentCompanyCode=cp3.CompanyCode
                            left join TbStorage c on c.StorageCode=rms.StorageCode
                            left join TbRawMaterialArchives b on b.MaterialCode=rms.MaterialCode
                            left join TbSysDictionaryData sdd2 on b.RebarType=sdd2.DictionaryCode
                            left join TbSysDictionaryData sdd3 on b.MeasurementUnit=sdd3.DictionaryCode
							left join(select od.MaterialCode,od.MaterialName,od.SpecificationModel,isnull(sum(od.WeightSmallPlan),0) as WeightSmallPlan,wo.ProjectId,cp1.ParentCompanyCode as WorkAreaCode,cp2.ParentCompanyCode as BranchCode,wo.ProcessFactoryCode from TbWorkOrder wo 
							left join TbWorkOrderDetail od on wo.OrderCode=od.OrderCode
							left join TbCompany cp1 on wo.SiteCode=cp1.CompanyCode
							left join TbCompany cp2 on cp1.ParentCompanyCode=cp2.CompanyCode
							where wo.Examinestatus='审核完成' and wo.ProcessingState='Received'
							group by od.MaterialCode,od.MaterialName,od.SpecificationModel,wo.ProjectId,cp1.ParentCompanyCode,cp2.ParentCompanyCode,wo.ProcessFactoryCode) tbwork on rms.MaterialCode=tbwork.MaterialCode and b.MaterialName=tbwork.MaterialName and b.SpecificationModel=tbwork.SpecificationModel and rms.WorkAreaCode=tbwork.WorkAreaCode
							and c.ProcessFactoryCode=tbwork.ProcessFactoryCode "                             + where + @" and  b.RebarType='BuildingSteel'";
                decimal   BuildingSteelSum = 0;
                DataTable dtjzgj           = Db.Context.FromSql(sqljzgj).ToDataTable();
                if (dtjzgj.Rows.Count > 0)
                {
                    BuildingSteelSum = Convert.ToDecimal(dtjzgj.Compute("sum(SurplusNumber)", ""));
                }
                string    sqlxg           = @"select 
                                rms.SurplusNumber
                                from (
                                select 
                                MaterialCode,
                                ProjectId,
                                SiteCode,
                                StorageCode,
                                WorkAreaCode,
                                SUM(COUNT) as COUNT,
                                SUM(LockCount) as LockCount,
                                SUM(UseCount) as UseCount,
                                case when SUM(LockCount)+SUM(UseCount)<0 then 0 else SUM(LockCount)+SUM(UseCount) end as SurplusNumber
                                FROM TbRawMaterialStockRecord
                                group by MaterialCode,SiteCode,WorkAreaCode,StorageCode,ProjectId
                                )as rms
                            left join TbCompany cp1 on rms.SiteCode=cp1.CompanyCode
                            left join TbCompany cp2 on rms.WorkAreaCode=cp2.CompanyCode
                            left join TbCompany cp3 on cp2.ParentCompanyCode=cp3.CompanyCode
                            left join TbStorage c on c.StorageCode=rms.StorageCode
                            left join TbRawMaterialArchives b on b.MaterialCode=rms.MaterialCode
                            left join TbSysDictionaryData sdd2 on b.RebarType=sdd2.DictionaryCode
                            left join TbSysDictionaryData sdd3 on b.MeasurementUnit=sdd3.DictionaryCode
							left join(select od.MaterialCode,od.MaterialName,od.SpecificationModel,isnull(sum(od.WeightSmallPlan),0) as WeightSmallPlan,wo.ProjectId,cp1.ParentCompanyCode as WorkAreaCode,cp2.ParentCompanyCode as BranchCode,wo.ProcessFactoryCode from TbWorkOrder wo 
							left join TbWorkOrderDetail od on wo.OrderCode=od.OrderCode
							left join TbCompany cp1 on wo.SiteCode=cp1.CompanyCode
							left join TbCompany cp2 on cp1.ParentCompanyCode=cp2.CompanyCode
							where wo.Examinestatus='审核完成' and wo.ProcessingState='Received'
							group by od.MaterialCode,od.MaterialName,od.SpecificationModel,wo.ProjectId,cp1.ParentCompanyCode,cp2.ParentCompanyCode,wo.ProcessFactoryCode) tbwork on rms.MaterialCode=tbwork.MaterialCode and b.MaterialName=tbwork.MaterialName and b.SpecificationModel=tbwork.SpecificationModel and rms.WorkAreaCode=tbwork.WorkAreaCode
							and c.ProcessFactoryCode=tbwork.ProcessFactoryCode "                             + where + @" and  b.RebarType='SectionSteel'";
                decimal   SectionSteelSum = 0;
                DataTable dtxg            = Db.Context.FromSql(sqlxg).ToDataTable();
                if (dtxg.Rows.Count > 0)
                {
                    SectionSteelSum = Convert.ToDecimal(dtxg.Compute("sum(SurplusNumber)", ""));
                }
                data.userdata = new { BuildingSteel = BuildingSteelSum, SectionSteel = SectionSteelSum };
                return(data);
            }
            catch (Exception)
            {
                throw;
            }
        }