refactoring

This commit is contained in:
2016-10-07 12:49:24 +02:00
parent 5790ac3ab8
commit e385af9f95
7 changed files with 60 additions and 21 deletions

View File

@ -34,16 +34,16 @@ namespace Yavsc.Controllers
/// <param name="maxId">returned Ids must be lower than this value</param> /// <param name="maxId">returned Ids must be lower than this value</param>
/// <returns>book queries</returns> /// <returns>book queries</returns>
[HttpGet] [HttpGet]
public IEnumerable<BookQueryProviderView> GetCommands(long maxId=long.MaxValue) public IEnumerable<BookQueryProviderInfo> GetCommands(long maxId=long.MaxValue)
{ {
var uid = User.GetUserId(); var uid = User.GetUserId();
var now = DateTime.Now; var now = DateTime.Now;
var result = _context.Commands.Include(c => c.Location). var result = _context.Commands.Include(c => c.Location).
Include(c => c.Client).Where(c => c.PerformerId == uid && c.Id < maxId && c.EventDate > now). Include(c => c.Client).Where(c => c.PerformerId == uid && c.Id < maxId && c.EventDate > now).
Select(c => new BookQueryProviderView Select(c => new BookQueryProviderInfo
{ {
Client = new ClientProviderView { UserName = c.Client.UserName, UserId = c.ClientId }, Client = new ClientProviderInfo { UserName = c.Client.UserName, UserId = c.ClientId },
Location = c.Location, Location = c.Location,
EventDate = c.EventDate, EventDate = c.EventDate,
Id = c.Id, Id = c.Id,

View File

@ -12,7 +12,7 @@ namespace Yavsc.Helpers
{ {
var yaev = new BookQueryEvent var yaev = new BookQueryEvent
{ {
Client = new ClientProviderView { UserName = query.Client.UserName , UserId = query.ClientId } , Client = new ClientProviderInfo { UserName = query.Client.UserName , UserId = query.ClientId } ,
Previsional = query.Previsional, Previsional = query.Previsional,
EventDate = query.EventDate, EventDate = query.EventDate,
Location = query.Location, Location = query.Location,

View File

@ -0,0 +1,14 @@
using System;
using Yavsc.Model;
namespace Yavsc.Interfaces
{
public interface IBookQueryData
{
ClientProviderInfo Client { get; set; }
DateTime EventDate { get; set; }
long Id { get; set; }
Location Location { get; set; }
decimal? Previsionnal { get; set; }
}
}

View File

@ -0,0 +1,19 @@
namespace Yavsc.Interfaces
{
using System.Collections.Generic;
using Yavsc.Models.Billing;
public interface IEstimate
{
List<string> AttachedFiles { get; set; }
List<string> AttachedGraphics { get; }
List<CommandLine> Bill { get; set; }
string ClientId { get; set; }
long? CommandId { get; set; }
string CommandType { get; set; }
string Description { get; set; }
long Id { get; set; }
string OwnerId { get; set; }
int? Status { get; set; }
string Title { get; set; }
}
}

View File

@ -1,13 +1,12 @@
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using Yavsc.Models.Booking;
namespace Yavsc.Models.Billing namespace Yavsc.Models.Billing
{ {
public partial class Estimate using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using Yavsc.Interfaces;
using Yavsc.Models.Booking;
public partial class Estimate : IEstimate
{ {
[Key(), DatabaseGenerated(DatabaseGeneratedOption.Identity)] [Key(), DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public long Id { get; set; } public long Id { get; set; }
@ -20,7 +19,7 @@ namespace Yavsc.Models.Billing
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[ForeignKey("CommandId")] [ForeignKey("CommandId")]
public BookQuery Query { get; set; } public BookQuery Query { get; set; }
public string Description { get; set; } public string Description { get; set; }
public int? Status { get; set; } public int? Status { get; set; }
public string Title { get; set; } public string Title { get; set; }
@ -35,9 +34,10 @@ namespace Yavsc.Models.Billing
[NotMapped] [NotMapped]
public List<string> AttachedGraphics { get; set; } public List<string> AttachedGraphics { get; set; }
public string AttachedGraphicsString { public string AttachedGraphicsString
{
get { return string.Join(":", AttachedGraphics); } get { return string.Join(":", AttachedGraphics); }
set { AttachedGraphics = value.Split(':').ToList(); } set { AttachedGraphics = value.Split(':').ToList(); }
} }
/// <summary> /// <summary>
/// List of attached files /// List of attached files
@ -48,9 +48,10 @@ namespace Yavsc.Models.Billing
/// <returns></returns> /// <returns></returns>
[NotMapped] [NotMapped]
public List<string> AttachedFiles { get; set; } public List<string> AttachedFiles { get; set; }
public string AttachedFilesString { public string AttachedFilesString
{
get { return string.Join(":", AttachedFiles); } get { return string.Join(":", AttachedFiles); }
set { AttachedFiles = value.Split(':').ToList(); } set { AttachedFiles = value.Split(':').ToList(); }
} }
[Required] [Required]
@ -58,5 +59,10 @@ namespace Yavsc.Models.Billing
[Required] [Required]
public string ClientId { get; set; } public string ClientId { get; set; }
public string CommandType
{
get; set;
}
} }
} }

View File

@ -24,7 +24,7 @@ using Yavsc.Model;
// You should have received a copy of the GNU Lesser General Public License // You should have received a copy of the GNU Lesser General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>. // along with this program. If not, see <http://www.gnu.org/licenses/>.
public class BookQueryEvent: BookQueryProviderView, IEvent public class BookQueryEvent: BookQueryProviderInfo, IEvent
{ {
public BookQueryEvent() public BookQueryEvent()
{ {

View File

@ -3,8 +3,8 @@ using System;
namespace Yavsc.Model namespace Yavsc.Model
{ {
public class BookQueryProviderView {  public class BookQueryProviderInfo { 
public ClientProviderView Client { get; set; } public ClientProviderInfo Client { get; set; }
public Location Location { get; set; } public Location Location { get; set; }
public long Id { get; set; } public long Id { get; set; }
@ -12,7 +12,7 @@ public class BookQueryProviderView { 
public DateTime EventDate { get ; set; } public DateTime EventDate { get ; set; }
public decimal? Previsional { get; set; } public decimal? Previsional { get; set; }
} }
public class ClientProviderView {  public class ClientProviderInfo { 
public string UserName { get; set; } public string UserName { get; set; }
public string UserId { get; set; } public string UserId { get; set; }
public int Rate { get; set; } public int Rate { get; set; }