You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

253 lines
8.1 KiB
C#

2 months ago

using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
using SlnMesnac.RfidUpload.Business;
using SlnMesnac.RfidUpload.Common;
using SlnMesnac.RfidUpload.Model;
using SlnMesnac.RfidUpload.Model.apiParam;
using SlnMesnac.RfidUpload.Model.config;
using SlnMesnac.RfidUpload.TouchSocket;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.ServiceModel.Channels;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using static SlnMesnac.RfidUpload.UI.SelectRouterWindow;
2 months ago
#region << 版 本 注 释 >>
/*--------------------------------------------------------------------
* (c) 2024 WenJY
* CLR4.0.30319.42000
* T14-GEN3-7895
* SlnMesnac.RfidUpload.UI.viewModel
* 81e29764-73f1-4de5-bd78-56b96ca165ba
*
* WenJY
*
* 2024-12-06 9:50:16
* V1.0.0
*
*
*--------------------------------------------------------------------
*
*
*
*
* V1.0.0
*--------------------------------------------------------------------*/
#endregion << 版 本 注 释 >>
namespace SlnMesnac.RfidUpload.UI.viewModel
{
public partial class TransferOrderViewModel : ObservableObject
{
#region 委托事件
/// <summary>
/// model-新容器入库-调拨单号验证状态成功1失败-1
/// model-容器封发-验证封发计划接口状态成功2失败-1
/// dbdh-调拨单号
/// status- 1-正常
/// </summary>
/// <param name="status"></param>
/// <param name="dbdh"></param>
public delegate void RefreshSubmitVerifyDelegate(int model, string msg, TransferOrderInfo transferOrderInfo = null);
2 months ago
public static event RefreshSubmitVerifyDelegate RefreshSubmitVerifyEvent;
#endregion
public delegate void Success();
public event Success SuccessEvent;
2 months ago
private CsbHandleBusiness csbHandleBusiness = CsbHandleBusiness.Instance;
public string _FFPlan = string.Empty;
public string FFPlan
{
get => _FFPlan;
set => SetProperty(ref _FFPlan, value);
}
public string _drj = string.Empty;
public string DRJ
{
get => _drj;
set => SetProperty(ref _drj, value);
}
private DateTime? _startDate;
public DateTime? StartDate
{
get => _startDate;
set
{
_startDate = value;
OnPropertyChanged(nameof(StartDate));
}
}
private DateTime? _endDate;
public DateTime? EndDate
{
get => _endDate;
set
{
_endDate = value;
OnPropertyChanged(nameof(EndDate));
}
}
private ObservableCollection<TransferOrderInfo> _transferOrderInfoItems = new ObservableCollection<TransferOrderInfo>();
public ObservableCollection<TransferOrderInfo> TransferOrderInfoItems
{
get => _transferOrderInfoItems;
set => SetProperty(ref _transferOrderInfoItems, value);
}
[RelayCommand]
private void Query()
{
var info = _FFPlan;
var info2 = _drj;
var info3 = _startDate;
var info4 = _endDate;
}
private AppConfig appConfig = AppConfig.Instance;
private WebApiClientApp webApiClientApp = WebApiClientApp.Instance;
private static INIFile iNIFile = new INIFile(System.Environment.CurrentDirectory + "/App.InI");
[RelayCommand]
private void GetTransferOrder()
{
if (_startDate == null || _endDate == null)
{
MessageBox.Show("请选择开始日期或者结束日期");
return;
}else if (_startDate > _endDate)
{
MessageBox.Show("开始日期不能大于结束日期");
return;
}
#region 正式启用
//CsbResult res = csbHandleBusiness.transferOrderFfjhByCsb(_drj, _startDate.Value.ToString(), _endDate.Value.ToString());
//MessageBox.Show(res.message);
//if (res.code == "200")
2 months ago
//{
// if (res.@object != null && res.@object.Count > 0)
2 months ago
// {
// List<TransferOrderInfo> institutionList = res.@object.ConvertAll(item => JsonConvert.DeserializeObject<TransferOrderInfo>(item.ToString()));
// TransferOrderInfoItems = new ObservableCollection<TransferOrderInfo>(institutionList);
2 months ago
// }
//}
#endregion
2 months ago
#region 测试
result res = new result()
{
status = "1",
msg = "测试",
@object = new List<TransferOrderInfo>()
{
new TransferOrderInfo()
{
dbdh = "123",
jsdw = "123",
ffjhNo = "jh123",
ffjhscrq = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
},
new TransferOrderInfo()
{
dbdh = "324",
jsdw = "456",
ffjhNo = "jh456",
ffjhscrq = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
}
}
};
if (res.@object != null)
{
TransferOrderInfoItems = new ObservableCollection<TransferOrderInfo>(res.@object);
}
#endregion
2 months ago
}
/// <summary>
/// 执行分发 容器封发-验证封发计划
2 months ago
/// </summary>
/// <param name="transferOrderInfo"></param>
[RelayCommand]
private void Execute(TransferOrderInfo transferOrderInfo)
{
#region 正式启用
CsbResult res = csbHandleBusiness.transferOrderFfjhCheckByCsb(transferOrderInfo.ffjhNo, transferOrderInfo.ffjhscrq);
if (res.code== "200")
2 months ago
{ //封发计划正常可封发
MessageBox.Show($"验证调拨单结果,status:{res.code};msg:{res.message};");
2 months ago
SuccessEvent?.Invoke();
RefreshSubmitVerifyEvent?.Invoke(2, res.message,transferOrderInfo);
2 months ago
}
else
{
MessageBox.Show(res.message);
2 months ago
return;
}
#endregion
//JObject jsonObject = new JObject
//{
// ["code"] = 104,
// ["requestURL"] = appConfig.requestURL,
// ["sysCode"] = appConfig.sysCode,
// ["password"] = appConfig.password,
// ["ak"] = appConfig.ak,
// ["sk"] = appConfig.sk,
// ["TdjStockTransferOrderffjhCheckQuery"] = new JObject
// {
// ["opOrgCode"] = iNIFile.IniReadValue("BatchOpenQuery", "opOrgCode"),
// ["devicedId"] = iNIFile.IniReadValue("BatchOpenQuery", "devicedId"),
// ["ffjhNo"] = info.ffjhNo,
// ["ffjhscrq"] = info.ffjhscrq,
// }
//};
//string jsonString = jsonObject.ToString();
//var str = webApiClientApp.UploadAsync(jsonString);
//result res = JsonConvert.DeserializeObject<result>(str);
//result res = new result()
//{
// status = "0",
// msg = "1"
//};
//MessageBox.Show($"验证调拨单结果,status:{res.status};msg:{res.msg};");
//if(res.status == "0")
//{
// SuccessEvent?.Invoke();
// RefreshTransferOrderInfoEvent?.Invoke(info);
//}
}
}
}
class result
{
public string status { get; set; }
public string msg { get; set; }
public List<TransferOrderInfo> @object { get; set; }
}