示例#1
0
    /// <summary>
    /// 根据监测类型获取敢为职责用户信息
    /// </summary>
    /// <param name="strItemId">监测项目ID</param>
    /// <returns></returns>
    public string getUserInfo(string strItemId, string strSampleId)
    {
        //获取监测类别
        string    strMonitorType = "";
        DataTable dtSubtask      = new TMisMonitorSubtaskLogic().GetSubTaskObjectBySample(strSampleId);

        if (dtSubtask.Rows.Count > 0)
        {
            strMonitorType = dtSubtask.Rows[0]["MONITOR_ID"].ToString();
        }
        //获取分析分配环节用户信息
        DataTable objTable = new TSysDutyLogic().SelectTableDutyUser(new TSysDutyVo()
        {
            DICT_CODE = "duty_other_analyse_result", MONITOR_TYPE_ID = strMonitorType, MONITOR_ITEM_ID = strItemId
        });
        string  strCurrentUserId = LogInfo.UserInfo.ID;
        DataRow deleteRow        = null;

        foreach (DataRow row in objTable.Rows)
        {
            if (row["USERID"].ToString() == strCurrentUserId)
            {
                deleteRow = row;
            }
        }
        if (deleteRow != null)
        {
            objTable.Rows.Remove(deleteRow);
        }
        return(DataTableToJson(objTable));
    }
示例#2
0
    /// <summary>
    /// 插入分析类岗位的 监测类别
    /// </summary>
    /// <param name="objcitems"></param>
    /// <param name="strDutyType"></param>
    /// <param name="strMonitor"></param>
    /// <param name="strItems"></param>
    /// <param name="strUserId"></param>
    /// <param name="dtis"></param>
    /// <param name="sAuItems"></param>
    /// <param name="sExItems"></param>
    /// <param name="mAuItems"></param>
    /// <param name="mExItems"></param>
    /// <returns></returns>
    public static bool InsertAddMonitorItems(TSysDutyVo objcitems, string strDutyType, string strMonitor, string strUserId, DataTable dtis, string[] strItems, string[] sAuItems, string[] sExItems, string[] mAuItems, string[] mExItems, bool isMonitorType)
    {
        bool   flag = false;
        string flag_au = "", flag_ex = "", flag_mau = "", flag_mex = "";
        string dutId = "";
        int    newNum = 0, newSuc = 0;
        int    strCount = strItems.Length - 1;

        foreach (string str in strItems)
        {
            if (!String.IsNullOrEmpty(str))
            {
                //是否存在已经设置了的监测项目组合
                DataRow[] dr = dtis.Select("MONITOR_ITEM_ID IS NULL AND DICT_CODE='" + strDutyType + "'");
                if (dr.Length > 0)
                {
                    //获取已经存在符合条件的ID
                    dutId = dr[0]["ID"].ToString();
                }
                else
                {
                    objcitems.ID        = GetSerialNumber("duty_set_infor");
                    dutId               = objcitems.ID;
                    objcitems.DICT_CODE = strDutyType;
                    bool flgs = new TSysDutyLogic().Create(objcitems);
                    if (flgs)
                    {
                        string strMessage = new PageBase().LogInfo.UserInfo.USER_NAME + "新增岗位职责" + objcitems.ID + "成功";
                        new PageBase().WriteLog(i3.ValueObject.ObjectBase.LogType.AddDutyInfo, "", strMessage);
                    }
                }

                //直接插入岗位职责用户关联数据

                if (UserDutyItem(strUserId, "", dutId))
                {
                    newNum++;
                }
                else
                {
                    newSuc++;
                }

                //插入默认负责人和默认协同人项目
                flag_au  = UpdateDefaultAuValue(strUserId, strMonitor, strDutyType, sAuItems, isMonitorType);
                flag_ex  = UpdateDefaultExValue(strUserId, strMonitor, strDutyType, sExItems, isMonitorType);
                flag_mau = UpdateDefaultMoveAuValue(strUserId, strMonitor, strDutyType, mAuItems, isMonitorType);
                flag_mex = UpdateDefaultMoveExValue(strUserId, strMonitor, strDutyType, mExItems, isMonitorType);
            }
        }

        if ((newNum + newSuc) == strCount && flag_au != "0" && flag_ex != "0" && flag_mau != "0" & @flag_mex != "0")
        {
            flag = true;
        }
        return(flag);
    }
    /// <summary>
    /// 获取用户数据集
    /// </summary>
    /// <returns></returns>
    protected string getUserList()
    {
        DataTable  dt       = new DataTable();
        TSysDutyVo objItems = new TSysDutyVo();

        objItems.DICT_CODE = "duty_reportschedule";
        dt = new TSysDutyLogic().SelectByUnionTableForWhere(objItems, 0, 0);
        return(DataTableToJson(dt));
    }
    public static bool InsertSelectedUser(string strUserId, string strItemID, string strDutyType)
    {
        string strDutyID    = "";
        string strMonitorID = new TBaseItemInfoLogic().Details(strItemID).MONITOR_ID;

        TSysDutyVo objDutySrh = new TSysDutyVo();

        objDutySrh.MONITOR_TYPE_ID = strMonitorID;
        objDutySrh.MONITOR_ITEM_ID = strItemID;
        objDutySrh.DICT_CODE       = strDutyType;
        DataTable dtDuty = new TSysDutyLogic().SelectByTable(objDutySrh);

        if (dtDuty.Rows.Count == 0)
        {
            //如果不存在岗位配置,增加
            objDutySrh.ID = GetSerialNumber("duty_set_infor");
            if (new TSysDutyLogic().Create(objDutySrh))
            {
                strDutyID = objDutySrh.ID;
            }
        }
        else
        {
            strDutyID = dtDuty.Rows[0]["ID"].ToString();
        }

        TSysUserDutyVo objUserDutySrh = new TSysUserDutyVo();

        objUserDutySrh.DUTY_ID = strDutyID;
        DataTable dtUserDuty = new TSysUserDutyLogic().SelectByTable(objUserDutySrh);

        //删除移除的
        for (int i = 0; i < dtUserDuty.Rows.Count; i++)
        {
            string strTmpUserID = dtUserDuty.Rows[i]["USERID"].ToString();
            if (!strUserId.Contains(strTmpUserID))
            {
                new TSysUserDutyLogic().Delete(dtUserDuty.Rows[i]["ID"].ToString());
            }
        }

        string[] strUerArr = strUserId.Split(';');
        new TSysUserDutyLogic().InsertSelectedUser(strUerArr, strDutyID);


        return(true);
    }
    /// <summary>
    /// 获取用户信息
    /// </summary>
    /// <returns></returns>
    protected string getUserInfo()
    {
        //获得所有监测类别
        DataTable  dtSonTask = new TMisMonitorSubtaskLogic().selectAllContractType(this.hdnTaskID.Value);
        string     reslut    = "";
        DataTable  dtTotal   = new DataTable();
        TSysDutyVo objItems  = new TSysDutyVo();

        /*
         * foreach (DataRow dr in dtSonTask.Rows)
         * {
         *  DataTable dt = new DataTable();
         *  objItems.DICT_CODE = "duty_reportschedule";
         *  objItems.MONITOR_TYPE_ID = dr["MONITOR_ID"].ToString();
         *  dt = new TSysDutyLogic().SelectByUnionTable(objItems, 0, 0);
         *  dt.Columns.Add("MONITOR_NAME");
         *  dt.Columns.Add("POST_NAME");
         *  //添加监测类别列
         *  foreach (DataRow drSon in dt.Rows)
         *  {
         *      drSon["MONITOR_NAME"] = new TBaseMonitorTypeInfoLogic().Details(dr["MONITOR_ID"].ToString()).MONITOR_TYPE_NAME;
         *      drSon["POST_NAME"] = new TSysPostLogic().Details(new TSysUserPostLogic().Details(new TSysUserPostVo() { USER_ID = drSon["ID"].ToString() }).POST_ID).POST_NAME;
         *  }
         *  dtTotal.Merge(dt);
         * }
         */
        DataTable dt = new DataTable();

        objItems.DICT_CODE       = "duty_reportschedule";
        objItems.MONITOR_TYPE_ID = "000000001";  //默认报告编制人是废水类型的
        dt = new TSysDutyLogic().SelectByUnionTable(objItems, 0, 0);
        dt.Columns.Add("MONITOR_NAME");
        dt.Columns.Add("POST_NAME");
        //添加监测类别列
        foreach (DataRow drSon in dt.Rows)
        {
            drSon["MONITOR_NAME"] = new TBaseMonitorTypeInfoLogic().Details("000000001").MONITOR_TYPE_NAME;
            drSon["POST_NAME"]    = new TSysPostLogic().Details(new TSysUserPostLogic().Details(new TSysUserPostVo()
            {
                USER_ID = drSon["ID"].ToString()
            }).POST_ID).POST_NAME;
        }
        dtTotal.Merge(dt);
        reslut = LigerGridDataToJson(dtTotal, dtTotal.Rows.Count);
        return(reslut);
    }
    /// <summary>
    /// 加载采样类岗位设置人员列表
    /// </summary>
    /// <param name="strMonitor"></param>
    /// <param name="strDutyType"></param>
    /// <param name="iIndex"></param>
    /// <param name="iCount"></param>
    /// <returns></returns>
    public string LoadSetUserList()
    {
        //创建标准JSON数据
        string strSortname  = Request.Params["sortname"];
        string strSortorder = Request.Params["sortorder"];

        string strDutyType = Request.Params["strDutyType"];
        string strItemID   = Request.Params["strItemID"];

        TSysDutyVo objItems = new TSysDutyVo();

        objItems.MONITOR_ITEM_ID = strItemID;
        objItems.DICT_CODE       = strDutyType;
        DataTable dt = new TSysDutyLogic().SelectByUnionTableForWhere(objItems, 0, 0);

        string reslut = LigerGridDataToJson(dt, dt.Rows.Count);

        return(reslut);
    }
    public static List <object> GetSubUserItems(string strPost_Dept, string strItemID, string strDutyType)
    {
        DataTable dt = new TSysUserLogic().SelectByTableUnderDept(strPost_Dept, 0, 0);

        TSysDutyVo objItems = new TSysDutyVo();

        objItems.MONITOR_ITEM_ID = strItemID;
        objItems.DICT_CODE       = strDutyType;
        DataTable dtDuty = new TSysDutyLogic().SelectByUnionTableForWhere(objItems, 0, 0);

        DataTable dtItems = new DataTable();

        dtItems = dt.Copy();
        dtItems.Clear();

        if (dtDuty.Rows.Count > 0)
        {
            for (int i = 0; i < dtDuty.Rows.Count; i++)
            {
                if (!String.IsNullOrEmpty(dtDuty.Rows[i]["ID"].ToString()))
                {
                    DataRow[] dr = dt.Select("ID='" + dtDuty.Rows[i]["ID"].ToString() + "'");
                    if (dr != null)
                    {
                        foreach (DataRow Temrow in dr)
                        {
                            Temrow.Delete();
                            dt.AcceptChanges();
                        }
                    }
                }
            }
        }

        dtItems = dt.Copy();

        List <object> listResult = LigerGridSelectDataToJson(dtItems, dtItems.Rows.Count);

        return(listResult);
    }
示例#8
0
    /// <summary>
    /// 加载采样类岗位设置人员列表
    /// </summary>
    /// <param name="strMonitor"></param>
    /// <param name="strDutyType"></param>
    /// <param name="iIndex"></param>
    /// <param name="iCount"></param>
    /// <returns></returns>
    public string LoadSetUserList(string strMonitor, string strDutyType, int iIndex, int iCount)
    {
        string reslut = "";

        dt = new DataTable();
        TSysDutyVo objItems = new TSysDutyVo();

        objItems.MONITOR_TYPE_ID = strMonitor;
        objItems.DICT_CODE       = strDutyType;
        dt = new TSysDutyLogic().SelectByUnionTable(objItems, iIndex, iCount);
        int intCount = new TSysDutyLogic().GetSelectByUnionResultCount(objItems);

        //TSysUserVo objVo = new TSysUserVo();
        //objVo.IS_DEL = "0";
        //objVo.IS_USE = "1";
        //objVo.IS_HIDE = "0";
        //dt = new TSysUserLogic().SelectByTable(objVo, iIndex, iCount);
        //int intCount = new TSysUserLogic().GetSelectResultCount(objVo);
        //DataTable dtnew = new DataTable();
        //dtnew = new TSysUserDutyLogic().GetSamplingSetUser(strMonitor, strDutyType);

        //dt.Columns.Add(new DataColumn("IF_DEFAULT", typeof(string)));
        //dt.Columns.Add(new DataColumn("IF_DEFAULT_EX", typeof(string)));
        //dt.Columns.Add(new DataColumn("ISEXIST", typeof(string)));
        //if (!String.IsNullOrEmpty(strMonitor))
        //{
        //    if (dtnew.Rows.Count > 0)
        //    {
        //            for (int i = 0; i < dt.Rows.Count; i++)
        //            {
        //                foreach (DataRow dr in dtnew.Rows)
        //                {
        //                    if (dt.Rows[i]["ID"].ToString() == dr["USERID"].ToString())
        //                    {
        //                        dt.Rows[i]["IF_DEFAULT"] = dr["IF_DEFAULT"].ToString();
        //                        dt.Rows[i]["IF_DEFAULT_EX"] = dr["IF_DEFAULT_EX"].ToString();
        //                        dt.Rows[i]["ISEXIST"] = "True";
        //                    }
        //                }
        //            }
        //            dt.AcceptChanges();

        //        DataRow[] drr = dt.Select("ISEXIST='True'");
        //        DataTable dtTemp = dt.Copy();
        //        dtTemp.Clear();
        //        foreach (DataRow ddr in drr)
        //        {
        //            dtTemp.ImportRow(ddr);
        //        }

        //        dt.Clear();
        //        dt = dtTemp.Copy();
        //    }
        //    else
        //    {
        //        dt.Clear();
        //    }
        //}
        //else
        //{
        //    dt.Clear();
        //}
        //intCount = dt.Rows.Count;
        reslut = LigerGridDataToJson(dt, intCount);
        return(reslut);
    }
    /// <summary>
    /// 修改项目复制人
    /// </summary>
    /// <param name="strPlanId"></param>
    private void ModifTaskSampleDutyUser(string strPlanId)
    {
        if (!String.IsNullOrEmpty(strPlanId))
        {
            TMisMonitorTaskVo objTaskDetail = new TMisMonitorTaskLogic().Details(new TMisMonitorTaskVo {
                PLAN_ID = strPlanId
            });
            TMisMonitorSubtaskVo objSubTask = new TMisMonitorSubtaskVo();
            objSubTask.TASK_ID = objTaskDetail.ID;
            DataTable dt = new TMisMonitorSubtaskLogic().SelectByTable(objSubTask, 0, 0);

            TMisContractUserdutyVo objUserDuty = new TMisContractUserdutyVo();
            objUserDuty.CONTRACT_PLAN_ID = strPlanId;
            DataTable dtDuty = new TMisContractUserdutyLogic().SelectByTable(objUserDuty, 0, 0);
            //如果没有获取到委托书的默认采样人 则取对应监测类别的 岗位职责数据
            if (dt.Rows.Count > 0 && dtDuty.Rows.Count < 1)
            {
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    TSysDutyVo objDuty = new TSysDutyVo();
                    objDuty.MONITOR_TYPE_ID = dt.Rows[i]["MONITOR_ID"].ToString();
                    objDuty.DICT_CODE       = "duty_sampling";
                    DataTable objDutyDt = new TSysDutyLogic().GetDutyUser(objDuty);
                    DataRow   drr       = null;

                    if (objDutyDt.Rows.Count > 0)
                    {
                        //如果设置了默认负责人,则取默认负责人
                        DataRow[] drArr = objDutyDt.Select(" IF_DEFAULT='0'");
                        if (drArr.Length > 0)
                        {
                            drr = drArr[0];
                        }
                        else
                        {
                            //如果未设置默认负责人,则取第一行数据
                            drr = objDutyDt.Rows[0];
                        }

                        if (drr != null)
                        {
                            TMisMonitorSubtaskVo objUpSubTask = new TMisMonitorSubtaskVo();
                            objUpSubTask.ID = dt.Rows[i]["ID"].ToString();
                            objUpSubTask.SAMPLING_MANAGER_ID = drr["USERID"].ToString();
                            new TMisMonitorSubtaskLogic().Edit(objUpSubTask);
                        }
                    }
                }
            }
            if (dt.Rows.Count > 0 && dtDuty.Rows.Count > 0)
            {
                foreach (DataRow dr in dt.Rows)
                {
                    foreach (DataRow drr in dtDuty.Rows)
                    {
                        if (dr["MONITOR_ID"].ToString() == drr["MONITOR_TYPE_ID"].ToString())
                        {
                            TMisMonitorSubtaskVo objUpSubTask = new TMisMonitorSubtaskVo();
                            objUpSubTask.ID = dr["ID"].ToString();
                            objUpSubTask.SAMPLING_MANAGER_ID = drr["SAMPLING_MANAGER_ID"].ToString();
                            new TMisMonitorSubtaskLogic().Edit(objUpSubTask);
                        }
                    }
                }
            }
        }
    }
    /// <summary>
    /// 保存默认监测计划岗位负责人 Create By Castle (胡方扬) 2013-4-1
    /// </summary>
    /// <returns></returns>
    public static void SavePlanPeopleForEnv(string strPlanId)
    {
        DataTable dtMonitor = new DataTable();
        TMisContractPointFreqVo objItemspan = new TMisContractPointFreqVo();

        objItemspan.IF_PLAN = "0";
        dtMonitor           = new TMisContractPointFreqLogic().GetPointMonitorInforForPlan(objItemspan, strPlanId);

        //DataTable dtMonitor = GetPointMonitorInfor(strPlanId);

        DataTable  dtTemple     = new DataTable();
        TSysDutyVo objItemspan1 = new TSysDutyVo();

        objItemspan1.DICT_CODE = "duty_sampling";
        dtTemple = new TSysDutyLogic().SelectTableDutyUser(objItemspan1);
        //DataTable dtTemple = GetMonitorDutyInforTable();
        DataTable dtMonitorDutyUser = new DataTable();

        dtMonitorDutyUser = dtTemple.Copy();

        dtMonitorDutyUser.Clear();
        //获取默认负责人
        for (int n = 0; n < dtMonitor.Rows.Count; n++)
        {
            DataRow[] drowArr = dtTemple.Select(" IF_DEFAULT='0' AND MONITOR_TYPE_ID='" + dtMonitor.Rows[0]["ID"].ToString() + "'");
            if (drowArr.Length > 0)
            {
                foreach (DataRow drow in drowArr)
                {
                    dtMonitorDutyUser.ImportRow(drow);
                }
                dtMonitorDutyUser.AcceptChanges();
            }
            else
            {
                drowArr = dtTemple.Select(" MONITOR_TYPE_ID='" + dtMonitor.Rows[0]["ID"].ToString() + "'");
                if (drowArr.Length > 0)
                {
                    dtMonitorDutyUser.ImportRow(drowArr[0]);
                }
                dtMonitorDutyUser.AcceptChanges();
            }
        }

        //if (drowArr.Length > 0)
        //{
        //    foreach (DataRow drow in drowArr)
        //    {
        //        dtMonitorDutyUser.ImportRow(drow);
        //    }
        //    dtMonitorDutyUser.AcceptChanges();
        //}
        string strMonitorId = "", strUserId = "";

        foreach (DataRow drr in dtMonitor.Rows)
        {
            for (int i = 0; i < dtMonitorDutyUser.Rows.Count; i++)
            {
                if (drr["ID"].ToString() == dtMonitorDutyUser.Rows[i]["MONITOR_TYPE_ID"].ToString())
                {
                    strMonitorId += drr["ID"].ToString() + ";";
                    strUserId    += dtMonitorDutyUser.Rows[i]["USERID"].ToString() + ";";
                }
            }
        }
        TMisContractUserdutyVo objItems = new TMisContractUserdutyVo();

        if (!String.IsNullOrEmpty(strPlanId))
        {
            objItems.CONTRACT_PLAN_ID = strPlanId;
            string[] strMonitArr = null, strUserArr = null;
            if (!String.IsNullOrEmpty(strMonitorId) && !String.IsNullOrEmpty(strUserId))
            {
                strMonitArr = strMonitorId.Substring(0, strMonitorId.Length - 1).Split(';');
                strUserArr  = strUserId.Substring(0, strUserId.Length - 1).Split(';');
                if (strMonitArr != null && strUserArr != null)
                {
                    new TMisContractUserdutyLogic().SaveContractPlanDutyForEnv(objItems, strMonitArr, strUserArr);
                }
            }
        }
    }
示例#11
0
    public static bool SaveTypeDivDate(string strUserId, string strMonitor, string strDutyType, string strMonitorItems, string strMoveId, string strAuItems, string strExItems, string MoveAuId, string MoveExId)
    {
        bool       result    = false;
        DataTable  dtis      = new DataTable();
        TSysDutyVo objcitems = new TSysDutyVo();

        objcitems.MONITOR_TYPE_ID = strMonitor;
        dtis = new TSysDutyLogic().SelectByTable(objcitems);
        string[] strItems = null, strmoItems = null, sAuItems = null, sExItems = null, mAuItems = null, mExItems = null;
        if (!String.IsNullOrEmpty(strMonitorItems))
        {
            strItems = strMonitorItems.Split(';');
        }
        if (!String.IsNullOrEmpty(strMoveId))
        {
            strmoItems = strMoveId.Split(';');
        }
        if (!String.IsNullOrEmpty(strAuItems))
        {
            sAuItems = strAuItems.Split(';');
        }
        if (!String.IsNullOrEmpty(strExItems))
        {
            sExItems = strExItems.Split(';');
        }
        if (!String.IsNullOrEmpty(MoveAuId))
        {
            mAuItems = MoveAuId.Split(';');
        }
        if (!String.IsNullOrEmpty(MoveExId))
        {
            mExItems = MoveExId.Split(';');
        }
        //如果移除已选的和新增已选的项目均不为空 则执行该方法
        if (!String.IsNullOrEmpty(strMoveId.ToString()) && !String.IsNullOrEmpty(strMonitorItems.ToString()))
        {
            if (DelMoveMonitorItems(strMonitor, strmoItems, strDutyType, strUserId, true))
            {
                if (InsertAddMonitorItems(objcitems, strDutyType, strMonitor, strUserId, dtis, strItems, sAuItems, sExItems, mAuItems, mExItems, true))
                {
                    result = true;
                }
            }
        }
        //如果移除的不为空,新增的监测项目为空
        if (!String.IsNullOrEmpty(strMoveId.ToString()) && String.IsNullOrEmpty(strMonitorItems.ToString()))
        {
            if (DelMoveMonitorItems(strMonitor, strmoItems, strDutyType, strUserId, true))
            {
                result = true;
            }
        }
        //如果移除的为空,新增的监测项目不为空
        if (String.IsNullOrEmpty(strMoveId.ToString()) && !String.IsNullOrEmpty(strMonitorItems.ToString()))
        {
            if (InsertAddMonitorItems(objcitems, strDutyType, strMonitor, strUserId, dtis, strItems, sAuItems, sExItems, mAuItems, mExItems, true))
            {
                result = true;
            }
        }

        return(result);
    }