You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
240 lines
7.9 KiB
240 lines
7.9 KiB
using BBWY.Client.APIServices;
|
|
using BBWY.Client.Models.APIModel.Request;
|
|
using BBWY.Client.Models.APIModel.Response.PackTask;
|
|
using BBWY.Client.ViewModels;
|
|
using BBWY.Client.Views.PackTask;
|
|
using BBWY.Common.Models;
|
|
using GalaSoft.MvvmLight.Command;
|
|
using HandyControl.Controls;
|
|
using NPOI.Util;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Collections.ObjectModel;
|
|
using System.Linq;
|
|
using System.Resources;
|
|
using System.Text;
|
|
using System.Windows;
|
|
using System.Windows.Input;
|
|
using System.Windows.Media.TextFormatting;
|
|
|
|
namespace BBWY.Client.Models.PackTask
|
|
{
|
|
public class ConsumableModel : BaseVM, IDenpendency
|
|
{
|
|
public ObservableCollection<GetConsumableTypeResponse> consumableTypeList = new ObservableCollection<GetConsumableTypeResponse>()
|
|
{
|
|
|
|
};
|
|
public ObservableCollection<GetConsumableTypeResponse> ConsumableTypeList { get => consumableTypeList; set { Set(ref consumableTypeList, value); } }
|
|
|
|
private string consumableTypeName;
|
|
public string ConsumableTypeName
|
|
{ get => consumableTypeName; set { Set(ref consumableTypeName, value); } }
|
|
|
|
|
|
private string addConsumableTypeName;
|
|
public string AddConsumableTypeName
|
|
{ get => addConsumableTypeName; set { Set(ref addConsumableTypeName, value); } }
|
|
|
|
|
|
|
|
public ConsumableService consumableService;
|
|
public ICommand EditConsumableCommand { get; set; }
|
|
public ICommand DeletedConsumableCommand { get; set; }
|
|
public ICommand SaveConsumableCommand { get; set; }
|
|
public ICommand AddConsumableTypeCommand { get; set; }
|
|
public ICommand DeletedConsumableTypeCommand { get; set; }
|
|
|
|
public Action ReflashDatas { get; set; }
|
|
|
|
public ConsumableModel(ConsumableService consumableService)
|
|
{
|
|
this.consumableService = consumableService;
|
|
EditConsumableCommand = new RelayCommand(EditConsumable);
|
|
|
|
DeletedConsumableCommand = new RelayCommand<ObservableCollection<ConsumableModel>>(DeletedConsumable);
|
|
SaveConsumableCommand = new RelayCommand<object>(SaveConsumable);
|
|
if (consumableService != null)
|
|
{
|
|
GetConsumableTypeList();
|
|
}
|
|
AddConsumableTypeCommand = new RelayCommand(AddConsumableType);
|
|
DeletedConsumableTypeCommand = new RelayCommand(DeletedConsumableType);
|
|
}
|
|
|
|
private void DeletedConsumableType()
|
|
{
|
|
MessageBoxResult result = System.Windows.MessageBox.Show($"是否移除耗材类别:{ConsumableTypeName}?", "提示",
|
|
MessageBoxButton.YesNo,
|
|
MessageBoxImage.Warning);
|
|
if (result != MessageBoxResult.Yes) return;
|
|
|
|
var res = consumableService.DeletedConsumableType(ConsumableTypeId.Value);
|
|
if (!res.Success)
|
|
{
|
|
System.Windows.MessageBox.Show(res.Msg);
|
|
return;
|
|
}
|
|
if (res.Success)
|
|
{
|
|
GetConsumableTypeList();
|
|
}
|
|
}
|
|
|
|
private void AddConsumableType()
|
|
{
|
|
var res = consumableService.AddConsumableType(AddConsumableTypeName);
|
|
if (!res.Success)
|
|
{
|
|
System.Windows.MessageBox.Show(res.Msg);
|
|
return;
|
|
}
|
|
if (res.Success)
|
|
{
|
|
GetConsumableTypeList();
|
|
}
|
|
}
|
|
|
|
private long? consumableTypeId;
|
|
public long? ConsumableTypeId
|
|
{ get => consumableTypeId; set { Set(ref consumableTypeId, value); } }
|
|
|
|
|
|
public void SaveConsumable(object obj)
|
|
{
|
|
if (string.IsNullOrEmpty(Name))
|
|
{
|
|
new TipsWindow("耗材品名不能为空!").Show();
|
|
return;
|
|
}
|
|
|
|
if (this.Price == null)
|
|
{
|
|
new TipsWindow("价格不能为空!").Show();
|
|
return;
|
|
}
|
|
ApiResponse<object> res = null;
|
|
if (Id > 0)//修改
|
|
{
|
|
res = consumableService.Edit(new ConsuableRequest
|
|
{
|
|
Id = Id,
|
|
Heigth = Heigth,
|
|
Length = Length,
|
|
Name = Name,
|
|
Price = Price.Value,
|
|
Remark = Remark,
|
|
Weigth = Weigth,
|
|
Width = Width,
|
|
ConsumableTypeId = ConsumableTypeId,
|
|
|
|
});
|
|
|
|
}
|
|
else
|
|
{
|
|
res = consumableService.Add(new ConsuableRequest
|
|
{
|
|
|
|
Heigth = Heigth,
|
|
Length = Length,
|
|
Name = Name,
|
|
Price = Price.Value,
|
|
Remark = Remark,
|
|
Weigth = Weigth,
|
|
Width = Width,
|
|
ConsumableTypeId = ConsumableTypeId,
|
|
});
|
|
|
|
}
|
|
|
|
if (res != null && res.Success)
|
|
{
|
|
var win = obj as System.Windows.Window;
|
|
|
|
ViewModelLocator viewModel = new ViewModelLocator();
|
|
var con = viewModel.Consumable;
|
|
con.SearchConsumable();
|
|
//if (ReflashDatas != null) ReflashDatas();
|
|
win.Close();
|
|
}
|
|
else
|
|
{
|
|
if (res != null)
|
|
new TipsWindow(res.Msg).Show();
|
|
}
|
|
}
|
|
|
|
public void DeletedConsumable(ObservableCollection<ConsumableModel> list)
|
|
{
|
|
MessageBoxResult result = System.Windows.MessageBox.Show("是否删除?", "提示",
|
|
MessageBoxButton.YesNo,
|
|
MessageBoxImage.Warning);
|
|
if (result != MessageBoxResult.Yes) return;
|
|
|
|
var res = consumableService.Deleted(Id);
|
|
if (res.Success)
|
|
{
|
|
ViewModelLocator viewModel = new ViewModelLocator();
|
|
var con = viewModel.Consumable;
|
|
con.SearchConsumable();
|
|
list.Remove(this);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
void GetConsumableTypeList()
|
|
{
|
|
var res = consumableService.GetConsumableTypeList();
|
|
if (res.Success && res.Data != null)
|
|
{
|
|
ConsumableTypeList = res.Data;
|
|
|
|
}
|
|
}
|
|
|
|
|
|
public void EditConsumable()
|
|
{
|
|
//GetConsumableTypeList();
|
|
EditConsumable add = new EditConsumable(new ConsumableModel(consumableService)
|
|
{
|
|
Heigth = this.Heigth,
|
|
Length = this.Length,
|
|
Id = this.Id,
|
|
Name = this.Name,
|
|
Weigth = this.Weigth,
|
|
Remark = this.Remark,
|
|
Width = this.Width,
|
|
Price = this.Price,
|
|
ConsumableTypeList = this.ConsumableTypeList,
|
|
ConsumableTypeName = this.ConsumableTypeName,
|
|
ConsumableTypeId = this.ConsumableTypeId,
|
|
|
|
});
|
|
|
|
add.ShowDialog();
|
|
|
|
}
|
|
|
|
private long id;
|
|
public long Id { get => id; set { Set(ref id, value); } }
|
|
private string name;
|
|
public string Name { get => name; set { Set(ref name, value); } }
|
|
private decimal? price;
|
|
public decimal? Price { get => price; set { Set(ref price, value); } }
|
|
private double? weigth;
|
|
public double? Weigth { get => weigth; set { Set(ref weigth, value); } }
|
|
private double? length;
|
|
public double? Length { get => length; set { Set(ref length, value); } }
|
|
private double? width;
|
|
public double? Width { get => width; set { Set(ref width, value); } }
|
|
private double? heigth;
|
|
public double? Heigth { get => heigth; set { Set(ref heigth, value); } }
|
|
private string remark;
|
|
public string Remark { get => remark; set { Set(ref remark, value); } }
|
|
|
|
|
|
}
|
|
}
|
|
|