Esempio n. 1
0
        private EntityData _GetOAContacts()
        {
            EntityData entitydata            = new EntityData("OAContact");
            OAContactStrategyBuilder builder = new OAContactStrategyBuilder();

            if (this._OAContactCode != null)
            {
                builder.AddStrategy(new Strategy(OAContactStrategyName.OAContactCode, this._OAContactCode));
            }
            if (this._title != null)
            {
                builder.AddStrategy(new Strategy(OAContactStrategyName.title, this._title));
            }
            if (this._phone != null)
            {
                builder.AddStrategy(new Strategy(OAContactStrategyName.phone, this._phone));
            }
            if (this._Unit != null)
            {
                builder.AddStrategy(new Strategy(OAContactStrategyName.Unit, this._Unit));
            }
            if (this._CDate != null)
            {
                builder.AddStrategy(new Strategy(OAContactStrategyName.CDate, this._CDate));
            }
            if (this._UserSend != null)
            {
                builder.AddStrategy(new Strategy(OAContactStrategyName.UserSend, this._UserSend));
            }
            if (this._SubmitReport != null)
            {
                builder.AddStrategy(new Strategy(OAContactStrategyName.SubmitReport, this._SubmitReport));
            }
            if (this._takPerson != null)
            {
                builder.AddStrategy(new Strategy(OAContactStrategyName.takPerson, this._takPerson));
            }
            if (this._content != null)
            {
                builder.AddStrategy(new Strategy(OAContactStrategyName.content, this._content));
            }
            if (this._takTime != null)
            {
                builder.AddStrategy(new Strategy(OAContactStrategyName.takTime, this._takTime));
            }
            if (this._Author != null)
            {
                builder.AddStrategy(new Strategy(OAContactStrategyName.Author, this._Author));
            }
            if (this._Type != null)
            {
                builder.AddStrategy(new Strategy(OAContactStrategyName.Type, this._Type));
            }
            string queryString = builder.BuildMainQueryString() + " order by OAContactCode";

            if (this._dao == null)
            {
                QueryAgent agent = new QueryAgent();
                return(agent.FillEntityData("OAContact", queryString));
            }
            this.dao.FillEntity(queryString, entitydata);
            return(entitydata);
        }
Esempio n. 2
0
        private void LoadAudit()
        {
            DataTable dtAudit = new DataTable();

            dtAudit.Columns.Add("Type", System.Type.GetType("System.String"));
            dtAudit.Columns.Add("Title", System.Type.GetType("System.String"));
            dtAudit.Columns.Add("Url", System.Type.GetType("System.String"));
            dtAudit.Columns.Add("AuditTime", System.Type.GetType("System.String"));
            dtAudit.Columns.Add("ProjectCode", System.Type.GetType("System.String"));
            DataRow drAudit;

            // 是否有合同审核权限
            bool isContractRight = user.HasOperationRight("050105") && user.HasOperationRight("0802");

            if (isContractRight)
            {
                // 合同前n条数据
                int       intContractNum = 6;
                DataTable dtContract     = this.GetContact(intContractNum);
                //DataGrid1.DataSource = dtContract;
                //DataGrid1.DataBind();
                //			for(int i=0;i<dtContract.Rows.Count;i++)
                //			{
                //				drAudit = dtAudit.NewRow();
                //				drAudit["Type"] = "合同审核";
                //				drAudit["Title"] = dtContract.Rows[i]["ContractName"].ToString();
                //				drAudit["Url"] = "Contract/ContractInfo.aspx?ProjectCode="+projectCode+"&ContractCode="+dtContract.Rows[i]["ContractCode"].ToString();
                //				drAudit["AuditTime"] = dtContract.Rows[i]["CreateDate"].ToString();
                //				dtAudit.Rows.Add(drAudit);
                //			}
                if (dtContract.Rows.Count > 0)
                {
                    //Response.Write(dtContract.Rows.Count);
                    drAudit              = dtAudit.NewRow();
                    drAudit["Type"]      = "合同审核";
                    drAudit["Title"]     = dtContract.Rows.Count;
                    drAudit["Url"]       = "Contract/Contract.aspx?Status=1";//&ProjectCode="+dtContract.Rows[0]["ProjectCode"].ToString();
                    drAudit["AuditTime"] = dtContract.Rows[0]["CreateDate"].ToString();
                    dtAudit.Rows.Add(drAudit);
                }
            }

            // 是否有情款审核权限
            bool isPaymentRight = user.HasOperationRight("060105") && user.HasOperationRight("0802");

            if (isPaymentRight)
            {
                // 请款前n条数据
                int       intPaymentNum = 6;
                DataTable dtPayment     = this.GetPayment(intPaymentNum);
                //			for(int i=0;i<dtPayment.Rows.Count;i++)
                //			{
                //				drAudit = dtAudit.NewRow();
                //				drAudit["Type"] = "请款审核";
                //				drAudit["Title"] = dtPayment.Rows[i]["PaymentCode"].ToString();
                //				drAudit["Url"] = "Finance/PaymentInfo.aspx?PaymentCode="+dtPayment.Rows[i]["PaymentCode"].ToString();
                //				drAudit["AuditTime"] = dtPayment.Rows[i]["ApplyDate"].ToString();
                //				dtAudit.Rows.Add(drAudit);
                //			}
                if (dtPayment.Rows.Count > 0)
                {
                    drAudit              = dtAudit.NewRow();
                    drAudit["Type"]      = "请款审核";
                    drAudit["Title"]     = dtPayment.Rows.Count;
                    drAudit["Url"]       = "Finance/PaymentList.aspx?Status=0";//&ProjectCode="+dtPayment.Rows[0]["ProjectCode"].ToString();
                    drAudit["AuditTime"] = dtPayment.Rows[0]["ApplyDate"].ToString();
                    dtAudit.Rows.Add(drAudit);
                }
            }


            bool isDynamicCostRight = user.HasOperationRight("040403");

            if (isDynamicCostRight)
            {
                // 费用前n条数据 ,在动态费用-》动态调整中的待审核
                int       intDynamicCostNum = 6;
                DataTable dtDynamicCost     = this.GetDynamicCost(intDynamicCostNum);
                //			for(int i=0;i<dtDynamicCost.Rows.Count;i++)
                //			{
                //				drAudit = dtAudit.NewRow();
                //				drAudit["Type"] = "费用审核";
                //				drAudit["Title"] = dtDynamicCost.Rows[i]["BudgetName"].ToString();
                //				drAudit["Url"] = "Cost/DynamicApplyInfo.aspx?ProjectCode="+projectCode+"&BudgetCode="+dtDynamicCost.Rows[i]["BudgetCode"].ToString();
                //				drAudit["AuditTime"] = dtDynamicCost.Rows[i]["MakeDate"].ToString();
                //				dtAudit.Rows.Add(drAudit);
                //			}
                if (dtDynamicCost.Rows.Count > 0)
                {
                    drAudit              = dtAudit.NewRow();
                    drAudit["Type"]      = "动态费用审核";
                    drAudit["Title"]     = dtDynamicCost.Rows.Count;
                    drAudit["Url"]       = "Cost/DynamicCostApplyList.aspx?ProjectCode=" + dtDynamicCost.Rows[0]["ProjectCode"].ToString();
                    drAudit["AuditTime"] = dtDynamicCost.Rows[0]["MakeDate"].ToString();
                    dtAudit.Rows.Add(drAudit);
                }
            }

            // 取得流程待审核,即在办箱单据 unm add 2005.4.4
            // ***********************流程待审核*****************************
            EntityData    entity            = DAL.EntityDAO.WorkFlowDAO.GetAllWorkFlowProcedure();
            int           iCount            = entity.CurrentTable.Rows.Count;
            List <string> ProcedureNameList = new List <string>();

            for (int i = 0; i < iCount; i++)
            {
                entity.SetCurrentRow(i);
                // 取得每个类别的个数
                string ProcedureName = entity.GetString("ProcedureName");
                if (!ProcedureNameList.Contains(ProcedureName))
                {
                    WorkFlowActStrategyBuilder sb = new WorkFlowActStrategyBuilder();
                    sb.AddStrategy(new Strategy(WorkFlowActStrategyName.StatusBegin, "Begin"));                                                        // 收件箱
                    sb.AddStrategy(new Strategy(WorkFlowActStrategyName.InActUser, user.UserCode));
                    sb.AddStrategy(new Strategy(WorkFlowActStrategyName.ProcedureCodeIn, BLL.WorkFlowRule.GetProcedureCodeListByName(ProcedureName))); // 各种流程
                    sb.AddStrategy(new Strategy(WorkFlowActStrategyName.ActMeetOrder, ""));
                    string     sql     = sb.BuildMainQueryString();
                    QueryAgent qa      = new QueryAgent();
                    EntityData entity1 = qa.FillEntityData("WorkFlowAct", sql);
                    qa.Dispose();

                    if (entity1.CurrentTable.Rows.Count > 0)
                    {
                        drAudit              = dtAudit.NewRow();
                        drAudit["Type"]      = entity.GetString("Description");
                        drAudit["Title"]     = entity1.CurrentTable.Rows.Count;
                        drAudit["Url"]       = "WorkFlowContral/WorkFlowReceiveBox.aspx?ProcedureName=" + Server.UrlEncode(ProcedureName); //暂时屏蔽?ProcedureCode=" + entity.GetString("ProcedureCode");
                        drAudit["AuditTime"] = System.DBNull.Value;
                        dtAudit.Rows.Add(drAudit);
                    }
                    entity1.Dispose();
                    ProcedureNameList.Add(ProcedureName);
                }
            }
            entity.Dispose();

            // ***********************流程待审核*****************************


            DataView dv = new DataView(dtAudit);

            dv.Sort = " AuditTime desc ";
            // 取得全部审核的前n条
            DataTable dtTmp = new DataTable();

            dtTmp = dtAudit.Clone();
            //int j=0;
            //foreach(DataRowView drv in dv)
            //{
            //drAudit = dtTmp.NewRow();
            ///drAudit.ItemArray = drv.Row.ItemArray;
            //dtTmp.Rows.Add(drAudit);

            //j++;
            //if(j>=this.intListAuditNum) break;
            //}
            this.rpAudit.DataSource = dtAudit;
            this.rpAudit.DataBind();

            ///////////////////////////////////////////////////////////////////////////////////



            // ***********************流程待审核*****************************


            /*DataView dvclm = new DataView(dtAuditclm);
             * dvclm.Sort = " AuditTime desc ";
             * // 取得全部审核的前n条
             * DataTable dtTmpclm = new DataTable();
             * dtTmpclm = dtAuditclm.Clone();
             * int jclm=0;
             * foreach(DataRowView drv in dvclm)
             * {
             *  drAudit = dtTmpclm.NewRow();
             *  drAudit.ItemArray = drv.Row.ItemArray;
             *  dtTmpclm.Rows.Add(drAudit);
             *
             *  jclm++;
             *  if(jclm>=this.intListAuditNum) break;
             * }
             * //this.Repeater1.DataSource = dtTmpclm;
             * //this.Repeater1.DataBind();*/

            ///////////////////////////////////////////////////////////////////////////////////
        }
Esempio n. 3
0
 private void SetRelationContract()
 {
     try
     {
         int       index;
         DataRow[] rowArray = this.tbContract.Select("RecordType = 'Contract'");
         int       length   = rowArray.Length;
         for (index = length - 1; index >= 0; index--)
         {
             this.tbContract.Rows.Remove(rowArray[index]);
         }
         rowArray = this.tbPlan.Select("RecordType = 'Contract'");
         length   = rowArray.Length;
         for (index = length - 1; index >= 0; index--)
         {
             this.tbPlan.Rows.Remove(rowArray[index]);
         }
         QueryAgent agent = new QueryAgent();
         try
         {
             string    queryString = "select c.FullCode, s.SupplierName, a.*, b.* from ContractCost a left join CBS c on c.CostCode = a.CostCode, Contract b left join Supplier s on s.SupplierCode = b.SupplierCode where a.ContractCode = b.ContractCode and b.ProjectCode = '" + this.ProjectCode + "' and a.CostBudgetSetCode = '" + this.CostBudgetSetCode + "' and b.Status in (0, 2) and not exists (select * from ContractChange g where g.ContractCode = b.ContractCode)";
             DataTable tbSrc       = agent.ExecSqlForDataSet(queryString).Tables[0];
             this.AddRelationContractRow(this.tbContract, tbSrc, "Contract", "ContractMoney");
             queryString = "select c.FullCode, a.Money as Money, s.SupplierName, a.*, b.* from ContractCostChange a left join CBS c on c.CostCode = a.CostCode, Contract b left join Supplier s on s.SupplierCode = b.SupplierCode where a.ContractCode = b.ContractCode and b.ProjectCode = '" + this.ProjectCode + "' and a.CostBudgetSetCode = '" + this.CostBudgetSetCode + "' and b.Status in (0, 2, 4) and a.ContractChangeCode = (select min(ContractChangeCode) from ContractChange g where g.ContractCode = b.ContractCode) and exists (select * from ContractChange g where g.ContractCode = b.ContractCode)";
             tbSrc       = agent.ExecSqlForDataSet(queryString).Tables[0];
             this.AddRelationContractRow(this.tbContract, tbSrc, "Contract", "ContractMoney");
             queryString = "select c.FullCode, a.ChangeMoney as Money, s.SupplierName, a.*, b.* from ContractCostChange a left join CBS c on c.CostCode = a.CostCode, Contract b left join Supplier s on s.SupplierCode = b.SupplierCode, ContractChange g where a.ContractCode = b.ContractCode and b.ContractCode = g.ContractCode and a.ContractChangeCode = g.ContractChangeCode and b.ProjectCode = '" + this.ProjectCode + "' and a.CostBudgetSetCode = '" + this.CostBudgetSetCode + "' and b.Status not in (3) and g.Status in (0) and a.ChangeMoney <> 0";
             tbSrc       = agent.ExecSqlForDataSet(queryString).Tables[0];
             this.AddRelationContractRow(this.tbContract, tbSrc, "Contract", "ContractChangeMoney");
             queryString = "select c.FullCode, s.SupplierName, a.*, b.* from ContractCost a left join CBS c on c.CostCode = a.CostCode, Contract b left join Supplier s on s.SupplierCode = b.SupplierCode where a.ContractCode = b.ContractCode and b.ProjectCode = '" + this.ProjectCode + "' and a.CostBudgetSetCode = '" + this.CostBudgetSetCode + "' and b.Status in (1, 7)";
             tbSrc       = agent.ExecSqlForDataSet(queryString).Tables[0];
             this.AddRelationContractRow(this.tbContract, tbSrc, "Contract", "ContractApplyMoney");
             queryString = "select c.FullCode, s.SupplierName, a.ChangeMoney as Money, a.*, b.* from ContractCostChange a left join CBS c on c.CostCode = a.CostCode, Contract b left join Supplier s on s.SupplierCode = b.SupplierCode, ContractChange g where a.ContractCode = b.ContractCode and b.ContractCode = g.ContractCode and a.ContractChangeCode = g.ContractChangeCode and b.ProjectCode = '" + this.ProjectCode + "' and a.CostBudgetSetCode = '" + this.CostBudgetSetCode + "' and b.Status not in (3) and g.Status in (1, 2) and a.ChangeMoney <> 0";
             tbSrc       = agent.ExecSqlForDataSet(queryString).Tables[0];
             this.AddRelationContractRow(this.tbContract, tbSrc, "Contract", "ContractApplyMoney");
             queryString = "select c.FullCode, 'Contract' as RecordType, a.CostCode, a.ContractCode, convert(varchar(6), p.PlanningPayDate, 112) as PlanYm, sum(isnull(p.Money, 0)) as PlanMoney from ContractCost a left join CBS c on c.CostCode = a.CostCode, Contract b, ContractCostPlan p where a.ContractCode = b.ContractCode and a.ContractCostCode = p.ContractCostCode and b.ProjectCode = '" + this.ProjectCode + "' and a.CostBudgetSetCode = '" + this.CostBudgetSetCode + "' and convert(varchar(6), p.PlanningPayDate, 112) between '" + this.StartYm + "' and '" + this.EndYm + "' group by c.FullCode, a.CostCode, a.ContractCode, convert(varchar(6), p.PlanningPayDate, 112)";
             tbSrc       = agent.ExecSqlForDataSet(queryString).Tables[0];
             this.AddPlan(tbSrc, "");
             foreach (DataRow row in this.tbContract.Rows)
             {
                 string text2 = ConvertRule.ToString(row["ContractCode"]);
                 if (ConvertRule.ToString(row["AllContractCode"]) != "")
                 {
                     queryString        = "select sum(isnull(a.ItemMoney, 0)) from PaymentItem a, Payment b where a.PaymentCode = b.PaymentCode and b.ProjectCode = '" + this.ProjectCode + "' and a.CostBudgetSetCode = '" + this.CostBudgetSetCode + "' and b.Status in (1, 2) and b.ContractCode in (" + ConvertRule.ToString(row["AllContractCode"]) + ") and a.CostCode = '" + ConvertRule.ToString(row["CostCode"]) + "'";
                     row["ContractPay"] = ConvertRule.ToDecimal(agent.ExecuteScalar(queryString));
                     queryString        = "select a.PayoutCode, b.PayoutDate, a.PayoutMoney as Money, '" + text2 + "' as ContractCode, mi.CostCode, c.FullCode from PayoutItem a inner join Payout b on b.PayoutCode = a.PayoutCode, PaymentItem mi left join CBS c on c.CostCode = mi.CostCode, Payment m where a.PaymentItemCode = mi.PaymentItemCode and mi.PaymentCode = m.PaymentCode and m.ProjectCode = '" + this.ProjectCode + "' and mi.CostBudgetSetCode = '" + this.CostBudgetSetCode + "' and m.ContractCode in (" + ConvertRule.ToString(row["AllContractCode"]) + ") and mi.CostCode = '" + ConvertRule.ToString(row["CostCode"]) + "'";
                     tbSrc = agent.ExecSqlForDataSet(queryString).Tables[0];
                     row["ContractPayReal"] = MathRule.SumColumn(tbSrc, "Money");
                 }
             }
             CostBudgetPageRule.CostBudgetDtlCalcAllRow(this.tbContract, CostBudgetPageRule.m_DynamicRowType.Contract, null, 0, 0);
         }
         finally
         {
             agent.Dispose();
         }
     }
     catch (Exception exception)
     {
         throw exception;
     }
 }
Esempio n. 4
0
        private void LoadDataGrid(bool isEmpty)
        {
            try
            {
                DataTable tb;

                if (this.rbType.SelectedValue == "0")
                {
                    SalSuplStrategyBuilder sb = new SalSuplStrategyBuilder();

                    if (isEmpty)
                    {
                        sb.AddStrategy(new Strategy(SalSuplStrategyName.False));
                    }

                    string SuplName = this.txtSearchSuplName.Value.Trim();
                    if (SuplName != "")
                    {
                        sb.AddStrategy(new Strategy(SalSuplStrategyName.SuplName, SuplName));
                    }

                    sb.AddOrder("SuplName", true);

                    string sql = sb.BuildMainQueryString();

                    QueryAgent qa     = new QueryAgent();
                    EntityData entity = qa.FillEntityData("SalSupl", sql);
                    tb = entity.CurrentTable;
                    qa.Dispose();
                    entity.Dispose();
                }
                else
                {
                    SupplierStrategyBuilder sb = new SupplierStrategyBuilder();

                    if (isEmpty)
                    {
                        sb.AddStrategy(new Strategy(SupplierStrategyName.False));
                    }

                    string SuplName = this.txtSearchSuplName.Value.Trim();
                    if (SuplName != "")
                    {
                        sb.AddStrategy(new Strategy(SupplierStrategyName.SupplierName, SuplName));
                    }

                    sb.AddOrder("SupplierName", true);

                    string sql = sb.BuildMainQueryString();

                    QueryAgent qa     = new QueryAgent();
                    EntityData entity = qa.FillEntityData("Supplier", sql);
                    tb = entity.CurrentTable;
                    qa.Dispose();
                    entity.Dispose();
                }

                dgList.DataSource = tb;
                dgList.DataBind();
            }
            catch (Exception ex)
            {
                ApplicationLog.WriteLog(this.ToString(), ex, "");
            }
        }
Esempio n. 5
0
        private void InData(string templetCode)
        {
            ViewState["ProjectCode"] = Request["ProjectCode"].ToString();
            string projectCode = (string)ViewState["ProjectCode"];

            //EntityData del=WBSDAO.GetTaskByProject((string)ViewState["ProjectCode"]);
            //获取当前工作项结构,并删除之
            DAL.QueryStrategy.WBSStrategyBuilder WSB = new RmsPM.DAL.QueryStrategy.WBSStrategyBuilder();
            WSB.AddStrategy(new Strategy(DAL.QueryStrategy.WBSStrategyName.ProjectCode, (string)ViewState["ProjectCode"]));
            string     sql           = WSB.BuildMainQueryString();
            QueryAgent QA            = new QueryAgent();
            EntityData entityProject = QA.FillEntityData("Task", sql + " and Flag = 1");
            EntityData del           = QA.FillEntityData("Task", sql + " and Flag = 0 ");

            string ProjectWBSCode = "";

            if (entityProject.HasRecord())
            {
                ProjectWBSCode = entityProject.GetString("WBSCode");
            }
            entityProject.Dispose();
            QA.Dispose();

            if (del.HasRecord())
            {
                int iCount = del.CurrentTable.Rows.Count;
                for (int i = 0; i < iCount; i++)
                {
                    DeleteStandard_WBS(del.CurrentTable.Rows[i]["WBSCode"].ToString());
                }
            }
            del.Dispose();

            EntityData entity = WBSDAO.GetStandard_WBSTempletByCode(templetCode);

            if (entity.HasRecord())
            {
                entity.SetCurrentTable("WBSTemplet");
                entity.CurrentTable.Columns.Add("NewWBSCode");
                entity.CurrentTable.Columns.Add("NewFullCode");

                /*
                 * // 取任务项中最早的计划开始时间作为项目的开始时间,
                 * // 用来计算与新项目的开始时间的相对值
                 * DateTime dateBaseStart;
                 * DataRow[] rowDate = entity.CurrentTable.Select("PlannedStartDate is not null","PlannedStartDate");
                 * if (rowDate.Length > 0)
                 * {
                 *      dateBaseStart = (DateTime)rowDate[0]["PlannedStartDate"];
                 * }
                 *
                 * DateTime dateNewStartDate = DateTime.Parse( this.dtbProjectStartDate.Value);
                 * TimeSpan bts = dateNewStartDate - dateBaseStart ;
                 * int iSPDate = bts.Days;							// 新老项目的时间错误天数
                 */

                // 按照Deep顺序生成新的WBSCode和FullCode
                DataRow[] drs    = entity.CurrentTable.Select("", "Deep");
                int       iCount = entity.CurrentTable.Rows.Count;
                for (int i = 0; i < iCount; i++)
                {
                    string newWBSCode = DAL.EntityDAO.SystemManageDAO.GetNewSysCode("WBS");
                    drs[i]["NewWBSCode"] = newWBSCode;
                    string parentCode = "";
                    if (!drs[i].IsNull("ParentCode"))
                    {
                        parentCode = (string)drs[i]["ParentCode"];
                    }

                    string newParentFullCode = "";
                    string newFullCode       = "";
                    string newParentCode     = "";
                    if (parentCode != "")
                    {
                        DataRow[] pDrs = entity.CurrentTable.Select("WBSCode='" + parentCode + "'");
                        if (pDrs.Length > 0)
                        {
                            newParentFullCode = (string)pDrs[0]["NewFullCode"];
                            newParentCode     = (string )pDrs[0]["NewWBSCode"];
                        }
                    }
                    else
                    {
                        newParentCode     = ProjectWBSCode;
                        newParentFullCode = ProjectWBSCode;
                    }
                    if (newParentFullCode == "")
                    {
                        newFullCode = newWBSCode;
                    }
                    else
                    {
                        newFullCode = newParentFullCode + "-" + newWBSCode;
                    }

                    drs[i]["NewFullCode"] = newFullCode;
                    drs[i]["ParentCode"]  = newParentCode;
                }

                // 取得根节点人权限
                string     strUser    = "";
                string     strStation = "";
                EntityData entityUser = WBSDAO.GetTaskPersonByWBSCode(ProjectWBSCode);
                if (entityUser.HasRecord())
                {
                    DataTable dtUserNew = entityUser.CurrentTable.Copy();
                    for (int i = 0; i < dtUserNew.Rows.Count; i++)
                    {
                        if (dtUserNew.Rows[i]["RoleType"].ToString() == "0")                      // 类型为人
                        {
                            if (dtUserNew.Rows[i]["Type"].ToString() == "2")                      // 负责人
                            {
                                strUser += (strUser == "")?"":",";
                                strUser += dtUserNew.Rows[i]["UserCode"].ToString();
                            }
                        }
                        if (dtUserNew.Rows[i]["RoleType"].ToString() == "1")                      // 类型为岗位
                        {
                            if (dtUserNew.Rows[i]["Type"].ToString() == "2")                      // 负责人
                            {
                                strStation += (strStation == "")?"":",";
                                strStation += dtUserNew.Rows[i]["UserCode"].ToString();
                            }
                        }
                    }
                }
                entityUser.Dispose();

                EntityData task = new EntityData("Task");
                //DataRow newWBSRow = null;
                DataRow newTaskRow = null;
                for (int i = 0; i < iCount; i++)
                {
                    newTaskRow            = task.GetNewRecord();
                    newTaskRow["WBSCode"] = drs[i]["NewWBSCode"];

                    newTaskRow["FullCode"] = drs[i]["NewFullCode"];

                    newTaskRow["ProjectCode"]   = projectCode;
                    newTaskRow["TaskName"]      = drs[i]["TaskName"];
                    newTaskRow["OutLineNumber"] = drs[i]["OutLineNumber"];
                    newTaskRow["SortID"]        = drs[i]["SortID"];
                    newTaskRow["ParentCode"]    = drs[i]["ParentCode"];

                    newTaskRow["Deep"] = drs[i]["Deep"];

                    newTaskRow["TaskCode"] = "";                    //DAL.EntityDAO.SystemManageDAO.GetNewSysCode("Task");

                    newTaskRow["WBSCode"]     = drs[i]["NewWBSCode"];
                    newTaskRow["ProjectCode"] = projectCode;

                    newTaskRow["PlannedStartDate"]  = drs[i]["PlannedStartDate"];
                    newTaskRow["PlannedFinishDate"] = drs[i]["PlannedFinishDate"];

                    /*
                     * if ( drs[i].IsNull("PlannedStartDate"))
                     *      newTaskRow["PlannedStartDate"]= System.DBNull.Value;
                     * else
                     *      newTaskRow["PlannedStartDate"]= ((DateTime)drs[i]["PlannedStartDate"]).AddDays( iSPDate) ;
                     *
                     * if ( drs[i].IsNull("PlannedFinishDate"))
                     *      newTaskRow["PlannedFinishDate"]= System.DBNull.Value;
                     * else
                     *      newTaskRow["PlannedFinishDate"]= ((DateTime) drs[i]["PlannedFinishDate"]).AddDays(iSPDate);
                     *
                     * if ( drs[i].IsNull("ActualStartDate"))
                     *      newTaskRow["ActualStartDate"]= System.DBNull.Value;
                     * else
                     *      newTaskRow["ActualStartDate"]= ((DateTime)drs[i]["ActualStartDate"]).AddDays( iSPDate) ;
                     *
                     * if ( drs[i].IsNull("ActualFinishDate"))
                     *      newTaskRow["ActualFinishDate"]= System.DBNull.Value;
                     * else
                     *      newTaskRow["ActualFinishDate"]= ((DateTime) drs[i]["ActualFinishDate"]).AddDays(iSPDate);
                     *
                     * if ( drs[i].IsNull("EarlyFinishDate") )
                     *      newTaskRow["EarlyFinishDate"]= System.DBNull.Value;
                     * else
                     *      newTaskRow["EarlyFinishDate"]= ((DateTime)drs[i]["EarlyFinishDate"]).AddDays(iSPDate);
                     *
                     * if ( drs[i].IsNull("EarlyStartDate"))
                     *      newTaskRow["EarlyStartDate"] = System.DBNull.Value;
                     * else
                     *      newTaskRow["EarlyStartDate"]= ((DateTime)drs[i]["EarlyStartDate"]).AddDays(iSPDate);
                     *
                     * if ( drs[i].IsNull("LastFinishDate"))
                     *      newTaskRow["LastFinishDate"]= System.DBNull.Value;
                     * else
                     *      newTaskRow["LastFinishDate"]= ((DateTime)drs[i]["LastFinishDate"]).AddDays(iSPDate);
                     *
                     * if ( drs[i].IsNull("LastStartDate"))
                     *      newTaskRow["LastStartDate"]= System.DBNull.Value;
                     * else
                     *      newTaskRow["LastStartDate"]= ((DateTime)drs[i]["LastStartDate"]).AddDays(iSPDate);
                     */

                    newTaskRow["Duration"]        = drs[i]["Duration"];
                    newTaskRow["Remark"]          = drs[i]["Remark"];
                    newTaskRow["Status"]          = 0;
                    newTaskRow["Flag"]            = 0;
                    newTaskRow["ImportantLevel"]  = drs[i]["ImportantLevel"];
                    newTaskRow["CompletePercent"] = 0;
                    newTaskRow["ImageFileName"]   = drs[i]["ImageFileName"];

                    task.AddNewRecord(newTaskRow);

                    // 添加资源权限
                    // 保存资源
                    //this.SaveRS(drs[i]["NewWBSCode"].ToString(),strUser,strStation,"070101,070102,070103,070104,070105,070106,070107,070108,070109,070110");// 初始拥有工作的全部权限
                }

                DAL.EntityDAO.WBSDAO.InsertTask(task);
                task.Dispose();
            }
            entity.Dispose();
        }