Esempio n. 1
0
        public ProposalDetailWithContactItemsInfo GetProposalWithContactItemsByCode(string code, string _userID)
        {
            ProposalDetailBase   proposalDetail = new ProposalDetailBase();
            SqlConnectionFactory sqlConnection  = new SqlConnectionFactory();
            ProposalDetailWithContactItemsInfo ret;

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                proposalDetail = ProposalDataLayer.GetInstance().getProposalDetailByCode(connection, code, _userID);
                if (proposalDetail == null)
                {
                    return(null);
                }
                ret = new ProposalDetailWithContactItemsInfo(proposalDetail);

                int       QuoteID = ProposalDataLayer.GetInstance().getQuoteIDWithHaveFinalContact(connection, proposalDetail.ProposalID);
                QuoteInfo quote   = QuoteDataLayer.GetInstance().getQuote(connection, QuoteID, _userID);
                if (quote.TotalCost > 30000000)
                {
                    ret.DeliveryReceiptType = 2;
                }
                else
                {
                    ret.DeliveryReceiptType = 1;
                }


                ret.Items = new List <ItemInfo>();
                ret.Items = QuoteDataLayer.GetInstance().GetQuoteItems(connection, QuoteID);
            }
            return(ret);
        }
Esempio n. 2
0
        public async Task <ActionMessage> Create(AcceptanceInfo obj, [FromForm] List <IFormFile> files, string _userI)
        {
            ActionMessage        ret           = new ActionMessage();
            int                  insetId       = -1;
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                try
                {
                    insetId = AcceptanceDataLayer.GetInstance().Create(connection, obj, _userI);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
            if (insetId > -1)
            {
                ret.id = insetId;
                using (SqlConnection connection = sqlConnection.GetConnection())
                {
                    try
                    {
                        foreach (DeliveryReceiptItemInfoNew item in obj.Items)
                        {
                            ProposalDataLayer.GetInstance().UpdateItemAcceptance(connection, item, _userI);
                        }
                    }
                    catch (Exception ex)
                    {
                        throw ex;
                    }
                }
                if (files != null)
                {
                    foreach (var item in files)
                    {
                        DocumentInfo documentInfo = new DocumentInfo();
                        documentInfo.TableName = TableFile.Acceptance.ToString();
                        documentInfo.PreferId  = insetId.ToString();
                        documentInfo.Link      = DateTime.Now.ToString("yyMMddHHmmssfff") + "-" + Utils.ChuyenTVKhongDau(item.FileName);
                        documentInfo.FileName  = item.FileName;
                        documentInfo.Length    = item.Length.ToString();
                        documentInfo.Type      = item.ContentType;
                        ret = await FilesHelpers.UploadFile(TableFile.Acceptance.ToString(), insetId.ToString(), item, documentInfo.Link);

                        DocumentService.GetInstance().InsertDocument(documentInfo, _userI.ToString());
                    }
                }
                ret.isSuccess = true;
            }
            else
            {
                ret.isSuccess     = false;
                ret.err.msgCode   = "lỗi thêm phiếu nghiệm thu";
                ret.err.msgString = "lỗi thêm phiếu nghiệm thu";
            }
            return(ret);
        }
Esempio n. 3
0
        public ActionMessage createSurvey(SurveyInfo _Survey, string _userI)
        {
            ActionMessage        ret           = new ActionMessage();
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                try
                {
                    var ProposalInfo = ProposalDataLayer.GetInstance().getProposalDetail2(connection, _Survey.ProposalCode);
                    if (ProposalInfo != null)
                    {
                        _Survey.ProposalID = ProposalInfo.ProposalID;
                    }
                    else
                    {
                        _Survey.ProposalID = 0;
                    }
                    ret.id        = SurveyDataLayer.GetInstance().InsertSurvey(connection, _Survey, _userI);
                    ret.isSuccess = true;
                }
                catch (Exception ex)
                {
                    ret.isSuccess     = false;
                    ret.err.msgCode   = "Internal Error";
                    ret.err.msgString = ex.Message;
                }
            }
            return(ret);
        }
Esempio n. 4
0
        public List <ProposalInfo> getAllProposal(int pageSize, int pageIndex, string _userID)
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                List <ProposalInfo> ListProposal = ProposalDataLayer.GetInstance().GetAllProposal(connection, _userID);
                int min = pageIndex * pageSize;
                int max = pageIndex * pageSize + pageSize;

                if (min > ListProposal.Count)
                {
                    return(new List <ProposalInfo>());
                }
                if (max >= ListProposal.Count)
                {
                    pageSize = ListProposal.Count - min;
                }
                if (pageSize <= 0)
                {
                    return(new List <ProposalInfo>());
                }
                return(ListProposal.GetRange(min, pageSize));
            }
        }
Esempio n. 5
0
        public async Task <ActionMessage> EditExplanation(int id, ExplanationInfo _Explanation, string _userU, [FromForm] List <IFormFile> files)
        {
            ActionMessage        ret           = new ActionMessage();
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();



            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                try
                {
                    UserLogInfo info = new UserLogInfo();
                    info.Action      = "Edit";
                    info.Description = "ngày : " + _Explanation.InTime + " code : " + _Explanation.ExplanationCode
                                       + " trạng thái : " + _Explanation.Status;
                    info.Feature  = TableFile.Proposal.ToString();
                    info.Time     = DateTime.Now;
                    info.UserName = _userU;
                    info.UserID   = 1;
                    UserService.GetInstance().TrackUserAction(info);
                    ExplanationDataLayer.GetInstance().UpdateExplanation(connection, id, _Explanation, _userU);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
            DocumentService.GetInstance().DeleteDocumentsNotExitsInList(_Explanation.ListDocument, TableFile.Explanation.ToString(), id);

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                try
                {
                    foreach (ItemPropsalInfo item in _Explanation.Items)
                    {
                        ProposalDataLayer.GetInstance().UpdateItemExplanation(connection, item, _userU);
                    }
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }

            foreach (var item in files)
            {
                DocumentInfo documentInfo = new DocumentInfo();
                documentInfo.TableName = TableFile.Explanation.ToString();
                documentInfo.PreferId  = id.ToString();
                documentInfo.Link      = DateTime.Now.ToString("yyMMddHHmmssfff") + "-" + Utils.ChuyenTVKhongDau(item.FileName);
                documentInfo.FileName  = item.FileName;
                documentInfo.Length    = item.Length.ToString();
                documentInfo.Type      = item.ContentType;
                ret = await FilesHelpers.UploadFile(TableFile.Explanation.ToString(), id.ToString(), item, documentInfo.Link);

                DocumentService.GetInstance().InsertDocument(documentInfo, _userU.ToString());
            }
            ret.isSuccess = true;
            return(ret);
        }
Esempio n. 6
0
        public ActionMessage createProposal(ProposalInfo _Proposal, string _userI)
        {
            ActionMessage        ret           = new ActionMessage();
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                try
                {
                    int    year           = DateTime.Now.Year;
                    int    maxPropCode    = ProposalDataLayer.GetInstance().GetMaxPropCode(connection, year);
                    string departmentCode = DepartmentDataLayer.GetInstance().GetDepartmentCodeById(connection, _Proposal.DepartmentID);

                    _Proposal.ProposalCode = departmentCode + year.ToString() + maxPropCode;
                    ret.id = ProposalDataLayer.GetInstance().InsertProposal(connection, _Proposal, _userI);
                    ProposalDataLayer.GetInstance().UpdateMaxCode(connection, maxPropCode, year);
                    ret.isSuccess = true;
                }
                catch (Exception ex)
                {
                    ret.isSuccess     = false;
                    ret.err.msgCode   = "Internal Error";
                    ret.err.msgString = ex.Message;
                }
            }
            return(ret);
        }
Esempio n. 7
0
        //Nguyen Minh Hoang
        public List <ProposalInfo> GetAllOutdateProposal(string userI)
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                return(ProposalDataLayer.GetInstance().GetAllOutdateProposal(connection, userI));
            }
        }
Esempio n. 8
0
        public List <ProposalInfo> getAllProposal(int pageSize, int pageIndex, ProposalSeachCriteria _criteria, string _userID)
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                return(ProposalDataLayer.GetInstance().getProposal(connection, _criteria, _userID));
            }
        }
Esempio n. 9
0
        public List <ProposalsByDepartment> GetByDepartment()
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                return(ProposalDataLayer.GetInstance().CountByDepartment(connection));
            }
        }
Esempio n. 10
0
        public List <ProposalInfo> GetAllExceedReserveProposal()
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                return(ProposalDataLayer.GetInstance().GetAllExceedReserveProposal(connection));
            }
        }
Esempio n. 11
0
        public List <ProposalRelatedData> GetProposalProccess(int proposalID)
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                return(ProposalDataLayer.GetInstance().GetProposalProccess(connection, proposalID));
            }
        }
Esempio n. 12
0
        public List <ProposalSelectItem> getListProsalCanCreateDR(string code)
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                return(ProposalDataLayer.GetInstance().getListProsalCanCreateDR(connection, code));
            }
        }
Esempio n. 13
0
        public int getTotalRecords(ProposalSeachCriteria _criteria, string _userID)
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                return(ProposalDataLayer.GetInstance().getTotalRecords(connection, _criteria, _userID));
            }
        }
Esempio n. 14
0
        public List <ProposalInfo> GetList()
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                List <ProposalInfo> ListUserInfo = ProposalDataLayer.GetInstance().GetAllOutdateProposal(connection, "");
                return(ListUserInfo);
            }
        }
Esempio n. 15
0
        public List <string> getListProposalCode(string proposalCode, string _userID)
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                List <string> ListProposal = ProposalDataLayer.GetInstance().getListProposalCode(connection, proposalCode, _userID);
                return(ListProposal);
            }
        }
Esempio n. 16
0
        public List <ProposalInfo> getProposal(ProposalSeachCriteria _criteria, string _userID)
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                List <ProposalInfo> ListProposal = ProposalDataLayer.GetInstance().getProposalByID(connection, _criteria, _userID);
                return(ListProposal);
            }
        }
Esempio n. 17
0
        public async Task <ActionMessage> Update(AcceptanceInfo obj, [FromForm] List <IFormFile> files, string _userI)
        {
            ActionMessage ret = new ActionMessage();

            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                try
                {
                    AcceptanceDataLayer.GetInstance().Update(connection, obj, _userI);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }

            DocumentService.GetInstance().DeleteDocumentsNotExitsInList(obj.ListDocument, TableFile.Acceptance.ToString(), obj.AcceptanceID);

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                try
                {
                    foreach (DeliveryReceiptItemInfoNew item in obj.Items)
                    {
                        ProposalDataLayer.GetInstance().UpdateItemAcceptance(connection, item, _userI);
                    }
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
            if (files != null)
            {
                foreach (var item in files)
                {
                    DocumentInfo documentInfo = new DocumentInfo();
                    documentInfo.TableName = TableFile.Acceptance.ToString();
                    documentInfo.PreferId  = obj.AcceptanceID.ToString();
                    documentInfo.Link      = DateTime.Now.ToString("yyMMddHHmmssfff") + "-" + Utils.ChuyenTVKhongDau(item.FileName);
                    documentInfo.FileName  = item.FileName;
                    documentInfo.Length    = item.Length.ToString();
                    documentInfo.Type      = item.ContentType;
                    ret = await FilesHelpers.UploadFile(TableFile.Acceptance.ToString(), obj.AcceptanceID.ToString(), item, documentInfo.Link);

                    DocumentService.GetInstance().InsertDocument(documentInfo, _userI.ToString());
                }
            }
            ret.isSuccess = true;


            return(ret);
        }
Esempio n. 18
0
        public TimeLineRecord GetProposalProccess2(int proposalID, string _userI, string _userID)
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();
            TimeLineRecord       ret           = new TimeLineRecord();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                ProcessInfo info = ProposalDataLayer.GetInstance().GetProposalProccessID(connection, proposalID);
                if (info.ProposalID != 0)
                {
                    ret.ProposalDetailInfo = ProposalService.GetInstance().getDetailProposal(info.ProposalID, _userI);
                }
                if (info.SurveyID != 0)
                {
                    ret.SurveyDetailInfo = SurveyService.GetInstance().GetDetailSurvey(info.SurveyID, _userID);
                }
                if (info.ExplanationID != 0)
                {
                    ret.ExplanationDetailInfo = ExplanationService.GetInstance().getDetailExplanation(info.ExplanationID, _userID);
                }
                if (info.QuoteID != 0)
                {
                    ret.QuoteInfo = QuoteService.GetInstance().getQuote(info.QuoteID, _userID);
                }
                if (info.AuditID != 0)
                {
                    ret.AuditDetailInfo = AuditService.GetInstance().getAuditInfo(info.AuditID, _userID);
                }
                if (info.BidPlanID != 0)
                {
                    ret.BidPlanInfo = BidPlanService.GetInstance().getBidPlan(info.BidPlanID, _userID);
                }
                if (info.NegotiationID != 0)
                {
                    ret.NegotiationInfo = NegotiationService.GetInstance().GetNegotiation(info.NegotiationID, _userID);
                }
                if (info.DecisionID != 0)
                {
                    ret.DecisionInfo = DecisionService.GetInstance().GetDecision(info.DecisionID, _userID);
                }
                if (info.ContractID != 0)
                {
                    ret.ContractInfo = ContractService.GetInstance().getContractNew(info.ContractID, _userID);
                }
                if (info.DeliveryReceiptID != 0)
                {
                    ret.DeliveryReceiptInfo = DeliveryReceiptServices.GetInstance().GetDetail(info.DeliveryReceiptID, _userID);
                }
                if (info.AcceptanceID != 0)
                {
                    ret.AcceptanceInfo = AcceptanceServices.GetInstance().GetDetail(info.AcceptanceID, _userID);
                }
            }
            return(ret);
        }
Esempio n. 19
0
        public List <ProposalWithItems> getProposalCanCreateQuote(string proposalCode, string itemName)
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                List <ProposalWithItems> ret = new List <ProposalWithItems>();
                ret = ProposalDataLayer.GetInstance().getProposalCanCreateQuote(connection, proposalCode, itemName);
                return(ret);
            }
        }
Esempio n. 20
0
        public ProposalRelatedData GetRelateData(int id)
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                ProposalRelatedData ret = new ProposalRelatedData();
                ret = ProposalDataLayer.GetInstance().GetRelateData(connection, id);
                return(ret);
            }
        }
Esempio n. 21
0
        public List <StatusCountReport> GetCountByStatus()
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                List <StatusCountReport> ret = new List <StatusCountReport>();
                ret = ProposalDataLayer.GetInstance().CountByStatus(connection);
                return(ret);
            }
        }
Esempio n. 22
0
        public ProposalInfo getProposalbyId(int _ID, string _userID)
        {
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                List <ProposalInfo> ListProposal = ProposalDataLayer.GetInstance().GetAllProposal(connection, _userID);
                ProposalInfo        findProposal = ListProposal.Where(i => i.ProposalID == _ID).First();
                return(findProposal);
            }
        }
Esempio n. 23
0
        public QuoteRelation getQuoteRelation(int quoteID)
        {
            QuoteRelation        ret           = new QuoteRelation();
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                ret = ProposalDataLayer.GetInstance().getQuoteRelation(connection, quoteID);
                return(ret);
            }
        }
Esempio n. 24
0
        public ActionMessage EditItems(int proposalId, List <ItemPropsalInfo> _items)
        {
            ActionMessage        ret           = new ActionMessage();
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                try
                {
                    List <ItemPropsalInfo> currentItems = ProposalDataLayer.GetInstance().GetPropsalItems(connection, proposalId);

                    var listDeleteItem  = new List <ItemPropsalInfo>();
                    var listInsertItems = new List <ItemPropsalInfo>();
                    if (_items == null)
                    {
                        listDeleteItem  = currentItems;
                        listInsertItems = new List <ItemPropsalInfo>();
                    }
                    else
                    {
                        listDeleteItem  = currentItems.Except(_items).ToList();
                        listInsertItems = _items.Except(currentItems).ToList();
                    }
                    //add new Items
                    foreach (var item in listInsertItems)
                    {
                        ProposalDataLayer.GetInstance().InsertProposalItem(connection, proposalId, item);
                    }
                    string autoIds = "";
                    //delete Old Items

                    if (listDeleteItem.Count > 0)
                    {
                        foreach (var item in listDeleteItem)
                        {
                            autoIds = autoIds + item.AutoID + ',';
                        }
                        autoIds = autoIds.Remove(autoIds.Length - 1);
                        ProposalDataLayer.GetInstance().DeleteProposalItems(connection, autoIds);
                    }

                    ret.isSuccess = true;
                }
                catch (Exception ex)
                {
                    ret.isSuccess     = false;
                    ret.err.msgCode   = "Internal Error";
                    ret.err.msgString = ex.Message;
                }
            }
            return(ret);
        }
Esempio n. 25
0
        public DRFillDetailInfo getDetailsAcceptanceByProposalID(int id)
        {
            DRFillDetailInfo     proposalDetail = new DRFillDetailInfo();
            SqlConnectionFactory sqlConnection  = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                proposalDetail       = ProposalDataLayer.GetInstance().getDetailsForDR(connection, id);
                proposalDetail.Items = QuoteDataLayer.GetInstance().getSelectedItemsQuote(connection, proposalDetail.QuoteID);
                proposalDetail.DeliveryReceiptItems = DeliveryReceiptDataLayer.GetInstance().getDetailsAcceptanceByProposalID(connection, id);

                return(proposalDetail);
            }
        }
Esempio n. 26
0
        public DRFillDetailInfo getDetailsForDR(int id)
        {
            DRFillDetailInfo     proposalDetail = new DRFillDetailInfo();
            SqlConnectionFactory sqlConnection  = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                proposalDetail       = ProposalDataLayer.GetInstance().getDetailsForDR(connection, id);
                proposalDetail.Items = QuoteDataLayer.GetInstance().getSelectedItemsQuote(connection, proposalDetail.QuoteID);

                string IDs = "( ";
                foreach (var item in proposalDetail.Items)
                {
                    IDs += item.QuoteItemID.ToString() + " ,";
                }

                IDs  = IDs.Remove(IDs.Length - 1);
                IDs += " )";
                List <DeliveryReceiptItemInfoNew> deliveryReceiptItems = DeliveryReceiptDataLayer.GetInstance().getItemsByQuoteIDs(connection, IDs);

                foreach (var DRitem in deliveryReceiptItems)
                {
                    for (int i = 0; i < proposalDetail.Items.Count;)
                    {
                        if (DRitem.QuoteItemID == proposalDetail.Items[i].QuoteItemID)
                        {
                            proposalDetail.Items[i].Amount = proposalDetail.Items[i].Amount - DRitem.Amount;
                        }
                        if (proposalDetail.Items[i].Amount > 0)
                        {
                            i++;
                        }
                        else
                        {
                            proposalDetail.Items.RemoveAt(i);
                        }
                    }
                }

                //todo
                return(proposalDetail);
            }
        }
Esempio n. 27
0
        public ProposalDetailInfo GetDetailProposalByCode(string code, string _userID)
        {
            ProposalDetailBase   proposalDetail = new ProposalDetailBase();
            SqlConnectionFactory sqlConnection  = new SqlConnectionFactory();
            ProposalDetailInfo   ret;

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                proposalDetail = ProposalDataLayer.GetInstance().getProposalDetailByCode(connection, code, _userID);
                if (proposalDetail == null)
                {
                    return(null);
                }
                ret             = new ProposalDetailInfo(proposalDetail);
                ret.ListComment = new List <CommentInfo>();

                //Get document
                DocumentSeachCriteria documentCriteria = new DocumentSeachCriteria();
                documentCriteria.TableName = TableFile.Proposal.ToString();
                documentCriteria.PreferId  = proposalDetail.ProposalID.ToString();
                ret.ListDocument           = DocumentService.GetInstance().GetDocument(documentCriteria);

                ret.Items = new List <ItemPropsalInfo>();
                ret.Items = ProposalDataLayer.GetInstance().GetPropsalItems(connection, proposalDetail.ProposalID);

                //get Comment
                CommentSeachCriteria commentCriteria = new CommentSeachCriteria();
                commentCriteria.TableName = TableFile.Proposal.ToString();
                commentCriteria.PreferId  = proposalDetail.ProposalID.ToString();
                ret.ListComment           = CommentService.GetInstance().getComment(commentCriteria);
                foreach (var item in ret.ListComment)
                {
                    DocumentSeachCriteria documentCriteria2 = new DocumentSeachCriteria();
                    documentCriteria2.TableName = TableFile.Comment.ToString();
                    documentCriteria2.PreferId  = item.AutoID.ToString();
                    item.ListDocument           = DocumentService.GetInstance().GetDocument(documentCriteria2);
                }
            }
            return(ret);
        }
Esempio n. 28
0
        public int createProposal2(ProposalInfo _Proposal, string _userI)
        {
            int ret = -1;



            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                try
                {
                    int    year           = DateTime.Now.Year;
                    int    maxPropCode    = ProposalDataLayer.GetInstance().GetMaxPropCode(connection, year);
                    string departmentCode = DepartmentDataLayer.GetInstance().GetDepartmentCodeById(connection, _Proposal.DepartmentID);

                    _Proposal.ProposalCode = departmentCode + year.ToString() + maxPropCode.ToString().PadLeft(4, '0');
                    UserLogInfo info = new UserLogInfo();
                    info.Action      = "Insert";
                    info.Description = "ngày : " + _Proposal.DateIn + " khoa/phòng chịu trách nhiệm ID " + _Proposal.CurDepartmentID + " code " + _Proposal.ProposalCode
                                       + " khoa phòng đề xuất ID : " + _Proposal.DepartmentID + " trạng thái : " + _Proposal.Status;
                    info.Feature  = TableFile.Proposal.ToString();
                    info.Time     = DateTime.Now;
                    info.UserName = _userI;
                    info.UserID   = 1;
                    UserService.GetInstance().TrackUserAction(info);

                    ret = ProposalDataLayer.GetInstance().InsertProposal(connection, _Proposal, _userI);
                    ProposalDataLayer.GetInstance().UpdateMaxCode(connection, maxPropCode, year);

                    //   ret.isSuccess = true;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
            return(ret);
        }
Esempio n. 29
0
        public ActionMessage createContract(ContractInfo _Contract, string _userI, string _userID)
        {
            ActionMessage        ret           = new ActionMessage();
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                try
                {
                    var DecisionInfo = DecisionDataLayer.GetInstance().GetDecisionByCode(connection, _Contract.DecisionCode, _userID);
                    if (DecisionInfo != null)
                    {
                        _Contract.DecisionID = DecisionInfo.DecisionID;
                        //Bỏ proposalID từ Dicision
                        //_Contract.ProposalID = DecisionInfo.ProposalID;
                        var ProposalInfo = ProposalDataLayer.GetInstance().getProposalDetail(connection, _Contract.ProposalID, "");
                        if (ProposalInfo != null)
                        {
                            _Contract.ProposalCode = ProposalInfo.ProposalCode;
                        }
                    }
                    else
                    {
                        _Contract.DecisionID = _Contract.ProposalID = 0;
                    }
                    ret.id        = ContractDataLayer.GetInstance().InsertContract(connection, _Contract, _userI);
                    ret.isSuccess = true;
                }
                catch (Exception ex)
                {
                    ret.isSuccess     = false;
                    ret.err.msgCode   = "Internal Error";
                    ret.err.msgString = ex.Message;
                }
            }
            return(ret);
        }
Esempio n. 30
0
        public ExplanationDetailInfo getDetailExplanation(int _ID, string _userID)
        {
            ExplanationDetailInfo record        = new ExplanationDetailInfo();
            SqlConnectionFactory  sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                record = ExplanationDataLayer.GetInstance().getExplanationDetail(connection, _ID, _userID);
                if (record == null)
                {
                    return(null);
                }

                //Get document
                DocumentSeachCriteria documentCriteria = new DocumentSeachCriteria();
                documentCriteria.TableName = TableFile.Explanation.ToString();
                documentCriteria.PreferId  = _ID.ToString();
                record.ListDocument        = DocumentService.GetInstance().GetDocument(documentCriteria);

                record.Items = new List <ItemPropsalInfo>();
                record.Items = ProposalDataLayer.GetInstance().GetPropsalItems(connection, record.ProposalID);

                //get Comment
                CommentSeachCriteria commentCriteria = new CommentSeachCriteria();
                commentCriteria.TableName = TableFile.Explanation.ToString();
                commentCriteria.PreferId  = _ID.ToString();
                record.ListComment        = CommentService.GetInstance().getComment(commentCriteria);
                foreach (var item in record.ListComment)
                {
                    DocumentSeachCriteria documentCriteria2 = new DocumentSeachCriteria();
                    documentCriteria2.TableName = TableFile.Comment.ToString();
                    documentCriteria2.PreferId  = item.AutoID.ToString();
                    item.ListDocument           = DocumentService.GetInstance().GetDocument(documentCriteria2);
                }
                return(record);
            }
        }