コード例 #1
0
        public IHttpActionResult ApprovalSend_SupplierUseProduct(string Send_No)
        {
            SendOrderSeed_Model Model = new SendOrderSeed_Model();

            try
            {
                XPObjectSpaceProvider directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace          ObjectSpace    = directProvider.CreateObjectSpace();
                sendSeed_info         sendDetail     = new sendSeed_info();
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(SendOrderSeed));
                SendOrderSeed ObjMaster;
                ObjMaster = ObjectSpace.FindObject <SendOrderSeed>(CriteriaOperator.Parse("SendNo=?", Send_No));
                List <SendOrderSeed_Model> list_detail = new List <SendOrderSeed_Model>();

                ;
                //SendOrderSeed sendOrderSeed;
                //sendOrderSeed = ObjectSpace.FindObject<SendOrderSeed>(CriteriaOperator.Parse("SendNo=?", Send_No));

                DataSet ds = SqlHelper.ExecuteDataset(scc, CommandType.Text, "select SendNo from SendOrderSeed where SendNo = '" + Send_No + "'");
                if (ds.Tables[0].Rows.Count != 0)
                {
                    double sum = 0;
                    //sendDetail.Oid = sendOrderSeed.Oid;
                    //sendDetail.Send_No = sendOrderSeed.SendNo;
                    //sendDetail.SendDate = Convert.ToDateTime(sendOrderSeed.SendDate).ToString("dd-MM-yyyy", new CultureInfo("us-US"));
                    //sendDetail.SendOrgOid = sendOrderSeed.SendOrgOid.Oid;
                    //sendDetail.SendOrgName = sendOrderSeed.SendOrgOid.SubOrganizeName;
                    //sendDetail.ReceiveOrgoid = sendOrderSeed.ReceiveOrgOid.Oid;
                    //sendDetail.ReceiveOrgName = sendOrderSeed.ReceiveOrgOid.SubOrganizeName;
                    //sendDetail.FinanceYearOid = sendOrderSeed.FinanceYearOid;
                    //sendDetail.FinanceYear = sendOrderSeed.FinanceYearOid.YearName;

                    SendOrderSeed_Model objsend_Detail = new SendOrderSeed_Model();
                    foreach (SendOrderSeedDetail row in ObjMaster.SendOrderSeedDetails)
                    {
                        objsend_Detail.LotNumber = row.LotNumber.Oid;

                        objsend_Detail.WeightUnit         = row.WeightUnitOid.UnitName;
                        objsend_Detail.AnimalSeedLevelOid = row.AnimalSeedLevelOid;
                        objsend_Detail.BudgetSourceOid    = row.BudgetSourceOid;
                        objsend_Detail.BudgetSource       = row.BudgetSourceOid.BudgetName;
                        objsend_Detail.Weight             = row.Weight.ToString();
                        objsend_Detail.Used               = row.Used.ToString();
                        objsend_Detail.AnimalSeedOid      = row.AnimalSeedOid;
                        objsend_Detail.AnimalSeedLevelOid = row.AnimalSeedLevelOid;
                        objsend_Detail.SeedTypeOid        = row.SeedTypeOid.SeedTypeName;
                        objsend_Detail.Amount             = row.Amount;
                        sum = sum + row.Weight;
                        list_detail.Add(objsend_Detail);
                    }
                    nutrition.Module.StockSeedInfo ObjStockSeedInfoInfo;
                    var objSupplierProduct = ObjectSpace.FindObject <SupplierProductModifyDetail>(CriteriaOperator.Parse("Oid =?", objsend_Detail.LotNumber));

                    var objStockSeedInfo = ObjectSpace.GetObjects <StockSeedInfo>(CriteriaOperator.Parse("OrganizationOid= ? and FinanceYearOid=? and BudgetSourceOid=? and AnimalSeedOid=? and AnimalSeedLevelOid=? ", ObjMaster.SendOrgOid.Oid, ObjMaster.FinanceYearOid, objsend_Detail.BudgetSourceOid, objsend_Detail.AnimalSeedOid
                                                                                                         , objsend_Detail.AnimalSeedLevelOid, objsend_Detail.LotNumber));
                    if (objStockSeedInfo == null)
                    {
                        //var stockSeedInfos = from Item in objStockSeedInfo
                        //                     orderby Item.StockDate descending
                        //                     select Item;
                        XafTypesInfo.Instance.RegisterEntity(typeof(StockSeedInfo));
                        ObjStockSeedInfoInfo = ObjectSpace.CreateObject <StockSeedInfo>();

                        ObjStockSeedInfoInfo.StockDate          = DateTime.Now;
                        ObjStockSeedInfoInfo.OrganizationOid    = ObjMaster.SendOrgOid;
                        ObjStockSeedInfoInfo.FinanceYearOid     = ObjMaster.FinanceYearOid;
                        ObjStockSeedInfoInfo.BudgetSourceOid    = objSupplierProduct.BudgetSourceOid;
                        ObjStockSeedInfoInfo.AnimalSeedOid      = objSupplierProduct.AnimalSeedOid;
                        ObjStockSeedInfoInfo.AnimalSeedLevelOid = objSupplierProduct.AnimalSeedLevelOid;
                        ObjStockSeedInfoInfo.StockDetail        = "ส่งเมล็ดพันธุ์ Lot Number: " + objSupplierProduct.LotNumber;
                        ObjStockSeedInfoInfo.TotalForward       = (double)objSupplierProduct.Weight;
                        ObjStockSeedInfoInfo.TotalChange        = 0 - Convert.ToDouble(objsend_Detail.Weight);
                        ObjStockSeedInfoInfo.StockType          = 0;
                        ObjStockSeedInfoInfo.SeedTypeOid        = objSupplierProduct.SeedTypeOid;
                        ObjStockSeedInfoInfo.ReferanceCode      = objSupplierProduct.LotNumber;
                        ObjectSpace.CommitChanges();
                    }
                    ObjMaster.SendStatus = EnumSendOrderSeedStatus.Approve;
                    ObjectSpace.CommitChanges();
                    return(Ok(true));
                }
                else
                {
                    return(BadRequest());
                }
            }
            catch (Exception ex)
            {                      //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                //  Return resual
                return(BadRequest(ex.Message));
            }
        }
コード例 #2
0
        [Route("SendOrderSeed/accept")] /*ส่งเมล็ดให้หน่วยงานอื่น*/
        public HttpResponseMessage LoadSendSeed()
        {
            object SendOrgOid;

            try
            {
                SendOrgOid = HttpContext.Current.Request.Form["SendOrgOid"].ToString();


                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(SendOrderSeed));

                XPObjectSpaceProvider      directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace               ObjectSpace    = directProvider.CreateObjectSpace();
                List <SendOrderSeed_Model> list_detail    = new List <SendOrderSeed_Model>();

                List <sendSeed_info>  list       = new List <sendSeed_info>();
                data_info             Temp_data  = new data_info();
                IList <SendOrderSeed> collection = ObjectSpace.GetObjects <SendOrderSeed>(CriteriaOperator.Parse(" GCRecord is null and SendStatus = 5 and SendOrgOid=? ", SendOrgOid));

                double Amount = 0;
                if (collection.Count > 0)
                {
                    foreach (SendOrderSeed row in collection)
                    {
                        double        sum = 0;
                        string        WeightUnit;
                        sendSeed_info Approve = new sendSeed_info();
                        Approve.Send_No        = row.SendNo;
                        Approve.SendDate       = row.SendDate.ToString("dd-MM-yyyy", new CultureInfo("us-US")); /* convet เวลา*/
                        Approve.FinanceYear    = row.FinanceYearOid.YearName;
                        Approve.SendOrgOid     = row.SendOrgOid.Oid;
                        Approve.SendOrgName    = row.SendOrgOid.SubOrganizeName;
                        Approve.ReceiveOrgoid  = row.ReceiveOrgOid.Oid;
                        Approve.ReceiveOrgName = row.ReceiveOrgOid.SubOrganizeName;

                        foreach (SendOrderSeedDetail row2 in row.SendOrderSeedDetails)
                        {
                            sum        = sum + row2.Weight;
                            WeightUnit = row2.WeightUnitOid.ToString();
                        }
                        Approve.Weight_All = sum.ToString() + " " + "กิโลกรัม";


                        list.Add(Approve);
                    }
                    Temp_data.sendSS = list;
                    return(Request.CreateResponse(HttpStatusCode.OK, list));
                }

                else
                {
                    UserError err = new UserError();
                    err.code    = "5"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                    err.message = "No data";
                    ////    Return resual
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
                }
            }
            catch (Exception ex)
            {                      //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                ////  Return resual
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }