internal int ReadDetials(bool IsShowAuto, Guid ProductID, string Process, Guid StaffID, DateTime Start, DateTime End, out List <Model.ProductionManagement.AssemblyLineDetailsModel> data)
        {
            int    Count     = 0;
            string sql_Where = " Where a.DeleteMark IS NULL AND a.Date Between '" + Start.ToString("yyyy-MM-dd HH:mm:ss") + "' AND '" + End.ToString("yyyy-MM-dd HH:mm:ss") + "'  ";

            if (IsShowAuto)
            {
                sql_Where += " AND a.Remark IS NOT '自动扣半成品原料' ";
            }
            if (ProductID != new Guid())
            {
                sql_Where += " AND a.ProductID='" + ProductID + "' ";
            }
            if (StaffID != new Guid())
            {
                sql_Where += " AND a.StaffID='" + StaffID + "' ";
            }
            if (Process != "全部工序")
            {
                sql_Where += " AND a.Process='" + Process + "' ";
            }
            data = new List <Model.ProductionManagement.AssemblyLineDetailsModel>();
            string sql = " Select a.*,b.Name as StaffName,c.Name as ProductName,a.Remark "
                         + " from T_PM_ProductionSchedule a "
                         + " Left join T_UserInfo_Staff b ON a.StaffID=b.GUID "
                         + " Left join T_ProductInfo_Product c ON a.ProductID=c.GUID "
                         + sql_Where
                         + " Order by a.Date DESC";
            DataSet ds = new DataSet();

            new Helper.SQLite.DBHelper().QueryData(sql, out ds);
            int id = 1;

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                Model.ProductionManagement.AssemblyLineDetailsModel d = new Model.ProductionManagement.AssemblyLineDetailsModel();
                d.Guid        = (Guid)dr["GUID"];
                d.Id          = id++;
                d.StaffID     = (Guid)dr["GUID"];
                d.Date        = Convert.ToDateTime(dr["Date"].ToString()).ToString("yyyy-MM-dd HH:mm:ss");
                d.StaffName   = dr["StaffName"].ToString();
                d.ProductID   = (Guid)dr["GUID"];
                d.ProductName = dr["ProductName"].ToString();
                d.Process     = dr["Process"].ToString();
                d.Quantity    = int.Parse(dr["Number"].ToString());
                int Break = 0;
                int.TryParse(dr["Break"].ToString(), out Break);
                d.BreakNum = Break;
                d.Remark   = dr["Remark"].ToString();
                Count     += d.Quantity;
                data.Add(d);
            }
            return(Count);
        }
示例#2
0
 private void MenuItem__Del_Click(object sender, RoutedEventArgs e)
 {
     if (this.DataGrid_Detials.SelectedCells.Count > 0)
     {
         Model.ProductionManagement.AssemblyLineDetailsModel d = this.DataGrid_Detials.SelectedCells[0].Item as Model.ProductionManagement.AssemblyLineDetailsModel;
         if (MessageBox.Show("确认删除生产记录?这是危险操作,可能导致数据混乱\n序号\t" + d.Id + "\n日期\t" + d.Date + "\n产品\t" + d.ProductName + "\n工序\t" + d.Process + "\n数量\t" + d.Quantity, "警告", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
         {
             if (new ViewModel.ProductionManagement.AssemblyLineDetailsConsole().DeleteDetails(d.Guid))
             {
                 InitializeDataGrid();
                 Helper.Events.ProductionManagement_AssemblyLineEvent.OnUpdateDataGrid();
             }
         }
     }
 }