示例#1
0
        // Residents
        private void btnCreate_Click(object sender, EventArgs e)
        {
            MissionAddResident addResident = new MissionAddResident(new ResidentMission());

            if (addResident.ShowDialog() == DialogResult.OK)
            {
                addResident.Mission.CreatedTime = DateTime.Now;
                addResident.Mission.Resident    = ResidentService.Get(CurrentUser.UserId);
                addResident.Mission.State       = MissionStatus.未接受;
                ResidentMissionService.Add(addResident.Mission);
                QueryAll(CurrentUser);
            }
        }
示例#2
0
        // Residents
        private void btnCancel_Click(object sender, EventArgs e)
        {
            ResidentMission mission = MissionBindingSource.Current as ResidentMission;

            if (mission == null)
            {
                MessageBox.Show("请选择一个需求进行取消");
                return;
            }
            if (mission.State == MissionStatus.已接受)
            {
                MessageBox.Show("订单已接受,无法取消!如有特殊情况请联系管理员。");
                return;
            }
            ResidentMissionService.Remove(mission.ResidentMissionId);
            QueryAll(CurrentUser);
        }
示例#3
0
        private void btnQueryHistory_Click(object sender, EventArgs e)
        {
            UserType identity = CurrentUser.UserType;
            List <ResidentMission> missions        = new List <ResidentMission>();
            List <ResidentMission> historyMissions = new List <ResidentMission>();

            switch (cmbQueryW.SelectedIndex)
            {
            case 0:     // 全部
                UserTypeJudge(CurrentUser, missions, historyMissions);
                MissionBindingSource.DataSource = historyMissions;
                break;

            case 1:     // 根据编号查询
                UserTypeJudge(CurrentUser, missions, historyMissions);
                List <ResidentMission> temp = new List <ResidentMission>();
                var list = from ResidentMission s in historyMissions
                           where s.ResidentMissionId == txtQuery.Text
                           select s;
                temp = list.ToList();
                MissionBindingSource.DataSource = temp;
                break;

            case 2:     // 根据用户ID查询
                UserTypeJudge(CurrentUser, missions, historyMissions);
                var id = from ResidentMission s in historyMissions
                         where s.Resident.User.UserId == txtQuery.Text
                         select s;
                temp = id.ToList();
                MissionBindingSource.DataSource = ResidentMissionService.QueryByUserId(txtQuery.Text);
                break;

            case 3:     // 根据日期查询
                DateTime dt = Convert.ToDateTime(txtQuery.Text);
                UserTypeJudge(CurrentUser, missions, historyMissions);
                var date = from ResidentMission s in historyMissions
                           where s.CreatedTime == dt
                           select s;
                temp = date.ToList();
                MissionBindingSource.DataSource = ResidentMissionService.QuerydByDate(dt);
                break;
            }
            MissionBindingSource.ResetBindings(true);
        }
示例#4
0
        // Administrator
        private void btnAllocate_Click(object sender, EventArgs e)
        {
            ResidentMission mission = MissionBindingSource.Current as ResidentMission;

            if (mission == null)
            {
                MessageBox.Show("请选择一个需求进行分配");
                return;
            }
            mission = ResidentMissionService.Get(mission.ResidentMissionId);
            MissionAllocate allocate = new MissionAllocate(mission);

            if (allocate.ShowDialog() == DialogResult.OK)
            {
                allocate.Mission.State = MissionStatus.已接受;
                ResidentMissionService.Update(allocate.Mission);
                QueryAll(CurrentUser);
            }
        }
示例#5
0
        // Residents
        private void btnEdit_Click(object sender, EventArgs e)
        {
            ResidentMission mission = MissionBindingSource.Current as ResidentMission;

            if (mission == null)
            {
                MessageBox.Show("请选择一个需求进行修改");
                return;
            }
            if (mission.State == MissionStatus.已接受)
            {
                MessageBox.Show("订单已接受,无法修改!如有特殊情况请联系管理员。");
                return;
            }
            mission = ResidentMissionService.Get(mission.ResidentMissionId);
            MissionAddResident addResident = new MissionAddResident(mission);

            if (addResident.ShowDialog() == DialogResult.OK)
            {
                ResidentMissionService.Update(addResident.Mission);
                QueryAll(CurrentUser);
            }
        }
示例#6
0
        public void UserTypeJudge(User user, List <ResidentMission> missions, List <ResidentMission> historyMissions)
        {
            UserType identity = CurrentUser.UserType;

            if (identity == UserType.Resident)
            {
                btnAllocate.Visible = false;
                btnFinish.Visible   = false;
                btnRefuse.Visible   = false;
                missions            = ResidentMissionService.QueryByStatusAndId(CurrentUser.UserId, MissionStatus.未接受);
                missions            = missions.Union(ResidentMissionService.QueryByStatusAndId(CurrentUser.UserId, MissionStatus.已接受)).ToList();
                historyMissions     = ResidentMissionService.QueryByStatusAndId(CurrentUser.UserId, MissionStatus.已完成);
                historyMissions     = historyMissions.Union(ResidentMissionService.QueryByStatusAndId(CurrentUser.UserId, MissionStatus.拒绝)).ToList();
            }
            else if (identity == UserType.Worker)
            {
                btnCreate.Visible   = false;
                btnEdit.Visible     = false;
                btnCancel.Visible   = false;
                btnAllocate.Visible = false;
                string worker = WorkerService.QueryByUser(CurrentUser.UserId)[0].Name;
                missions        = ResidentMissionService.QueryByStatusAndId(worker, MissionStatus.已接受);
                historyMissions = ResidentMissionService.QueryByStatusAndId(worker, MissionStatus.已完成);
                historyMissions = historyMissions.Union(ResidentMissionService.QueryByStatusAndId(worker, MissionStatus.拒绝)).ToList();
            }
            else
            {
                btnCreate.Visible = false;
                btnEdit.Visible   = false;
                btnCancel.Visible = false;
                btnFinish.Visible = false;
                missions          = ResidentMissionService.QueryByStatus(MissionStatus.未接受);
                historyMissions   = ResidentMissionService.QueryByStatus(MissionStatus.已接受);
                historyMissions   = ResidentMissionService.QueryByStatus(MissionStatus.已完成);
                historyMissions   = historyMissions.Union(ResidentMissionService.QueryByStatus(MissionStatus.拒绝)).ToList();
            }
        }
示例#7
0
 private void QueryAll(User user)
 {
     TravelBindingSource.DataSource = ResidentMissionService.QueryByUserId(user.UserId);
     TravelBindingSource.ResetBindings(false);
 }