iT邦幫忙

2023 iThome 鐵人賽

DAY 11
0

流程説明

  • 前一篇大概想了一下如何呼叫已經做好的工具
  • 今天來實作
  • GitHub 變動:https://github.com/rita0124/slide-generator/commit/fadb4f1c414f7e9127760c86496f8579d5c512e4

原始碼

  • PPTBoss 裡新增一個 function
  • 在 PTTBoss 裡做出一個 Kanban()實例(instance),姑且叫他 kb 好了
    def gen_prs_content_pages(self, project_gid=None):
        for task_id in self.kb.my_tasks.keys():
            content_slide_layout = self.prs.slide_layouts[1]
            slide = self.prs.slides.add_slide(content_slide_layout)
    
            title = slide.shapes[0]
            title.text = f"{self.kb.my_tasks[task_id]['name']} - {self.kb.my_tasks[task_id]['assignee']['name']}"
    
            body_shape = slide.placeholders[1]
            tf = body_shape.text_frame
            start_on = self.kb.my_tasks[task_id]['start_on'].strftime("%Y-%m-%d")
            due_on = self.kb.my_tasks[task_id]['due_on'].strftime("%Y-%m-%d")
            is_completed = self.kb.my_tasks[task_id]['completed']
            tf.text = f"任務名稱:{self.kb.my_tasks[task_id]['name']}\n"
            tf.text += f"指派給: {self.kb.my_tasks[task_id]['assignee']['name']}\n"
            tf.text += f"預定時間:{start_on} ~ {due_on}\n"
            if is_completed:
                tf.text += f"狀態:{self.kb.my_tasks[task_id]['completed_at'].strftime('%Y-%m-%d')} 完成"
            elif self.kb.my_tasks[task_id]['start_on'] > date.today():
                tf.text += f"狀態: 尚未開始"
            else:
                tf.text += f"狀態: 進行中..."
    

結論

https://ithelp.ithome.com.tw/upload/images/20230912/201417841FmRkJw1JH.png

  • 看圖解釋程式碼,現在已經有顯示任務名稱、指派給誰、預定施工日期、現在的狀態
  • 到了這一步,已經可以快速產生「我」的指定專案中的任務了
  • 後續要站在慣老闆角度,設計出可以鞭策每個奴隸的做法

上一篇
Day 10 - 根據 Asana 工作卡片產出投影片的流程設計
下一篇
Day 12 - 透過 Kanban 類別中的方法實作成員清單、作法討論
系列文
挽救肝指數 x 職場生存術 x 老闆愛看的投影片製造機30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言