Esempio n. 1
0
        /// <summary>
        /// 获得实体
        /// </summary>
        /// <returns></returns>
        private StorgeLock GetEntity()
        {
            StorgeLock entity = new StorgeLock();

            entity.ID = saveLockID;
            entity.SelectByID();
            entity.WHID     = saveItemWHID;
            entity.ItemCode = saveItemCode;
            entity.ItemName = saveItemName;
            entity.ItemStd  = saveItemStd;
            entity.LockSO   = txtLockSO.Text.Trim();
            entity.LockQty  = SysConvert.ToDecimal(txtLockQty.Text.Trim());
            entity.LockTime = DateTime.Now.Date;
            //ParamSetRule rule = new ParamSetRule();
            //if (this.FormListAID == (int)WHType.色纱)
            //{
            //    entity.NeedDate = DateTime.Now.AddDays(rule.RShowInt((int)ParamSet.色纱锁定期限));
            //}
            //else if (this.FormListAID == (int)WHType.坯纱)
            //{
            //    entity.NeedDate = DateTime.Now.AddDays(rule.RShowInt((int)ParamSet.坯纱锁定期限));
            //}
            entity.LockOPID = SysConvert.ToString(drpOPID.EditValue);
            entity.LockDesc = txtRemark.Text.Trim();
            entity.Remark   = txtRemark.Text.Trim();
            //entity.StorgeID = saveStorgeID;
            entity.Batch       = saveBatch;
            entity.VendorBatch = saveVendorBatch;
            entity.ColorNum    = saveColorNum;
            entity.ColorName   = saveColorName;
            entity.JarNum      = saveJarNum;
            //entity.DSN = saveDSN;
            //entity.SSN = saveSSN;
            return(entity);
        }
Esempio n. 2
0
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="p_Entity">实体类</param>
        /// <returns>操作影响的记录行数</returns>
        public override int Delete(BaseEntity p_Entity)
        {
            try
            {
                StorgeLock MasterEntity = (StorgeLock)p_Entity;
                if (MasterEntity.ID == 0)
                {
                    return(0);
                }

                //删除主表数据
                string Sql = "";
                Sql = "DELETE FROM WH_StorgeLock WHERE " + "ID=" + SysString.ToDBString(MasterEntity.ID);
                //执行
                int AffectedRows = 0;
                if (!this.sqlTransFlag)
                {
                    AffectedRows = this.ExecuteNonQuery(Sql);
                }
                else
                {
                    AffectedRows = sqlTrans.ExecuteNonQuery(Sql);
                }

                return(AffectedRows);
            }
            catch (BaseException E)
            {
                throw new BaseException(E.Message, E);
            }
            catch (Exception E)
            {
                throw new BaseException(FrameWorkMessage.GetAlertMessage((int)Message.CommonDBDelete), E);
            }
        }
Esempio n. 3
0
        /// <summary>
        /// 锁定库存
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnLockStorge_Click(object sender, EventArgs e)
        {
            try
            {
                if (!FCommon.RightCheck(this.FormID, this.FormListAID, this.FormListBID, RightSub.新增))
                {
                    this.ShowMessage("你没有此操作权限");
                    return;
                }
                if (saveStorgeID == 0)
                {
                    this.ShowMessage("请先查询要操作的记录");
                    return;
                }
                if (SysConvert.ToFloat(txtLockQty.Text.Trim()) > SysConvert.ToFloat(txtLeftQty.Text.Trim()))
                {
                    this.ShowMessage("锁定数量大于当前可使用数量,不能实现库存锁定");
                    return;
                }
                if (!NewCheckCorrect())
                {
                    return;
                }
                //if (!CheckCorrectLock())
                //{
                //    return;
                //}
                StorgeLockRule rule   = new StorgeLockRule();
                StorgeLock     entity = this.GetEntity();
                rule.RLock(entity, true);

                string tempwhid     = saveItemWHID;
                string tempitemcode = saveItemCode;
                string tempStorgeID = saveStorgeID.ToString();
                BindGrid();
                ProcessGrid.GridViewFocus(gridView1, new string[1] {
                    "ID"
                }, new string[1] {
                    tempStorgeID
                });
            }
            catch (Exception E)
            {
                this.ShowMessage(E.Message);
            }
        }
Esempio n. 4
0
 /// <summary>
 /// 删除
 /// </summary>
 /// <param name="p_BE">要删除的实体</param>
 /// <param name="sqlTrans">事务类</param>
 public void RDelete(BaseEntity p_BE, IDBTransAccess sqlTrans)
 {
     try
     {
         this.CheckCorrect(p_BE);
         StorgeLock    entity  = (StorgeLock)p_BE;
         StorgeLockCtl control = new StorgeLockCtl(sqlTrans);
         control.Delete(entity);
     }
     catch (BaseException)
     {
         throw;
     }
     catch (Exception E)
     {
         throw new BaseException(E.Message);
     }
 }
Esempio n. 5
0
 /// <summary>
 /// 新增(传入事务处理)
 /// </summary>
 /// <param name="p_BE">要新增的实体</param>
 /// <param name="sqlTrans">事务类</param>
 public void RAdd(BaseEntity p_BE, IDBTransAccess sqlTrans)
 {
     try
     {
         this.CheckCorrect(p_BE);
         StorgeLock    entity  = (StorgeLock)p_BE;
         StorgeLockCtl control = new StorgeLockCtl(sqlTrans);
         entity.ID = (int)EntityIDTable.GetID((long)SysEntity.WH_StorgeLock, sqlTrans);
         control.AddNew(entity);
     }
     catch (BaseException)
     {
         throw;
     }
     catch (Exception E)
     {
         throw new BaseException(E.Message);
     }
 }
Esempio n. 6
0
        /// <summary>
        /// 新增
        /// </summary>
        /// <param name="p_Entity">实体类</param>
        /// <returns>操作影响的记录行数</returns>
        public override int AddNew(BaseEntity p_Entity)
        {
            try
            {
                StorgeLock MasterEntity = (StorgeLock)p_Entity;
                if (MasterEntity.ID == 0)
                {
                    return(0);
                }

                //新增主表数据
                StringBuilder MasterField = new StringBuilder();
                StringBuilder MasterValue = new StringBuilder();
                MasterField.Append("INSERT INTO WH_StorgeLock(");
                MasterValue.Append(" VALUES(");
                MasterField.Append("ID" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.ID) + ",");
                MasterField.Append("WHID" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.WHID) + ",");
                MasterField.Append("ItemCode" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.ItemCode) + ",");
                MasterField.Append("ItemName" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.ItemName) + ",");
                MasterField.Append("ItemStd" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.ItemStd) + ",");
                MasterField.Append("Batch" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.Batch) + ",");
                MasterField.Append("VendorBatch" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.VendorBatch) + ",");
                MasterField.Append("JarNum" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.JarNum) + ",");
                MasterField.Append("ColorNum" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.ColorNum) + ",");
                MasterField.Append("ColorName" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.ColorName) + ",");
                MasterField.Append("LockQty" + ",");
                if (MasterEntity.LockQty != 0)
                {
                    MasterValue.Append(SysString.ToDBString(MasterEntity.LockQty) + ",");
                }
                else
                {
                    MasterValue.Append("null,");
                }

                MasterField.Append("LockSO" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.LockSO) + ",");
                MasterField.Append("LockDesc" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.LockDesc) + ",");
                MasterField.Append("LockOPID" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.LockOPID) + ",");
                MasterField.Append("NeedDate" + ",");
                if (MasterEntity.NeedDate != SystemConfiguration.DateTimeDefaultValue)
                {
                    MasterValue.Append(SysString.ToDBString(MasterEntity.NeedDate.ToString("yyyy-MM-dd HH:mm:ss")) + ",");
                }
                else
                {
                    MasterValue.Append("null,");
                }

                MasterField.Append("LockTime" + ",");
                if (MasterEntity.LockTime != SystemConfiguration.DateTimeDefaultValue)
                {
                    MasterValue.Append(SysString.ToDBString(MasterEntity.LockTime.ToString("yyyy-MM-dd HH:mm:ss")) + ",");
                }
                else
                {
                    MasterValue.Append("null,");
                }

                MasterField.Append("LastUpdTime" + ",");
                if (MasterEntity.LastUpdTime != SystemConfiguration.DateTimeDefaultValue)
                {
                    MasterValue.Append(SysString.ToDBString(MasterEntity.LastUpdTime.ToString("yyyy-MM-dd HH:mm:ss")) + ",");
                }
                else
                {
                    MasterValue.Append("null,");
                }

                MasterField.Append("LastUpdOP" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.LastUpdOP) + ",");
                MasterField.Append("Remark" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.Remark) + ",");
                MasterField.Append("GoodsCode" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.GoodsCode) + ",");
                MasterField.Append("GoodsLevel" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.GoodsLevel) + ",");
                MasterField.Append("MWidth" + ",");
                if (MasterEntity.MWidth != 0)
                {
                    MasterValue.Append(SysString.ToDBString(MasterEntity.MWidth) + ",");
                }
                else
                {
                    MasterValue.Append("null,");
                }

                MasterField.Append("MWeight" + ",");
                if (MasterEntity.MWeight != 0)
                {
                    MasterValue.Append(SysString.ToDBString(MasterEntity.MWeight) + ",");
                }
                else
                {
                    MasterValue.Append("null,");
                }

                MasterField.Append("WeightUnit" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.WeightUnit) + ",");
                MasterField.Append("VColorNum" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.VColorNum) + ",");
                MasterField.Append("VColorName" + ",");
                MasterValue.Append(SysString.ToDBString(MasterEntity.VColorName) + ",");
                MasterField.Append("VItemCode" + ")");
                MasterValue.Append(SysString.ToDBString(MasterEntity.VItemCode) + ")");



                //执行
                int AffectedRows = 0;
                if (!this.sqlTransFlag)
                {
                    AffectedRows = this.ExecuteNonQuery(MasterField.Append(MasterValue.ToString()).ToString());
                }
                else
                {
                    AffectedRows = sqlTrans.ExecuteNonQuery(MasterField.Append(MasterValue.ToString()).ToString());
                }
                return(AffectedRows);
            }
            catch (BaseException E)
            {
                throw new BaseException(E.Message, E);
            }
            catch (Exception E)
            {
                throw new BaseException(FrameWorkMessage.GetAlertMessage((int)Message.CommonDBInsert), E);
            }
        }
Esempio n. 7
0
        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="p_Entity">实体类</param>
        /// <returns>操作影响的记录行数</returns>
        public override int Update(BaseEntity p_Entity)
        {
            try
            {
                StorgeLock MasterEntity = (StorgeLock)p_Entity;
                if (MasterEntity.ID == 0)
                {
                    return(0);
                }

                //更新主表数据
                StringBuilder UpdateBuilder = new StringBuilder();
                UpdateBuilder.Append("UPDATE WH_StorgeLock SET ");
                UpdateBuilder.Append(" ID=" + SysString.ToDBString(MasterEntity.ID) + ",");
                UpdateBuilder.Append(" WHID=" + SysString.ToDBString(MasterEntity.WHID) + ",");
                UpdateBuilder.Append(" ItemCode=" + SysString.ToDBString(MasterEntity.ItemCode) + ",");
                UpdateBuilder.Append(" ItemName=" + SysString.ToDBString(MasterEntity.ItemName) + ",");
                UpdateBuilder.Append(" ItemStd=" + SysString.ToDBString(MasterEntity.ItemStd) + ",");
                UpdateBuilder.Append(" Batch=" + SysString.ToDBString(MasterEntity.Batch) + ",");
                UpdateBuilder.Append(" VendorBatch=" + SysString.ToDBString(MasterEntity.VendorBatch) + ",");
                UpdateBuilder.Append(" JarNum=" + SysString.ToDBString(MasterEntity.JarNum) + ",");
                UpdateBuilder.Append(" ColorNum=" + SysString.ToDBString(MasterEntity.ColorNum) + ",");
                UpdateBuilder.Append(" ColorName=" + SysString.ToDBString(MasterEntity.ColorName) + ",");

                if (MasterEntity.LockQty != 0)
                {
                    UpdateBuilder.Append(" LockQty=" + SysString.ToDBString(MasterEntity.LockQty) + ",");
                }
                else
                {
                    UpdateBuilder.Append(" LockQty=null,");
                }

                UpdateBuilder.Append(" LockSO=" + SysString.ToDBString(MasterEntity.LockSO) + ",");
                UpdateBuilder.Append(" LockDesc=" + SysString.ToDBString(MasterEntity.LockDesc) + ",");
                UpdateBuilder.Append(" LockOPID=" + SysString.ToDBString(MasterEntity.LockOPID) + ",");

                if (MasterEntity.NeedDate != SystemConfiguration.DateTimeDefaultValue)
                {
                    UpdateBuilder.Append(" NeedDate=" + SysString.ToDBString(MasterEntity.NeedDate.ToString("yyyy-MM-dd HH:mm:ss")) + ",");
                }
                else
                {
                    UpdateBuilder.Append(" NeedDate=null,");
                }


                if (MasterEntity.LockTime != SystemConfiguration.DateTimeDefaultValue)
                {
                    UpdateBuilder.Append(" LockTime=" + SysString.ToDBString(MasterEntity.LockTime.ToString("yyyy-MM-dd HH:mm:ss")) + ",");
                }
                else
                {
                    UpdateBuilder.Append(" LockTime=null,");
                }


                if (MasterEntity.LastUpdTime != SystemConfiguration.DateTimeDefaultValue)
                {
                    UpdateBuilder.Append(" LastUpdTime=" + SysString.ToDBString(MasterEntity.LastUpdTime.ToString("yyyy-MM-dd HH:mm:ss")) + ",");
                }
                else
                {
                    UpdateBuilder.Append(" LastUpdTime=null,");
                }

                UpdateBuilder.Append(" LastUpdOP=" + SysString.ToDBString(MasterEntity.LastUpdOP) + ",");
                UpdateBuilder.Append(" Remark=" + SysString.ToDBString(MasterEntity.Remark) + ",");
                UpdateBuilder.Append(" GoodsCode=" + SysString.ToDBString(MasterEntity.GoodsCode) + ",");
                UpdateBuilder.Append(" GoodsLevel=" + SysString.ToDBString(MasterEntity.GoodsLevel) + ",");

                if (MasterEntity.MWidth != 0)
                {
                    UpdateBuilder.Append(" MWidth=" + SysString.ToDBString(MasterEntity.MWidth) + ",");
                }
                else
                {
                    UpdateBuilder.Append(" MWidth=null,");
                }


                if (MasterEntity.MWeight != 0)
                {
                    UpdateBuilder.Append(" MWeight=" + SysString.ToDBString(MasterEntity.MWeight) + ",");
                }
                else
                {
                    UpdateBuilder.Append(" MWeight=null,");
                }

                UpdateBuilder.Append(" WeightUnit=" + SysString.ToDBString(MasterEntity.WeightUnit) + ",");
                UpdateBuilder.Append(" VColorNum=" + SysString.ToDBString(MasterEntity.VColorNum) + ",");
                UpdateBuilder.Append(" VColorName=" + SysString.ToDBString(MasterEntity.VColorName) + ",");
                UpdateBuilder.Append(" VItemCode=" + SysString.ToDBString(MasterEntity.VItemCode));

                UpdateBuilder.Append(" WHERE " + "ID=" + SysString.ToDBString(MasterEntity.ID));



                //执行
                int AffectedRows = 0;
                if (!this.sqlTransFlag)
                {
                    AffectedRows = this.ExecuteNonQuery(UpdateBuilder.ToString());
                }
                else
                {
                    AffectedRows = sqlTrans.ExecuteNonQuery(UpdateBuilder.ToString());
                }
                return(AffectedRows);
            }
            catch (BaseException E)
            {
                throw new BaseException(E.Message, E);
            }
            catch (Exception E)
            {
                throw new BaseException(FrameWorkMessage.GetAlertMessage((int)Message.CommonDBUpdate), E);
            }
        }
Esempio n. 8
0
        /// <summary>
        /// 解锁
        /// </summary>
        /// <param name="p_StorgeLockID">锁定记录ID</param>
        /// <param name="sqlTrans">事务类</param>
        public void RUnLock(int p_StorgeLockID, decimal p_UnLockQty, string p_Remark, bool p_AboveFlag, IDBTransAccess sqlTrans)
        {
            try
            {
                StorgeLock entity = new StorgeLock(sqlTrans);
                entity.ID = p_StorgeLockID;
                entity.SelectByID();

                StorgeLockHisRule rule      = new StorgeLockHisRule();
                StorgeLockHis     entityhis = new StorgeLockHis(sqlTrans);

                //entityhis.StorgeID = p_StorgeLockID;
                //entityhis.LockStorgeID = p_StorgeLockID;
                entityhis.ID   = entity.ID;
                entityhis.WHID = entity.WHID;
                // entityhis.StorgeID = entity.StorgeID;
                entityhis.ItemCode = entity.ItemCode;
                entityhis.ItemName = entity.ItemName;
                entityhis.ItemStd  = entity.ItemStd;
                entityhis.LockOPID = entity.LockOPID;
                //entityhis.LockQty = entity.LockQty;
                entityhis.LockSO      = entity.LockSO;
                entityhis.Batch       = entity.Batch;
                entityhis.VendorBatch = entity.VendorBatch;
                entityhis.ColorName   = entity.ColorName;
                entityhis.ColorNum    = entity.ColorNum;
                entityhis.JarNum      = entity.JarNum;
                entityhis.VendorBatch = entity.VendorBatch;
                entityhis.LockTime    = entity.LockTime;
                entityhis.NeedDate    = entity.NeedDate;
                entityhis.LockDesc    = entity.Remark;
                //entityhis.LockTypeID = (int)LockType.解除锁定;

                //entityhis.LockQty = p_UnLockQty;
                //entityhis.UnLockQty = p_UnLockQty;
                //entityhis.UnlockOPID = ParamConfig.LoginID;
                //entityhis.UnlockTime = DateTime.Now;
                //entityhis.UnlockDesc = p_Remark;
                entityhis.Remark = p_Remark;

                entityhis.LastUpdOP   = ParamConfig.LoginName;
                entityhis.LastUpdTime = DateTime.Now;

                if (p_UnLockQty >= entity.LockQty)//已经全部解锁
                {
                    if (p_AboveFlag && (p_UnLockQty > entity.LockQty))
                    {
                        throw new Exception("解锁数量:" + p_UnLockQty.ToString() + " 大于当前锁定数量:" + entity.LockQty.ToString() + ",解锁失败");
                    }
                    this.RDelete(entity, sqlTrans);
                    StorgeRule rules = new StorgeRule();
                    // rules.UpdateStorge(entity.StorgeID, SysConvert.ToFloat(entity.LockQty), false, sqlTrans);
                }
                else//未全部解锁
                {
                    entity.LockQty     = entity.LockQty - p_UnLockQty;
                    entity.LastUpdOP   = ParamConfig.LoginName;
                    entity.LastUpdTime = DateTime.Now.Date;
                    this.RUpdate(entity, sqlTrans);
                    StorgeRule rules = new StorgeRule();
                    //rules.UpdateStorge(entity.StorgeID, SysConvert.ToFloat(p_UnLockQty), false, sqlTrans);
                }

                rule.RAdd(entityhis, sqlTrans);//新增解锁历史记录
            }
            catch (BaseException)
            {
                throw;
            }
            catch (Exception E)
            {
                throw new BaseException(E.Message);
            }
        }
Esempio n. 9
0
 /// <summary>
 /// 检查将要操作的数据是否符合业务规则
 /// </summary>
 /// <param name="p_BE"></param>
 private void CheckCorrect(BaseEntity p_BE)
 {
     StorgeLock entity = (StorgeLock)p_BE;
 }
Esempio n. 10
0
        /// <summary>
        /// 锁定库存(传入事务处理)
        /// </summary>
        /// <param name="p_BE">要新增的实体</param>
        /// <param name="sqlTrans">事务类</param>
        public void RLock(BaseEntity p_BE, bool p_CheckLockNum, IDBTransAccess sqlTrans)
        {
            try
            {
                this.CheckCorrect(p_BE);
                StorgeLock entity = (StorgeLock)p_BE;

                string sql = string.Empty;
                //DataTable dt;
                //if (p_CheckLockNum)//校验是否超过最大锁定次数
                //{
                //    ParamSetRule ruleparam = new ParamSetRule();
                //    sql = "SELECT COUNT(*) FROM WH_StorgeLockHis WHERE ItemCode=" + SysString.ToDBString(entity.ItemCode);
                //    sql += " AND LockOPID=" + SysString.ToDBString(entity.LockOPID);
                //    sql += " AND LockTime BETWEEN " + SysString.ToDBString(DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-1");
                //    sql += " AND " + SysString.ToDBString(DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month).ToString());
                //    dt = sqlTrans.Fill(sql);
                //    if (SysConvert.ToInt32(dt.Rows[0][0]) >= ruleparam.RShowInt((int)ParamSet.锁定次数))
                //    {
                //        throw new Exception("纱种:" + entity.ItemName + " 本月已达到最大锁定次数" + dt.Rows[0][0].ToString() + ",锁定失败");
                //    }
                //}

                StorgeLockHisRule rule      = new StorgeLockHisRule();
                StorgeLockHis     entityhis = new StorgeLockHis(sqlTrans);
                entityhis.ID   = entity.ID;
                entityhis.WHID = entity.WHID;
                //entityhis.StorgeID = entity.StorgeID;
                entityhis.ItemCode = entity.ItemCode;
                entityhis.ItemName = entity.ItemName;
                entityhis.ItemStd  = entity.ItemStd;
                entityhis.LockDesc = entity.Remark;
                entityhis.LockOPID = entity.LockOPID;
                //entityhis.LockQty = entity.LockQty;
                entityhis.LockSO      = entity.LockSO;
                entityhis.LockTime    = entity.LockTime;
                entityhis.NeedDate    = entity.NeedDate;
                entityhis.Batch       = entity.Batch;
                entityhis.VendorBatch = entity.VendorBatch;
                entityhis.ColorName   = entity.ColorName;
                entityhis.ColorNum    = entity.ColorNum;
                entityhis.JarNum      = entity.JarNum;
                //entityhis.WHTypeID = entity.WHTypeID;
                //entityhis.LockTypeID = (int)LockType.锁定;
                entity.LastUpdOP   = ParamConfig.LoginName;
                entity.LastUpdTime = DateTime.Now;
                this.RAdd(entity, sqlTrans);
                //更新库存
                StorgeRule rules = new StorgeRule();
                // rules.UpdateStorge(entity.StorgeID, SysConvert.ToFloat(entity.LockQty), true, sqlTrans);
                //新增锁定历史数据
                rule.RAdd(entityhis, sqlTrans);
            }
            catch (BaseException)
            {
                throw;
            }
            catch (Exception E)
            {
                throw new BaseException(E.Message);
            }
        }