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.
 
 
 
Tiobon.Web/Tiobon.Core.PublishHelper/Frm/Form_Hospital_Item.cs

127 lines
4.3 KiB

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 Tiobon.PublishHelper
{
public partial class Form_Hospital_Item : Form
{
bool b_edit = false;
string devName = string.Empty;
Hospital hoipitalOld;
public Hospital m_Hoipital;
public Form_Hospital_Item(string devname, string name)
{
InitializeComponent();
this.Text = name;
devName = devname;
b_edit = this.Text != "新增";
var path = System.Environment.CurrentDirectory.Replace(@"\backend\src\Assistant\JianLian.HDIS.PublishHelper\bin\Debug", "");
this.txt_SCPath.Text = $"{path}\\backend";
this.txt_WWWPath.Text = $"{path}\\web";
}
private void Form_Hospital_Item_Load(object sender, EventArgs e)
{
if (b_edit)
{
hoipitalOld = Utility.m_DevServers
.Where(o => o.Name == devName)
.FirstOrDefault()
?.Hospitals
?.Where(o => o.Name == this.Text.Split(new string[] { " - " }, StringSplitOptions.RemoveEmptyEntries)[1])
.FirstOrDefault();
if (!(hoipitalOld is null))
{
this.txt_Name.Text = hoipitalOld.Name;
this.txt_FileName.Text = hoipitalOld.FileName;
this.txt_Port.Text = hoipitalOld.DefaultFort;
this.txt_SCPath.Text = hoipitalOld.SCPath;
this.txt_WWWPath.Text = hoipitalOld.WWWPath;
}
}
}
private void btn_Ok_Click(object sender, EventArgs e)
{
foreach (var control in gb_main.Controls)
{
if (control is TextBox)
{
var textBox = control as TextBox;
if (string.IsNullOrEmpty(textBox.Text.Trim()))
{
MessageBox.Show($"{textBox.Name},不允许为空!", "提示");
return;
}
}
}
int.TryParse(this.txt_Port.Text.Trim(), out int port);
if (port < 100 || port > 655)
{
MessageBox.Show($"端口配置不正确,端口取值范围[100,655]!", "提示");
return;
}
var server = Utility.m_DevServers.Where(o => o.Name == devName).FirstOrDefault();
if (server is null)
return;
m_Hoipital = new Hospital
{
Name = this.txt_Name.Text.Trim(),
FileName = this.txt_FileName.Text.Trim(),
DefaultFort = this.txt_Port.Text.Trim(),
SCPath = this.txt_SCPath.Text.Trim(),
WWWPath = this.txt_WWWPath.Text.Trim(),
};
if (b_edit)
{
server.Hospitals.Remove(hoipitalOld);
}
bool b_suc = false;
try
{
if (server.Hospitals.Any(o => o.Name == this.txt_Name.Text.Trim()))
{
MessageBox.Show($"医院名称已存在!", "提示");
return;
}
if (server.Hospitals.Any(o => o.FileName == this.txt_FileName.Text.Trim()))
{
MessageBox.Show($"文件夹已存在!", "提示");
return;
}
if (server.Hospitals.Any(o => o.DefaultFort == this.txt_Port.Text.Trim()))
{
MessageBox.Show($"端口已存在!", "提示");
return;
}
b_suc = true;
}
finally
{
if (!b_suc)
{
m_Hoipital = null;
if (b_edit)
{
server.Hospitals.Add(hoipitalOld);
}
}
}
server.Hospitals.Add(m_Hoipital);
this.Close();
}
private void btn_Cancel_Click(object sender, EventArgs e)
{
this.Close();
}
}
}