Exemplo n.º 1
0
        public void PostCreateBoard(out bool result, dynamic data)
        {
            try
            {
                string SavantCode = data.SavantCode;
                var    Item       = new PRS_BlankingResultService().GetModelList(ParamQuery.Instance().AndWhere("SavantCode", SavantCode));
                var    ItemDetail = new PRS_BlankingPlateDetailService().GetModelList(ParamQuery.Instance().AndWhere("MainID", string.Join(",", Item.Select(a => a.ID)), Cp.In));
                var    list       = from master in Item
                                    join detail in ItemDetail on master.ID equals detail.MainID
                                    select new
                {
                    MasterID            = master.ID,
                    PartBlankingQuntity = master.PartBlankingQuntity,
                    DetailID            = detail.ID,
                    PlateSize           = detail.PlateSize
                };
                new Mes_BlankingResultService()
                .Delete(ParamDelete
                        .Instance()
                        .AndWhere("BlankingResultID", string.Join(",", Item.Select(a => a.ID)), Cp.In));

                var    BoardCode   = MmsHelper.GetOrderNumber("Mes_BlankingResult", "BoardCode", "XJB", "", "");
                string PreCode     = BoardCode.Substring(0, BoardCode.Length - 3);
                int    StartNumber = Convert.ToInt32(BoardCode.Substring(BoardCode.Length - 3));

                foreach (var item in list)
                {
                    int count = item.PartBlankingQuntity;
                    for (int i = 0; i < count; i++)
                    {
                        BoardCode = PreCode + StartNumber.ToString().PadLeft(3, '0');
                        StartNumber++;
                        db.UseTransaction(true);
                        db.Insert("Mes_BlankingResult")
                        .Column("BlankingResultID", item.MasterID)
                        .Column("IsEnable", 1)
                        .Column("CreateTime", DateTime.Now)
                        .Column("CreatePerson", MmsHelper.GetUserCode())
                        .Column("BiankingSize", item.PlateSize.ToString())
                        .Column("IsBlanking", 0)
                        .Column("BlankingDetailID", item.DetailID)
                        //.Column("BlankingType",1)
                        .Column("BoardCode", BoardCode).Execute();
                    }
                }
                db.Commit();
                result = true;
            }
            catch
            {
                db.Rollback();
                result = false;
            }
        }
Exemplo n.º 2
0
        //todo 改成支持多个Tab
        // 地址:GET api/mms/@(controller)/getnewrowid 预取得新的明细表的行号
        public string GetNewRowId(string type, string key, int qty = 1)
        {
            switch (type)
            {
            case "grid0":
                var service0 = new PRS_BlankingResultService();
                return(service0.GetNewKey("ID", "maxplus", qty, ParamQuery.Instance().AndWhere("ID", key, Cp.Equal)));

            default:
                return("");
            }
        }
Exemplo n.º 3
0
        public int AuditBillCode(string mainID, out string msg)
        {
            msg = string.Empty;
            var    rowsAffected = 0;
            string sql          = String.Format(@"  select BillState FROM PRS_BlankingRecord  where ID='{0}'", mainID);
            var    state        = db.Sql(sql).QuerySingle <int>();

            if (state == 2)
            {
                msg = "单据已审核";
                return(0);
            }
            else
            {
                try
                {
                    using (db.UseTransaction(true))
                    {
                        int isFalse = 0;
                        sql          = string.Format(@"update PRS_BlankingRecord set BillState=2 where ID='{0}'", mainID);
                        rowsAffected = db.Sql(sql).Execute();
                        if (rowsAffected > 0)
                        {
                            msg = "生产请购单据审核成功";
                            var pQuery = ParamQuery.Instance().AndWhere("IsEnable", 1).AndWhere("MainID", mainID);
                            List <PRS_BlankingResult> resList = new PRS_BlankingResultService().GetModelList(pQuery);
                            foreach (var result in resList)
                            {
                                for (int i = 0; i < result.PartBlankingQuntity; i++)
                                {
                                    pQuery = ParamQuery.Instance().AndWhere("IsEnable", 1).AndWhere("MainID", result.ID);
                                    List <PRS_BlankingPlateDetail> plateList = new PRS_BlankingPlateDetailService().GetModelList(pQuery);
                                    foreach (var plate in plateList)
                                    {
                                        int res = db.Insert("Mes_BlankingResult")
                                                  .Column("BlankingResultID", plate.MainID)
                                                  .Column("BlankingQuantity", 1)
                                                  .Column("IsEnable", 1)
                                                  .Column("Ispicking", 0)
                                                  .Column("BiankingSize", plate.PlateSize)
                                                  .Column("CreateTime", DateTime.Now)
                                                  .Column("CreatePerson", MmsHelper.GetUserName())
                                                  .Column("ModifyTime", DateTime.Now)
                                                  .Column("ModifyPerson", MmsHelper.GetUserName()).Execute();
                                        if (res <= 0)
                                        {
                                            isFalse++;
                                        }
                                    }
                                }
                            }
                            //return rowsAffected;
                        }
                        else
                        {
                            msg = "生产请购单据审核失败,请先保存数据后审核";
                            db.Rollback();
                            return(0);
                        }
                        if (isFalse > 0)
                        {
                            db.Rollback();
                            return(0);
                        }
                        else
                        {
                            db.Commit();
                            msg = "生产请购单据审核成功";
                            return(1);
                        }
                    }
                }
                catch
                {
                    msg = "生产请购单据审核失败";
                    return(0);
                }
            }
        }