新增右键功能(展示当前设备当前年度所有计划的列表信息,提供按钮进行保养、查看、打印

This commit is contained in:
clovejunti 2024-05-29 04:26:03 +08:00
parent c15e3ea164
commit b15013e009
56 changed files with 22685 additions and 45 deletions

View File

@ -227,5 +227,29 @@ namespace DeviceRepair.Api.Controllers
}
return apiResponseData;
}
/// <summary>
/// 获取设备在年度的全部保养信息
/// </summary>
/// <param name="EquipmentAutoID"></param>
/// <param name="Year"></param>
/// <returns></returns>
[HttpGet]
[HttpAuthorize]
[Route("GetDeviceInformationPlans")]
public APIResponseData GetDeviceInformationPlans(int EquipmentAutoID,int Year)
{
APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" };
try
{
return PlanAccess.Instance.GetDeviceInformationPlans(EquipmentAutoID, Year);
}
catch (Exception ex)
{
apiResponseData.Code = -1;
apiResponseData.Message = ex.Message.ToString();
}
return apiResponseData;
}
}
}

View File

@ -1,5 +1,6 @@
using DeviceRepair.Models;
using DeviceRepair.Models.Common;
using DeviceRepair.Models.Device;
using DeviceRepair.Models.Enum;
using DeviceRepair.Models.Plan;
using SqlSugar;
@ -555,5 +556,63 @@ namespace DeviceRepair.DataAccess
}
return apiResponseData;
}
/// <summary>
/// 获取设备在年度的全部保养信息
/// </summary>
/// <param name="EquipmentAutoID"></param>
/// <param name="Year"></param>
/// <returns></returns>
public APIResponseData GetDeviceInformationPlans(int EquipmentAutoID, int Year)
{
APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" };
if (EquipmentAutoID <= 0 || Year <= 0)
return new APIResponseData { Code = -1, Message = "传入的设备编号或年份参数出错!" };
try
{
db.ChangeDatabase("main");
// 获取设备计划信息
DeviceInformationInfo Dev = db.Queryable<DeviceInformationInfo>().First(x => x.AutoID == EquipmentAutoID);
if (Dev == null)
throw new Exception($"编号为:{EquipmentAutoID} 的设备不存在!");
// 获取计划信息
List<DriveMaintencePlanInfo> plans = db.Queryable<DriveMaintencePlanInfo>().Where(x => x.EquipmentID == EquipmentAutoID && x.MaintenanceYear == Year && SqlFunc.HasValue(x.MaintenanceType)).ToList();
if ((plans?.Count ?? 0) == 0)
throw new Exception($"编号为:{EquipmentAutoID} 的设备计划为空!");
int[] pIds = plans.Select(x => x.AutoID).ToArray();
// 获取保养的记录信息
List<MaintenanceRecordInfo> records = db.Queryable<MaintenanceRecordInfo>().Where(x => x.EquipmentPrimaryID == EquipmentAutoID && SqlFunc.ContainsArray(pIds, x.PlanPrimaryID)).ToList();
DeviceAnnPlanView devs = new DeviceAnnPlanView
{
Dev = Dev,
Plans = plans,
Records = records
};
if (Dev.MaintenanceFormVersion != 0)
devs.CurrentFormCode = db.Queryable<MaintenanceFormVersionInfo>().First(x => x.AutoID == Dev.MaintenanceFormVersion)?.VersionCode;
apiResponseData.Code = 1;
apiResponseData.Message = "";
apiResponseData.Data = devs;
}
catch (SqlSugarException e)
{
apiResponseData.Code = -1;
apiResponseData.Message = e.Message;
}
catch (Exception ex)
{
apiResponseData.Code = -1;
apiResponseData.Message = ex.Message;
}
return apiResponseData;
}
}
}

View File

@ -0,0 +1,15 @@
using System.Collections.Generic;
namespace DeviceRepair.Models.Device
{
public class DeviceAnnPlanView
{
public DeviceInformationInfo Dev { get; set; }
public List<DriveMaintencePlanInfo> Plans { get; set; }
public List<MaintenanceRecordInfo> Records { get; set; }
public string CurrentFormCode { get; set; }
}
}

View File

@ -67,6 +67,7 @@
<Compile Include="DeviceRepair\DeviceWarrantyRequestMaintaionInfo.cs" />
<Compile Include="DeviceRepair\View\DeviceWarrantyRequestFormView.cs" />
<Compile Include="DeviceRepair\View\DeviceWarrantyRequestMaintaionView.cs" />
<Compile Include="Device\DeviceAnnPlanView.cs" />
<Compile Include="Device\DeviceInformationInfo.cs" />
<Compile Include="Device\DeviceInformationInfoTree.cs" />
<Compile Include="Device\DeviceRouteInfo.cs" />

View File

@ -68,6 +68,11 @@ namespace DeviceRepair.Models
public virtual string Remarks { get; set; }
[SugarColumn(IsIgnore = true)]
public string EquipmentDisplayID { get; set; }
[SugarColumn(IsIgnore = true)]
public string FormDisplayCode { get; set; }
#endregion

BIN
DeviceRepairAndOptimization.sln (Stored with Git LFS)

Binary file not shown.

View File

@ -347,5 +347,42 @@ namespace DeviceRepairAndOptimization.Biz
throw ex;
}
}
/// <summary>
/// 获取设备在年度的全部保养信息
/// </summary>
/// <param name="Year"></param>
/// <param name="EquipmentAutoID"></param>
/// <returns></returns>
public APIResponseData GetDeviceInformationPlans(int Year, int EquipmentAutoID)
{
APIResponseData apiResponseData = null;
try
{
switch (DeviceRepair.Utils.Config.Configurations.Properties.ConnType?.ToLower())
{
case "api":
apiResponseData = ApiHelper.Instance.SendMessage(
new HttpItem
{
URL = $"{ServiceRouteConstValue.GetDeviceInformationPlans}?Year={Year}&EquipmentAutoID={EquipmentAutoID}",
Method = "Get",
ContentType = "application/json; charset=utf-8",
Postdata = JsonConvert.SerializeObject(new { Year, EquipmentAutoID })
}
);
break;
default:
apiResponseData = PlanAccess.Instance.GetDeviceInformationPlans(EquipmentAutoID, Year);
break;
}
return apiResponseData;
}
catch (Exception ex)
{
throw ex;
}
}
}
}

View File

@ -483,6 +483,12 @@
<Compile Include="Pages\page_XtraFormLog.Designer.cs">
<DependentUpon>page_XtraFormLog.cs</DependentUpon>
</Compile>
<Compile Include="Pages\Plan\pageDevicePlans.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Pages\Plan\pageDevicePlans.Designer.cs">
<DependentUpon>pageDevicePlans.cs</DependentUpon>
</Compile>
<Compile Include="Pages\Plan\page_PlanEdit.cs">
<SubType>Form</SubType>
</Compile>
@ -685,6 +691,9 @@
<EmbeddedResource Include="Pages\page_XtraFormLog.resx">
<DependentUpon>page_XtraFormLog.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Pages\Plan\pageDevicePlans.resx">
<DependentUpon>pageDevicePlans.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Pages\Plan\page_PlanEdit.resx">
<DependentUpon>page_PlanEdit.cs</DependentUpon>
</EmbeddedResource>

View File

@ -74,7 +74,7 @@
this.tableLayoutPanel1.RowCount = 2;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 48F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(1598, 999);
this.tableLayoutPanel1.Size = new System.Drawing.Size(1192, 983);
this.tableLayoutPanel1.TabIndex = 0;
//
// gridControl1
@ -83,7 +83,7 @@
this.gridControl1.Location = new System.Drawing.Point(3, 51);
this.gridControl1.MainView = this.gridView1;
this.gridControl1.Name = "gridControl1";
this.gridControl1.Size = new System.Drawing.Size(1592, 945);
this.gridControl1.Size = new System.Drawing.Size(1186, 929);
this.gridControl1.TabIndex = 1;
this.gridControl1.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.gridView1});
@ -223,7 +223,7 @@
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
this.tableLayoutPanel2.Size = new System.Drawing.Size(1598, 48);
this.tableLayoutPanel2.Size = new System.Drawing.Size(1192, 48);
this.tableLayoutPanel2.TabIndex = 2;
//
// stackPanel1
@ -234,7 +234,7 @@
this.stackPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.stackPanel1.LabelVertAlignment = DevExpress.Utils.Layout.LabelVertAlignment.Center;
this.stackPanel1.LayoutDirection = DevExpress.Utils.Layout.StackPanelLayoutDirection.RightToLeft;
this.stackPanel1.Location = new System.Drawing.Point(1148, 0);
this.stackPanel1.Location = new System.Drawing.Point(742, 0);
this.stackPanel1.Margin = new System.Windows.Forms.Padding(0);
this.stackPanel1.Name = "stackPanel1";
this.stackPanel1.Size = new System.Drawing.Size(450, 48);
@ -275,7 +275,7 @@
this.stackPanel2.Location = new System.Drawing.Point(0, 0);
this.stackPanel2.Margin = new System.Windows.Forms.Padding(0);
this.stackPanel2.Name = "stackPanel2";
this.stackPanel2.Size = new System.Drawing.Size(1148, 48);
this.stackPanel2.Size = new System.Drawing.Size(742, 48);
this.stackPanel2.TabIndex = 1;
//
// btn_DriveMaintenanceEdit
@ -343,7 +343,7 @@
// page_MaintenanceView
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.ClientSize = new System.Drawing.Size(1598, 999);
this.ClientSize = new System.Drawing.Size(1192, 983);
this.Controls.Add(this.tableLayoutPanel1);
this.Name = "page_MaintenanceView";
this.Text = "page_MaintenanceView";

View File

@ -0,0 +1,198 @@
namespace DeviceRepairAndOptimization.Pages.Plan
{
partial class pageDevicePlans
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
DevExpress.XtraEditors.Controls.EditorButtonImageOptions editorButtonImageOptions1 = new DevExpress.XtraEditors.Controls.EditorButtonImageOptions();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(pageDevicePlans));
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject1 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject2 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject3 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject4 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.XtraEditors.Controls.EditorButtonImageOptions editorButtonImageOptions2 = new DevExpress.XtraEditors.Controls.EditorButtonImageOptions();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject5 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject6 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject7 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject8 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.XtraEditors.Controls.EditorButtonImageOptions editorButtonImageOptions3 = new DevExpress.XtraEditors.Controls.EditorButtonImageOptions();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject9 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject10 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject11 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject12 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.XtraEditors.Controls.EditorButtonImageOptions editorButtonImageOptions4 = new DevExpress.XtraEditors.Controls.EditorButtonImageOptions();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject13 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject14 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject15 = new DevExpress.Utils.SerializableAppearanceObject();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject16 = new DevExpress.Utils.SerializableAppearanceObject();
this.gridControl1 = new DevExpress.XtraGrid.GridControl();
this.gridView1 = new DevExpress.XtraGrid.Views.Grid.GridView();
this.gcEquipmentID = new DevExpress.XtraGrid.Columns.GridColumn();
this.gcMonth = new DevExpress.XtraGrid.Columns.GridColumn();
this.gcMaintenanceType = new DevExpress.XtraGrid.Columns.GridColumn();
this.gcFormVersionCode = new DevExpress.XtraGrid.Columns.GridColumn();
this.gcCompleteDate = new DevExpress.XtraGrid.Columns.GridColumn();
this.gcOperation = new DevExpress.XtraGrid.Columns.GridColumn();
this.repositoryItemButtonEdit1 = new DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit();
((System.ComponentModel.ISupportInitialize)(this.gridControl1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gridView1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemButtonEdit1)).BeginInit();
this.SuspendLayout();
//
// gridControl1
//
this.gridControl1.Dock = System.Windows.Forms.DockStyle.Fill;
this.gridControl1.Location = new System.Drawing.Point(0, 0);
this.gridControl1.MainView = this.gridView1;
this.gridControl1.Name = "gridControl1";
this.gridControl1.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
this.repositoryItemButtonEdit1});
this.gridControl1.Size = new System.Drawing.Size(693, 384);
this.gridControl1.TabIndex = 0;
this.gridControl1.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.gridView1});
//
// gridView1
//
this.gridView1.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.gcEquipmentID,
this.gcMonth,
this.gcMaintenanceType,
this.gcFormVersionCode,
this.gcCompleteDate,
this.gcOperation});
this.gridView1.GridControl = this.gridControl1;
this.gridView1.Name = "gridView1";
this.gridView1.OptionsView.ShowGroupPanel = false;
//
// gcEquipmentID
//
this.gcEquipmentID.Caption = "设备编号";
this.gcEquipmentID.FieldName = "EquipmentDisplayID";
this.gcEquipmentID.Name = "gcEquipmentID";
this.gcEquipmentID.OptionsColumn.AllowEdit = false;
this.gcEquipmentID.ToolTip = "设备编号";
this.gcEquipmentID.Visible = true;
this.gcEquipmentID.VisibleIndex = 0;
//
// gcMonth
//
this.gcMonth.Caption = "月份";
this.gcMonth.FieldName = "MaintenanceMonth";
this.gcMonth.Name = "gcMonth";
this.gcMonth.OptionsColumn.AllowEdit = false;
this.gcMonth.ToolTip = "月份";
this.gcMonth.Visible = true;
this.gcMonth.VisibleIndex = 1;
//
// gcMaintenanceType
//
this.gcMaintenanceType.Caption = "保养类型";
this.gcMaintenanceType.FieldName = "MaintenanceType";
this.gcMaintenanceType.Name = "gcMaintenanceType";
this.gcMaintenanceType.OptionsColumn.AllowEdit = false;
this.gcMaintenanceType.ToolTip = "保养类型";
this.gcMaintenanceType.Visible = true;
this.gcMaintenanceType.VisibleIndex = 2;
//
// gcFormVersionCode
//
this.gcFormVersionCode.Caption = "点检表编号";
this.gcFormVersionCode.FieldName = "FormDisplayCode";
this.gcFormVersionCode.Name = "gcFormVersionCode";
this.gcFormVersionCode.OptionsColumn.AllowEdit = false;
this.gcFormVersionCode.ToolTip = "点检表编号";
this.gcFormVersionCode.Visible = true;
this.gcFormVersionCode.VisibleIndex = 3;
//
// gcCompleteDate
//
this.gcCompleteDate.Caption = "完成时间";
this.gcCompleteDate.FieldName = "CompleteDate";
this.gcCompleteDate.Name = "gcCompleteDate";
this.gcCompleteDate.OptionsColumn.AllowEdit = false;
this.gcCompleteDate.ToolTip = "完成时间";
this.gcCompleteDate.Visible = true;
this.gcCompleteDate.VisibleIndex = 4;
//
// gcOperation
//
this.gcOperation.Caption = "操作";
this.gcOperation.ColumnEdit = this.repositoryItemButtonEdit1;
this.gcOperation.Name = "gcOperation";
this.gcOperation.Visible = true;
this.gcOperation.VisibleIndex = 5;
//
// repositoryItemButtonEdit1
//
this.repositoryItemButtonEdit1.AutoHeight = false;
editorButtonImageOptions1.Image = ((System.Drawing.Image)(resources.GetObject("editorButtonImageOptions1.Image")));
editorButtonImageOptions2.Image = ((System.Drawing.Image)(resources.GetObject("editorButtonImageOptions2.Image")));
editorButtonImageOptions3.Image = ((System.Drawing.Image)(resources.GetObject("editorButtonImageOptions3.Image")));
editorButtonImageOptions4.Image = ((System.Drawing.Image)(resources.GetObject("editorButtonImageOptions4.Image")));
this.repositoryItemButtonEdit1.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "设备保养", -1, true, true, false, editorButtonImageOptions1, new DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.None), serializableAppearanceObject1, serializableAppearanceObject2, serializableAppearanceObject3, serializableAppearanceObject4, "设备保养", null, null, DevExpress.Utils.ToolTipAnchor.Default),
new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "保养记录修改", -1, true, true, false, editorButtonImageOptions2, new DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.None), serializableAppearanceObject5, serializableAppearanceObject6, serializableAppearanceObject7, serializableAppearanceObject8, "保养记录修改", null, null, DevExpress.Utils.ToolTipAnchor.Default),
new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "查看", -1, true, true, false, editorButtonImageOptions3, new DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.None), serializableAppearanceObject9, serializableAppearanceObject10, serializableAppearanceObject11, serializableAppearanceObject12, "查看", null, null, DevExpress.Utils.ToolTipAnchor.Default),
new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "打印", -1, true, true, false, editorButtonImageOptions4, new DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.None), serializableAppearanceObject13, serializableAppearanceObject14, serializableAppearanceObject15, serializableAppearanceObject16, "打印", null, null, DevExpress.Utils.ToolTipAnchor.Default)});
this.repositoryItemButtonEdit1.ContextImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("repositoryItemButtonEdit1.ContextImageOptions.Image")));
this.repositoryItemButtonEdit1.Name = "repositoryItemButtonEdit1";
this.repositoryItemButtonEdit1.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.HideTextEditor;
this.repositoryItemButtonEdit1.ButtonClick += new DevExpress.XtraEditors.Controls.ButtonPressedEventHandler(this.repositoryItemButtonEdit1_Click);
//
// pageDevicePlans
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(693, 384);
this.Controls.Add(this.gridControl1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.IconOptions.LargeImage = ((System.Drawing.Image)(resources.GetObject("pageDevicePlans.IconOptions.LargeImage")));
this.MaximizeBox = false;
this.Name = "pageDevicePlans";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "设备计划详情";
((System.ComponentModel.ISupportInitialize)(this.gridControl1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gridView1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemButtonEdit1)).EndInit();
this.ResumeLayout(false);
}
#endregion
private DevExpress.XtraGrid.GridControl gridControl1;
private DevExpress.XtraGrid.Views.Grid.GridView gridView1;
private DevExpress.XtraGrid.Columns.GridColumn gcEquipmentID;
private DevExpress.XtraGrid.Columns.GridColumn gcMonth;
private DevExpress.XtraGrid.Columns.GridColumn gcMaintenanceType;
private DevExpress.XtraGrid.Columns.GridColumn gcFormVersionCode;
private DevExpress.XtraGrid.Columns.GridColumn gcCompleteDate;
private DevExpress.XtraGrid.Columns.GridColumn gcOperation;
private DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit repositoryItemButtonEdit1;
}
}

View File

@ -0,0 +1,182 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using DeviceRepair.Models;
using DeviceRepair.Utils;
using DeviceRepairAndOptimization.Common;
using DeviceRepair.Models.Device;
using DeviceRepairAndOptimization.Pages.Maintenance;
using DeviceRepairAndOptimization.Pages.DriveMaintenance;
namespace DeviceRepairAndOptimization.Pages.Plan
{
public partial class pageDevicePlans : XtraForm
{
int m_SelectedCurrentRowIndex = 0;
int CurrentEquipmentID = 0;
int CurrentYear = 0;
DeviceAnnPlanView CurrentData = null;
public pageDevicePlans(int EquipmentID, int Year)
{
InitializeComponent();
CurrentEquipmentID = EquipmentID;
CurrentYear = Year;
this.Load += PageDevicePlans_Load;
}
private void PageDevicePlans_Load(object sender, EventArgs ee)
{
try
{
APIResponseData apiResponseData = Biz.PlanManager.Instance.GetDeviceInformationPlans(CurrentYear, CurrentEquipmentID);
if (!apiResponseData.IsSuccess)
throw new Exception(apiResponseData.Message);
CurrentData = apiResponseData.ToDeserializeObject<DeviceAnnPlanView>();
foreach (DriveMaintencePlanInfo item in CurrentData.Plans)
{
MaintenanceRecordInfo record = CurrentData.Records?.FirstOrDefault(x => x.PlanPrimaryID == item.AutoID);
item.CompleteDate = record?.CreateDate ?? null;
item.EquipmentDisplayID = CurrentData.Dev.EquipmentID;
item.FormDisplayCode = CurrentData.CurrentFormCode;
}
gridView1.IndicatorWidth = 50;
gridControl1.DataSource = CurrentData.Plans;
gridView1.BestFitColumns();
// 自增长行号
gridView1.CustomDrawRowIndicator += (s, e) =>
{
if (e.Info.IsRowIndicator && e.RowHandle >= 0)
{
e.Info.DisplayText = (e.RowHandle + 1).ToString();
e.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;
e.Appearance.TextOptions.VAlignment = DevExpress.Utils.VertAlignment.Center;
SizeF size = e.Graphics.MeasureString((e.RowHandle + 1).ToString(), e.Appearance.Font);
}
};
}
catch (Exception ex)
{
XtraMessageBoxHelper.Error(ex.Message);
this.Close();
}
}
private void repositoryItemButtonEdit1_Click(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
{
try
{
m_SelectedCurrentRowIndex = gridView1.FocusedRowHandle;
if (!gridView1.IsValidRowHandle(m_SelectedCurrentRowIndex))
{
throw new Exception("请先选择计划所在行!");
}
DriveMaintencePlanInfo CurrentSelectRowData = gridView1.GetRow(m_SelectedCurrentRowIndex) as DriveMaintencePlanInfo;
if (CurrentSelectRowData == null)
{
throw new Exception("请先选择计划所在行!");
}
if (e.Button.Caption.Equals("查看"))
{
if (!GlobalInfo.HasRole("BIZ_MAINTENANCE_LOG_VIEW"))
{
throw new Exception($"当前账号缺少此操作的权限");
}
if (CurrentSelectRowData.CompleteDate.HasValue)
{
MaintenanceRecordInfo record = CurrentData.Records?.FirstOrDefault(x => x.PlanPrimaryID == CurrentSelectRowData.AutoID);
if (record == null)
throw new Exception("未查询到设备保养记录信息,请重试!");
page_MaintenancePdfView view = new page_MaintenancePdfView("查看", new int[] { record.AutoID }, false);
view.ShowDialog();
}
else
{
throw new Exception("当前计划不存在保养信息!");
}
}
else if (e.Button.Caption.Equals("保养记录修改"))
{
if (!GlobalInfo.HasRole("BIZ_MAINTENANCE_EDIT"))
{
throw new Exception($"当前账号缺少此操作的权限");
}
MaintenanceRecordInfo record = CurrentData.Records?.FirstOrDefault(x => x.PlanPrimaryID == CurrentSelectRowData.AutoID);
if (record == null)
throw new Exception("未查询到设备保养记录信息,请重试!");
page_DriveMaintenance view = new page_DriveMaintenance(CurrentData.Dev, CurrentSelectRowData.AutoID, record.AutoID, true);
if (view.ShowDialog() == DialogResult.OK)
{
XtraMessageBoxHelper.Info("操作成功!");
}
else
{
if (!string.IsNullOrWhiteSpace(view.apiResponseData.Message))
throw new Exception(view.apiResponseData.Message);
}
}
else if (e.Button.Caption.Equals("设备保养"))
{
if (CurrentSelectRowData.CompleteDate.HasValue)
{
throw new Exception("当前计划已保养!");
}
if (!GlobalInfo.HasRole("BIZ_MAINTENANCE_ADD"))
{
throw new Exception($"当前账号缺少此操作的权限");
}
page_DriveMaintenance view = new page_DriveMaintenance(CurrentData.Dev, CurrentSelectRowData.AutoID);
if (view.ShowDialog() == DialogResult.OK)
{
XtraMessageBoxHelper.Info("操作成功!");
}
else
{
if (!string.IsNullOrWhiteSpace(view.apiResponseData.Message))
throw new Exception(view.apiResponseData.Message);
}
}
else if (e.Button.Caption.Equals("打印"))
{
if (CurrentSelectRowData.CompleteDate.HasValue)
{
MaintenanceRecordInfo record = CurrentData.Records?.FirstOrDefault(x => x.PlanPrimaryID == CurrentSelectRowData.AutoID);
page_MaintenancePdfView view = new page_MaintenancePdfView("打印", new int[] { record.AutoID }, true);
view.ShowDialog();
}
else
{
throw new Exception("当前计划不存在保养信息!");
}
}
}
catch (Exception ex)
{
XtraMessageBoxHelper.Error(ex.Message);
}
}
}
}

View File

@ -0,0 +1,259 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="editorButtonImageOptions1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABF0RVh0VGl0
bGUARmlsbDtDb2xvcjucN7beAAACeElEQVQ4T53SXUhTYRgH8DOdOtM2l25T22pifuTXamyGYiYbmYJe
tCBByEKzxEClqI0Kpwv6UJHQZkaEXVQi0YgUwgW6QCgsCm+CiEzqwlIkutAo5v49z9rWYl31wI/3nPO8
z59z9k7gcnfvE9yOP6hEzO2oonvGz6uESVoB/MVfE2fNfoNmLXp2a/SuMxVND22mEWpFE9HEORP1Ca3/
DHCdLPff9JRr9H1lakz1N63Du4ixtrI71I4lIt7jOvV7X0QAFb+y+NZR4/EnV46gW6/Ep9lRrH9fwO1j
xaPU20D4baJIqIIBPBwzWK9rddkseHl/GI+6mmHNlWHlRSO+LUzBaS9Yu+jRfnF41DfqOpOlgZlQgLjP
kn9ieqAF6z+W4F37iLUPA1h+Xo/392rxqqsE8+6r6LVlwzquQvsDxRjNxPBgMEByzZK3srr8Fr6fX2nY
iaUZC96N7MWz0zq8dhgw0pDnO1yk7Gi4KUPzXZlXVxOXHB4Q22nKOO+5bsfqvBOL09V4M1SG6ZYszNoK
4TyQ6TuYJW+jfUqzXYK6oXjkVopTeTAYwD9MorVUc2HcugNz/UY8PrQVM+056K3W+Go0iTycSGT5zVHY
YxXPBe5FwQAuDpG2G9IuDVepMdmYAUeFymdSSDro+cZAP0FVKTyVFwv76ZqPNvQGgqN0My+8Kam1SHXZ
viv9c4ksJjRcmxLHfT7GeOL/X/CDUIDdkCrYjWl8yZv4zOWBNcosjRbC8VC4YHEyDyQQ/j4+axlJIhy2
iaQQBVESFUnzBwRSIpoknfC3acgWoiUZJJNsI9nhARFNkkO2kzxSQAqJjuwkemIIBfw/CL8AsV1fTjrD
P6kAAAAASUVORK5CYII=
</value>
</data>
<data name="editorButtonImageOptions2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACB0RVh0VGl0
bGUARWRpdDtCYXJzO1JpYmJvbjtTdGFuZGFyZDswE8PbAAACtUlEQVQ4T2WSW0hUQRjHT97Xy1oIJilt
og9GQgQVUQ+hBKWGIvnik/ViglCEBJVhpZTZFhEahuYFV1PUtvJSGaKihqVBpcZulkFZ2Orqqnt293j2
8u+bcXe1GvjNDHPm9//OmTMCAIGab0OHfqCp+wsau6fW6JqCpvMzp4HRwdCjpn18kPYHMI+77gB/tnFj
czGoc1G3PrpQq9UxQUGP/woIqH+qpymwKjshubGtEpIDVskOq80Oi82B6vZJJgQzj7u8o4AarZ5X5ZJX
dHDJQrJImGle2TLBhJB/AwKr2ib4q65LDohWEgmz1YEVYpnmFY0fmRA6fOug0HtlnzcgiCWzb9wocVEk
0WLHEmG2yhh+94MJkUQAsckToCjXfICTAswWmarZvRLDJMpUXcaCyYyX9SWgyqg7vfMueaHegDv173mA
VxRJNMtriBIMRhNGtWX4+iyL9n3D5KMM3DweU+4JCFY/HIPD6eLCIlVcpNG4TOOKhFnDAkbarmNKm8ll
afoMBgsToT4S5T5JOtUblW9hd7iwsLLKmV9io4Rfs/MYbC6GrjWdy+JkHvrOJ6BPfRi5ieG1noDQaxUj
kO0uzJE4tyRRgA3ff/5Gf2MRPjWlcdk0egq9Z+PRU3IIJxPCNORFeQOK7r2mAKf7N8owzBnRr7mM8bqj
XDb0Z6MnPxadhfuRHRfSTM42ws8TEFRQ+mrg0u0hXCTua8ZQ8aAFQ+pjXJ7pysSLPBW0BXuQpVK00v4Y
JmdvpT/pDvAhFISSCCd2JBzI0XZUlcIy8wbPc1Voyd+FjOjAx/RMRfhNN6cIJyL81wI2wm4Yte27k8/N
jo/0oKHsAoqT4pEaFfiE1mMJf111sqCrThLSN/v+H9B7la4nVdkSkwxl5F6jQhnXGRGsyKG1aCanKX0F
RmqYj5AS5iP8AQSCmu1rvrSCAAAAAElFTkSuQmCC
</value>
</data>
<data name="editorButtonImageOptions3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABV0RVh0VGl0
bGUAWm9vbTEwMFBlcmNlbnQ7CDpw8AAAA0FJREFUOE9Vk9lPU0EUxgdjDJgY44N/gnEnxhj3JTxoNGBc
kmpUpKK4IDQqUkFEKi1rARe0BiGaiiYCSgutG1iqiKS4UHzgAeMaIG7dblfaC+Xz3AFNnOTLmZk75zfn
zDmXAeCqrHvJKm50Mhoxy1Ztji289Di35NqzvjKdNaK50tZ7Xtt6dtGS9XHS9+g4pHP/jZhJTVm8dENc
UXXbqwZTH4Z/CBgfH8fwdw8aTHbka83dc+Yvny6dNR9ewUwkVn7DZtXW9qCc1N71Cfr7r3HX8A4Ozwi0
ejuS8y2oqLfjlzsEfVMPMnJuqQkwVYr6ceYGAtTYaD4xRFFEZU0Hhujmotq3uP7gE95/HYP82gDUt3sx
SJEcO6MfJEAs+ovZw+PrGCu53s2dAyMi/IEg8srMCIZEHCiwwDYQgZ0AmUY/UsutEAIRHDhRKxJgOuwq
1np0LWMa3SvKkwChCAFCuFBpwpdBFzR17yDXfYCiJYT0+o9Q3+nFx29OyA5dHOKAnrPMkLaGscLqLv5Q
/mAEgWAYTa02XL1pxedhL4rIKbm0AyX3+jAwJKC02oS8U0VSCWaRYu6nrmZMdbkTUaqLj8LzUxQujw8q
7QOU656gt38I350BssPQXDQiR6nB67IdqEhcWEAAXlJ2ruoFxqJRyi8MwU9REMTp8qK+4TkylHXYuk+L
wyd1KM4rQacqCeg+BZt6C4o3ziuUUmG5WitGxwjgD8MzKSkawReCW/DD4fRw4E+HC221VbDkJACWNHTl
JUCbFF/AlKUWiKNR7E45Abc3DKP5OZ8bzFa4vCPcSmvryzcQvD5cVubClLESEaMMN2XL/CyruB3hyBhk
+xXcQZacCSe3CjgFsrTvkCztS+k1mfuQOnf2hUubFohVifF6dlL9FKHwKHbuSYeTum/nnuO8C//Zvelk
Q3ztpUqpr1ilKswkzeBvoFA94U20bdcROKhdG43t2Lb7CBoN7fjtDtK6jX+T9j0+aqRsowSIrUiYx2q2
L2UsPf8RfEGRFIGXHu+vpIoIPnpUkntSUoryLIMEiKPm5X8xS8tpthw804KDSiNSs1v4DVynjZBnGyA/
PaEUckzJasZeRWMHAaZNAMD+ANqRqyoLwXY/AAAAAElFTkSuQmCC
</value>
</data>
<data name="editorButtonImageOptions4.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAOdEVYdFRpdGxlAFByaW50ZXI7579hxQAAAr9JREFU
OE99k9lPU1EQxssW2URwSXz1xT9AIT4ZUCTyAEoiEAJxARIUTBCKCilFgqzFlD0YJAEjJL4ZiQQkYpEa
AlIK+IYSEVq7UAp0B0rbz5lr0JQHT/LL3HPuzDdn5s4VAfgLrYD2V+qJzsEFdA7OC3QQ7QNqgZa+L5Pk
E+wX47cRiYJIAF6fD16vDx7G48M+4d73Qt6vYqcjfjF+G5EoRN43KwSZLTvY2HYROzBtO7Hr9kD2Yoad
wg7FCCuACCLCZb0zQjbjppNwwEDWYHbCtbOP+u4pjoghgolAQliBjT3KpI7Br3N54i4UVb7E7p4H+g07
dCYHYYPWZIfduYd88XNkFTRSKer5qtbRZIrlpKKQtoHFdSNlySxoQB45OVxuaI02rBmt0BisWCO2bLvI
KWpBSo4EepMTTb0qE8WGskCovH+BygFSsiXILmyB1bGHVb0FP3UWrOi2BbgfN/IakHi9RPCt7Z7lciJY
ILyhZw5utxfpd6qQmPaQnIhrTBkuM6liXEoRI4FIzSoTfKWtQj+iWCCyunOasrrxXqFGcvoDXEjMRVxC
LmLjb+N8/C2cu3gTscSVlCKMjM/CSv141DTJAtEsEFXxTAnDlhM/DDasCNjp2mR1duHs4FywdK6nL1P8
dJwFjrNAdGm9At91ViwumxGXLPkvC8sbWNJYUSgdY4ETLBBz/8kHzH0zQzGvRW3XFCy2PdSN/ULNqBbS
YS0eD61ikwaL342rVqFa2kB++QgLnGSByMx7/VM5xa+Rcbcf1e1KYQqrhjWQvNOg/O0axG9WYdpyobpN
iaSMOlzNkiEhTTpNsUITeRj44RRxRir/hHVyXqc6GZ4Po5kmkmylfIKzniVOE8eI4MP/QlhpzbCyovkj
KpoVBFnZAQqU1Ax9Jp8Ivxi/zZ/bRBLcXa6P4Zsx/HyUCPoXA9Fvk15uVlve/joAAAAASUVORK5CYII=
</value>
</data>
<data name="repositoryItemButtonEdit1.ContextImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABF0RVh0VGl0
bGUARmlsbDtDb2xvcjucN7beAAACeElEQVQ4T53SXUhTYRgH8DOdOtM2l25T22pifuTXamyGYiYbmYJe
tCBByEKzxEClqI0Kpwv6UJHQZkaEXVQi0YgUwgW6QCgsCm+CiEzqwlIkutAo5v49z9rWYl31wI/3nPO8
z59z9k7gcnfvE9yOP6hEzO2oonvGz6uESVoB/MVfE2fNfoNmLXp2a/SuMxVND22mEWpFE9HEORP1Ca3/
DHCdLPff9JRr9H1lakz1N63Du4ixtrI71I4lIt7jOvV7X0QAFb+y+NZR4/EnV46gW6/Ep9lRrH9fwO1j
xaPU20D4baJIqIIBPBwzWK9rddkseHl/GI+6mmHNlWHlRSO+LUzBaS9Yu+jRfnF41DfqOpOlgZlQgLjP
kn9ieqAF6z+W4F37iLUPA1h+Xo/392rxqqsE8+6r6LVlwzquQvsDxRjNxPBgMEByzZK3srr8Fr6fX2nY
iaUZC96N7MWz0zq8dhgw0pDnO1yk7Gi4KUPzXZlXVxOXHB4Q22nKOO+5bsfqvBOL09V4M1SG6ZYszNoK
4TyQ6TuYJW+jfUqzXYK6oXjkVopTeTAYwD9MorVUc2HcugNz/UY8PrQVM+056K3W+Go0iTycSGT5zVHY
YxXPBe5FwQAuDpG2G9IuDVepMdmYAUeFymdSSDro+cZAP0FVKTyVFwv76ZqPNvQGgqN0My+8Kam1SHXZ
viv9c4ksJjRcmxLHfT7GeOL/X/CDUIDdkCrYjWl8yZv4zOWBNcosjRbC8VC4YHEyDyQQ/j4+axlJIhy2
iaQQBVESFUnzBwRSIpoknfC3acgWoiUZJJNsI9nhARFNkkO2kzxSQAqJjuwkemIIBfw/CL8AsV1fTjrD
P6kAAAAASUVORK5CYII=
</value>
</data>
<data name="pageDevicePlans.IconOptions.LargeImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
</root>

View File

@ -29,6 +29,7 @@ namespace DeviceRepairAndOptimization.Pages
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
DevExpress.XtraEditors.Controls.EditorButtonImageOptions editorButtonImageOptions1 = new DevExpress.XtraEditors.Controls.EditorButtonImageOptions();
DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject1 = new DevExpress.Utils.SerializableAppearanceObject();
@ -72,6 +73,8 @@ namespace DeviceRepairAndOptimization.Pages
this.colChangeUserName = new DevExpress.XtraGrid.Columns.GridColumn();
this.colChangeDate = new DevExpress.XtraGrid.Columns.GridColumn();
this.titleDescription = new DevExpress.XtraGrid.Columns.GridColumn();
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.splashScreenManager1 = new DevExpress.XtraSplashScreen.SplashScreenManager(this, typeof(global::DeviceRepairAndOptimization.frmWaiting), true, true);
flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
flowLayoutPanel2 = new System.Windows.Forms.FlowLayoutPanel();
@ -87,6 +90,7 @@ namespace DeviceRepairAndOptimization.Pages
this.tableLayoutPanel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.gridControl)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gridView1)).BeginInit();
this.contextMenuStrip1.SuspendLayout();
this.SuspendLayout();
//
// flowLayoutPanel1
@ -95,16 +99,16 @@ namespace DeviceRepairAndOptimization.Pages
flowLayoutPanel1.Controls.Add(this.EditSearch);
flowLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
flowLayoutPanel1.FlowDirection = System.Windows.Forms.FlowDirection.RightToLeft;
flowLayoutPanel1.Location = new System.Drawing.Point(1231, 0);
flowLayoutPanel1.Location = new System.Drawing.Point(798, 0);
flowLayoutPanel1.Margin = new System.Windows.Forms.Padding(0);
flowLayoutPanel1.Name = "flowLayoutPanel1";
flowLayoutPanel1.Size = new System.Drawing.Size(608, 48);
flowLayoutPanel1.Size = new System.Drawing.Size(394, 48);
flowLayoutPanel1.TabIndex = 1;
//
// btn_Filter
//
this.btn_Filter.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.btn_Filter.Location = new System.Drawing.Point(548, 9);
this.btn_Filter.Location = new System.Drawing.Point(334, 9);
this.btn_Filter.Name = "btn_Filter";
this.btn_Filter.Size = new System.Drawing.Size(57, 26);
this.btn_Filter.TabIndex = 10;
@ -113,7 +117,7 @@ namespace DeviceRepairAndOptimization.Pages
//
// EditSearch
//
this.EditSearch.Location = new System.Drawing.Point(240, 7);
this.EditSearch.Location = new System.Drawing.Point(26, 7);
this.EditSearch.Margin = new System.Windows.Forms.Padding(5, 7, 5, 7);
this.EditSearch.Name = "EditSearch";
this.EditSearch.Properties.Appearance.Font = new System.Drawing.Font("Verdana", 10F);
@ -137,7 +141,7 @@ namespace DeviceRepairAndOptimization.Pages
flowLayoutPanel2.Location = new System.Drawing.Point(0, 0);
flowLayoutPanel2.Margin = new System.Windows.Forms.Padding(0);
flowLayoutPanel2.Name = "flowLayoutPanel2";
flowLayoutPanel2.Size = new System.Drawing.Size(481, 45);
flowLayoutPanel2.Size = new System.Drawing.Size(393, 45);
flowLayoutPanel2.TabIndex = 3;
//
// btn_add
@ -226,18 +230,18 @@ namespace DeviceRepairAndOptimization.Pages
tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
tableLayoutPanel2.Controls.Add(this.EditYear, 1, 0);
tableLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
tableLayoutPanel2.Location = new System.Drawing.Point(609, 3);
tableLayoutPanel2.Location = new System.Drawing.Point(396, 3);
tableLayoutPanel2.Name = "tableLayoutPanel2";
tableLayoutPanel2.RowCount = 1;
tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
tableLayoutPanel2.Size = new System.Drawing.Size(619, 42);
tableLayoutPanel2.Size = new System.Drawing.Size(399, 42);
tableLayoutPanel2.TabIndex = 4;
//
// EditYear
//
this.EditYear.Dock = System.Windows.Forms.DockStyle.Fill;
this.EditYear.EditValue = null;
this.EditYear.Location = new System.Drawing.Point(187, 3);
this.EditYear.Location = new System.Drawing.Point(77, 3);
this.EditYear.Name = "EditYear";
this.EditYear.Properties.AutoHeight = false;
this.EditYear.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
@ -261,7 +265,7 @@ namespace DeviceRepairAndOptimization.Pages
this.tb_pnl_Content.RowCount = 2;
this.tb_pnl_Content.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 48F));
this.tb_pnl_Content.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tb_pnl_Content.Size = new System.Drawing.Size(1839, 885);
this.tb_pnl_Content.Size = new System.Drawing.Size(1192, 931);
this.tb_pnl_Content.TabIndex = 0;
//
// panel1
@ -272,7 +276,7 @@ namespace DeviceRepairAndOptimization.Pages
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Margin = new System.Windows.Forms.Padding(0);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(1839, 48);
this.panel1.Size = new System.Drawing.Size(1192, 48);
this.panel1.TabIndex = 0;
//
// tableLayoutPanel1
@ -290,7 +294,7 @@ namespace DeviceRepairAndOptimization.Pages
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 1;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(1839, 48);
this.tableLayoutPanel1.Size = new System.Drawing.Size(1192, 48);
this.tableLayoutPanel1.TabIndex = 1;
//
// gridControl
@ -299,7 +303,7 @@ namespace DeviceRepairAndOptimization.Pages
this.gridControl.Location = new System.Drawing.Point(3, 51);
this.gridControl.MainView = this.gridView1;
this.gridControl.Name = "gridControl";
this.gridControl.Size = new System.Drawing.Size(1833, 831);
this.gridControl.Size = new System.Drawing.Size(1186, 877);
this.gridControl.TabIndex = 1;
this.gridControl.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.gridView1});
@ -518,6 +522,20 @@ namespace DeviceRepairAndOptimization.Pages
this.titleDescription.Visible = true;
this.titleDescription.VisibleIndex = 20;
//
// contextMenuStrip1
//
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripMenuItem1});
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(173, 26);
//
// toolStripMenuItem1
//
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
this.toolStripMenuItem1.Size = new System.Drawing.Size(172, 22);
this.toolStripMenuItem1.Text = "查看设备保养详情";
this.toolStripMenuItem1.Click += new System.EventHandler(this.toolStripMenuItem1_Click);
//
// splashScreenManager1
//
this.splashScreenManager1.ClosingDelay = 500;
@ -525,7 +543,7 @@ namespace DeviceRepairAndOptimization.Pages
// page_MaintenancePlan
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.ClientSize = new System.Drawing.Size(1839, 885);
this.ClientSize = new System.Drawing.Size(1192, 931);
this.Controls.Add(this.tb_pnl_Content);
this.DoubleBuffered = true;
this.Name = "page_MaintenancePlan";
@ -542,6 +560,7 @@ namespace DeviceRepairAndOptimization.Pages
this.tableLayoutPanel1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.gridControl)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gridView1)).EndInit();
this.contextMenuStrip1.ResumeLayout(false);
this.ResumeLayout(false);
}
@ -583,5 +602,7 @@ namespace DeviceRepairAndOptimization.Pages
private DevExpress.XtraGrid.Columns.GridColumn colChangeDate;
private DevExpress.XtraGrid.Columns.GridColumn titleVersionCode;
private DevExpress.XtraSplashScreen.SplashScreenManager splashScreenManager1;
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem1;
}
}

View File

@ -23,6 +23,8 @@ namespace DeviceRepairAndOptimization.Pages
{
public List<AnnualMaintenancePlan> Datas { get; set; }
AnnualMaintenancePlan CurrentModel;
#region
public page_MaintenancePlan()
@ -71,7 +73,6 @@ namespace DeviceRepairAndOptimization.Pages
}
}
#endregion
#region
@ -93,28 +94,17 @@ namespace DeviceRepairAndOptimization.Pages
gridControl.DataSource = Datas.Where(x => x.MaintenanceYear == Years && (x.DisplayEquipmentID == EditSearch.Text || x.EquipmentName.Contains(EditSearch.Text)))?.ToList();
}
//List<EnumPlanCompleteStatus> statusArray = new List<EnumPlanCompleteStatus>();
//List<AnnualMaintenancePlan> Items = gridControl.DataSource as List<AnnualMaintenancePlan>;
//foreach (AnnualMaintenancePlan item in Items)
//{
// PropertyInfo[] preps = item.GetType().GetProperties();
// foreach (PropertyInfo prep in preps)
// {
// if (prep.PropertyType == typeof(EnumPlanCompleteStatus))
// {
// EnumPlanCompleteStatus epcs = (EnumPlanCompleteStatus)prep.GetValue(item, null);
// statusArray.Add(epcs);
// }
// }
//}
gridView1.RowCellClick += GridView1_RowCellClick;
}
//int CurrentCount = statusArray.Where(x => x == EnumPlanCompleteStatus.Current).Count();
//int CompleteCount = statusArray.Where(x => x == EnumPlanCompleteStatus.Complete).Count();
//int FutureCount = statusArray.Where(x => x == EnumPlanCompleteStatus.Future).Count();
//int TimeOutCount = statusArray.Where(x => x == EnumPlanCompleteStatus.TimeOut).Count();
//int TotalCount = statusArray.Count();
//this.Tag = $"全年欲保养数:{TotalCount}<nbsp><nbsp>当月待保养数:{ CurrentCount}<nbsp><nbsp>全年已完成:{CompleteCount}<nbsp><nbsp>已超时数:{TimeOutCount}<nbsp><nbsp>全年待完成数:{CurrentCount + FutureCount}";
private void GridView1_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
CurrentModel = gridView1.GetRow(e.RowHandle) as AnnualMaintenancePlan;
contextMenuStrip1.Show(gridControl, e.Location);
return;
}
}
#endregion
@ -146,8 +136,6 @@ namespace DeviceRepairAndOptimization.Pages
}
}
#endregion
/// <summary>
/// 导入
/// </summary>
@ -411,5 +399,28 @@ namespace DeviceRepairAndOptimization.Pages
{
InitializeGridData();
}
#endregion
/// <summary>
/// 设备年度计划详情
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void toolStripMenuItem1_Click(object sender, EventArgs e)
{
try
{
if (CurrentModel == null)
throw new Exception("请选中要操作的设备数据行!");
(new pageDevicePlans(CurrentModel.EquipmentID,CurrentModel.MaintenanceYear)).ShowDialog();
}
catch (Exception ex)
{
XtraMessageBoxHelper.Error(ex.Message);
}
}
}
}

View File

@ -221,6 +221,9 @@
<metadata name="tableLayoutPanel2.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>205, 17</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>49</value>
</metadata>

View File

@ -158,6 +158,11 @@
/// </summary>
public const string GetCurrentYearPlanSchedule = "Api/Plan/GetCurrentYearPlanSchedule";
/// <summary>
/// 获取设备在年度的全部保养信息
/// </summary>
public const string GetDeviceInformationPlans = "Api/Plan/GetDeviceInformationPlans";
#endregion
#region

6
SqlSugarTest/App.config Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
</configuration>

63
SqlSugarTest/Form1.Designer.cs generated Normal file
View File

@ -0,0 +1,63 @@
namespace SqlSugarTest
{
partial class Form1
{
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
/// <param name="disposing">如果应释放托管资源,为 true否则为 false。</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows
/// <summary>
/// 设计器支持所需的方法 - 不要修改
/// 使用代码编辑器修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.button1 = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// button1
//
this.button1.Location = new System.Drawing.Point(12, 12);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(136, 49);
this.button1.TabIndex = 0;
this.button1.Text = "button1";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(158, 71);
this.Controls.Add(this.button1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Name = "Form1";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Form1";
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.Button button1;
}
}

59
SqlSugarTest/Form1.cs Normal file
View File

@ -0,0 +1,59 @@
using DeviceRepair.Models;
using DeviceRepair.Models.Device;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SqlSugarTest
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
try
{
using (SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
{
ConnectionString = "Data Source=www.clovejunti.cn,11433;Initial Catalog=DriveMaintenance;Persist Security Info=True;User ID=sa;Password=P@ssw0rd;",
DbType = SqlSugar.DbType.SqlServer,
IsAutoCloseConnection = true,
InitKeyType = InitKeyType.Attribute
}))
{
// 获取设备计划信息
DeviceInformationInfo Dev = db.Queryable<DeviceInformationInfo>().First(x => x.AutoID == 408);
List<DriveMaintencePlanInfo> plans = db.Queryable<DriveMaintencePlanInfo>().Where(x => x.EquipmentID == 408 && x.MaintenanceYear == 2024 && SqlFunc.HasValue(x.MaintenanceType)).ToList();
int[] pIds = plans.Select(x => x.AutoID).ToArray();
List<MaintenanceRecordInfo> records = db.Queryable<MaintenanceRecordInfo>().Where(x => x.EquipmentPrimaryID == 408 && SqlFunc.ContainsArray(pIds, x.AutoID)).ToList();
DeviceAnnPlanView devs = new DeviceAnnPlanView
{
Dev = Dev,
Plans = plans,
Records = records
};
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}

120
SqlSugarTest/Form1.resx Normal file
View File

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

22
SqlSugarTest/Program.cs Normal file
View File

@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SqlSugarTest
{
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}

View File

@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有关程序集的一般信息由以下
// 控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("SqlSugarTest")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("SqlSugarTest")]
[assembly: AssemblyCopyright("Copyright © 2024")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
//将 ComVisible 设置为 false 将使此程序集中的类型
//对 COM 组件不可见。 如果需要从 COM 访问此程序集中的类型,
//请将此类型的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("e46c1282-638c-4896-bcdb-3f482d358d9c")]
// 程序集的版本信息由下列四个值组成:
//
// 主版本
// 次版本
// 生成号
// 修订号
//
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
// 方法是按如下所示使用“*”: :
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@ -0,0 +1,71 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本: 4.0.30319.42000
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace SqlSugarTest.Properties
{
/// <summary>
/// 强类型资源类,用于查找本地化字符串等。
/// </summary>
// 此类是由 StronglyTypedResourceBuilder
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
// 若要添加或删除成员,请编辑 .ResX 文件,然后重新运行 ResGen
// (以 /str 作为命令选项),或重新生成 VS 项目。
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources
{
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources()
{
}
/// <summary>
/// 返回此类使用的缓存 ResourceManager 实例。
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager
{
get
{
if ((resourceMan == null))
{
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("SqlSugarTest.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// 覆盖当前线程的 CurrentUICulture 属性
/// 使用此强类型的资源类的资源查找。
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture
{
get
{
return resourceCulture;
}
set
{
resourceCulture = value;
}
}
}
}

View File

@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@ -0,0 +1,30 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace SqlSugarTest.Properties
{
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
{
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default
{
get
{
return defaultInstance;
}
}
}
}

View File

@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

View File

@ -0,0 +1,105 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{E46C1282-638C-4896-BCDB-3F482D358D9C}</ProjectGuid>
<OutputType>WinExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>SqlSugarTest</RootNamespace>
<AssemblyName>SqlSugarTest</AssemblyName>
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="SqlSugar, Version=5.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\sqlSugar.5.0.0\lib\SqlSugar.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Form1.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Form1.Designer.cs">
<DependentUpon>Form1.cs</DependentUpon>
</Compile>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<EmbeddedResource Include="Form1.resx">
<DependentUpon>Form1.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource>
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<None Include="packages.config" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\DeviceRepair.Models\DeviceRepair.Models.csproj">
<Project>{2a1ffb12-b20f-4f9b-905e-1f928f17b4ee}</Project>
<Name>DeviceRepair.Models</Name>
</ProjectReference>
<ProjectReference Include="..\DeviceRepair.Utils\DeviceRepair.Utils.csproj">
<Project>{2ae8089a-c70a-47be-921b-de6a502f8d04}</Project>
<Name>DeviceRepair.Utils</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

BIN
SqlSugarTest/bin/Debug/DeviceRepair.Models.dll (Stored with Git LFS) Normal file

Binary file not shown.

Binary file not shown.

BIN
SqlSugarTest/bin/Debug/DeviceRepair.Utils.dll (Stored with Git LFS) Normal file

Binary file not shown.

Binary file not shown.

BIN
SqlSugarTest/bin/Debug/ICSharpCode.SharpZipLib.dll (Stored with Git LFS) Normal file

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
SqlSugarTest/bin/Debug/Newtonsoft.Json.dll (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
SqlSugarTest/bin/Debug/SqlSugar.dll (Stored with Git LFS) Normal file

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-10.0.0.0" newVersion="10.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-10.0.0.0" newVersion="10.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<requestedExecutionLevel level="asInvoker" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>

Binary file not shown.

View File

@ -0,0 +1,20 @@
D:\UGit\DeviceManager\SqlSugarTest\bin\Debug\SqlSugarTest.exe.config
D:\UGit\DeviceManager\SqlSugarTest\bin\Debug\SqlSugarTest.exe
D:\UGit\DeviceManager\SqlSugarTest\bin\Debug\SqlSugarTest.pdb
D:\UGit\DeviceManager\SqlSugarTest\bin\Debug\DeviceRepair.Models.dll
D:\UGit\DeviceManager\SqlSugarTest\bin\Debug\DeviceRepair.Utils.dll
D:\UGit\DeviceManager\SqlSugarTest\bin\Debug\SqlSugar.dll
D:\UGit\DeviceManager\SqlSugarTest\bin\Debug\Newtonsoft.Json.dll
D:\UGit\DeviceManager\SqlSugarTest\bin\Debug\ICSharpCode.SharpZipLib.dll
D:\UGit\DeviceManager\SqlSugarTest\bin\Debug\DeviceRepair.Models.pdb
D:\UGit\DeviceManager\SqlSugarTest\bin\Debug\DeviceRepair.Utils.pdb
D:\UGit\DeviceManager\SqlSugarTest\bin\Debug\Newtonsoft.Json.xml
D:\UGit\DeviceManager\SqlSugarTest\bin\Debug\ICSharpCode.SharpZipLib.pdb
D:\UGit\DeviceManager\SqlSugarTest\bin\Debug\ICSharpCode.SharpZipLib.xml
D:\UGit\DeviceManager\SqlSugarTest\obj\Debug\SqlSugarTest.csprojResolveAssemblyReference.cache
D:\UGit\DeviceManager\SqlSugarTest\obj\Debug\SqlSugarTest.csproj.SqlSugarTest.exe.config
D:\UGit\DeviceManager\SqlSugarTest\obj\Debug\SqlSugarTest.Form1.resources
D:\UGit\DeviceManager\SqlSugarTest\obj\Debug\SqlSugarTest.Properties.Resources.resources
D:\UGit\DeviceManager\SqlSugarTest\obj\Debug\SqlSugarTest.csproj.GenerateResource.Cache
D:\UGit\DeviceManager\SqlSugarTest\obj\Debug\SqlSugarTest.exe
D:\UGit\DeviceManager\SqlSugarTest\obj\Debug\SqlSugarTest.pdb

View File

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-10.0.0.0" newVersion="10.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="sqlSugar" version="5.0.0" targetFramework="net452" />
</packages>