コード例 #1
0
ファイル: WmsRibbonMain.cs プロジェクト: upjd/JWMS_Y
        /// <summary>
        /// 是否有权限操作
        /// </summary>
        /// <returns></returns>
        private bool CanOperator(string cKey)
        {
            var cmd = new SqlCommand("select * from BRoleFunction where rCode=@rCode and fCode=@fCode and isnull(bRight,0)=1");

            cmd.Parameters.AddWithValue("@rCode", BaseStructure.LoginRoleId);
            cmd.Parameters.AddWithValue("@fCode", cKey);
            var wf = new WmsFunction(BaseStructure.WmsCon);

            return(wf.BoolExistTable(cmd));
        }
コード例 #2
0
        private void biSave_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            //判断什么未填写
            var nullstr = CheckNull();

            if (!string.IsNullOrEmpty(nullstr))
            {
                MessageBox.Show(nullstr + @"必填,请填写完成!", @"必填", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            if (!WmsFunction.IsNumAndEnCh(txtcLotNo.Text))
            {
                MessageBox.Show(@"请输入正确的批次格式,只允许有数字与字母");
                return;
            }

            var cmdInvCode = new SqlCommand("select * from iT_Product where cInvCode=@cInvCode");

            cmdInvCode.Parameters.AddWithValue("@cInvCode", txtcInvCode.Value);
            var wfun = new WmsFunction(BaseStructure.WmsCon);

            if (!wfun.BoolExistTable(cmdInvCode))
            {
                MessageBox.Show(@"产品不正确,请填写完成!", @"必填", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            using (var con = new SqlConnection(BaseStructure.WmsCon))
            {
                using (var cmd = new SqlCommand {
                    CommandType = CommandType.StoredProcedure, Connection = con, CommandTimeout = 180
                })
                {
                    if (string.IsNullOrEmpty(lblTitleMain.lblAutoID.Text))
                    {
                        int iSerialQty;
                        if (!int.TryParse(beiSerialQty.EditValue.ToString(), out iSerialQty))
                        {
                            MessageBox.Show(@"输入的列序数不正确,请输入正整数");
                            return;
                        }
                        if (iSerialQty < 1 || iSerialQty > 100000)
                        {
                            MessageBox.Show(@"输入的列序数不能小于1,并且不能大于10万");
                            return;
                        }
                        _cGuid          = Guid.NewGuid().ToString();
                        cmd.CommandText = "proc_Bar_ProductInsert";
                        var idParameter = new SqlParameter("@AutoID", SqlDbType.Int)
                        {
                            Direction = ParameterDirection.Output
                        };
                        var cBoNoParameter = new SqlParameter("@cSerialNumber", SqlDbType.NVarChar, 50)
                        {
                            Direction = ParameterDirection.Output
                        };

                        //获取id的返回值和采购订单号的返回值
                        cmd.Parameters.Add(idParameter);
                        cmd.Parameters.Add(cBoNoParameter);

                        cmd.Parameters.AddWithValue("@cGuid", _cGuid);
                        cmd.Parameters.AddWithValue("@iSerialQty", iSerialQty);
                    }
                    else
                    {
                        cmd.CommandText = "proc_Bar_ProductUpdate";
                        cmd.Parameters.AddWithValue("@AutoID", lblTitleMain.lblAutoID.Text);
                    }

                    //赋参数
                    cmd.Parameters.AddWithValue("@cLotNo", txtcLotNo.Text);
                    cmd.Parameters.AddWithValue("@iQuantity", uneiQuantity.Value);
                    cmd.Parameters.AddWithValue("@dDate", dtpdDate.Value);
                    cmd.Parameters.AddWithValue("@cInvCode", txtcInvCode.Text);
                    cmd.Parameters.AddWithValue("@cInvName", utecInvName.Text);
                    cmd.Parameters.AddWithValue("@cInvPackStd", txtcInvPackStd.Text);
                    cmd.Parameters.AddWithValue("@cInvStd", txtcInvStd.Text);
                    cmd.Parameters.AddWithValue("@cInvPackStyle", txtcInvPackStyle.Text);
                    cmd.Parameters.AddWithValue("@cDefaultVendor", txtcVendor.Text);
                    cmd.Parameters.AddWithValue("@cMassUnit", lblcMassUnit.Text);
                    cmd.Parameters.AddWithValue("@iMassDate", uneiMassDate.Value);
                    cmd.Parameters.AddWithValue("@cKeepRequire", txtcKeepRequire.Text);
                    cmd.Parameters.AddWithValue("@cProperty", "");
                    cmd.Parameters.AddWithValue("@cMemo", txtcMemo.Text);
                    con.Open();

                    try
                    {
                        var ieffect = cmd.ExecuteNonQuery();
                        //判断是否是真的完成了主表的写入
                        if (ieffect > 0)
                        {
                            if (string.IsNullOrEmpty(lblTitleMain.lblAutoID.Text))
                            {
                                lblTitleMain.lblAutoID.Text        = cmd.Parameters["@AutoID"].Value.ToString();
                                lblTitleMain.lblcSerialNumber.Text = cmd.Parameters["@cSerialNumber"].Value.ToString();
                            }
                        }

                        MessageBox.Show(@"保存成功", @"成功", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        SetControlDisable();
                        SetPanelVlaue(lblTitleMain.lblAutoID.Text);
                        var bPrint = MessageBox.Show(@"是否立即打印", @"是否", MessageBoxButtons.YesNo, MessageBoxIcon.Question) ==
                                     DialogResult.Yes;
                        if (bPrint)
                        {
                            PrinterDone();
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                }
            }
        }