Beispiel #1
0
    def get(self, *args, **kargs):

        #if check_permission(self):
        projectKey = self.session['current_project']
        sprints = sprint.Sprint().get_by_project(projectKey)
        currentUser = self.auth.get_user_by_session()
        currentUser = self.user_model.get_by_id(currentUser['user_id']).key
        if (self.request.get("sprint_id") != ''):
            logging.info("The sprintid is" + self.request.get("sprint_id"))
            estimates = effort_estimation.EffortEstimation(
            ).get_esti_by_sprint(
                ndb.Key('Sprint', int(self.request.get("sprint_id"))))
        else:
            if not sprints:
                estimates = None
            else:
                estimates = effort_estimation.EffortEstimation(
                ).get_esti_by_sprint(sprints[0].key)
    # projectKey = estimates[0].project
        projectmembermodel = project.ProjectMembers()
        projmem = projectmembermodel.get_all(projectKey)
        self.render_template("user_new/apm-effort-estimation.html", {
            "sprint": sprints,
            "efforestimate": estimates,
            "users": projmem
        })
Beispiel #2
0
    def get(self, *args, **kargs):
        projectKey = self.session['current_project']
        sprints = sprint.Sprint().get_by_project(projectKey)
        if (self.request.get("sprint_id") != ''):
            sprintid = self.request.get("sprint_id")
            sprint_key = ndb.Key('Sprint', int(sprintid))
        else:
            if not sprints:
                logging.info("No Sprints created")
                sprint_key = None

            else:
                sprint_key = sprints[0].key

        timelog = {}
        timelogmodel = time_log.Time_Log.query(
            time_log.Time_Log.sprint_key == sprint_key).fetch()
        for t in timelogmodel:
            timelog[t.today_date] = float(timelog.get(
                t.today_date, 0)) + float(t.total_effort)
        logging.info(timelog)
        listest = []
        estimates = effort_estimation.EffortEstimation().get_esti_by_sprint(
            sprint_key)
        est_total = 0

        for est in estimates:
            est_total = float(est_total) + float(est.total_effort)
        #for t in taskmodel:
        #timelogmodel = time_log.Time_Log.query(time_log.Time_Log().task_key==t.key).fetch()

        for e in estimates:
            #for time in timelogmodel:
            #total_timesheethours = 0
            #if(e.date == time.today_date):
            #total_timesheethours = float(total_timesheethours) + float(time.total_effort)
            if e.date in timelog:
                entry = []
                d = (e.date).strftime("%Y,%m,%d")
                entry.append(d)
                entry.append(float(est_total) - float(e.total_effort))
                entry.append(float(est_total) - float(timelog.get(e.date)))
                est_total = float(est_total) - float(e.total_effort)
                listest.append(entry)
                logging.info("the list is" + listest.__str__())
            else:
                entry = []
                d = (e.date).strftime("%Y,%m,%d")
                entry.append(d)
                entry.append(float(est_total) - float(e.total_effort))
                entry.append(None)
                est_total = float(est_total) - float(e.total_effort)
                listest.append(entry)
                logging.info("the list is" + listest.__str__())
        self.render_template(
            "user_new/bar_chart.html", {
                "sprint": sprints,
                "data": json.dumps(listest),
                "currentsprint": sprint_key
            })
    def post(self, *args, **kargs):
        logging.info("it is here " + self.request.__str__())
        projmemid = self.request.get("id")
        user_info = self.auth.get_user_by_session()
        key = ndb.Key('ProjectMembers', int(projmemid))
        projmem = key.get()

        projmem.modified_by = user_info['email_address']
        projmem.modified_date = datetime.now()
        projmem.status = False
        projmem.put()

        sprints = sprint.Sprint().get_by_project(projmem.projectid)
        logging.info
        if not sprints:
            logging.info("No sprints")
        else:
            task = taskqueue.add(queue_name="my-push-queue",
                                 url='/deleteusereffortspersist',
                                 params={
                                     'projectid': projmem.projectid.id(),
                                     'userid': projmem.userid.id()
                                 })

    #   projmem.status = 'False'
    #   projmem.set()
    #projmem.delete_entity(projmemid)
        self.response.write("success")
    def get(self, *args, **kargs):
        key = ndb.Key(urlsafe=self.request.get('edit_key'))
        backlog_info = key.get()
        #  logging.info(backlog_info)
        sprint_obj = sprint.Sprint()
        sprints = sprint_obj.get_by_project(self.session['current_project'])

        projmodel = project.Project()
        proj = projmodel.get_all()

        key = self.session['current_project']
        team = project.ProjectMembers().get_all(key)

        u = user.OurUser()
        user1 = u.query(
            user.OurUser.tenant_domain == kargs['subdomain']).fetch()

        self.render_template(
            "user_new/edit_backlog.html", {
                "user_data": user1,
                "team": team,
                "backlog_info": backlog_info,
                "project": proj,
                "sprint": sprints
            })
Beispiel #5
0
    def get(self, *args, **kargs):
        projectKey = self.session['current_project']
        sprints = sprint.Sprint().get_by_project(projectKey)
        if (self.request.get("sprint_id") != ''):
            sprintid = self.request.get("sprint_id")
            sprint_key = ndb.Key('Sprint', int(sprintid))
        else:
            if not sprints:
                sprint_key = None
            else:
                sprint_key = sprints[0].key
        userest = {}
        username = {}
        userlog = {}
        datalist = []
        entry = []
        entry.append("Name")
        entry.append("Percentage")
        datalist.append(entry)
        estimates = effort_estimation.EffortEstimation().get_esti_by_sprint(
            sprint_key)
        timelogmodel = time_log.Time_Log.query(
            time_log.Time_Log.sprint_key == sprint_key).fetch()

        for est in estimates:
            for user in est.effort:
                userest[user.userKey] = float(userest.get(
                    user.userKey, 0)) + float(user.effortHours)
                username[user.userKey] = user.userName
        for time in timelogmodel:
            userlog[time.assigne_key] = float(userlog.get(
                time.assigne_key, 0)) + float(time.total_effort)
        logging.info("the estimated effort is" + userest.__str__())
        logging.info("the estimated effort is" + userlog.__str__())
        for k in userest:
            entry = []
            if (userlog.get(k) != None):
                percentage = (float(userlog.get(k)) /
                              float(userest.get(k))) * 100
                entry.append(username.get(k))
                entry.append(percentage)
                datalist.append(entry)
            else:
                entry.append(username.get(k))
                entry.append(0.0)
                datalist.append(entry)

        logging.info("the list is" + datalist.__str__())
        self.render_template(
            "user_new/utilization_chart.html", {
                "sprint": sprints,
                "data": json.dumps(datalist),
                "currentsprint": sprint_key
            })
    def get(self, *args, **kargs):
        #if check_permission(self):
        productBacklog = product_backlog.ProductUserStory()
        productBacklog = productBacklog.get_all_by_project(
            self.session['current_project'])

        list = []

        for pb in productBacklog:
            data = {}
            data['key'] = pb.key.id()
            data['sprintId'] = pb.sprintId
            data['storyDesc'] = pb.storyDesc
            data['roughEstimate'] = pb.roughEstimate
            data['priority'] = pb.priority
            data['status'] = pb.status
            list.append(data)

        #self.response.headers['Content-Type'] = 'text/plain'

        #self.response.write(json.dumps(list, ensure_ascii=False))

        type_obj = task.Type()
        type = type_obj.get_all()

        projmodel = project.Project()
        proj = projmodel.get_all()

        company_name = kargs['subdomain']

        sprint_obj = sprint.Sprint()
        sprints = sprint_obj.get_by_project(self.session['current_project'])

        key = self.session['current_project']
        team = project.ProjectMembers().get_all(key)

        u = user.OurUser()
        user1 = u.query(
            user.OurUser.tenant_domain == kargs['subdomain']).fetch()

        release = project.ProjectRelease()
        releases = release.get_by_project(self.session['current_project'])

        self.render_template(
            "user_new/apm-backlog-new.html", {
                "user_data": user1,
                "team": team,
                "productBacklog": productBacklog,
                "type": type,
                "project": proj,
                "sprint": sprints,
                "company_name": company_name,
                "release": releases
            })
    def post(self, *args, **kargs):
        currentUser = self.auth.get_user_by_session()
        logging.info("it is here " + self.request.__str__())
        userid = self.request.get("userid")
        projid = self.request.get("projid")
        roleid = self.request.get("role")
        logging.info("it is here and the userId is" + userid)
        logging.info("it is here and the projid is" + projid)
        logging.info("it is here and the role is" + roleid)

        companyId = self.user_model.get_by_id(
            currentUser['user_id']).tenant_key

        projemem = project.ProjectMembers()
        userkey = ndb.Key('OurUser', int(userid))
        model = userkey.get()
        projemem.userName = model.name
        projemem.projectid = ndb.Key('Project', int(projid))
        projemem.companyid = companyId
        projemem.userid = userkey
        projemem.roleid = ndb.Key('Groups', int(roleid))
        projemem.userRole = ndb.Key('Groups', int(roleid)).get().role

        user_info = self.auth.get_user_by_session()
        projemem.created_by = user_info['email_address']
        projemem.status = True

        projekey = projemem.set()
        projmodel = projekey.get()

        sprints = sprint.Sprint().get_by_project(projmodel.projectid)
        logging.info
        if not sprints:
            logging.info("No sprints")
        else:
            task = taskqueue.add(queue_name="my-push-queue",
                                 url='/newusereffortspersist',
                                 params={
                                     'projectid': projmodel.projectid.id(),
                                     'userid': projmodel.userid.id()
                                 })

        data = {}
        data['id'] = projmodel.key.id()
        data['projectid'] = projmodel.projectid.id()
        data['companyid'] = projmodel.companyid.id()
        data['userName'] = (projmodel.userid).get().name
        data['userid'] = projmodel.userid.id()
        data['userRole'] = projmodel.userRole

        self.response.write(json.dumps(data, ensure_ascii=False))
    def get(self, *args, **kargs):
        #if check_permission(self):
        # project = ndb.Key(urlsafe=self.request.get("key"))
        project1 = self.session['current_project']
        sprint_data = sprint.Sprint().get_by_project(project1)
        tasks = task.Task().get_all(project1)
        logging.info(tasks)

        release = project.ProjectRelease()
        releases = release.get_by_project(self.session['current_project'])
        self.render_template("user_new/apm-sprint-items.html", {
            "sprints": sprint_data,
            "tasks": tasks,
            "release": releases
        })
    def get(self, *args, **kargs):
        #if check_permission(self):
        key = self.session['current_project']
        type_data = task.Type().get_all()
        team = project.ProjectMembers().get_all(key)
        complexity = project.Estimation().get_all(key)
        logging.info(complexity)
        sprints = sprint.Sprint().get_by_project(key)

        self.render_template(
            "user_new/addtask.html", {
                "type": type_data,
                "team": team,
                "complex": complexity,
                'sprints': sprints
            })
 def get(self, *args, **kargs):
     #if check_permission(self):
     edit_key = ndb.Key(urlsafe=self.request.get('edit_key'))
     task_data = edit_key.get()
     key = self.session['current_project']
     type_data = task.Type().get_all()
     team = project.ProjectMembers().get_all(key)
     complexity = project.Estimation().get_all(key)
     sprints = sprint.Sprint().get_by_project(key)
     self.render_template(
         "user_new/edittask.html", {
             "type": type_data,
             "team": team,
             "complex": complexity,
             'sprints': sprints,
             'task_data': task_data
         })
    def post(self, *args, **kargs):
        currentUser = self.auth.get_user_by_session()
        createdBy = self.user_model.get_by_id(currentUser['user_id']).key
        sprint_data = sprint.Sprint()
        sprint_data.name = self.request.get("name")
        sprint_data.description = self.request.get("desc")
        sprint_data.workinghours = self.request.get("workinghours")

        if self.request.get("start") != '':
            sprint_data.startDate = datetime.strptime(
                self.request.get("start"), '%m/%d/%Y').date()

        if self.request.get('end') != '':
            sprint_data.endDate = datetime.strptime(self.request.get("end"),
                                                    '%m/%d/%Y').date()

        if (self.request.get('release') != 'None'):
            sprint_data.release_key = ndb.Key(
                urlsafe=self.request.get('release'))

    #   sprint_data.project = ndb.Key(urlsafe=self.request.get("project_key"))

        sprint_data.project = self.session['current_project']

        sprint_data.project = self.session['current_project']
        sprint_data.createdby = createdBy
        sprint_data.sprint_status = Sprint_Status[0]

        sprint_data.company = self.user_model.get_by_id(
            currentUser['user_id']).tenant_key

        sprint_data.created_by = currentUser['email_address']
        sprint_data.status = True

        sprintkey = sprint_data.set()
        sprintid = sprintkey.id()
        logging.info("before setting task")
        task = taskqueue.add(queue_name="my-push-queue",
                             url='/effortspersist',
                             params={
                                 'sprintid': sprintid,
                                 'createdBy': createdBy
                             })
        logging.info("after setting task")
        self.response.out.write("true")
Beispiel #12
0
    def post(self):

        logging.info("The projectid is" + self.request.get("projectid"))
        logging.info("The userid is" + self.request.get("userid"))
        projectKey = ndb.Key('Project', int(self.request.get("projectid")))
        userKey = ndb.Key('OurUser', int(self.request.get("userid")))
        sprints = sprint.Sprint().get_by_project(projectKey)

        for spr in sprints:
            estimates = effort_estimation.EffortEstimation(
            ).get_esti_by_sprint(spr.key)
            for est in estimates:
                total_effort = est.total_effort
                if (est.date > date.today()):
                    estlist = est.effort
                    for e in estlist:
                        if (e.userKey == userKey):
                            oldval = e.effortHours
                            e.effortHours = "0"
            newtotal_effort = float(total_effort) - float(oldval)
            est.total_effort = str(newtotal_effort)
            est.set()
Beispiel #13
0
    def post(self):

        logging.info("The projectid is" + self.request.get("projectid"))
        logging.info("The userid is" + self.request.get("userid"))
        projectKey = ndb.Key('Project', int(self.request.get("projectid")))
        userKey = ndb.Key('OurUser', int(self.request.get("userid")))
        sprints = sprint.Sprint().get_by_project(projectKey)

        for spr in sprints:
            estimates = effort_estimation.EffortEstimation(
            ).get_esti_by_sprint(spr.key)
            for est in estimates:
                total_effort = float(est.total_effort) + float(
                    spr.workinghours)
                estlist = est.effort
                usereffort = effort_estimation.UserEffort()
                usereffort.userKey = userKey
                usereffort.userName = userKey.get().name
                usereffort.effortHours = spr.workinghours
                estlist.append(usereffort)
                est.effort = estlist
                est.total_effort = str(total_effort)
                est.set()