Exemple #1
0
 public DocumentCreatedEvent(DocumentId entityId, UserId userId, DocumentNumber number, Option <DocumentDescription> description,
                             DateTime timeStamp) : base(entityId.Value, timeStamp)
 {
     UserId      = userId;
     Number      = number;
     Description = description;
 }
        public IHttpActionResult PK9DataAdd([FromBody] ReceiptDataModel item)
        {
            DBConnector.DBConnector conn = new DBConnector.DBConnector();
            UtilLibs       utilLibs      = new UtilLibs();
            DocumentNumber docNum        = new DocumentNumber();

            if (conn.OpenConnection())
            {
                try
                {
                    string       SQLString = @"INSERT INTO receiptdata(DocumentBookNumber, DocumentNumber, DocumentDate, PayerType, 
                                         PayerRunno, AsReceiptTo, AsReceiptToRemark,
                                         ReceiptAmount, ReceiptPaytype, ReceiptDate, ReceiptBank, ReceiptBillNumber, 
                                         ReceiptChqBank, ReceiptChqNumber, ReceiptOther)
                                         VALUES (@DocumentBookNumber, @DocumentNumber, @DocumentDate, @PayerType, @PayerRunno, 
                                         @AsReceiptTo, @AsReceiptToRemark, @ReceiptAmount,
                                         @ReceiptPaytype, @ReceiptDate, @ReceiptBank, @ReceiptBillNumber, @ReceiptChqBank, 
                                         @ReceiptChqNumber, @ReceiptOther) ";
                    MySqlCommand qExe      = new MySqlCommand
                    {
                        Connection  = conn.connection,
                        CommandText = SQLString
                    };
                    docNum = utilLibs.GetDocumentNo("pk9");
                    qExe.Parameters.AddWithValue("@documentbooknumber", docNum.BookNo);
                    qExe.Parameters.AddWithValue("@documentnumber", docNum.DocumentNo);
                    qExe.Parameters.AddWithValue("@documentdate", Convert.ToDateTime(item.DocumentDate, new CultureInfo("en-US")));
                    qExe.Parameters.AddWithValue("@PayerType", item.PayerType);
                    qExe.Parameters.AddWithValue("@PayerRunno", item.PayerRunno);
                    qExe.Parameters.AddWithValue("@AsReceiptTo", item.AsReceiptTo);
                    qExe.Parameters.AddWithValue("@AsReceiptToRemark", item.AsReceiptToRemark);
                    qExe.Parameters.AddWithValue("@ReceiptAmount", item.ReceiptAmount);
                    qExe.Parameters.AddWithValue("@ReceiptPaytype", item.ReceiptPayType);
                    qExe.Parameters.AddWithValue("@ReceiptDate", Convert.ToDateTime(item.ReceiptDate, new CultureInfo("en-US")));
                    qExe.Parameters.AddWithValue("@ReceiptBank", item.ReceiptBank);
                    qExe.Parameters.AddWithValue("@ReceiptBillNumber", item.ReceiptBillNumber);
                    qExe.Parameters.AddWithValue("@ReceiptChqBank", item.ReceiptChqBank);
                    qExe.Parameters.AddWithValue("@ReceiptChqNumber", item.ReceiptChqNumber);
                    qExe.Parameters.AddWithValue("@ReceiptOther", item.ReceiptOther);
                    qExe.ExecuteNonQuery();
                    long returnid = qExe.LastInsertedId;
                    conn.CloseConnection();
                    return(Json(new ResultDataModel {
                        success = true, errorMessage = "", returnRunno = returnid.ToString()
                    }));
                }
                catch (Exception e)
                {
                    return(Json(new ResultDataModel {
                        success = false, errorMessage = e.Message, returnRunno = ""
                    }));
                }
            }
            else
            {
                return(Json(new ResultDataModel {
                    success = false, errorMessage = "Database connect fail!", returnRunno = ""
                }));
            }
        }
Exemple #3
0
        public void TestSubscriber()
        {
            var id = MemoId.New;

            var docId      = Guid.NewGuid().ToString();
            var docNumber  = new DocumentNumber("100");
            var docAddress = new Address("12700", "Россия",
                                         "Москва", "проспект Мира", "1");
            var userId = "TestUser";

            var fixture = new SubscriberFixture <MemoSigningSubscriber, MemoId, MemoUpdated>(this);

            //BDD тест (сценарий)
            fixture.For()

            //Допустим (предусловия)
            .GivenNothing()

            //Когда (тестируемые действия)
            .When(new MemoUpdated(id, new MemoDocument(docId, docNumber, docAddress)),
                  new EventMetadata {
                UserId = userId
            })

            //Тогда (проверка результатов)
            .ThenExpect <MemoId, SignMemo>(command =>
                                           command.Id == id &&
                                           command.UserId == userId);
        }
Exemple #4
0
        public IHttpActionResult PutDocumentNumber(int id, DocumentNumber documentNumber)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != documentNumber.Id)
            {
                return(BadRequest());
            }

            db.Entry(documentNumber).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!DocumentNumberExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Exemple #5
0
        public void ทดสอบแก้ไขPK9()
        {
            PK9DataController service  = new PK9DataController();
            ReceiptDataModel  item     = new ReceiptDataModel();
            UtilLibs          utilLibs = new UtilLibs();
            DocumentNumber    docNum   = utilLibs.GetDocumentNo("pk9");

            item.DocumentRunno      = 4;
            item.DocumentBookNumber = "1";
            item.DocumentNumber     = "AC0004";
            item.DocumentDate       = DateTime.Now;
            item.PayerType          = "1";
            item.PayerRunno         = 3;
            item.AsReceiptTo        = "ค่าบำรุงพรรคการเมืองรายปี";
            item.AsReceiptToRemark  = "";
            item.ReceiptAmount      = 6500;
            item.ReceiptPayType     = "";
            item.ReceiptDate        = DateTime.Now;
            item.ReceiptBank        = "";
            item.ReceiptBillNumber  = "";
            item.ReceiptChqBank     = "";
            item.ReceiptChqNumber   = "";
            item.ReceiptOther       = "";
            var result = service.PK9DataEdit(item);

            Assert.IsTrue(result != null);
        }
Exemple #6
0
 partial void OnDocumentNumberChanged()
 {
     if (!string.IsNullOrEmpty(_DocumentNumber))
     {
         _DocumentNumber = DocumentNumber.TextEncode();
     }
 }
Exemple #7
0
        public void ทดสอบบันทึกเอกสารPK9()
        {
            PK9DataController service  = new PK9DataController();
            ReceiptDataModel  item     = new ReceiptDataModel();
            UtilLibs          utilLibs = new UtilLibs();
            DocumentNumber    docNum   = utilLibs.GetDocumentNo("pk9");

            item.DocumentBookNumber = docNum.BookNo;
            item.DocumentNumber     = docNum.DocumentNo;
            item.DocumentDate       = DateTime.Now;
            item.PayerType          = "2";
            item.PayerRunno         = 1;
            item.AsReceiptTo        = "ค่าจัดกิจกรรมระดมทุน";
            item.AsReceiptToRemark  = "";
            item.ReceiptAmount      = 1750;
            item.ReceiptPayType     = "";
            item.ReceiptDate        = DateTime.Now;
            item.ReceiptBank        = "";
            item.ReceiptBillNumber  = "";
            item.ReceiptChqBank     = "";
            item.ReceiptChqNumber   = "";
            item.ReceiptOther       = "";
            var result = service.PK9DataAdd(item);

            Assert.IsTrue(result != null);
        }
Exemple #8
0
        public IHttpActionResult GetDocumentNumber(int id)
        {
            DocumentNumber documentNumber = db.DocumentNumbers.Find(id);

            if (documentNumber == null)
            {
                return(NotFound());
            }

            return(Ok(documentNumber));
        }
Exemple #9
0
        public IHttpActionResult PostDocumentNumber(DocumentNumber documentNumber)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.DocumentNumbers.Add(documentNumber);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = documentNumber.Id }, documentNumber));
        }
Exemple #10
0
        public void TestDocumentIdentity()
        {
            DocumentNumber docNum = new DocumentNumber(
                TestUtilities.TEST_DOC_NUM.ToCharArray());
            DocumentIdentity id    = new DocumentIdentity(docNum, 2012, 07);
            String           idStr = id.ToString();

            Assert.AreEqual(TestUtilities.TEST_DOC_ID, idStr);
            DocumentIdentity newId = DocumentIdentity.Parse(idStr);

            Assert.AreEqual(newId, id);
        }
Exemple #11
0
        public IHttpActionResult DeleteDocumentNumber(int id)
        {
            DocumentNumber documentNumber = db.DocumentNumbers.Find(id);

            if (documentNumber == null)
            {
                return(NotFound());
            }

            db.DocumentNumbers.Remove(documentNumber);
            db.SaveChanges();

            return(Ok(documentNumber));
        }
Exemple #12
0
 /// <summary>
 /// Converts to string.
 /// </summary>
 /// <returns>
 /// A <see cref = "string"/> that represents this instance.
 /// </returns>
 public override string ToString()
 {
     try
     {
         return(Verify.Element(DocumentNumber)
             ? DocumentNumber.GetValue()
             : string.Empty);
     }
     catch (Exception ex)
     {
         Fail(ex);
         return(string.Empty);
     }
 }
 public void NormalizeValues()
 {
     CourtOrganizationId = CourtOrganizationId.EmptyToNull();
     DocumentDirectionId = DocumentDirectionId.EmptyToNull();
     DocumentKindId      = DocumentKindId.EmptyToNull();
     DocumentGroupId     = DocumentGroupId.EmptyToNull();
     DocumentTypeId      = DocumentTypeId.EmptyToNull();
     DocumentNumber      = DocumentNumber.EmptyToNull();
     DocumentYear        = DocumentYear.EmptyToNull();
     DateTo       = DateTo.MakeEndDate();
     PersonName   = PersonName.EmptyToNull();
     PersonUIC    = PersonUIC.EmptyToNull();
     PersonRoleId = PersonRoleId.EmptyToNull();
 }
 public override int GetHashCode()
 {
     unchecked {
         const int randomPrime = 397;
         int       hashCode    = Id.GetHashCode();
         hashCode = (hashCode * randomPrime) ^ ArchiveId.GetHashCode();
         hashCode = (hashCode * randomPrime) ^ (FondNumber != null ? FondNumber.GetHashCode() : 0);
         hashCode = (hashCode * randomPrime) ^ (FondName != null ? FondName.GetHashCode() : 0);
         hashCode = (hashCode * randomPrime) ^ (InventoryNumber != null ? InventoryNumber.GetHashCode() : 0);
         hashCode = (hashCode * randomPrime) ^ DocumentNumber.GetHashCode();
         hashCode = (hashCode * randomPrime) ^ (TimeInterval != null ? TimeInterval.GetHashCode() : 0);
         hashCode = (hashCode * randomPrime) ^ (Language != null ? Language.GetHashCode() : 0);
         return(hashCode);
     }
 }
Exemple #15
0
        public void UpdateMemoTest()
        {
            //Создаем заготовку для теста
            var fixture = new AggregateFixture <MemoId, MemoAggregate, IMemoState, MemoState>(this);

            var id = MemoId.New;

            //Параметры документа
            var docId      = Guid.NewGuid().ToString();
            var docNumber  = new DocumentNumber("100");
            var docAddress = new Address("12700", "Россия",
                                         "Москва", "проспект Мира", "1");

            //BDD тест (сценарий)
            fixture.For(id)

            //Допустим (предусловия)
            .GivenNothing()

            //Когда (тестируемые действия)
            .When(new UpdateMemo(id,
                                 new MemoDocument(docId, docNumber, docAddress)))

            //Тогда (проверка результатов)
            .ThenExpectResult(e => e.IsSuccess)
            .ThenExpectDomainEvent <MemoUpdated>(e
                                                 => e.AggregateEvent.Id == id &&
                                                 e.AggregateEvent.Document != null &&
                                                 e.AggregateEvent.Document.Id == docId &&
                                                 e.AggregateEvent.Document.Number == docNumber &&
                                                 e.AggregateEvent.Document.CustomerAddress == docAddress)
            .ThenExpectState(s
                             => s.Status == MemoStatus.Undefined &&
                             s.Document != null &&
                             s.Document.Id == docId &&
                             s.Document.Number == docNumber &&
                             s.Document.CustomerAddress == docAddress);
        }
Exemple #16
0
        public string GetInvoiceNumber(string code, int currentUserId)
        {
            DocumentNumber invoiceNumber     = new DocumentNumber();
            string         invNumberStr      = "";
            string         formatCurrentDate = DateTime.Now.ToString("ddMMyyyy");

            invoiceNumber.Code = _context
                                 .DocumentNumbers
                                 .Where(u => u.Code == code)
                                 .Select(u => u.Code)
                                 .SingleOrDefault();

            invoiceNumber.CurrentSequence = _context
                                            .DocumentNumbers
                                            .Where(u => u.Code == code)
                                            .Select(u => u.CurrentSequence)
                                            .SingleOrDefault();

            invNumberStr = invoiceNumber.Code + "-" + formatCurrentDate + "-" + invoiceNumber.CurrentSequence.ToString();

            UpdateDocSeqNumber(invoiceNumber.CurrentSequence, code, currentUserId);

            return(invNumberStr);
        }
Exemple #17
0
 public Order(DocumentNumber number)
 {
     _number  = number;
     _status  = OrderStatus.New;
     _created = Date.Today;
 }
 public void EnterDocumentNumber(string documentNumber)
 {
     DocumentNumber.SendKeys(documentNumber);
 }
 public bool Equals(DocumentNumber other)
 {
     return(string.Equals(_documentNumber, other._documentNumber));
 }
Exemple #20
0
 public void NormalizeValues()
 {
     ResolutionNumber = ResolutionNumber.EmptyToNull();
     DocumentNumber   = DocumentNumber.EmptyToNull();
     JudgeId          = JudgeId.EmptyToNull().EmptyToNull(0);
 }
 private static Validation <Error, Document> CreateDocument(string number = "1234", string description = "Test")
 {
     return(DocumentNumber.Create(number)
            .Bind(num => DocumentDescription.Create(description)
                  .Map(desc => new Document(new DocumentId(Guid.Empty), new UserId(Guid.Empty), num, desc))));
 }
Exemple #22
0
 public Order(DocumentNumber number)
 {
     _number = number;
 }
Exemple #23
0
 public DocumentMe(DocumentNumber documentNumber)
 {
     _state = new DocumentState();
     Number = documentNumber;
 }
 public DocumentUpdatedEvent(DocumentId entityId, DocumentNumber number, Option <DocumentDescription> description,
                             DateTime timeStamp) : base(entityId.Value, timeStamp)
 {
     Number      = number;
     Description = description;
 }
        public IHttpActionResult GenDocumentPK11(string documentRunno)
        {
            DBConnector.DBConnector conn = new DBConnector.DBConnector();
            UtilLibs utilLibs            = new UtilLibs();

            if (conn.OpenConnection())
            {
                try
                {
                    string       SQLString = @"select docs.*, dt.DonateAssetType 
                                         from donatedetaildata docs left join donatetype dt 
                                                 on docs.DonateTypeRunno = dt.DonateTypeRunno 
                                         where DocumentRunno = @DocumentRunno
                                         and dt.DonateAssetType = '1'
                                         and (docs.DocRefNo is null or docs.DocRefNo = '')
                                         order by docs.DetailRunno";
                    MySqlCommand qExe      = new MySqlCommand
                    {
                        Connection  = conn.connection,
                        CommandText = SQLString
                    };
                    qExe.Parameters.AddWithValue("DocumentRunno", documentRunno);
                    MySqlDataReader detailReader = qExe.ExecuteReader();
                    bool            CashType     = false;
                    bool            BillType     = false;
                    bool            ChqueType    = false;
                    double          DonateAmount = 0;
                    List <int>      RunnoList    = new List <int>();
                    while (detailReader.Read())
                    {
                        if (string.IsNullOrEmpty(detailReader["BankChqueNo"].ToString()) &&
                            string.IsNullOrEmpty(detailReader["Bill"].ToString()))
                        {
                            CashType = true;
                        }
                        else if (!string.IsNullOrEmpty(detailReader["BankChqueNo"].ToString()) &&
                                 string.IsNullOrEmpty(detailReader["Bill"].ToString()))
                        {
                            ChqueType = true;
                        }
                        else if (string.IsNullOrEmpty(detailReader["BankChqueNo"].ToString()) &&
                                 !string.IsNullOrEmpty(detailReader["Bill"].ToString()))
                        {
                            BillType = true;
                        }
                        DonateAmount = DonateAmount + double.Parse(detailReader["Amount"].ToString());
                        RunnoList.Add(int.Parse(detailReader["DetailRunno"].ToString()));
                    }
                    detailReader.Close();

                    if (CashType || ChqueType || BillType)
                    {
                        SQLString = @"select * from donatedata where DocumentRunno = @DocumentRunno";
                        qExe      = new MySqlCommand
                        {
                            Connection  = conn.connection,
                            CommandText = SQLString
                        };
                        qExe.Parameters.AddWithValue("DocumentRunno", documentRunno);
                        detailReader = qExe.ExecuteReader();
                        DocumentNumber docNum       = new DocumentNumber();
                        DateTime       docDate      = DateTime.Now;
                        int            DonatorRunno = -1;
                        while (detailReader.Read())
                        {
                            DonatorRunno = int.Parse(detailReader["DonatorRunno"].ToString());
                        }
                        detailReader.Close();
                        if (DonateAmount > 0 && DonatorRunno != -1)
                        {
                            docNum    = utilLibs.GetDocumentNo("pk11");
                            SQLString = @"INSERT INTO document11 (DocumentType, DocBookNo, DocNo,
                                          DocDate, DonatorRunno, DonateAmount, CashFlag, BillFlag, ChqueFlag)
                                          VALUES (@DocumentType, @DocBookNo, @DocNo, @DocDate, @DonatorRunno,
                                          @DonateAmount, @CashFlag, @BillFlag, @ChqueFlag)";
                            qExe      = new MySqlCommand
                            {
                                Connection  = conn.connection,
                                CommandText = SQLString
                            };
                            qExe.Parameters.AddWithValue("DocumentType", "PK11");
                            qExe.Parameters.AddWithValue("DocBookNo", docNum.BookNo);
                            qExe.Parameters.AddWithValue("DocNo", docNum.DocumentNo);
                            qExe.Parameters.AddWithValue("DocDate", docDate);
                            qExe.Parameters.AddWithValue("DonatorRunno", DonatorRunno);
                            qExe.Parameters.AddWithValue("DonateAmount", DonateAmount);
                            if (CashType)
                            {
                                qExe.Parameters.AddWithValue("CashFlag", "Y");
                            }
                            else
                            {
                                qExe.Parameters.AddWithValue("CashFlag", "N");
                            }
                            if (BillType)
                            {
                                qExe.Parameters.AddWithValue("BillFlag", "Y");
                            }
                            else
                            {
                                qExe.Parameters.AddWithValue("BillFlag", "N");
                            }
                            if (ChqueType)
                            {
                                qExe.Parameters.AddWithValue("ChqueFlag", "Y");
                            }
                            else
                            {
                                qExe.Parameters.AddWithValue("ChqueFlag", "N");
                            }
                            qExe.ExecuteNonQuery();
                            long returnid = qExe.LastInsertedId;
                            SQLString = @"update donatedetaildata set DocRefNo = @DocRefNo, DocRefBook = @DocRefBook, DocType = @DocType
                                          where DetailRunno = @DetailRunno";
                            qExe      = new MySqlCommand
                            {
                                Connection  = conn.connection,
                                CommandText = SQLString
                            };
                            foreach (var runno in RunnoList)
                            {
                                qExe.Parameters.Clear();
                                qExe.Parameters.AddWithValue("DetailRunno", runno);
                                qExe.Parameters.AddWithValue("DocRefNo", docNum.DocumentNo);
                                qExe.Parameters.AddWithValue("DocRefBook", docNum.BookNo);
                                qExe.Parameters.AddWithValue("DocType", "PK11");
                                qExe.ExecuteNonQuery();
                            }
                            conn.CloseConnection();
                            return(Json(new ResultDataModel {
                                success = true, errorMessage = "", returnRunno = returnid.ToString()
                            }));
                        }
                        else
                        {
                            return(Json(new ResultDataModel {
                                success = false, errorMessage = "ข้อมูลไม่ถูกต้องไม่สามารถสร้างเอกสาร พ.ก. 11 ได้  หรือทำการสร้างเอกสารไปแล้ว", returnRunno = ""
                            }));
                        }
                    }
                    else
                    {
                        return(Json(new ResultDataModel {
                            success = true, errorMessage = "ไม่มีข้อมูลในประเภทเอกสาร พ.ก. 11  หรือทำการสร้างเอกสารไปแล้ว", returnRunno = ""
                        }));
                    }
                }
                catch (Exception e)
                {
                    return(Json(new ResultDataModel {
                        success = false, errorMessage = e.Message, returnRunno = ""
                    }));
                }
            }
            else
            {
                return(Json(new ResultDataModel {
                    success = false, errorMessage = "Database connect fail!", returnRunno = ""
                }));
            }
        }
 public static Validation <Error, DocumentUpdatedEvent> Create(Guid documentId, string number,
                                                               string description) =>
 DocumentNumber.Create(number)
 .Bind(num => DocumentDescription.Create(description)
       .Map(desc => new DocumentUpdatedEvent(new DocumentId(documentId), num, desc, DateTime.UtcNow)));