实现简易赈灾物资发放登记系统---练习

namespace ConsoleApplication39
{
    class Program
    {
        //定义常量
        public const string CONNECTONSTRING = "server=.;database=zhenzai;uid=sa;pwd=5587725";
        //物资维护
        public static void WZweihu()
        {
            Console.WriteLine("物资库存维护");
            Console.Write("请输入物资名称:");
            string WzName = Console.ReadLine();
            Console.Write("请输入计量单位:");
            string Unit = Console.ReadLine();
            Console.Write("请输入库存数量:");
            int Num = Convert.ToInt32(Console.ReadLine());
            Console.Write("请输入物资单价:");
            string Price = Console.ReadLine();
            SqlConnection conn = new SqlConnection(CONNECTONSTRING);
            conn.Open();
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandText = "select * from KC where WzName='" + WzName + "'";
            SqlDataReader dr = cmd.ExecuteReader();
            if (dr.HasRows == false)
            {
                cmd.CommandText = "insert into KC values('" + WzName + "','" + Num.ToString() + "','" + Unit + "','" + Price + "')";
            }
            else
            {
                dr.Read();
                int x = Convert.ToInt32(dr["Num"]);
                Num += x;
                UPdate(WzName, Num);
            }
            Console.WriteLine("添加成功");
            conn.Close();
        }
        //物资列表
        public static void WZliebiao()
        {
            Console.WriteLine("物资库存列表如下");
            Console.WriteLine("*********************************************************************");
            Console.WriteLine("物资名称\t" + "库存数量\t" + "单价(元)\n");
            SqlConnection conn = new SqlConnection(CONNECTONSTRING);
            conn.Open();
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandText = "select * from KC";
            SqlDataReader dr = cmd.ExecuteReader();
            while (dr.Read())
            {
                string wzname = dr["WzName"].ToString();
                string num = dr["Num"].ToString();
                string unit = dr["Unit"].ToString();
                string price = dr["Price"].ToString();

                Console.WriteLine(wzname + "\t\t" + num + unit + "\t\t" + price + "\n");
            }
            conn.Close();
            Console.WriteLine("*********************************************************************");
        }
        //物资发放
        public static void WZfafang()
        {
            Console.WriteLine("物资发放");
            Console.Write("请输入发放物资:");
            string wzname = Console.ReadLine();
            SqlConnection conn = new SqlConnection(CONNECTONSTRING);
            conn.Open();
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandText = "select * from KC where WzName='" + wzname + "'";
            SqlDataReader dr = cmd.ExecuteReader();
            while (dr.Read())
            {
                string price = dr["Price"].ToString();
                string num = dr["Num"].ToString();
                string unit = dr["Unit"].ToString();
                Console.WriteLine("当前单价:" + price + "元");
                Console.WriteLine("当前库存:" + num + unit);
                fafang(wzname, price, unit);
            }
            conn.Close();

        }
        private static void fafang(string wzname, string price, string unit)
        {
            Console.Write("请输入发放数量:");
            string n = Console.ReadLine();

            if (checkNum(wzname, n) == true)
            {
                Console.Write("接收人:");
                string ren = Console.ReadLine();
                SqlConnection conn = new SqlConnection(CONNECTONSTRING);
                conn.Open();
                SqlCommand cmd = conn.CreateCommand();
                cmd.CommandText = "insert into FaFang values('" + wzname + "','" + n + "','" + unit + "','" + price + "','" + DateTime.Now + "','" + ren + "')";
                cmd.ExecuteNonQuery();

                conn.Close();
                Console.WriteLine("物资发放成功");
            }
            else
            {
                Console.WriteLine("请按回车返回界面,重新输入");
            }

        }
        //检查发放数量
        public static bool checkNum(string wzname, string num)
        {
            bool str = true;
            int n = Convert.ToInt32(num);

            SqlConnection conn = new SqlConnection(CONNECTONSTRING);
            conn.Open();
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandText = "select * from KC where WzName='" + wzname + "'";
            SqlDataReader dr = cmd.ExecuteReader();
            while (dr.Read())
            {
                int x = Convert.ToInt32(dr["Num"]);

                if (x > n)
                {
                    x -= n;

                    UPdate(wzname, x);

                    str = true;
                }
                else
                {
                    Console.WriteLine("库存不够无法发放");
                    str = false;
                }
            }
            conn.Close();
            return str;

        }
        //更新数据库
        public static void UPdate(string wzname, int num)
        {
            SqlConnection conn = new SqlConnection(CONNECTONSTRING);
            conn.Open();
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandText = "update KC set Num='" + num + "'where WzName='" + wzname + "'";
            cmd.ExecuteNonQuery();
            conn.Close();
        }
        //物资发放统计
        public static void WZtongji()
        {
            Console.WriteLine("物资发放统计");
            Console.WriteLine("*********************************************************************");
            Console.WriteLine("物资名称\t" + "发放数量\t" + "单价(元)\t" + "接收人\n");
            SqlConnection conn = new SqlConnection(CONNECTONSTRING);
            conn.Open();
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandText = "select * from FaFang";
            SqlDataReader dr = cmd.ExecuteReader();
            while (dr.Read())
            {
                string wzname = dr["WzName"].ToString();
                string num = dr["faNum"].ToString();
                string unit = dr["Unit"].ToString();
                string price = dr["faPrice"].ToString();
                string receiver = dr["receiver"].ToString();

                Console.WriteLine(wzname + "\t\t" + num + unit + "\t\t" + price + "\t\t" + receiver);
            }
            conn.Close();
            Console.WriteLine("*********************************************************************");
        }
        //界面
        static void Main(string[] args)
        {
            bool y = true;
            while (y == true)
            {
                Console.WriteLine("赈灾物资发放登记系统");
                Console.WriteLine("1.物资库存维护");
                Console.WriteLine("2.物资库存列表");
                Console.WriteLine("3.物资发放");
                Console.WriteLine("4.物资发放统计");
                Console.WriteLine("5.推出系统");
                Console.Write("请输入你的操作:");
                string x = Console.ReadLine();
                switch (x)
                {
                    case "1":
                        WZweihu();
                        break;
                    case "2":
                        WZliebiao();
                        break;
                    case "3":
                        WZfafang();
                        break;
                    case "4":
                        WZtongji();
                        break;
                    case "5":
                        y = false;
                        break;
                    default:
                        break;
                }
                Console.ReadLine();

                if (y == false)
                {
                    break;
                }

            }

        }
    }
}

转载于:https://www.cnblogs.com/likaixuan/p/4486839.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值