示例#1
0
        public new int Update(SqlTransaction trans)
        {
            ControlCardGroup cardGroup = new ControlCardGroup(trans, ID, UserName);

            foreach (ControlCardBlank card in cardGroup.Group)
            {
                bool exist = false;
                foreach (ControlCardBlank newCard in Group)
                {
                    if (card.ID == newCard.ID)
                    {
                        exist = true;
                    }
                }
                if (exist == false)
                {
                    ControlCard.Delete(trans, card.ID, UserName);
                }
            }

            foreach (ControlCardBlank controlCardBlank in Group)
            {
                controlCardBlank.UserName = UserName;
                if (controlCardBlank.ID == 0)
                {
                    InsertGroup(trans, controlCardBlank);
                }
                else
                {
                    controlCardBlank.Update(trans);
                }
            }
            ChangeDocumentControlled(trans, DocumentID);
            return(ID);
        }
示例#2
0
        private void ChangeDocumentControlled(SqlTransaction trans, int documentId)
        {
            DocTemplate dt = DocTemplate.GetByDocumentID(trans, documentId, UserName);

            if (dt != null)
            {
                bool isControlled          = ControlCard.ExistCard(trans, documentId, 1);
                bool isSpeciallyControlled = ControlCard.ExistCard(trans, documentId, true);

                if (dt.IsControlled != isControlled || dt.IsSpeciallyControlled != isSpeciallyControlled)
                {
                    dt.IsControlled          = isControlled;
                    dt.IsSpeciallyControlled = isSpeciallyControlled;
                    dt.Update(trans);
                }
            }
        }
示例#3
0
        public static List <ControlCard> GetWorkerCards(SqlTransaction trans, int documentID, int workerId, string userName)
        {
            List <ControlCard> cards = new List <ControlCard>();

            SqlParameter[] prms = new SqlParameter[2];
            prms[0]       = new SqlParameter("@DocumentID", SqlDbType.Int);
            prms[0].Value = documentID;

            prms[1]       = new SqlParameter("@WorkerID", SqlDbType.Int);
            prms[1].Value = workerId;

            DataTable cTable = SPHelper.ExecuteDataset(trans, SpNames.GetWorkerCards, prms).Tables[0];

            foreach (DataRow row in cTable.Rows)
            {
                int         controlCardID = (int)row["ControlCardID"];
                ControlCard card          = new ControlCard(trans, controlCardID, userName);
                cards.Add(card);
            }

            return(cards);
        }