Exemple #1
0
 //删除
 private void Delete(object sender, EventArgs e)
 {
     this.dal.Delete(guid);
     this.model       = new MaterialPlan();
     this.model.dDate = DateTime.Now.Date;
     this.RefreshUI();
 }
Exemple #2
0
 //取消
 private void Cancel(object sender, EventArgs e)
 {
     this.opState = OpState.Browse;
     this.model   = dal.Get(guid);
     if (model == null)
     {
         model = new MaterialPlan();
     }
     this.RefreshUI();
 }
Exemple #3
0
        //新增
        private void Add(object sender, EventArgs e)
        {
            model        = new MaterialPlan();
            model.MPCode = "自动生成";
            model.cMaker = Information.UserInfo.cUser_Name;
            model.dDate  = DateTime.Now.Date;

            model.dtDetails = dal.GetBody("");

            this.opState = OpState.Add;

            this.RefreshUI();
        }
Exemple #4
0
        //删除
        private void Delete(object sender, EventArgs e)
        {
            var m = dal.Get(model.Guid);

            if (MsgBox.ShowYesNoMsg("确定删除当前拣货单?") == DialogResult.Yes)
            {
                this.dal.Delete(model.Guid);
                this.model = new MaterialPlan()
                {
                    dDate = DateTime.Now.Date
                };
                this.RefreshUI();
            }
        }
Exemple #5
0
        //保存
        private void Save(object sender, EventArgs e)
        {
            SaveCheck();

            if (this.opState == OpState.Add)
            {
                this.guid = dal.Add(model);
            }
            else if (this.opState == OpState.Update)
            {
                model.cModifier = Information.UserInfo.cUser_Name;
                //dal.Update(model);
            }
            model        = dal.Get(guid);
            this.opState = OpState.Browse;
            RefreshUI();
        }
Exemple #6
0
        //审核
        private void Audit(object obj, EventArgs e)
        {
            //try
            //{
            //    U8PuStoreIn(this.model);
            //}
            //catch (Exception ex)
            //{
            //    MsgBox.ShowInfoMsg("生成U8材料出库单出错: " + ex.Message);
            //    return;
            //}

            new U8OperationClient().AuditMaterialPlan(model.Guid, Information.UserInfo.cUser_Name);

            MsgBox.ShowInfoMsg("生成U8材料出库单成功");

            model = dal.Get(model.Guid);
            RefreshUI();
        }
Exemple #7
0
        //弃审
        private void UnAudit(object sender, EventArgs e)
        {
            //new U8OperationClient().UnAuditMaterialPlan(guid);
            this.model = dal.Get(model.Guid);

            if (model.dAuditDate == null && string.IsNullOrEmpty(model.cAuditPsn))
            {
                throw new Exception("当前拣货单未审核,不需要弃审!");
            }
            else if (dal.ExistU8RD11(model.U8RDId))
            {
                throw new Exception("当前拣货单已经存在关联的U8材料出库单[" + model.U8RDCode + "],不能弃审!");
            }

            dal.UnAudit(model.Guid);

            this.model = dal.Get(model.Guid);

            RefreshUI();
        }
Exemple #8
0
        //保存
        private void Save(object sender, EventArgs e)
        {
            SaveCheck();

            string guid = null;

            if (this.opState == OpState.Add)
            {
                guid = dal.Add(model);
            }
            else if (this.opState == OpState.Update)
            {
                guid              = model.Guid;
                model.cModifier   = Information.UserInfo.cUser_Name;
                model.dModifyDate = DateTime.Now;
                dal.Update(model);
            }
            model        = dal.Get(guid);
            this.opState = OpState.Browse;
            RefreshUI();
        }
Exemple #9
0
 //弃审
 private void UnAudit(object sender, EventArgs e)
 {
     new U8OperationClient().UnAuditMaterialPlan(guid);
     model = dal.Get(guid);
     RefreshUI();
 }
Exemple #10
0
        public string Add(MaterialPlan model, SqlTransaction tran = null)
        {
            #region 增加
            string guid = Guid.NewGuid().ToString();

            model.Guid        = guid;
            model.MPCode      = GetMPCode();
            model.dCreateDate = DateTime.Now;

            var dlist = model.dtDetails.ToDynamicList();
            dlist.ForEach(x => x.guid = guid);

            string[] Fields = new string[]
            {
                "cModifier", "dModifyDate", "cAuditPsn", "dAuditDate", "U8RDId"
            };

            string[] DFields = new string[] { "U8Id", "U8AutoId", "AuditPsn", "AuditDate" };

            string sql  = CommonDAL.GetInsertSql("MaterialPlan", filterFields: Fields);
            string sqlD = CommonDAL.GetInsertSql("MaterialPlans", filterFields: DFields);
            sqlD += ";update MaterialRequest set bMP = 1 where guid = @mrGuid ";
            sqlD += ";update t3 set rQuantity = t1.iQuantity from MaterialPlans t1";
            sqlD += " join MaterialPlan MP on t1.Guid = MP.Guid";
            sqlD += " join MaterialRequest t2 on t1.mrGuid = t2.guid";
            sqlD += " join mom_cardChildren t3 on t2.CardChildId = t3.AutoId";
            sqlD += " where MP.guid = @guid";


            if (tran == null)
            {
                var conn = DbHelperSQL.GetConnection();
                conn.Open();
                tran = conn.BeginTransaction();
            }

            using (tran)
            {
                try
                {
                    tran.Connection.Execute(sql, model, tran);
                    tran.Connection.Execute(sqlD, dlist, tran);

                    tran.Commit();
                }
                catch (Exception ex)
                {
                    tran.Rollback();
                    throw new Exception("SQL执行出错:" + ex.Message);
                }
            }



            //SqlParameter[] p = new SqlParameter[]
            //{
            //    new SqlParameter("@guid", guid),
            //    new SqlParameter("@MPCode", GetMPCode()),
            //    new SqlParameter("@cDepCode", model.cDepCode),
            //    new SqlParameter("@cRdCode", model.cRdCode),
            //    new SqlParameter("@dDate", model.dDate),
            //    new SqlParameter("@cMaker",model.cMaker),
            //    new SqlParameter("@cWhCode", model.cWhCode),
            //    new SqlParameter("@dCreateDate", DateTime.Now),
            //    new SqlParameter("@cMemo", DataHelper.SqlNull(model.cMemo))
            //};



            //SqlCommand cmd = new SqlCommand(sql);
            //cmd.Parameters.AddRange(p);

            //List<SqlCommand> cmdlist = new List<SqlCommand>();
            //cmdlist.Add(cmd);

            //foreach (DataRow r in model.dtDetails.Rows)
            //{
            //    p = new SqlParameter[]
            //    {
            //        new SqlParameter("@guid", guid),
            //        //new SqlParameter("@mccId", r["mccId"]),
            //        new SqlParameter("@cWhCode", r["cWhCode"]),
            //        new SqlParameter("@cPosCode", r["cPosCode"]),
            //        new SqlParameter("@cardNo", r["cardNo"]),
            //        new SqlParameter("@Opseq", r["OpSeq"]),
            //        new SqlParameter("@operationId",r["operationId"]),
            //        new SqlParameter("@cInvCode", r["cInvCode"]),
            //        new SqlParameter("@iQuantity", r["iQuantity"]),
            //        new SqlParameter("@mrGuid", r["mrGuid"])
            //    };

            //    cmd = new SqlCommand(sqlD);
            //    cmd.Parameters.AddRange(p);
            //    cmdlist.Add(cmd);
            //}

            //DbHelperSQL.ExecuteSqlTran(cmdlist.ToArray());

            return(guid);

            #endregion
        }
Exemple #11
0
        public void Update(MaterialPlan model, SqlTransaction tran = null)
        {
            string sqlM = "Update MES..MaterialPlan set MPCode = @MPCode, dDate = @dDate, cWhCode = @cWhCode, cModifier = @cModifier,";

            sqlM += " dModifyDate = @dModifyDate, cRdCode = @cRDCode, cDepCode = @cDepCode, cMemo = @cMemo where guid = @guid";

            string[] DFields = new string[] { "U8Id", "U8AutoId", "AuditPsn", "AuditDate" };

            string sqlDAdd = CommonDAL.GetInsertSql("MaterialPlans", filterFields: DFields);

            sqlDAdd += ";update MaterialRequest set bMP = 1 where guid = @mrGuid ";
            sqlDAdd += ";update t3 set rQuantity = t1.iQuantity from MaterialPlans t1";
            sqlDAdd += " join MaterialRequest t2 on t1.mrGuid = t2.guid";
            sqlDAdd += " join mom_cardChildren t3 on t2.CardChildId = t3.AutoId";
            sqlDAdd += " where t1.AutoId = @AutoId";

            string sqlDupdate = "update MES..MaterialPlans set cardNo = @cardNo, OpSeq = @OpSeq, OperationId = @OperationId,";

            sqlDupdate += "mrGuid = @mrGuid, cPosCode = @cPosCode, cWhCode = @cWhCode where AutoID = @AutoID";

            StringBuilder sb = new StringBuilder();

            sb.Append("update t1 set bMP = 0 from MES..MaterialRequest t1 ");
            sb.Append(" join MES..MaterialPlans t2 on t1.guid = t2.mrGuid where t2.AutoId = @AutoId");

            sb.Append(";update t3 set rQuantity = 0 from MES..MaterialPlans t1");
            sb.Append(" join MES..MaterialRequest t2 on t1.mrGuid = t2.guid");
            sb.Append(" join MES..mom_cardChildren t3 on t2.CardChildId = t3.AutoId");
            sb.Append(" where t1.AutoId = @AutoId");
            sb.Append("; delete MES..MaterialPlans where AutoId = @AutoId");

            string sqlDDel = sb.ToString();

            if (tran != null)
            {
                tran.Connection.Execute(sqlM, model, tran);

                foreach (DataRowView drv in model.dtDetails.DefaultView)
                {
                    if (drv.Row.RowState == DataRowState.Added)
                    {
                        var d = DataHelper.DataRowToModel <MaterialPlans>(drv.Row);
                        d.Guid = model.Guid;
                        tran.Connection.Execute(sqlDAdd, d, tran);
                    }
                    else if (drv.Row.RowState == DataRowState.Modified)
                    {
                        var d = DataHelper.DataRowToModel <MaterialPlans>(drv.Row);
                        tran.Connection.Execute(sqlDupdate, d, tran);
                    }
                    else if (drv.Row.RowState == DataRowState.Deleted)
                    {
                        tran.Connection.Execute(sqlDDel, new { AutoId = drv["AutoId"] }, tran);
                    }
                }
            }
            else
            {
                using (var conn = DbHelperSQL.GetConnection())
                {
                    conn.Open();
                    tran = conn.BeginTransaction();

                    try
                    {
                        tran.Connection.Execute(sqlM, model, tran);

                        foreach (DataRowView drv in model.dtDetails.DefaultView)
                        {
                            if (drv.Row.RowState == DataRowState.Added)
                            {
                                var d = DataHelper.DataRowToModel <MaterialPlans>(drv.Row);
                                d.Guid = model.Guid;
                                tran.Connection.Execute(sqlDAdd, d, tran);
                            }
                            else if (drv.Row.RowState == DataRowState.Modified)
                            {
                                var d = DataHelper.DataRowToModel <MaterialPlans>(drv.Row);
                                tran.Connection.Execute(sqlDupdate, d, tran);
                            }
                            else if (drv.Row.RowState == DataRowState.Deleted)
                            {
                                tran.Connection.Execute(sqlDDel, new { AutoId = drv["AutoId"] }, tran);
                            }
                        }

                        tran.Commit();
                    }
                    catch (Exception ex)
                    {
                        tran.Rollback();
                        throw new Exception("SQL执行出错:" + ex.Message);
                    }
                }
            }
        }