using HighWayIot.Repository.domain; using HighWayIot.Repository.service; using HighWayIot.Winform.Business; using Models; 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 HighWayIot.Winform.UserControlPages.SysConfigPages { public partial class MaterialAddForm : Form { /// /// 物料子类型服务类实例 /// ZxMaterialChildTypeService zxMaterialChildTypeService = ZxMaterialChildTypeService.Instance; /// /// 物料子类型数组 /// string[] MaterialChildTypeArray; /// /// 物料类型服务类实例 /// ZxMaterialTypeService zxMaterialTypeService = ZxMaterialTypeService.Instance; /// /// 物料类型数组 /// string[] MaterialTypeArray; /// /// 物料数据库业务实例 /// ZxMaterialService zxMaterialService = ZxMaterialService.Instance; public MaterialAddForm() { InitializeComponent(); Init(); } private void Init() { //绑定物料类型 MaterialTypeArray = zxMaterialTypeService.GetMaterialTypeInfos().Select(x => x.MaterialTypeName).ToArray(); MaterialTypeArray = GeneralUtils.HeadAddEmptyString(MaterialTypeArray); MaterialTypeComboBox.DataSource = MaterialTypeArray; } /// /// 确认添加按钮 /// /// /// private void ConfrimAddButton_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(MaterialCodeTextBox.Text.Trim())) { MessageBox.Show("物料编号不能为空!"); return; } string s = MaterialCodeTextBox.Text.Trim(); if(zxMaterialService.GetEntityByMaterialCode(s).Count > 0) { MessageBox.Show("已存在相同物料编号,添加失败"); return; } ZxMaterialEntity entity = new ZxMaterialEntity() { MaterialCode = s, MaterialName = MaterialNameTextBox.Text.Trim(), MaterialType = MaterialTypeComboBox.Text.Trim(), ChildType = ChildComboBox.Text, IsUse = IsUseCheckBox.Checked, IsDeleted = false }; if (!zxMaterialService.InsertMaterialInfo(entity)) { MessageBox.Show("物料信息添加失败!"); return; } this.Close(); this.Dispose(); } /// /// 主物料类型选择改变事件 /// /// /// private void MaterialTypeComboBox_SelectedIndexChanged(object sender, EventArgs e) { MaterialChildTypeArray = zxMaterialChildTypeService.GetMaterialChildTypeInfos(x => x.MaterialTypeName == MaterialTypeComboBox.Text).Select(x => x.MaterialChlidTypeName).ToArray(); MaterialChildTypeArray = GeneralUtils.HeadAddEmptyString(MaterialChildTypeArray); ChildComboBox.DataSource = MaterialChildTypeArray; } } }