Exemplo n.º 1
0
        /// <summary>
        /// 更新服药时间信息
        /// </summary>
        /// <param name="info">服药时间信息</param>
        /// <returns>成功= true</returns>
        public bool UpdateTakeTimeVal(TakeTimeInfo info)
        {
            this.ClearParameters();
            StringBuilder sql = new StringBuilder();

            sql.Append("UPDATE Patient SET ");
            sql.Append("MorningHour = @MorningHour,");
            sql.Append("MorningMinute = @MorningMinute,");
            sql.Append("NoonHour = @NoonHour,");
            sql.Append("NoonMinute = @NoonMinute,");
            sql.Append("EveningHour = @EveningHour,");
            sql.Append("EveningMinute = @EveningMinute,");
            sql.Append("AdditionalHour = @AdditionalHour,");
            sql.Append("AdditionalMinute = @AdditionalMinute ");
            sql.Append("WHERE Id = @Id LIMIT 1");

            this.AddParameter("@MorningHour", info.MorningHour);
            this.AddParameter("@MorningMinute", info.MorningMinute);
            this.AddParameter("@NoonHour", info.NoonHour);
            this.AddParameter("@NoonMinute", info.NoonMinute);
            this.AddParameter("@EveningHour", info.EveningHour);
            this.AddParameter("@EveningMinute", info.EveningMinute);
            this.AddParameter("@AdditionalHour", info.AdditionalHour);
            this.AddParameter("@AdditionalMinute", info.AdditionalMinute);
            this.AddParameter("@Id", info.Id);

            int res = this.ExecuteNonQuery(sql.ToString());

            return(res == 1);
        }
Exemplo n.º 2
0
 /// <summary>
 /// 更新服药时间
 /// </summary>
 /// <param name="info">服药时间信息</param>
 /// <returns>成功=true</returns>
 public static bool UpdateTakeTime(TakeTimeInfo info)
 {
     using (IPatientDal dal = Factory.CreateMedicineDalWrite())
     {
         return(dal.UpdateTakeTimeVal(info));
     }
 }
Exemplo n.º 3
0
        /// <summary>
        /// 保存服药时间
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSaveTakeTime_Click(object sender, EventArgs e)
        {
            if (labId.Text == "-1")
            {
                MessageBox.Show("请先选择病人");
                return;
            }
            TakeTimeInfo model;

            try
            {
                model = new TakeTimeInfo
                {
                    Id               = Convert.ToInt32(labId.Text ?? "-1"),
                    MorningHour      = Convert.ToInt32(txtMorningHour.Text ?? "-1"),
                    MorningMinute    = Convert.ToInt32(txtMorningMinute.Text ?? "-1"),
                    NoonHour         = Convert.ToInt32(txtNoonHour.Text ?? "-1"),
                    NoonMinute       = Convert.ToInt32(txtnoonMinute.Text ?? "-1"),
                    EveningHour      = Convert.ToInt32(txtEveningHour.Text ?? "-1"),
                    EveningMinute    = Convert.ToInt32(txtEveningMinute.Text ?? "-1"),
                    AdditionalHour   = Convert.ToInt32(txtAddHour.Text ?? "-1"),
                    AdditionalMinute = Convert.ToInt32(txtAddMinute.Text ?? "-1"),
                };
            }
            catch (Exception ex)
            {
                MessageBox.Show("请输入数字");
                return;
            }
            if (!Common.IsHour(model.MorningHour) ||
                !Common.IsHour(model.NoonHour) ||
                !Common.IsHour(model.EveningHour) ||
                !Common.IsHour(model.AdditionalHour))
            {
                MessageBox.Show("小时必须在1到24之间");
                return;
            }
            if (!Common.IsMinute(model.MorningMinute) ||
                !Common.IsMinute(model.NoonMinute) ||
                !Common.IsMinute(model.EveningMinute) ||
                !Common.IsMinute(model.AdditionalMinute))
            {
                MessageBox.Show("分钟必须在0到59之间");
                return;
            }
            MedicineLogic.UpdateTakeTime(model);
            SendTakeTime(model);
        }
Exemplo n.º 4
0
        /// <summary>
        /// 发送服药时间
        /// </summary>
        /// <param name="info">服药时间信息</param>
        private void SendTakeTime(TakeTimeInfo info)
        {
            Device device = MedicineLogic.QueryDeviceById(info.Id);

            byte[] zero          = { 0x00 };
            byte[] nodata        = { 0xff };
            byte[] deviceNo      = device.DeviceNo <= 255 ? zero.Concat(Common.IntToHexByte(device.DeviceNo)).ToArray() : Common.IntToHexByte(device.DeviceNo);
            byte[] funcNo        = { 0x05 };
            byte[] morningHour   = info.MorningHour == -1 ? nodata : Common.IntToHexByte(info.MorningHour);
            byte[] morningMinute = info.MorningMinute == -1 ? nodata : Common.IntToHexByte(info.MorningMinute);

            byte[] noonHour   = info.NoonHour == -1 ? nodata : Common.IntToHexByte(info.NoonHour);
            byte[] noonMinute = info.NoonMinute == -1 ? nodata : Common.IntToHexByte(info.NoonMinute);

            byte[] eveningHour   = info.EveningHour == -1 ? nodata : Common.IntToHexByte(info.EveningHour);
            byte[] eveningMinute = info.EveningMinute == -1 ? nodata : Common.IntToHexByte(info.EveningMinute);

            byte[] addHour   = info.AdditionalHour == -1 ? nodata : Common.IntToHexByte(info.AdditionalHour);
            byte[] addMinute = info.AdditionalMinute == -1 ? nodata : Common.IntToHexByte(info.AdditionalMinute);

            byte[] byteflg = Common.BuildFlg();

            byte[] data =
                deviceNo.Concat(funcNo)
                .Concat(morningHour)
                .Concat(morningMinute)
                .Concat(noonHour)
                .Concat(noonMinute)
                .Concat(eveningHour)
                .Concat(eveningMinute)
                .Concat(addHour)
                .Concat(addMinute)
                .Concat(byteflg)
                .ToArray();
            AutoSendData(device.DeviceIP, data, byteflg);
        }