Пример #1
0
    private void actResv(UNIRESERVE info, ref uniresv resv)
    {
        uint?tchl = info.dwTeachingTime;

        resv.ltch = (int)tchl;
        int start = (int)(tchl % 10000) / 100;
        int end   = (int)tchl % 100;

        string[] week = { "一", "二", "三", "四", "五", "六", "日" };
        resv.name = (int)tchl / 100000 + "周【" + "星期" + week[(int)((tchl / 10000) % 10)] + "】第" + start + (start == end ? "" : ("-" + end)) + "节";
        //预约状态
        if ((info.dwStatus & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_UNDO) > 0)
        {
            resv.state = "undo";
        }
        else if ((info.dwStatus & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_DOING) > 0)
        {
            resv.state = "doing";
        }
        else if ((info.dwStatus & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_DONE) > 0)
        {
            resv.state = "done";
        }
        else
        {
            resv.state = "othe";
        }
        resv.allDay = false;
        resv.islong = false;
    }
Пример #2
0
    private void SetActivityPlan(UNIACTIVITYPLAN vrParameter)
    {
        if (m_Request.Reserve.SetActivityPlan(vrParameter, out vrParameter) == REQUESTCODE.EXECUTE_SUCCESS)
        {
            REQUESTCODE uResponse = REQUESTCODE.EXECUTE_FAIL;
            object      obj       = Session["LOGIN_ACCINFO"];
            UNIACCOUNT  acc       = new UNIACCOUNT();
            if (obj != null)
            {
                acc = (UNIACCOUNT)(obj);
            }

            GROUPMEMBER setValueMember = new GROUPMEMBER();
            setValueMember.dwKind     = (uint)GROUPMEMBER.DWKIND.MEMBERKIND_PERSONAL;
            setValueMember.dwMemberID = acc.dwAccNo;
            setValueMember.szName     = acc.szTrueName.ToString();
            setValueMember.szMemo     = acc.szLogonName.ToString() + ":" + acc.szTrueName.ToString();
            setValueMember.dwGroupID  = vrParameter.dwGroupID;
            uResponse = m_Request.Group.SetGroupMember(setValueMember);
            MsgBox("你的申请预约已提交审核,审核结果将由短信形式发送,请注意查收");
        }
        else
        {
            if (vrParameter.dwResvID != null && vrParameter.dwResvID != 0)
            {
                UNIRESERVE para = new UNIRESERVE();
                para.dwResvID = vrParameter.dwResvID;
                m_Request.Reserve.Del(para);
            }
            MsgBox("对不起,申请失败" + m_Request.szErrMessage);
        }
    }
Пример #3
0
    string GetResv(UNITESTITEM test, out uint?usehour)
    {
        UNIRESERVE[] resvs = test.ResvInfo;
        usehour = 0;
        string[] week = { "一", "二", "三", "四", "五", "六", "日" };
        string   ret  = "";

        for (int i = 0; i < resvs.Length; i++)
        {
            UNIRESERVE resv  = resvs[i];
            uint?      tchl  = resv.dwTeachingTime;
            int        start = (int)(tchl % 10000) / 100;
            int        end   = (int)tchl % 100;
            usehour += resv.dwTestHour;
            string rooms = GetRoomsFromResvDev(resv.ResvDev);
            string time  = (int)tchl / 100000 + "周【" + "星期" + week[(int)((tchl / 10000) % 10)] + "】第" + start + (start == end ? "" : ("-" + end)) + "节";
            ret += "<tr><td class='text-primary'>" + time + "</td>" +
                   "<td>" + rooms + "</td>" +
                   "<td>" + resv.dwResvUsers + " 人</td>" +
                   "<td><span class='text-primary'>" + resv.dwTestHour + "</span> 学时</td>" +
                   "<td>" + Util.Converter.ResvStatusConverter(resv.dwStatus) + "</td>" +
                   "<td>" + (!IsStat(resv.dwStatus, (uint)UNIRESERVE.DWSTATUS.RESVSTAT_UNDO) ? "<a href='Attendance.aspx?plan_id=" + test.dwTestPlanID + "&test_id=" + test.dwTestItemID + "&resv_id=" + resv.dwResvID + "&start=" + yearTerm.dwBeginDate + "&end=" + yearTerm.dwEndDate + "' target='_blank'>学生考勤>></a>" : "<span class='grey'>学生考勤>></span>") + "</td>" +
                   "<td><span class='pull-right text-info'><span title='删除' class='glyphicon glyphicon-trash click' rsv_id='" + resv.dwResvID + "' onclick='delResv(this);'></span></span></td></tr>";
        }
        if (ret == "")
        {
            ret = "<tr><td colspan='10' class='text-center'>请点击【预约排课】预约上课</td></tr>";
        }
        return(ret);
    }
Пример #4
0
    string GetResv(UNITESTITEM test)
    {
        UNIRESERVE[] resvs = test.ResvInfo;
        //usehour = 0;
        string[] week = { "一", "二", "三", "四", "五", "六", "日" };
        string   ret  = "";

        for (int i = 0; i < resvs.Length; i++)
        {
            UNIRESERVE resv = resvs[i];
            string     date = "";
            if (resv.dwPreDate > 0)
            {
                date = (resv.dwPreDate / 100 % 100) + "月" + (resv.dwPreDate % 100) + "日";
            }
            uint?tchl  = resv.dwTeachingTime;
            int  start = (int)(tchl % 10000) / 100;
            int  end   = (int)tchl % 100;
            //usehour += resv.dwTestHour;
            string rooms = GetRoomsFromResvDev(resv.ResvDev);
            string time  = "(第" + (int)tchl / 100000 + "周)【" + "星期" + week[(int)((tchl / 10000) % 10)] + "】第" + start + (start == end ? "" : ("-" + end)) + "节";
            ret += "<tr><td class='text-primary'>" + date + time + "</td>" +
                   "<td>" + resv.szLabName + "</td>" +
                   "<td>" + rooms + "</td>" +
                   "<td><span class='text-primary'>" + resv.dwTestHour + "</span> 学时</td>" +
                   "<td>" + Util.Converter.ResvStatusConverter(resv.dwStatus) + "</td>" +
                   "</tr>";
        }
        return(ret);
    }
Пример #5
0
    protected void DelResv(string delID)
    {
        UNIRESERVE delResv = new UNIRESERVE();

        delResv.dwResvID = Parse(delID);
        m_Request.Reserve.Del(delResv);
    }
Пример #6
0
 private void ConvertTestResvInfo(UNITESTITEM test, ref List <uniresv> list)
 {
     UNIRESERVE[] resvs = test.ResvInfo;
     for (int j = 0; j < resvs.Length; j++)
     {
         uniresv    resv   = new uniresv();
         UNIRESERVE info   = resvs[j];
         RESVDEV[]  rsvdev = info.ResvDev;
         string     rooms  = GetRoomsFromResvDev(rsvdev);
         resv.id    = info.dwResvID.ToString();
         resv.title = test.szGroupName + ";" + rooms;
         // resv.detail = "房间:" + rooms + "<br/>班级:" + test.szGroupName + "<br/>实验:" + test.szTestName + "<br/>课程:" + test.szCourseName;
         resv.detail     = info.dwResvID.ToString();
         resv.testId     = test.dwTestItemID.ToString();
         resv.testName   = test.szTestName;
         resv.owner      = test.szTeacherName;
         resv.ownerAccno = test.dwTeacherID.ToString();
         resv.groupId    = test.dwGroupID.ToString();
         // resv.groupName = test.szGroupName;
         resv.groupName = info.dwResvID.ToString();
         resv.planId    = test.dwTestPlanID.ToString();
         resv.planName  = test.szTestPlanName;
         actResv(info, ref resv);
         list.Add(resv);
     }
 }
Пример #7
0
    private string GetResvList(UNIRESERVE[] rlt, uint startLine, uint deadLine, ref int num)
    {
        string ret = "";

        for (int i = 0; i < rlt.Length; i++)
        {
            if (rlt[i].dwPreDate > startLine)
            {
                continue;
            }
            if (rlt[i].dwPreDate < deadLine)
            {
                continue;
            }
            num++;
            UNIRESERVE resv = rlt[i];
            //预约时间
            string start    = Get1970Date((int)rlt[i].dwBeginTime);
            string end      = Get1970Date((int)rlt[i].dwEndTime);
            string timeDesc = Get1970Date((int)rlt[i].dwBeginTime, "MM/dd HH:mm") + "-" + Get1970Date((int)rlt[i].dwEndTime, (start.Substring(0, 10) == end.Substring(0, 10) ? "" : "MM/dd ") + "HH:mm");
            //预约对象
            string    objs     = "";
            string    location = "";
            RESVDEV[] resvDev  = resv.ResvDev;
            if (resvDev != null && resvDev.Length > 0)
            {
                string devName = string.Empty;
                for (int j = 0; j < resvDev.Length; j++)
                {
                    if (j == 0)
                    {
                        location = resvDev[0].szLabName;
                    }
                    devName = devName + resvDev[j].szDevName.ToString();
                }
                objs = devName != "" ? devName : Translate("未分配");
            }
            //提交时间
            string occur = Get1970Date((int)resv.dwOccurTime);
            //预约信息
            string state = Translate(Util.Converter.ResvStatusConverter(resv.dwStatus));
            ret += "<li class='item-content'><div class='item-inner'><div class='item-title-row'>" +
                   "<div class='item-title'>" + objs + "</div>" +
                   "<div class='item-after'>" + state + "</div></div>" +
                   "<div class='item-subtitle'>" + timeDesc + "</div>" +
                   "<div class='item-text'>" + location + "</br>" + resv.szOwnerName + Translate("提交于") + ":" + occur + "</div></div></li>";
        }
        detail += "<td class='text-center'>" + num + "</td>";//+ Translate("条")
        if (ret == "")
        {
            ret = "<li class='item-content'><div class='item-inner'>" +
                  "<div class='item-title text-center'>" + Translate("无数据") + "</div></div></li>";
        }
        return(ret);
    }
Пример #8
0
    protected void Del(string szID)
    {
        UNIRESERVE setResv = new UNIRESERVE();

        if (GetResvByID(szID, out setResv))
        {
            DateTime dt = DateTime.Now.AddSeconds(30);
            setResv.dwEndTime = Get1970Seconds(dt.ToString("yyyy-MM-dd HH:mm"));
            m_Request.Reserve.Set(setResv, out setResv);
        }
    }
Пример #9
0
    protected void Del(string szID)
    {
        UNIRESERVE setResv = new UNIRESERVE();

        if (GetResvByID(szID, out setResv))
        {
            DateTime dt = DateTime.Now.AddMinutes(1);
            setResv.dwEndTime = Get1970Seconds(dt.ToString("yyyy-MM-dd HH:mm"));

            REQUESTCODE uRes = m_Request.Reserve.ResvEarlyEnd(setResv);
        }
    }
Пример #10
0
    protected void Button_OK_Click(object sender, EventArgs e)
    {
        if (Session["SessionID"] == null)
        {
            Response.Redirect("Login.aspx");
        }

        uint.TryParse(Request["RoomID"], out m_dwRoomID);
        if (m_dwRoomID == 0)
        {
            MessageBox("无效的房间", "创建预约失败", MSGBOX.ERROR);
            return;
        }

        ADMINLOGINRES loginres = (ADMINLOGINRES)Session["LoginResult"];

        UNIRESERVE vrParameter = new UNIRESERVE();

        GetHTTPObj(out vrParameter);

        if (string.IsNullOrEmpty(vrParameter.szTestName))
        {
            MessageBox("课程名不能为空", "创建预约失败", MSGBOX.ERROR);
            return;
        }

        vrParameter.ResvDev             = new RESVDEV[1];
        vrParameter.ResvDev[0].szRoomNo = m_dwRoomID.ToString();
        vrParameter.dwOwner             = loginres.AdminInfo.dwAccNo;
        vrParameter.dwPurpose           = (uint)UNIRESERVE.DWPURPOSE.USEFOR_TEACHING;
        vrParameter.dwMemberID          = NewGroupFromClient();
        if (vrParameter.dwMemberID == 0)
        {
            return;
        }

        REQUESTCODE ret1 = m_Request.Reserve.Set(vrParameter, out vrParameter);

        if (ret1 == REQUESTCODE.EXECUTE_SUCCESS)
        {
            MessageBox("预约成功", "预约成功", MSGBOX.SUCCESS, "RoomList.aspx?dwDate=" + Request["dwDate"]);
        }
        else
        {
            MessageBox("预约失败," + m_Request.szErrMessage, "预约失败", MSGBOX.ERROR);
        }
        PutJSObj(vrParameter);
    }
Пример #11
0
 protected void Del(string szID)
 {
     string[] szResvList = szID.Split(',');
     for (int i = 0; i < szResvList.Length; i++)
     {
         string     szIDTemp = szResvList[i];
         UNIRESERVE setResv  = new UNIRESERVE();
         if (GetResvByID(szIDTemp, out setResv))
         {
             DateTime dt = DateTime.Now.AddSeconds(30);
             setResv.dwEndTime = Get1970Seconds(dt.ToString("yyyy-MM-dd HH:mm"));
             //m_Request.Reserve.Set(setResv, out setResv);
             m_Request.Reserve.ResvEarlyEnd(setResv);
         }
     }
 }
Пример #12
0
    protected void Page_Load(object sender, EventArgs e)
    {
        string szResvID = Request["resvid"];

        UNIRESERVE delResv = new UNIRESERVE();

        delResv.dwResvID          = Parse(szResvID);
        m_Request.m_UniDCom.StaSN = 1;
        if (m_Request.Reserve.Del(delResv) == REQUESTCODE.EXECUTE_SUCCESS)
        {
            Response.Write("{\"res\":1,\"error\":\"" + "" + "\"}");
        }
        else
        {
            Response.Write("{\"res\":0,\"error\":\"" + m_Request.szErrMessage + "\"}");
        }
    }
Пример #13
0
    private void Del(string szID)
    {
        ACTIVITYPLANREQ vrGet = new ACTIVITYPLANREQ();

        vrGet.dwGetType = (uint)ACTIVITYPLANREQ.DWGETTYPE.ACTIVITYPLANGET_BYID;
        vrGet.szGetKey  = szID;
        UNIACTIVITYPLAN[] vtRes;
        if (m_Request.Reserve.GetActivityPlan(vrGet, out vtRes) == REQUESTCODE.EXECUTE_SUCCESS && vtRes != null && vtRes.Length > 0)
        {
            uint       uResvID = (uint)vtRes[0].dwResvID;
            UNIRESERVE Resv    = new UNIRESERVE();
            if (GetResvByID(uResvID.ToString(), out Resv))
            {
                m_Request.Reserve.Del(Resv);
            }
            m_Request.Reserve.DelActivityPlan(vtRes[0]);
        }
    }
Пример #14
0
    public bool GetResvByID(string szResvID, out UNIRESERVE Resv)
    {
        Resv = new UNIRESERVE();
        RESVREQ req = new RESVREQ();

        //req.dwGetType = (uint)RESVREQ.DWGETTYPE.RESVGET_BYID;
        req.dwStatFlag = (uint)RESVREQ.DWSTATFLAG.STATFLAG_INUSE + (uint)RESVREQ.DWSTATFLAG.STATFLAG_OVER;
        req.dwResvID   = Parse(szResvID);
        UNIRESERVE[] vtRes;
        REQUESTCODE  uResponse = m_Request.Reserve.Get(req, out vtRes);

        if (uResponse == REQUESTCODE.EXECUTE_SUCCESS && vtRes != null && vtRes.Length > 0)
        {
            Resv = vtRes[0];
            return(true);
        }
        return(false);
    }
Пример #15
0
    private void InitTeachResv(uint start, uint end)
    {
        RESVREQ    vrGet = new RESVREQ();
        UNIACCOUNT acc   = (UNIACCOUNT)Session["LOGIN_ACCINFO"];

        vrGet.dwPurpose  = (uint)UNIRESERVE.DWPURPOSE.USEFOR_TEACHING;
        vrGet.dwStatFlag = (uint)RESVREQ.DWSTATFLAG.STATFLAG_INUSE | (uint)RESVREQ.DWSTATFLAG.STATFLAG_OVER | (uint)RESVREQ.DWSTATFLAG.STATFLAG_CHECKFAIL;
        vrGet.dwAccNo    = acc.dwAccNo;
        vrGet.szReqExtInfo.szOrderKey  = "dwOccurTime";
        vrGet.szReqExtInfo.szOrderMode = "DESC";
        vrGet.dwBeginDate = start;
        vrGet.dwEndDate   = end;
        UNIRESERVE[] vtResult;
        if (m_Request.Reserve.Get(vrGet, out vtResult) == REQUESTCODE.EXECUTE_SUCCESS)
        {
            for (int i = 0; i < vtResult.Length; i++)
            {
                UNIRESERVE resv  = vtResult[i];
                uint?      tchl  = resv.dwTeachingTime;
                string     rooms = GetRoomsFromResvDev(resv.ResvDev);
                //组成员
                string member = "个人预约";
                if ((resv.dwMemberKind & (uint)UNIRESERVE.DWMEMBERKIND.MEMBERKIND_GROUP) > 0)
                {
                    GROUPMEMDETAIL[] mbs = GetMembers(resv.dwMemberID);
                    if (mbs != null && mbs.Length > 0)
                    {
                        string str = "";
                        for (int j = 0; j < mbs.Length; j++)
                        {
                            str += mbs[j].szTrueName + ",";
                        }
                        member = str.Substring(0, str.Length - 1);
                    }
                }
                string time = Get1970Date((int)resv.dwBeginTime).Substring(5) + "-" + Get1970Date((int)resv.dwEndTime).Substring(11);
                teachResv += "<tr><td>" + resv.szOwnerName + "</td><td>" + resv.szTestName + "</td><td>" + time + "</td>" +
                             "<td>" + rooms + "</td>" +
                             "<td>" + resv.dwResvUsers + " 人 <span class='click' onclick='uni.msgBox(\"" + member + "\",\"成员名称\")'>详细</span></td>" +
                             "<td><span>" + resv.dwTestHour + "</span> 学时</td>" +
                             "<td>" + Util.Converter.ResvStatusConverter(resv.dwStatus) + "</td>";
            }
        }
    }
Пример #16
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (IsPostBack)
        {
            UNIRESERVE delResv = new UNIRESERVE();
            string     szDelID = Request["delID"];
            delResv.dwResvID = Parse(szDelID);
            if (GetResvByID(szDelID, out delResv))
            {
                uint uTimeNow = Get1970Seconds(DateTime.Now.ToString("yyyy-MM-dd HH:mm"));
                uTimeNow          = uTimeNow + 120;
                delResv.dwEndTime = uTimeNow;
                if (m_Request.Reserve.Set(delResv, out delResv) == REQUESTCODE.EXECUTE_SUCCESS)
                {
                    /*
                     * string szDirt = Request["redit"];
                     * if (szDirt == "1")
                     * {
                     *
                     * }
                     * else
                     */
                    {
                        MessageBox("设置成功", "设置成功", MSGBOX.SUCCESS, MSGBOX_ACTION.OK);
                        return;
                    }
                }
                else
                {
                    MessageBox(m_Request.szErrMessage, "设置失败", MSGBOX.SUCCESS, MSGBOX_ACTION.OK);
                    return;
                }
            }
        }


        else
        {
            m_Title = "确定提前结束预约?";
        }
    }
Пример #17
0
    private void GetTestDetail(UNITESTITEM test)
    {
        UNIRESERVE[] resvs   = test.ResvInfo;
        int          usehour = 0;

        for (int i = 0; i < resvs.Length; i++)
        {
            UNIRESERVE resv  = resvs[i];
            uint?      tchl  = resv.dwTeachingTime;
            int        start = (int)(tchl % 10000) / 100;
            int        end   = (int)tchl % 100;
            usehour += (int)resv.dwTestHour;
            string rooms = GetRoomsFromResvDev(resv.ResvDev);
            //组成员
            string member = "个人预约";
            if ((resv.dwMemberKind & (uint)UNIRESERVE.DWMEMBERKIND.MEMBERKIND_GROUP) > 0)
            {
                GROUPMEMDETAIL[] mbs = GetMembers(resv.dwMemberID);
                if (mbs != null && mbs.Length > 0)
                {
                    string str = "";
                    for (int j = 0; j < mbs.Length; j++)
                    {
                        str += mbs[j].szTrueName + ",";
                    }
                    member = str.Substring(0, str.Length - 1);
                }
            }
            string time = Get1970Date((int)resv.dwBeginTime).Substring(5) + "-" + Get1970Date((int)resv.dwEndTime).Substring(11);
            testDetail += "<tr><td>" + resv.szTestName + "</td><td>" + time + "</td>" +
                          "<td>" + rooms + "</td>" +
                          "<td>" + resv.dwResvUsers + " 人 <span class='click' onclick='uni.msgBox(\"" + member + "\",\"成员名称\")'>详细</span></td>" +
                          "<td><span>" + resv.dwTestHour + "</span> 学时</td>" +
                          "<td>" + Util.Converter.ResvStatusConverter(resv.dwStatus) + "</td>" +
                          "<td><a onclick='delResv(" + resv.dwResvID + ")'>删除</a></td></tr>";
        }
        if (testDetail == "")
        {
            testDetail = "<tr><td colspan='10' style='text-align:center;'>请点击【预约实验室】预约上课</td></tr>";
        }
    }
Пример #18
0
    private void InitResv(uint start, uint end)
    {
        REQUESTCODE uResponse;
        RESVREQ     vrGet = new RESVREQ();
        UNIACCOUNT  acc   = (UNIACCOUNT)Session["LOGIN_ACCINFO"];

        vrGet.dwPurpose  = (uint)UNIRESERVE.DWPURPOSE.USEFOR_PERSONNAL;
        vrGet.dwStatFlag = (uint)RESVREQ.DWSTATFLAG.STATFLAG_INUSE | (uint)RESVREQ.DWSTATFLAG.STATFLAG_OVER | (uint)RESVREQ.DWSTATFLAG.STATFLAG_CHECKFAIL;
        vrGet.szReqExtInfo.szOrderKey  = "dwOccurTime";
        vrGet.szReqExtInfo.szOrderMode = "DESC";
        vrGet.dwBeginDate = start;
        vrGet.dwEndDate   = end;
        UNIRESERVE[] vtResult;
        uResponse = m_Request.Reserve.Get(vrGet, out vtResult);
        {
            if (uResponse == REQUESTCODE.EXECUTE_SUCCESS && vtResult != null && vtResult.Length > 0)
            {
                for (int i = 0; i < vtResult.Length; i++)
                {
                    UNIRESERVE resv    = vtResult[i];
                    RESVDEV[]  resvDev = resv.ResvDev;
                    //设备
                    string devName = "";
                    if (resvDev != null && resvDev.Length > 0)
                    {
                        devName = resvDev[0].szDevName;
                    }
                    //成员
                    GROUPMEMDETAIL[] mbs       = GetMembers(resv.dwMemberID);
                    string           szMembers = "";
                    if (mbs != null && mbs.Length > 0)
                    {
                        string str = "";
                        for (int j = 0; j < mbs.Length; j++)
                        {
                            str += mbs[j].szTrueName + ",";
                        }
                        szMembers = str.Substring(0, str.Length - 1);
                    }
                    resvList += "<tr rsvId='" + resv.dwResvID + "' owner='" + resv.dwOwner + "'>";
                    resvList += "<td class='f-tl'>" + CutStrT(resv.szTestName, 16) + "</td>";
                    resvList += "<td class='f-tl'>" + CutStrT(devName, 16) + "</td>";
                    resvList += "<td class='f-tl'>" + szMembers + "</td>";
                    resvList += "<td>" + Get1970Date((int)resv.dwOccurTime).Substring(5) + "</td>";
                    resvList += "<td>" + Get1970Date((int)resv.dwBeginTime).Substring(5) + "</td>";
                    string endtime = Get1970Date((int)resv.dwEndTime).Substring(5);
                    string rsvStr  = endtime;
                    if (IsStat(resv.dwStatus, (uint)UNIRESERVE.DWSTATUS.RESVSTAT_DOING))
                    {
                        rsvStr = "<div class='time'><div><span>" + endtime + "</span></div><div>[<span class='click' onclick='alterRsv(this);'>修改</span>]</div></div>" +
                                 "<div class='alter' style='display:none;'><div><input type='text' class='Wdate' style='width:60px;' value='" + endtime.Substring(6) + "'/></div><div><span class='click' onclick='subAlter(this);'>提交</span> | <span class='click' onclick='back(this);'>返回</span></div></div>";
                    }
                    resvList += "<td rsvId='" + resv.dwResvID + "' start='" + Get1970Date((int)resv.dwBeginTime) + "' end='" + Get1970Date((int)resv.dwEndTime) + "'>" + rsvStr + "</td>";
                    resvList += "<td>" + Util.Converter.ResvStatusWithCheck(resv.dwStatus) + "</td>";
                    string act = "无";
                    if (resv.dwOwner == acc.dwAccNo && IsStat(resv.dwStatus, (uint)UNIRESERVE.DWSTATUS.RESVSTAT_UNDO))
                    {
                        act = "[<span class='click' rsvId='" + resv.dwResvID + "' onclick='delRsv(this);'>删除</span>]";
                    }
                    resvList += "<td>" + act + "</td>";
                    resvList += "</tr>";
                }
            }
        }
    }
Пример #19
0
    protected void Page_Load(object sender, EventArgs e)
    {
        UNITERM[] termList   = GetAllTerm();
        string    szYearTerm = Request["dwYearTerm"];
        string    testplanid = Request["testplanid"];

        if (testplanid != null && testplanid != "")
        {
            PutMemberValue("dwTestPlanIDTemp", testplanid);
        }
        uint uYeartermNow = Parse(szYearTerm);

        if (termList != null)
        {
            for (int i = 0; i < termList.Length; i++)
            {
                uint uYearTermState = (uint)termList[i].dwStatus;
                if ((uYearTermState & (uint)UNITERM.DWSTATUS.TERMSTAT_FORCE) > 0)
                {
                    m_TermList += GetInputItemHtml(CONSTHTML.option, "", termList[i].szMemo.ToString(), termList[i].dwYearTerm.ToString(), true);
                }
                else
                {
                    m_TermList += GetInputItemHtml(CONSTHTML.option, "", termList[i].szMemo.ToString(), termList[i].dwYearTerm.ToString());
                }
            }
        }
        uint uRoomID    = Parse(Request["devID"]);
        uint szResvDate = Parse(Request["date"]);

        szResvDate = szResvDate + 100;
        szResvSec  = Parse(Request["sec"]);
        szResvSec  = szResvSec + 1;//节次需要加1
        string szWeekStr = szResvDate / 10000 + "-" + (szResvDate % 10000 / 100) + "-" + szResvDate % 100;

        uWeeStart = GetWeekFromDate(szWeekStr);

        uWeek = ((uint)DateTime.Parse(szWeekStr).DayOfWeek);
        if (uWeek == 0)
        {
            uWeek = 7;//星期天特殊处理
        }
        //设置默认值
        {
            FULLROOMREQ vrGet = new FULLROOMREQ();
            vrGet.dwRoomID = uRoomID;
            FULLROOM[] room;
            if (m_Request.Device.FullRoomGet(vrGet, out room) == REQUESTCODE.EXECUTE_SUCCESS && room.Length > 0)
            {
                szRoomInfo = room[0].szRoomName.ToString() + "(" + room[0].dwIdleDevNum + "台)";
            }
            CLASSTIMETABLE[] classTimeTable = GetTermClasTimeTable();
            for (int i = 1; i <= classTimeTable.Length; i++)
            {
                szSec += GetInputItemHtml(CONSTHTML.option, "", szSecsList[i], i.ToString());
            }
            for (int i = 0; i < szWeekDayList.Length; i++)
            {
                szWeek += GetInputItemHtml(CONSTHTML.checkBox, "szWeek", szWeekDayList[i], (i + 1).ToString());
            }
            int uWeekTotal = GetWeekTotalNow();
            for (int i = 1; i <= uWeekTotal; i++)
            {
                szWeeks += GetInputItemHtml(CONSTHTML.option, "", szWeeksList[i], (i).ToString());
            }
        }
        if (IsPostBack)
        {
            uint uResvWeekStart = Parse(Request["dwBeginWeeksSec"]);
            uint uResvWeekEnd   = Parse(Request["dwEndWeeksSec"]);
            szResvWeeks = Request["szWeek"];//星期
            uint      uResvSecBegin = Parse(Request["dwBeginSec"]);
            uint      uResvSecEnd   = Parse(Request["dwEndSec"]);
            uint      uTestItemID   = Parse(Request["dwTestItemID"]);
            uint      uTeacher      = Parse(Request["dwTeacherID"]);
            string    szTeacherName = "";
            UNITERM[] termNow       = GetTermNow();
            if (termNow == null || termNow.Length == 0)
            {
                MessageBox("获取学期失败", "提示", MSGBOX.ERROR, MSGBOX_ACTION.NONE);

                return;
            }
            UNIACCOUNT accTeacher;
            if (GetAccByAccno(uTeacher.ToString(), out accTeacher))
            {
                szTeacherName = accTeacher.szTrueName;
            }
            if (szResvWeeks == null || szResvWeeks == "")//星期
            {
                MessageBox("请设置设置好上课星期", "提示", MSGBOX.ERROR, MSGBOX_ACTION.NONE);
                return;
            }
            if (uTeacher == 0)
            {
                MessageBox("请设置好实验项目", "提示", MSGBOX.ERROR, MSGBOX_ACTION.NONE);

                return;
            }
            if (uTestItemID == 0)
            {
                MessageBox("请设置好实验项目", "提示", MSGBOX.ERROR, MSGBOX_ACTION.NONE);
                return;
            }
            UNITESTITEM[] testItem = GetTestItemByID(uTestItemID);
            if (testItem == null && testItem.Length == 0)
            {
                return;
            }
            UNIROOM getRoom;
            if (!GetRoomID(uRoomID.ToString(), out getRoom))
            {
                return;
            }
            ArrayList   resvDevList = new ArrayList();
            UNIDEVICE[] devList     = GetDevByRoomId(uRoomID);
            if (devList == null || devList.Length == 0)
            {
                MessageBox(ConfigConst.GCRoomName + "下没有" + ConfigConst.GCDevName, "提示", MSGBOX.ERROR, MSGBOX_ACTION.NONE);
                return;
            }
            int devCount = 0;

            for (int k = 0; k < devList.Length; k++)
            {
                uint    uDevKind    = (uint)devList[k].dwKindID;
                bool    bIsNew      = true;
                int     uLocal      = -1;
                RESVDEV resvDev     = new RESVDEV();
                RESVDEV resvDevTemp = new RESVDEV();
                for (int m = 0; m < resvDevList.Count; m++)
                {
                    RESVDEV resvDevTempIn = (RESVDEV)resvDevList[m];
                    if (uDevKind == ((uint)resvDevTempIn.dwDevKind))
                    {
                        bIsNew      = false;
                        uLocal      = m;
                        resvDevTemp = resvDevTempIn;
                    }
                }
                if (bIsNew)
                {
                    resvDev.dwDevStart = devList[k].dwDevSN;
                    resvDev.dwDevEnd   = devList[k].dwDevSN;
                    resvDev.dwDevKind  = devList[k].dwKindID;
                    resvDev.szRoomNo   = devList[k].szRoomNo;
                    resvDev.dwDevNum   = 1;
                    resvDevList.Add(resvDev);
                }
                else
                {
                    uint uDevNum    = (uint)resvDevTemp.dwDevNum + 1;
                    uint uDevSNTemp = (uint)devList[k].dwDevSN;
                    if (uDevSNTemp < ((uint)resvDevTemp.dwDevStart))
                    {
                        resvDevTemp.dwDevStart = uDevSNTemp;
                    }
                    if (uDevSNTemp > ((uint)resvDevTemp.dwDevEnd))
                    {
                        resvDevTemp.dwDevEnd = uDevSNTemp;
                    }
                    resvDevTemp.dwDevNum = uDevNum;
                    resvDevList[uLocal]  = resvDevTemp;
                }
            }
            RESVDEV[] resvDevRes = new RESVDEV[resvDevList.Count];
            for (int m = 0; m < resvDevRes.Length; m++)
            {
                resvDevRes[m] = new RESVDEV();
                resvDevRes[m] = (RESVDEV)resvDevList[m];
            }
            uint uSuccessCount = 0;
            uint uFailCount    = 0;
            for (uint i = uResvWeekStart; i <= uResvWeekEnd; i++)
            {
                string[] szWeekList = szResvWeeks.Split(',');
                for (int m = 0; m < szWeekList.Length; m++)
                {
                    UNIRESERVE setResv = new UNIRESERVE();
                    setResv.dwLabID      = getRoom.dwLabID;
                    setResv.szLabName    = getRoom.szLabName;
                    setResv.dwPurpose    = (uint)UNIRESERVE.DWPURPOSE.USEFOR_TEACHING;
                    setResv.dwMemberKind = (uint)UNIRESERVE.DWMEMBERKIND.MEMBERKIND_GROUP;
                    setResv.dwOwner      = uTeacher;
                    setResv.szOwnerName  = szTeacherName;
                    setResv.dwUseMode    = (uint)UNIRESERVE.DWUSEMODE.RESVUSE_USEDEV;
                    setResv.dwMemberID   = testItem[0].dwGroupID;
                    setResv.szMemberName = testItem[0].szGroupName;
                    setResv.szTestName   = testItem[0].szTestName;
                    setResv.dwTestItemID = testItem[0].dwTestItemID;
                    setResv.dwProperty   = (uint)UNIRESERVE.DWPROPERTY.RESVPROP_LOCKROOM;
                    setResv.dwYearTerm   = termNow[0].dwYearTerm;
                    uint uTeachingTime = i * 100000 + (Parse(szWeekList[m]) - 1) * 10000 + uResvSecBegin * 100 + uResvSecEnd;
                    setResv.dwTeachingTime = uTeachingTime;
                    setResv.ResvDev        = resvDevRes;
                    REQUESTCODE uResponse = m_Request.Reserve.Set(setResv, out setResv);
                    if (uResponse == REQUESTCODE.EXECUTE_SUCCESS)
                    {
                        Session["selectDate"] = (uint)setResv.dwPreDate - 100;
                        uSuccessCount         = uSuccessCount + 1;
                    }
                    else
                    {
                        uFailCount = uFailCount + 1;
                    }
                }
                string szMessageInfo = "";
                if (uSuccessCount > 0)
                {
                    szMessageInfo = "预约成功" + uSuccessCount.ToString() + "条";
                    if (uFailCount > 0)
                    {
                        szMessageInfo += ",失败" + uFailCount.ToString() + "条";
                    }
                    MessageBox(szMessageInfo, "提示", MSGBOX.INFO, MSGBOX_ACTION.OK);
                }
                if (uFailCount > 0 && uSuccessCount == 0)
                {
                    szMessageInfo = "预约失败" + uFailCount.ToString() + "条" + "," + m_Request.szErrMessage;
                    MessageBox(szMessageInfo, "提示", MSGBOX.INFO, MSGBOX_ACTION.NONE);
                }
            }
        }
    }
Пример #20
0
    protected void Page_Load(object sender, EventArgs e)
    {
        RESVREQ vrParameter = new RESVREQ();
        string  szCheckStat = Request["dwCheckStat"];
        string  szKey       = Request["szGetKey"];

        if (szKey != null && szKey != "")
        {
            //vrParameter.dwGetType = (uint)RESVREQ.DWGETTYPE.RESVGET_BYDEVID;
            vrParameter.dwResvID = Parse(szKey);
        }
        string szResvID = Request["delID"];

        if (szResvID != null && szResvID != "")
        {
            UNIRESERVE delResv = new UNIRESERVE();
            delResv.dwResvID = Parse(szResvID);
            m_Request.Reserve.Del(delResv);
        }
        if (!IsPostBack)
        {
            vrParameter.dwBeginDate = GetDate(DateTime.Now.AddDays(0).ToString("yyyy-MM-dd"));
            vrParameter.dwEndDate   = GetDate(DateTime.Now.AddDays(0).ToString("yyyy-MM-dd"));

            dwStartDate.Value = DateTime.Now.AddDays(0).ToString("yyyy-MM-dd");
            dwEndDate.Value   = DateTime.Now.AddDays(0).ToString("yyyy-MM-dd");
        }
        if (dwStartDate.Value != "" && dwEndDate.Value != "")
        {
            vrParameter.dwBeginDate = GetDate(dwStartDate.Value);
            vrParameter.dwEndDate   = GetDate(dwEndDate.Value);
        }
        //  vrParameter.dwClassKind = (uint)UNIDEVCLS.DWKIND.CLSKIND_COMMONS;
        vrParameter.dwPurpose = (uint)UNIRESERVE.DWPURPOSE.USEFOR_PERSONNAL;
        if (!(szCheckStat == null || szCheckStat == "" || szCheckStat == "0"))
        {
            vrParameter.dwCheckStat = Parse(szCheckStat);
        }
        UNIRESERVE[] vrResult;
        GetPageCtrlValue(out vrParameter.szReqExtInfo);
        if (m_Request.Reserve.Get(vrParameter, out vrResult) == REQUESTCODE.EXECUTE_SUCCESS)
        {
            int  count    = 0;
            uint uTimeNow = Get1970Seconds(DateTime.Now.ToString("yyyy-MM-dd HH:mm"));
            for (int i = 0; i < vrResult.Length; i++)
            {
                uint uState = (uint)vrResult[i].dwStatus;
                m_szOut += "<tr>";
                m_szOut += "<td data-id=\"" + vrResult[i].dwResvID.ToString() + "\">" + vrResult[i].dwResvID.ToString() + "</td>";
                m_szOut += "<td class='lnkAccount' data-id='" + vrResult[i].dwOwner.ToString() + "' title='查看个人信息'><a href=\"#\">" + vrResult[i].szOwnerName.ToString() + "</a></td>";
                string szResvObject = "";
                if ((vrResult[i].dwProperty & (uint)UNIRESERVE.DWPROPERTY.RESVPROP_LOCKROOM) > 0)
                {
                    szResvObject = vrResult[i].ResvDev[0].szRoomName;
                }
                else
                {
                    szResvObject = vrResult[i].ResvDev[0].szDevName;
                }
                m_szOut += "<td>" + szResvObject + "</td>";
                m_szOut += "<td>" + GetJustName((vrResult[i].dwStatus), "Reserve_Status") + "</td>";
                m_szOut += "<td>" + Get1970Date((uint)vrResult[i].dwOccurTime, "MM-dd HH:mm") + "</td>";
                m_szOut += "<td>" + Get1970Date((uint)vrResult[i].dwBeginTime, "MM-dd HH:mm") + "到" + Get1970Date((uint)vrResult[i].dwEndTime, "MM-dd HH:mm") + "</td>";
                string szOp = "";

                if ((!(((uState & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_UNSETTLE) > 0)) || !(((uState & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_UNDO) > 0))))
                {
                    szOp = "'OPTD OPTD" + uState + "'";
                }
                else
                {
                    szOp = "";
                }
                szOp     = "'OPTD'";
                m_szOut += "<td><div class=" + szOp + "></div></td>";
                m_szOut += "</tr>";
            }
            UpdatePageCtrl(m_Request.Reserve);
        }
        PutBackValue();
    }
Пример #21
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (IsPostBack)
        {
            szResOut += "<table>";
            UNIGROUP   resvGroup;
            string[]   szOwnerList  = Request["szowner"].ToString().Split(';');
            string     szDevID      = Request["szDevID"];
            string     szStartDate  = Request["szStartDate"];
            string     szEndDate    = Request["szEndDate"];
            string     szSelectWeek = Request["weekSelect"];
            string     szStartTime  = Request["startTimeHour"] + ":" + Request["startTimeMin"];
            string     szEndTime    = Request["endTimeHour"] + ":" + Request["endTimeMin"];
            UNIRESERVE setValue     = new UNIRESERVE();
            ArrayList  list         = new ArrayList();
            if (NewGroup("管理员新建预约", (uint)UNIGROUP.DWKIND.GROUPKIND_RERV, out resvGroup))
            {
                for (int i = 0; i < szOwnerList.Length; i++)
                {
                    UNIACCOUNT acc = new UNIACCOUNT();
                    if (GetAccByAccno(szOwnerList[i], out acc))
                    {
                        GROUPMEMBER member = new GROUPMEMBER();
                        member.dwMemberID = acc.dwAccNo;
                        member.szName     = acc.szTrueName;
                        AddGroupMember(resvGroup.dwGroupID, acc.dwAccNo, (uint)GROUPMEMBER.DWKIND.MEMBERKIND_PERSONAL, acc.szTrueName);
                        list.Add(member);
                    }
                }


                setValue.dwMemberID   = resvGroup.dwGroupID;
                setValue.dwMemberKind = (uint)UNIRESERVE.DWMEMBERKIND.MEMBERKIND_GROUP;

                UNIACCOUNT vrAccInfo = ((ADMINLOGINRES)Session["LoginResult"]).AccInfo;
                setValue.dwOwner     = vrAccInfo.dwAccNo;
                setValue.szOwnerName = vrAccInfo.szTrueName;
                setValue.szTestName  = Request["szMemo"];
                UNIDEVICE dev = new UNIDEVICE();
                if (getDevByID(szDevID, out dev))
                {
                    setValue.ResvDev               = new RESVDEV[1];
                    setValue.ResvDev[0].dwDevEnd   = dev.dwDevSN;
                    setValue.ResvDev[0].dwDevStart = dev.dwDevSN;
                    setValue.ResvDev[0].dwDevNum   = 1;
                    setValue.ResvDev[0].dwDevKind  = dev.dwKindID;
                    setValue.ResvDev[0].szRoomNo   = dev.szRoomNo;
                    setValue.ResvDev[0].szDevName  = dev.szDevName;
                    setValue.dwLabID               = dev.dwLabID;
                    setValue.szLabName             = dev.szLabName;
                }
                setValue.dwProperty = (uint)UNIRESERVE.DWPROPERTY.RESVPROP_SELFDO;
                //setValue.dwPurpose = (uint)UNIRESERVE.DWPURPOSE.USEFOR_PERSONNAL;

                //管理员占用导致预约不能生效 所以去掉(uint)UNIRESERVE.DWPURPOSE.USEFOR_RESERVED
                //setValue.dwPurpose = (uint)UNIRESERVE.DWPURPOSE.USEFOR_RESERVED + (uint)UNIRESERVE.DWPURPOSE.USEFOR_STUDYROOM + (uint)UNIRESERVE.DWPURPOSE.USEFOR_PERSONNAL;

                setValue.dwPurpose = (uint)UNIRESERVE.DWPURPOSE.USEFOR_STUDYROOM + (uint)UNIRESERVE.DWPURPOSE.USEFOR_PERSONNAL;

                setValue.dwUseMode = (uint)UNIRESERVE.DWUSEMODE.RESVUSEEXT_PC + (uint)UNIRESERVE.DWUSEMODE.RESVUSE_USEDEV;
            }
            REQUESTCODE uResponse = REQUESTCODE.EXECUTE_FAIL;

            DateTime startDate  = DateTime.Parse(szStartDate);
            DateTime endDate    = DateTime.Parse(szEndDate);
            TimeSpan span       = endDate - startDate;
            uint     uCount     = 0;
            uint     uCountFali = 0;
            while (span.Days > -1)
            {
                UNIGROUP groupresv = new UNIGROUP();
                groupresv           = resvGroup;
                groupresv.dwGroupID = null;
                m_Request.Group.SetGroup(groupresv, out groupresv);
                setValue.dwMemberID = groupresv.dwGroupID;
                if (list != null && list.Count > 0)
                {
                    for (int m = 0; m < list.Count; m++)
                    {
                        GROUPMEMBER member = (GROUPMEMBER)list[m];
                        AddGroupMember(groupresv.dwGroupID, member.dwMemberID, (uint)GROUPMEMBER.DWKIND.MEMBERKIND_PERSONAL, member.szName);
                    }
                }
                int uweek = (int)startDate.DayOfWeek;
                if (uweek == 0)
                {
                    uweek = 7;
                }
                if (szSelectWeek == null || szSelectWeek == "" || szSelectWeek.IndexOf(uweek.ToString()) > -1)
                {
                    string szStartTimeTemp = startDate.ToString("yyyy-MM-dd") + " " + szStartTime;
                    string szEndTimeTemp   = startDate.ToString("yyyy-MM-dd") + " " + szEndTime;

                    setValue.dwBeginTime = Get1970Seconds(szStartTimeTemp);
                    setValue.dwEndTime   = Get1970Seconds(szEndTimeTemp);
                    UNIRESERVE resvTemp = setValue;
                    if (m_Request.Reserve.Set(setValue, out setValue) == REQUESTCODE.EXECUTE_SUCCESS)
                    {
                        uCount = uCount + 1;
                    }
                    else
                    {
                        szResOut  += "<tr><td>" + szStartTimeTemp + "到" + szEndTimeTemp + "</td><td>" + m_Request.szErrMessage + "</td></tr>";
                        uCountFali = uCountFali + 1;
                    }
                    setValue          = resvTemp;
                    setValue.dwResvID = null;

                    UNIACCOUNT vrAccInfo = ((ADMINLOGINRES)Session["LoginResult"]).AccInfo;
                    setValue.dwOwner     = vrAccInfo.dwAccNo;
                    setValue.szOwnerName = vrAccInfo.szTrueName;
                }
                startDate = startDate.AddDays(1);
                span      = endDate - startDate;
            }

            MessageBox("预约成功【" + uCount + "】", "提示", MSGBOX.SUCCESS, MSGBOX_ACTION.NONE);
            szResOut += "</table>";
            return;
        }
        for (int i = 0; i < szWeekDayList.Length; i++)
        {
            szWeek += GetInputItemHtml(CONSTHTML.checkBox, "weekSelect", szWeekDayList[i], (i + 1).ToString());
        }
        for (int i = 7; i < 23; i++)
        {
            TimeHour += GetInputItemHtml(CONSTHTML.option, "", i.ToString("00"), (i).ToString());
        }

        for (int i = 0; i < 60; i = i + 5)
        {
            TimeMin += GetInputItemHtml(CONSTHTML.option, "", i.ToString("00"), (i).ToString());
        }
        m_Title = "管理员新建预约";
    }
Пример #22
0
    protected override void OnLoadComplete(EventArgs e)
    {
        if (!string.IsNullOrEmpty(Request["delID"]))
        {
            UNIRESERVE delItem = new UNIRESERVE();
            delItem.dwResvID          = ToUint(Request["delID"]);
            m_Request.m_UniDCom.StaSN = 1;
            REQUESTCODE delResult = m_Request.Reserve.Del(delItem);
            if (delResult == REQUESTCODE.EXECUTE_SUCCESS)
            {
            }
        }
        string szDate = DateTime.Now.ToString("yyyyMMdd");

        m_szMonthIn  = DateTime.Now.ToString("yyyyMMdd") + DateTime.Now.AddMonths(-1).ToString("yyyyMMdd");
        m_szMonthOut = DateTime.Now.AddMonths(-1).ToString("yyyyMMdd") + DateTime.Now.AddYears(-10).ToString("yyyyMMdd");
        RESVREQ vrGet         = new RESVREQ();
        string  szCheckStatue = Request["resvStatus"];
        uint    uCheckStatue  = CharListToUint(szCheckStatue);

        if (uCheckStatue != 0)
        {
            vrGet.dwCheckStat = uCheckStatue;
        }
        else
        {
            //vrGet.dwCheckStat = (uint)UNIRESERVE.DWSTATUS.RESVSTAT_UNDO;
        }
        string resvDate = Request["resvDate"];

        if (resvDate != null && resvDate != "")
        {
            uint uEndDate   = 0;
            uint uStartDate = 0;
            if (resvDate.Length > 15)
            {
                uEndDate   = Parse(resvDate.Substring(0, 8));
                uStartDate = Parse(resvDate.Substring(8, 8));
            }
            vrGet.dwBeginDate = uStartDate;
            vrGet.dwEndDate   = uEndDate;
        }
        else
        {
            vrGet.dwBeginDate = Parse(DateTime.Now.AddMonths(-1).ToString("yyyyMMdd"));
            vrGet.dwEndDate   = Parse(DateTime.Now.AddDays(7).ToString("yyyyMMdd"));
        }
        string szResvDate = Request["resvDate"];

        //
        vrGet.szReqExtInfo.szOrderKey  = "dwBeginTime";
        vrGet.szReqExtInfo.szOrderMode = "desc";
        vrGet.szReqExtInfo.dwNeedLines = 10000;
        vrGet.szReqExtInfo.dwStartLine = 0;
        vrGet.dwStatFlag = (uint)RESVREQ.DWSTATFLAG.STATFLAG_INUSE + (uint)RESVREQ.DWSTATFLAG.STATFLAG_OVER;
        UNIRESERVE[] vtRes;
        m_Request.m_UniDCom.StaSN = 1;
        if (m_Request.Reserve.Get(vrGet, out vtRes) == REQUESTCODE.EXECUTE_SUCCESS)
        {
            if (vtRes != null && vtRes.Length > 0)
            {
                for (int i = 0; i < vtRes.Length; i++)
                {
                    string szDevName = "";
                    if (vtRes[i].ResvDev != null && vtRes[i].ResvDev.Length > 0)
                    {
                        szDevName = vtRes[i].ResvDev[0].szDevName.ToString();
                    }
                    m_szOut += "<tr data-id=\"" + vtRes[i].dwResvID + "\"><td  class=\"valname\">" + Get1970Date((uint)vtRes[i].dwBeginTime) + "到" + Get1970Date((uint)vtRes[i].dwEndTime, "HH:mm") + "</td>";
                    m_szOut += "<td class=\"valname\">" + szDevName + "</td>";
                    string szStatue = "";
                    uint   uStatue  = (uint)vtRes[i].dwStatus;
                    if ((uStatue & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_DOING) > 0)
                    {
                        szStatue += "生效中,";
                    }
                    if ((uStatue & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_UNDO) > 0)
                    {
                        szStatue += "预约成功,";
                    }
                    if ((uStatue & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_DONE) > 0)
                    {
                        szStatue += "预约已结束,";
                    }
                    if ((uStatue & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_DEFAULT) > 0)
                    {
                        szStatue += "违约,";
                    }
                    if ((uStatue & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_SIGNED) > 0)
                    {
                        szStatue += "已签到,";
                    }
                    m_szOut += "<td class=\"valname\">" + szStatue + "</td>";
                    m_szOut += "<td  class=\"valname\"><button class=\"btnCancel\">删除</button></td></tr>";
                }
            }
            else
            {
                m_szOut += "<tr><td colspan=\"3\"><center>无符合条件记录</center></td></tr>";
            }
        }
        else
        {
            m_szOut += "<tr><td colspan=\"3\"><center>获取预约记录失败," + m_Request.szErrMessage + "</center></td></tr>";
        }
    }
Пример #23
0
    protected void Button1_ServerClick(object sender, EventArgs e)
    {
        Bind        ddlBind   = new Bind();
        REQUESTCODE uResponse = REQUESTCODE.EXECUTE_FAIL;

        if (ViewState["IsMemo"] != null && (string)ViewState["IsMemo"] == "true")
        {
            if (txtMemo.Text == "" || txtMemo.Text.IndexOf("必填内容") >= 0)
            {
                string szMemoVW = (string)ViewState["szlblMemo"];
                if (szMemoVW != null)
                {
                    ddlBind.MessageBoxShow(szMemoVW.Replace(":", "") + "必须填写", this.Page);
                    return;
                }
            }
        }
        string    devID  = Request["dev"];// radDevList.SelectedItem.Value.ToString();
        UNIDEVICE setDev = new UNIDEVICE();

        if (devID != null && devID != "")
        {
            DEVREQ vrGet = new DEVREQ();
            vrGet.dwDevID = ToUInt(devID);
            UNIDEVICE[] vtDev;
            uResponse = m_Request.Device.Get(vrGet, out vtDev);
            if (uResponse != REQUESTCODE.EXECUTE_SUCCESS || vtDev == null || vtDev.Length <= 0)
            {
                return;
            }
            setDev = vtDev[0];
        }
        string kindID = Request["devkind"];

        if (kindID != null && kindID != "")
        {
            DEVKINDREQ vrDevKindReq = new DEVKINDREQ();
            vrDevKindReq.dwKindID = ToUInt(kindID);
            UNIDEVKIND[] vtDevKindRes;
            uResponse = m_Request.Device.DevKindGet(vrDevKindReq, out vtDevKindRes);
            if (vtDevKindRes != null && vtDevKindRes.Length > 0)
            {
                setDev.szDevName = vtDevKindRes[0].szKindName.ToString();
            }
            setDev.dwKindID = ToUInt(kindID);
        }

        object objAccno = Session["LOGIN_ACCINFO"];

        if (objAccno == null)
        {
            return;//保存信息有丢失
        }
        UNIACCOUNT vrAccno = (UNIACCOUNT)objAccno;

        UNIRESERVE resvSet   = new UNIRESERVE();
        bool       bIsByKind = false;

        if (kindID != null && kindID != "")
        {
            bIsByKind = true;
        }
        if (ViewState["isAutoAssign"] == null)
        {
            if (bIsByKind)
            {
                resvSet.dwProperty = (uint)UNIRESERVE.DWPROPERTY.RESVPROP_AUTOASSIGN;
            }
        }
        resvSet.dwUseMode = (uint)UNIRESERVE.DWUSEMODE.RESVUSE_LEASE;
        if (groupIDHidden.Value.ToString() != "")
        {
            resvSet.dwMemberKind = (uint)UNIRESERVE.DWMEMBERKIND.MEMBERKIND_GROUP;
            resvSet.dwMemberID   = ToUInt(groupIDHidden.Value.ToString());
            resvSet.szOwnerName  = vrAccno.szTrueName.ToString() + "group:" + groupIDHidden.Value.ToString();
        }
        else
        {
            resvSet.dwMemberKind = (uint)UNIRESERVE.DWMEMBERKIND.MEMBERKIND_PERSONNAL;
            resvSet.dwMemberID   = vrAccno.dwAccNo;
            resvSet.szMemberName = vrAccno.szTrueName.ToString();
            resvSet.szOwnerName  = vrAccno.szTrueName.ToString();
        }
        resvSet.dwPurpose = (uint)UNIRESERVE.DWPURPOSE.USEFOR_PERSONNAL;



        //设置预约设备
        RESVDEV[] resvDev = new RESVDEV[1];
        if (bIsByKind)
        {
            resvDev[0]           = new RESVDEV();
            resvDev[0].dwDevKind = (uint)setDev.dwKindID;
            resvDev[0].dwDevNum  = 1;
            if (setDev.szDevName != null)
            {
                resvDev[0].szDevName = setDev.szDevName.ToString();
            }
            //实验室
            string szLabID = Request["labid"];
            if (szLabID == null || szLabID == "")
            {
                ddlBind.MessageBoxShow("", this.Page);
                return;
            }
            resvSet.dwLabID = ToUInt(szLabID);
        }
        else
        {
            resvDev[0]            = new RESVDEV();
            resvDev[0].dwDevStart = setDev.dwDevSN;
            resvDev[0].dwDevEnd   = setDev.dwDevSN;
            //实验室
            resvSet.szLabName = setDev.szLabName.ToString();
            resvSet.dwLabID   = setDev.dwLabID;
        }
        //resvSet.szResvDevs=resvDev; 20140821前
        resvSet.ResvDev = resvDev;

        //设置时间

        string szDate = (string)Request["date"];

        if (szDate == null || szDate == "")
        {
            //ddlBind.MessageBoxShow("预约失败请重新选择空间预约", this.Page);
            return;
        }
        int intDate = int.Parse(szDate);

        if (ViewState["nLimit"] != null && ViewState["nLimit"].ToString() == "2")
        {
            szDate = (int.Parse(szDate) / 10000).ToString() + "-" + ((int.Parse(szDate) % 10000) / 100).ToString("00") + "-" + ((int.Parse(szDate) % 10000) % 100).ToString("00");

            string szDDLSelectValue  = ddlPartTime.SelectedValue;
            int    intDDLSelectValue = int.Parse(szDDLSelectValue);
            int    intStartHour      = ((intDDLSelectValue / 10000) / 100);
            int    intStartMin       = ((intDDLSelectValue / 10000) % 100);

            int intEndHour = ((intDDLSelectValue % 10000) / 100);
            int intEndMin  = ((intDDLSelectValue % 10000) % 100);

            resvSet.dwBeginTime = ToUInt(ddlBind.Get1970Seconds(szDate) + intStartHour * 3600 + intStartMin * 60);
            resvSet.dwEndTime   = ToUInt(ddlBind.Get1970Seconds(szDate) + intEndHour * 3600 + intEndMin * 60);
        }
        else
        {
            if (ViewState["bIsLongTime"].ToString() == "true")
            {
                string strStartTime = lblDate.Text.ToString();
                string strEndTime   = lblDate.Text.ToString();
                resvSet.dwBeginTime = ToUInt(Get1970Seconds(strStartTime));
                resvSet.dwEndTime   = ToUInt(Get1970Seconds(strEndTime));
            }
            else
            {
                string strStartTime = lblDate.Text + " " + ddlHourStart.SelectedItem.Text.ToString();
                string strEndTime   = lblDate.Text + " " + ddlHourEnd.SelectedItem.Text.ToString();// "2012-07-23" ddlBind.ConvertDateToDisplay(intDate)
                resvSet.dwBeginTime = ToUInt(Get1970Seconds(strStartTime));
                resvSet.dwEndTime   = ToUInt(Get1970Seconds(strEndTime));
            }
        }
        if (ViewState["bIsLongTime"] != null && ViewState["bIsLongTime"].ToString() == "true")
        {
            string strStartTime = startDate.Value.ToString();
            string strEndTime   = endDate.Value.ToString();
            resvSet.dwBeginTime = ToUInt(Get1970Seconds(strStartTime));
            resvSet.dwEndTime   = ToUInt(Get1970Seconds(strEndTime));
        }
        //其他

        /*
         * resvSet.dwBeginSec = 1);
         * resvSet.dwEndSec = 2);
         * resvSet.dwUseMode = 3);
         * resvSet.dwDevKind = 4);
         * resvSet.dwDevNum = 5);
         */
        if (ViewState["AppResvDoc"] != null)
        {
            resvSet.szApplicationURL = ViewState["AppResvDoc"].ToString();
        }
        resvSet.szTestName = txtMemo.Text.ToString();
        //TODO测试使用
        // resvSet.dwBeginTime = Get1970Seconds("2012-11-14 16:53"));
        //resvSet.dwEndTime = Get1970Seconds("2012-11-14 17:53"));

        uResponse = m_Request.Reserve.Set(resvSet, out resvSet);
        Bind ddlbind = new Bind();

        if (uResponse != REQUESTCODE.EXECUTE_SUCCESS)
        {
            string error = m_Request.szErrMessage.ToString();
            ddlbind.MessageBoxShow(error, this.Page);
            //预约不成功
        }
        else
        {
            RESVDEV[] vtResvDev;
            //vtResvDev=resvSet.szResvDevs; 20140821前
            vtResvDev = resvSet.ResvDev;
            ddlbind.MessageBoxShow("您已成功预约" + vtResvDev[0].szDevName.ToString(), this.Page);
            if (ViewState["AppResvDoc"] != null)
            {
                string szFilePath = ViewState["AppResvDoc"].ToString();
                if (System.IO.File.Exists(szFilePath))
                {
                    int    idx           = szFilePath.LastIndexOf(".");
                    string suffix        = szFilePath.Substring(idx);
                    int    index         = szFilePath.LastIndexOf("\\");
                    string szFilePathNew = szFilePath.Substring(0, index) + "\\" + resvSet.dwResvID.ToString() + suffix;
                    // System.IO.File.Move(szFilePath, szFilePathNew);
                }
            }
        }
    }
Пример #24
0
    protected void Page_Load(object sender, EventArgs e)
    {
        m_szRoomName = Request["szRoomName"];

        TESTITEMREQ vrTestItemReq = new TESTITEMREQ();

        UNITESTITEM[] vrTestItemResult;
        vrTestItemReq.dwGetType = (uint)TESTITEMREQ.DWGETTYPE.TESTITEMGET_BYID;
        vrTestItemReq.szGetKey  = Request["dwTestItemID"];
        if (m_Request.Reserve.GetTestItem(vrTestItemReq, out vrTestItemResult) == REQUESTCODE.EXECUTE_SUCCESS && vrTestItemResult.Length > 0)
        {
        }
        else
        {
            // MessageBox("实验安排失败,无效的实验项目," + m_Request.szErrMsg, "实验安排失败", MSGBOX.ERROR, MSGBOX_ACTION.NONE);
            // return;
        }
        ROOMREQ vrGetRoom = new ROOMREQ();

        UNIROOM[] vrRoomResult;
        vrGetRoom.dwRoomID = ToUint(Request["RoomID"]);
        if (m_Request.Device.RoomGet(vrGetRoom, out vrRoomResult) == REQUESTCODE.EXECUTE_SUCCESS && vrRoomResult.Length > 0)
        {
            m_szRoomName = vrRoomResult[0].szRoomName;
        }
        else
        {
            //MessageBox("实验安排失败,无效的房间号," + m_Request.szErrMsg, "实验安排失败", MSGBOX.ERROR, MSGBOX_ACTION.NONE);
            return;
        }
        UNIRESERVE newresv = new UNIRESERVE();

        newresv.dwMemberKind          = (uint)UNIRESERVE.DWMEMBERKIND.MEMBERKIND_GROUP;
        newresv.dwUseMode             = (uint)UNIRESERVE.DWUSEMODE.RESVUSE_USEDEV;
        newresv.dwPurpose             = (uint)UNIRESERVE.DWPURPOSE.USEFOR_TEACHING;
        newresv.dwPreDate             = ToUint(Request["dwDate"]);
        newresv.dwOwner               = ToUint(Request["dwOwner"]);
        newresv.dwLabID               = vrRoomResult[0].dwLabID;
        newresv.ResvDev               = new RESVDEV[1];
        newresv.ResvDev[0].szRoomNo   = vrRoomResult[0].szRoomNo;
        newresv.ResvDev[0].dwDevKind  = 1403;
        newresv.ResvDev[0].dwDevStart = 0;
        newresv.ResvDev[0].dwDevEnd   = 99999;
        newresv.dwProperty            = (uint)UNIRESERVE.DWPROPERTY.RESVPROP_LOCKROOM;
        newresv.dwTestItemID          = ToUint(Request["dwTestItemID"]);

        newresv.dwYearTerm = GetTerm(null);

        uint?dwBeginSec = ToUint(Request["dwBeginSec"]);
        uint?dwEndSec   = ToUint(Request["dwEndSec"]);

        CLASSTIMETABLE[] vtSec;
        CTSREQ           vrCtsReq = new CTSREQ();

        m_Request.Reserve.GetClassTimeTable(vrCtsReq, out vtSec);
        GetSecTime(vtSec, ref dwBeginSec, ref dwEndSec, out newresv.dwBeginTime, out newresv.dwEndTime);

        newresv.dwOccurTime = Get1970Seconds(DateTime.Now.ToString());
        newresv.dwBeginTime = Get1970Seconds(Request["dwDate"] + " " + newresv.dwBeginTime / 100 + ":" + newresv.dwBeginTime % 100);
        newresv.dwEndTime   = Get1970Seconds(Request["dwDate"] + " " + newresv.dwEndTime / 100 + ":" + newresv.dwEndTime % 100);

        //newresv.dwMemberID = 1071;// vrTestItemResult[0].dwGroupID;
        //newresv.szMemberName = "12日语本衔接班";// vrTestItemResult[0].szGroupName;
        // newresv.dwYearTerm = 20131401;
        // newresv.dwTeachingTime = 261212;

        if (Request["IsSubmit"] == "true")
        {
            if (m_Request.Reserve.Set(newresv, out newresv) == REQUESTCODE.EXECUTE_SUCCESS)
            {
                MessageBox("实验安排成功", "实验安排成功", MSGBOX.SUCCESS, MSGBOX_ACTION.OK);
            }
            else
            {
                // MessageBox("实验安排失败," + m_Request.szErrMsg, "实验安排失败", MSGBOX.ERROR, MSGBOX_ACTION.NONE);
            }
        }

        m_TermText = GetTermText(0);

        PutBackValue();
    }
Пример #25
0
    private void InitResv(uint start, uint end)
    {
        RESVREQ req = new RESVREQ();

        req.dwBeginDate              = start;
        req.dwEndDate                = end;
        req.szReqExtInfo.szOrderKey  = "dwOccurTime";
        req.szReqExtInfo.szOrderMode = "DESC";
        string classkind = GetConfig("openClsKind");

        if (!string.IsNullOrEmpty(classkind) && classkind != "0")
        {
            req.dwClassKind = ToUInt(classkind);
        }
        req.dwPurpose  = (uint)UNIRESERVE.DWPURPOSE.USEFOR_PERSONNAL | (uint)UNIRESERVE.DWPURPOSE.USEFOR_ACTIVITY;
        req.dwStatFlag = (uint)RESVREQ.DWSTATFLAG.STATFLAG_OVER | (uint)RESVREQ.DWSTATFLAG.STATFLAG_INUSE | (uint)RESVREQ.DWSTATFLAG.STATFLAG_CHECKFAIL;
        UNIRESERVE[] rlt;
        if (m_Request.Reserve.Get(req, out rlt) == REQUESTCODE.EXECUTE_SUCCESS)
        {
            for (int i = 0; i < rlt.Length; i++)
            {
                //如果预约是当天且审核不通过的显示出来,如果是历史的不在当天显示。

                UNIRESERVE resv = rlt[i];
                //预约时间
                string timespan = "";
                timespan += "<div><div><span class='grey'>" + Translate("开始") + ":</span> <span class='text-primary'>" + Get1970Date((int)rlt[i].dwBeginTime).Substring(5) + "</span></div><div><span class='grey'>" + Translate("结束") + ":</span> <span class='text-primary'>" + Get1970Date((int)rlt[i].dwEndTime).Substring(5) + "</span></div></div>";
                //组成员
                string member = "<span class='grey'>" + Translate("个人预约") + "</span>";
                if ((resv.dwMemberKind & (uint)UNIRESERVE.DWMEMBERKIND.MEMBERKIND_GROUP) > 0)
                {
                    member = "<span class='grey'>" + Translate("组预约") + "</span>";
                    GROUPMEMBER[] mbs = GetGroup(resv.dwMemberID);
                    if (mbs != null && mbs.Length > 0)
                    {
                        string str = "";
                        for (int j = 0; j < mbs.Length; j++)
                        {
                            str += mbs[j].szName + ",";
                        }
                        member = str.Substring(0, str.Length - 1);
                    }
                }
                //预约对象
                string    objs     = "";
                string    location = "";
                RESVDEV[] resvDev  = resv.ResvDev;
                if (resvDev != null && resvDev.Length > 0)
                {
                    string devName = string.Empty;
                    for (int j = 0; j < resvDev.Length; j++)
                    {
                        if (j == 0)
                        {
                            location = resvDev[0].szLabName;
                        }
                        devName = devName + resvDev[j].szDevName.ToString();
                    }
                    objs = devName != "" ? devName : Translate("请到现场分配");
                }
                //操作
                string act = "<span class='grey'>" + Translate("无权限") + "</span>";
                if ((resv.dwPurpose & (uint)UNIRESERVE.DWPURPOSE.USEFOR_ACTIVITY) > 0)
                {
                    act = "<span class='grey'>" + Translate("开放活动") + "</span>";
                }
                else if (resv.dwOwner == acc.dwAccNo)
                {
                    act = GetAct(resv);
                }
                string szCheckFail = "";
                if ((resv.dwStatus & ((uint)ADMINCHECK.DWCHECKSTAT.CHECKSTAT_ADMINFAIL)) > 0)
                {
                    CHECKLOGREQ checkReq = new CHECKLOGREQ();
                    checkReq.dwSubjectID   = (uint)resv.dwResvID;
                    checkReq.dwSubjectType = 1;
                    CHECKLOG[] checkList;

                    if (m_Request.Admin.AdminCheckLogGet(checkReq, out checkList) == REQUESTCODE.EXECUTE_SUCCESS && checkList != null && checkList.Length > 0)
                    {
                        szCheckFail = checkList[0].szCheckDetail;
                    }
                }

                //提交时间
                string occurtime = Get1970Date((int)resv.dwOccurTime);
                string reason    = (resv.dwStatus & ((uint)ADMINCHECK.DWCHECKSTAT.CHECKSTAT_ADMINFAIL)) > 0 ? ("<span class='red'>审核回复:</span>" + szCheckFail) : "";
                string szIsOver  = ((resv.dwStatus & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_DONE) > 0 ? "true" : "false");
                bool   bIsBnow   = (int.Parse(DateTime.Now.ToString("yyyyMMdd")) > (uint)resv.dwPreDate);
                if ((resv.dwStatus & (uint)ADMINCHECK.DWCHECKSTAT.CHECKSTAT_ADMINFAIL) > 0 && bIsBnow)
                {
                    szIsOver = "true";
                }

                resvList += "<tbody date='" + occurtime + "' state='" + resv.dwStatus + "' over='" + szIsOver + "' style='display:none;'><tr class='head'><td colspan='6'>"
                            + "<h3>" + resv.szTestName + "</h3><span>" + Util.Converter.ResvStatusConverter(resv.dwStatus) + "</span><span class='pull-right'>"
                            + "<span class='grey'>" + occurtime + "</span></span></td></tr>"
                            + "<tr class='content'><td><div class='box'><a>" + objs + "</a><div class='grey'>" + location + "</div</div></td>"
                            + "<td>" + resv.szOwnerName + "</td>"
                            + "<td>" + member + "</td>"
                            + "<td>" + timespan + "</td>"
                            + "<td><div>" + Util.Converter.ResvStatusWithCheck(resv.dwStatus, true) + "</div><div style='font-size:12px;color:#777;'>" + reason + "</div></td>"
                            + "<td class='text-center' style='vertical-align: middle;'>" + act + "</td></tr></tbody>";
            }
            if (rlt.Length == 0)
            {
                resvList = "<tbody><tr><td colspan='6' class='text-center'>" + Translate("没有数据") + "</td></tr></tbody>";
            }
        }
        else
        {
            MsgBoxH(m_Request.szErrMsg);
        }
    }
Пример #26
0
    void Import(string szFilePath, string szErrListRawFile, out uint nImported, out uint nFailed)
    {
        ErrorLines = new ArrayList();
        nImported  = 0;
        nFailed    = 0;
        string strline;

        StreamWriter tWrite = new StreamWriter(szErrListRawFile, false, Encoding.GetEncoding("gb2312"));

        System.IO.StreamReader mysr      = new StreamReader(Server.MapPath(szFilePath), Encoding.GetEncoding("gb2312"));
        REQUESTCODE            uResponse = REQUESTCODE.EXECUTE_FAIL;

        System.IO.StringWriter swCSV = new System.IO.StringWriter();
        bool bAllRight  = true;
        uint count      = 0;
        uint uCountFali = 0;

        while ((strline = mysr.ReadLine()) != null)
        {
            count = count + 1;
            string[] szList = strline.Split(',');

            string szDevName    = szList[0];
            string szStartDate  = szList[1];
            string szEndDate    = szList[2];
            string szSelectWeek = szList[3];
            string szResvTime   = szList[4];

            string      szLogonNames = szList[5];
            string[]    szOwnerList  = szLogonNames.ToString().Split(';');
            UNIDEVICE[] devList;

            devList = getDevByName(szDevName);
            if (szDevName == "" || devList == null || devList.Length == 0 || devList.Length > 1)
            {
                uCountFali = uCountFali + 1;
                continue;
            }
            DateTime startDate = DateTime.Parse(szStartDate);
            DateTime endDate   = DateTime.Parse(szEndDate);
            TimeSpan span      = endDate - startDate;
            while (span.Days > -1)
            {
                int uweek = (int)startDate.DayOfWeek;
                if (uweek == 0)
                {
                    uweek = 7;
                }
                if (szSelectWeek == null || szSelectWeek == "" || szSelectWeek.IndexOf(uweek.ToString()) > -1)
                {
                    string[] resvTimesList = szResvTime.Split(';');
                    if (resvTimesList == null || resvTimesList.Length == 0)
                    {
                        return;
                    }
                    for (int m = 0; m < resvTimesList.Length; m++)
                    {
                        UNIRESERVE setValue = new UNIRESERVE();
                        UNIGROUP   resvGroup;
                        if (NewGroup("管理员新建预约", (uint)UNIGROUP.DWKIND.GROUPKIND_RERV, out resvGroup))
                        {
                            for (int i = 0; i < szOwnerList.Length; i++)
                            {
                                UNIACCOUNT acc = new UNIACCOUNT();
                                if (GetAccByLogonName(szOwnerList[i], out acc))
                                {
                                    AddGroupMember(resvGroup.dwGroupID, acc.dwAccNo, (uint)GROUPMEMBER.DWKIND.MEMBERKIND_PERSONAL);
                                }
                            }


                            setValue.dwMemberID   = resvGroup.dwGroupID;
                            setValue.dwMemberKind = (uint)UNIRESERVE.DWMEMBERKIND.MEMBERKIND_GROUP;

                            UNIACCOUNT vrAccInfo = ((ADMINLOGINRES)Session["LoginResult"]).AccInfo;
                            setValue.dwOwner     = vrAccInfo.dwAccNo;
                            setValue.szOwnerName = vrAccInfo.szTrueName;
                            setValue.szTestName  = Request["szMemo"];

                            UNIDEVICE dev = new UNIDEVICE();
                            dev = devList[0];
                            setValue.ResvDev               = new RESVDEV[1];
                            setValue.ResvDev[0].dwDevEnd   = dev.dwDevSN;
                            setValue.ResvDev[0].dwDevStart = dev.dwDevSN;
                            setValue.ResvDev[0].dwDevNum   = 1;
                            setValue.ResvDev[0].dwDevKind  = dev.dwKindID;
                            setValue.ResvDev[0].szRoomNo   = dev.szRoomNo;
                            setValue.ResvDev[0].szDevName  = dev.szDevName;
                            setValue.dwLabID               = dev.dwLabID;
                            setValue.szLabName             = dev.szLabName;


                            setValue.dwProperty = (uint)UNIRESERVE.DWPROPERTY.RESVPROP_SELFDO;
                            setValue.dwPurpose  = (uint)UNIRESERVE.DWPURPOSE.USEFOR_PERSONNAL;


                            string[] szResvTimeListIn = resvTimesList[m].Split('-');
                            if (szResvTimeListIn == null || szResvTimeListIn.Length < 2)
                            {
                                continue;
                            }
                            string szStartTime     = szResvTimeListIn[0];
                            string szEndTime       = szResvTimeListIn[1];
                            string szStartTimeTemp = startDate.ToString("yyyy-MM-dd") + " " + szStartTime;
                            string szEndTimeTemp   = startDate.ToString("yyyy-MM-dd") + " " + szEndTime;

                            setValue.dwBeginTime = Get1970Seconds(szStartTimeTemp);
                            setValue.dwEndTime   = Get1970Seconds(szEndTimeTemp);


                            if (m_Request.Reserve.Set(setValue, out setValue) == REQUESTCODE.EXECUTE_SUCCESS)
                            {
                                count = count + 1;
                            }
                            else
                            {
                                uCountFali = uCountFali + 1;
                            }
                            setValue.dwResvID = null;
                        }
                    }
                }
                startDate = startDate.AddDays(1);
                span      = endDate - startDate;
            }
        }
        if (!bAllRight)
        {
            DownloadFile(Response, swCSV.GetStringBuilder(), "resarchTestImport.csv");
        }
        nImported = count;
        nFailed   = uCountFali;
        tWrite.Close();
    }
Пример #27
0
    private string GetAct(UNIRESERVE rsv)
    {
        string   act      = "";
        DateTime end      = Util.Converter.Get1970DateTime((int)rsv.dwEndTime);
        DateTime start    = Util.Converter.Get1970DateTime((int)rsv.dwBeginTime);
        DateTime now      = DateTime.Now;
        DateTime deadline = DateTime.Now.AddMinutes(ToUInt(GetConfig("alterDeadline")));
        uint     uOpKind  = ToUInt(GetConfig("centerOPGroup"));

        if (!((rsv.dwStatus & (uint)ADMINCHECK.DWCHECKSTAT.CHECKSTAT_ADMINFAIL) > 0))
        {
            if (start > deadline && (rsv.dwStatus & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_UNDO) > 0)
            {
                act += "<a class='click' rsvId='" + rsv.dwResvID + "' onclick='delRsv(this);'>" + Translate("删除") + "</a>";
                RESVDEV[] resvDev = rsv.ResvDev;
                string    devId   = "";
                string    devKind = "";
                if (resvDev.Length > 0)
                {
                    uint?sn = resvDev[0].dwDevStart;
                    if (sn != null && sn > 0 && resvDev[0].dwDevNum > 0)
                    {
                        UNIDEVICE dev = GetDevBySN(sn, resvDev[0].dwRoomID.ToString());
                        if (dev.dwDevID != null)
                        {
                            devId = dev.dwDevID.ToString();
                        }
                    }
                    else
                    {
                        devKind = resvDev[0].dwDevKind.ToString();
                    }
                }
                if ((uOpKind & 1) > 0)
                {
                    act += " | <a rsvId='" + rsv.dwResvID + "' devId='" + devId + "' devKind='" + devKind + "' start='" + Get1970Date((int)rsv.dwBeginTime) + "' end='" + Get1970Date((int)rsv.dwEndTime) + "' onclick='alterRsv(this);'>" + Translate("修改") + "</a>";
                }
            }
            else
            {
                if (((rsv.dwStatus & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_UNDO) > 0))
                {
                    act = "<span class='grey'>" + Translate("删除") + "</span> | <span class='grey'>" + Translate("修改") + "</span>";
                }
            }
            if (start < now && end > now && (rsv.dwStatus & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_DOING) > 0 && GetConfig("showResvFinish") == "1")
            {
                act += "<br/><a class='click' onclick='pro.j.rsv.finish(\"" + rsv.dwResvID + "\");'>" + Translate("提前结束") + "</a>";
            }
            if (end > now && (rsv.dwMemberKind & (uint)UNIRESERVE.DWMEMBERKIND.MEMBERKIND_GROUP) > 0 && (rsv.dwStatus & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_DONE) == 0)
            {
                if (((rsv.dwStatus & (uint)UNIRESERVE.DWSTATUS.RESVSTAT_UNDO) > 0))
                {
                    if ((uOpKind & 2) > 0)
                    {
                        act += "<br/><button type='button' class='btn btn-info btn-xs' onclick='pro.d.group.manage(\"" + Translate("维护预约组") + "\", {width: 620, group:" + rsv.dwMemberID + "},function(){uni.reload();})'>" + Translate("成员管理") + "</button>";
                    }
                }
            }
        }
        return(act);
    }
Пример #28
0
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.ExpiresAbsolute = DateTime.Now.AddDays(-1);
        Response.Expires         = 0;
        Response.CacheControl    = "no-cache";
        string resvSubmit = Request["resvSubmit"];

        if (resvSubmit != null && resvSubmit == "ok" && !IsPostBack)
        {
            string szPreDate = Request["date"];
            uint   uPreDate  = Parse(szPreDate);

            szPreDate = (uPreDate / 10000 + "-" + (uPreDate % 10000) / 100 + "-" + uPreDate % 100);
            string szStartTime = Request["dwBeginTime"];
            szStartTime = (uint.Parse(szStartTime) / 100 + ":" + uint.Parse(szStartTime) % 100);
            string szEndTime = Request["dwEndTime"];
            szEndTime = (uint.Parse(szEndTime) / 100 + ":" + uint.Parse(szEndTime) % 100);
            string    szDevID = Request["devID"];
            UNIDEVICE dev;
            m_Request.m_UniDCom.StaSN = 1;
            if (!getDevByID(szDevID, out dev))
            {
                szMsg = m_Request.szErrMessage;
                return;
            }
            UNIRESERVE setValue = new UNIRESERVE();
            UNIGROUP   group;
            UNIACCOUNT accno    = ((ADMINLOGINRES)HttpContext.Current.Session["LoginRes"]).AccInfo;
            string     szAccnoS = Request["szAccno"];

            /*
             * if (!NewGroup("预约组", (uint)UNIGROUP.DWKIND.GROUPKIND_RERV, out group))
             * {
             *  Response.Write("{\"res\":0,\"error\":\"" + m_Request.szErrMessage + "\"}");
             *  return;
             * }
             *
             * AddGroupMember(group.dwID, accno.dwAccNo, (uint)GROUPMEMBER.DWKIND.MEMBERKIND_PERSONAL);
             * string[] szAccnoList = szAccnoS.Split(',');
             * for (int i = 0; i < szAccnoList.Length; i++)
             * {
             *  if (szAccnoList[i] != "")
             *  {
             *      UNIACCOUNT accinfo;
             *      if (GetAccByAccno(szAccnoList[i], out accinfo))
             *      {
             *          AddGroupMember(group.dwID, accinfo.dwAccNo, (uint)GROUPMEMBER.DWKIND.MEMBERKIND_PERSONAL);
             *      }
             *  }
             * }
             */
            setValue.dwMemberKind = (uint)UNIRESERVE.DWMEMBERKIND.MEMBERKIND_PERSONNAL;
            setValue.dwPurpose    = (uint)UNIRESERVE.DWPURPOSE.USEFOR_PERSONNAL;
            setValue.dwProperty   = (uint)UNIRESERVE.DWPROPERTY.RESVPROP_SELFDO;
            setValue.dwUseMode    = (uint)UNIRESERVE.DWUSEMODE.RESVUSE_USEDEV;
            setValue.dwOwner      = accno.dwAccNo;
            setValue.szOwnerName  = accno.szTrueName;

            setValue.dwMemberID   = accno.dwAccNo;
            setValue.szMemberName = accno.szTrueName;
            setValue.dwLabID      = dev.dwLabID;
            setValue.szLabName    = dev.szLabName;

            setValue.ResvDev                 = new RESVDEV[1];
            setValue.ResvDev[0]              = new RESVDEV();
            setValue.ResvDev[0].dwDevNum     = 1;
            setValue.ResvDev[0].dwDevKind    = dev.dwKindID;
            setValue.ResvDev[0].dwDevClsKind = dev.dwClassKind;
            setValue.ResvDev[0].dwDevStart   = dev.dwDevSN;
            setValue.ResvDev[0].dwDevEnd     = dev.dwDevSN;
            setValue.ResvDev[0].szRoomNo     = dev.szRoomNo;
            setValue.ResvDev[0].szDevName    = dev.szDevName;

            setValue.dwBeginTime = Get1970Seconds(szPreDate + " " + szStartTime);
            setValue.dwEndTime   = Get1970Seconds(szPreDate + " " + szEndTime);
            string szTestName = Request["szTestName"];
            if (szTestName != null)
            {
                setValue.szTestName = szTestName;
            }
            if (m_Request.Reserve.Set(setValue, out setValue) == REQUESTCODE.EXECUTE_SUCCESS)
            {
                szMsg = "预约成功";
            }
            else
            {
                szMsg = m_Request.szErrMessage;
            }
        }
        LoadDefault();
    }
Пример #29
0
    protected void Page_Load(object sender, EventArgs e)
    {
        UNICAMPUS[] vtCamp = GetAllCampus();
        if (vtCamp != null && vtCamp.Length > 0)
        {
            for (int i = 0; i < vtCamp.Length; i++)
            {
                szCamp += GetInputItemHtml(CONSTHTML.option, "", vtCamp[i].szCampusName, vtCamp[i].dwCampusID.ToString());
            }
        }
        UNIBUILDING[] vtBuilding = getAllBuilding();
        for (int i = 0; i < vtBuilding.Length; i++)
        {
            if (vtBuilding[i].dwCampusID.ToString() == vtCamp[0].dwCampusID.ToString())
            {
                szBuilding += GetInputItemHtml(CONSTHTML.option, "", vtBuilding[i].szBuildingName.ToString(), vtBuilding[i].dwBuildingID.ToString());
            }
        }


        if (IsPostBack)
        {
            UNIGROUP resvGroup;
            string[] szOwnerList  = Request["szowner"].ToString().Split(';');
            string   szDevIDS     = Request["devidchk"];
            string   szStartDate  = Request["szStartDate"];
            string   szEndDate    = Request["szEndDate"];
            string   szSelectWeek = Request["weekSelect"];
            string   szStartTime  = Request["startTimeHour"] + ":" + Request["startTimeMin"];
            string   szEndTime    = Request["endTimeHour"] + ":" + Request["endTimeMin"];
            if (szDevIDS == null || szDevIDS == "")
            {
                MessageBox("未选占用择对象", "提示", MSGBOX.SUCCESS, MSGBOX_ACTION.OK);
                return;
            }
            string[] szDevIDList = szDevIDS.Split(',');

            uint uCount       = 0;
            uint uCountFali   = 0;
            uint uResvGroupID = 0;
            for (int m = 0; m < szDevIDList.Length; m++)
            {
                string szDevID = szDevIDList[m];
                if (szDevID == "")
                {
                    continue;
                }
                UNIRESERVE setValue = new UNIRESERVE();

                UNIDEVICE dev = new UNIDEVICE();
                if (getDevByID(szDevID, out dev))
                {
                    UNIACCOUNT vrAccInfo = ((ADMINLOGINRES)Session["LoginResult"]).AccInfo;
                    setValue.dwMemberID   = vrAccInfo.dwAccNo;
                    setValue.szMemberName = vrAccInfo.szTrueName;
                    setValue.dwMemberKind = (uint)UNIRESERVE.DWMEMBERKIND.MEMBERKIND_PERSONNAL;

                    setValue.dwOwner     = vrAccInfo.dwAccNo;
                    setValue.szOwnerName = vrAccInfo.szTrueName;
                    setValue.szTestName  = Request["szMemo"];


                    setValue.ResvDev               = new RESVDEV[1];
                    setValue.ResvDev[0].dwDevEnd   = dev.dwDevSN;
                    setValue.ResvDev[0].dwDevStart = dev.dwDevSN;
                    setValue.ResvDev[0].dwDevNum   = 1;
                    setValue.ResvDev[0].dwDevKind  = dev.dwKindID;
                    setValue.ResvDev[0].szRoomNo   = dev.szRoomNo;
                    setValue.ResvDev[0].szDevName  = dev.szDevName;
                    setValue.dwLabID               = dev.dwLabID;
                    setValue.szLabName             = dev.szLabName;
                    setValue.dwResvGroupID         =

                        setValue.dwProperty = (uint)UNIRESERVE.DWPROPERTY.RESVPROP_SELFDO;
                    setValue.dwPurpose      = (uint)UNIRESERVE.DWPURPOSE.USEFOR_PERSONNAL + (uint)UNIRESERVE.DWPURPOSE.USEFOR_RESERVED + (uint)UNIRESERVE.DWPURPOSE.USEFOR_STUDYROOM;
                }
                REQUESTCODE uResponse = REQUESTCODE.EXECUTE_FAIL;

                DateTime startDate = DateTime.Parse(szStartDate);
                DateTime endDate   = DateTime.Parse(szEndDate);
                TimeSpan span      = endDate - startDate;

                while (span.Days > -1)
                {
                    int uweek = (int)startDate.DayOfWeek;
                    if (uweek == 0)
                    {
                        uweek = 7;
                    }
                    if (szSelectWeek == null || szSelectWeek == "" || szSelectWeek.IndexOf(uweek.ToString()) > -1)
                    {
                        string szStartTimeTemp = startDate.ToString("yyyy-MM-dd") + " " + szStartTime;
                        string szEndTimeTemp   = startDate.ToString("yyyy-MM-dd") + " " + szEndTime;

                        setValue.dwBeginTime = Get1970Seconds(szStartTimeTemp);
                        setValue.dwEndTime   = Get1970Seconds(szEndTimeTemp);
                        if (uResvGroupID != 0)
                        {
                            setValue.dwResvGroupID = uResvGroupID;
                        }
                        UNIRESERVE resvTemp = setValue;
                        if (m_Request.Reserve.Set(setValue, out setValue) == REQUESTCODE.EXECUTE_SUCCESS)
                        {
                            if (uResvGroupID == 0)
                            {
                                uResvGroupID = (uint)setValue.dwResvID;
                            }
                            uCount = uCount + 1;
                        }
                        else
                        {
                            uCountFali = uCountFali + 1;
                        }
                        setValue          = resvTemp;
                        setValue.dwResvID = null;

                        UNIACCOUNT vrAccInfo = ((ADMINLOGINRES)Session["LoginResult"]).AccInfo;
                        setValue.dwOwner     = vrAccInfo.dwAccNo;
                        setValue.szOwnerName = vrAccInfo.szTrueName;
                    }
                    startDate = startDate.AddDays(1);
                    span      = endDate - startDate;
                }
            }

            MessageBox("预约成功【" + uCount + "】条", "提示", MSGBOX.SUCCESS, MSGBOX_ACTION.OK);
            return;
        }
        for (int i = 0; i < szWeekDayList.Length; i++)
        {
            szWeek += GetInputItemHtml(CONSTHTML.checkBox, "weekSelect", szWeekDayList[i], (i + 1).ToString());
        }
        for (int i = 8; i < 23; i++)
        {
            TimeHour += GetInputItemHtml(CONSTHTML.option, "", i.ToString("00"), (i).ToString());
        }

        for (int i = 0; i < 60; i = i + 5)
        {
            TimeMin += GetInputItemHtml(CONSTHTML.option, "", i.ToString("00"), (i).ToString());
        }
        if (!IsPostBack)
        {
            string szDevID = Request["id"];
            if (szDevID == null || szDevID == "")
            {
                return;
            }
            UNIDEVICE resvDev = new UNIDEVICE();
            if (getDevByID(szDevID, out resvDev))
            {
                PutMemberValue("divdevName", resvDev.szDevName);
                PutMemberValue("szDevID", resvDev.dwDevID.ToString());
            }
        }
        m_Title = "管理员新建预约";
    }
Пример #30
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (IsPostBack)
        {
            UNIGROUP   resvGroup;
            string[]   szOwnerList  = Request["szowner"].ToString().Split(';');
            string     szDevID      = Request["szDevID"];
            string     szStartDate  = Request["szStartDate"];
            string     szEndDate    = Request["szEndDate"];
            string     szSelectWeek = Request["weekSelect"];
            string     szStartTime  = Request["startTimeHour"] + ":" + Request["startTimeMin"];
            string     szEndTime    = Request["endTimeHour"] + ":" + Request["endTimeMin"];
            UNIRESERVE setValue     = new UNIRESERVE();
            if (NewGroup("管理员新建预约", (uint)UNIGROUP.DWKIND.GROUPKIND_RERV, out resvGroup))
            {
                for (int i = 0; i < szOwnerList.Length; i++)
                {
                    UNIACCOUNT acc = new UNIACCOUNT();
                    if (GetAccByAccno(szOwnerList[i], out acc))
                    {
                        AddGroupMember(resvGroup.dwGroupID, acc.dwAccNo, (uint)GROUPMEMBER.DWKIND.MEMBERKIND_PERSONAL);
                    }
                }


                setValue.dwMemberID   = resvGroup.dwGroupID;
                setValue.dwMemberKind = (uint)UNIRESERVE.DWMEMBERKIND.MEMBERKIND_GROUP;
                setValue.dwProperty   = 0;
                UNIACCOUNT vrAccInfo = ((ADMINLOGINRES)Session["LoginResult"]).AccInfo;
                setValue.dwOwner     = vrAccInfo.dwAccNo;
                setValue.szOwnerName = vrAccInfo.szTrueName;
                setValue.szTestName  = Request["szMemo"];
                UNIDEVICE[] getDevByHtmlList;
                getDevByHtmlList = GetDevByRoomId(Parse(szDevID));
                if (getDevByHtmlList != null && getDevByHtmlList.Length > 0)
                {
                    UNIDEVICE getDevByHtml = new UNIDEVICE();
                    getDevByHtml = getDevByHtmlList[0];
                    UNIROOM getRoom;
                    if (GetRoomID(getDevByHtml.dwRoomID.ToString(), out getRoom))
                    {
                        UNIDEVICE[] devList = GetDevByRoomId(getRoom.dwRoomID);
                        if (devList != null && devList.Length == 1)
                        {
                            setValue.dwProperty += (uint)UNIRESERVE.DWPROPERTY.RESVPROP_LOCKROOM;
                        }
                    }
                    setValue.ResvDev               = new RESVDEV[1];
                    setValue.ResvDev[0]            = new RESVDEV();
                    setValue.ResvDev[0].dwDevEnd   = getDevByHtml.dwDevSN;
                    setValue.ResvDev[0].dwDevStart = getDevByHtml.dwDevSN;
                    setValue.ResvDev[0].dwDevNum   = 1;
                    setValue.ResvDev[0].dwDevKind  = getDevByHtml.dwKindID;
                    setValue.ResvDev[0].szRoomNo   = getDevByHtml.szRoomNo;
                    setValue.ResvDev[0].szRoomName = getDevByHtml.szRoomName;
                    setValue.ResvDev[0].szDevName  = getDevByHtml.szDevName;
                    setValue.dwLabID               = getDevByHtml.dwLabID;
                    setValue.szLabName             = getDevByHtml.szLabName;
                }
                setValue.dwProperty = (uint)setValue.dwProperty + (uint)UNIRESERVE.DWPROPERTY.RESVPROP_SELFDO + (uint)UNIRESERVE.DWPROPERTY.RESVPROP_LOCKROOM;
                setValue.dwPurpose  = (uint)UNIRESERVE.DWPURPOSE.USEFOR_PERSONNAL;
            }
            REQUESTCODE uResponse = REQUESTCODE.EXECUTE_FAIL;

            DateTime startDate  = DateTime.Parse(szStartDate);
            DateTime endDate    = DateTime.Parse(szEndDate);
            TimeSpan span       = endDate - startDate;
            uint     uCount     = 0;
            uint     uCountFali = 0;
            while (span.Days > -1)
            {
                int uweek = (int)startDate.DayOfWeek;
                if (uweek == 0)
                {
                    uweek = 7;
                }
                if (szSelectWeek == null || szSelectWeek == "" || szSelectWeek.IndexOf(uweek.ToString()) > -1)
                {
                    string szStartTimeTemp = startDate.ToString("yyyy-MM-dd") + " " + szStartTime;
                    string szEndTimeTemp   = startDate.ToString("yyyy-MM-dd") + " " + szEndTime;

                    setValue.dwBeginTime = Get1970Seconds(szStartTimeTemp);
                    setValue.dwEndTime   = Get1970Seconds(szEndTimeTemp);

                    Logger.trace(setValue.ResvDev[0].dwDevStart.ToString());
                    if (m_Request.Reserve.Set(setValue, out setValue) == REQUESTCODE.EXECUTE_SUCCESS)
                    {
                        uCount = uCount + 1;
                    }
                    else
                    {
                        uCountFali = uCountFali + 1;
                    }
                    setValue.dwResvID = null;

                    UNIACCOUNT vrAccInfo = ((ADMINLOGINRES)Session["LoginResult"]).AccInfo;
                    setValue.dwOwner     = vrAccInfo.dwAccNo;
                    setValue.szOwnerName = vrAccInfo.szTrueName;
                }
                startDate = startDate.AddDays(1);
                span      = endDate - startDate;
            }

            MessageBox("预约成功【" + uCount + "】条", "提示", MSGBOX.SUCCESS, MSGBOX_ACTION.OK);
            return;
        }
        for (int i = 0; i < szWeekDayList.Length; i++)
        {
            szWeek += GetInputItemHtml(CONSTHTML.checkBox, "weekSelect", szWeekDayList[i], (i + 1).ToString());
        }
        for (int i = 7; i < 23; i++)
        {
            TimeHour += GetInputItemHtml(CONSTHTML.option, "", i.ToString("00"), (i).ToString());
        }

        for (int i = 0; i < 60; i = i + 5)
        {
            TimeMin += GetInputItemHtml(CONSTHTML.option, "", i.ToString("00"), (i).ToString());
        }
        m_Title = "管理员新建预约";
    }