Files
sundynix-pets/pets-fe/pages/plan/plan.wxml
T
Blizzard 2aaae2b917 style(fe): 计划页只留日历和当天安排
去掉完成度卡和完整路线图。这页的用途是「排/看某一天要做什么」,
完成度是个统计(报告页的活),完整路线图和日历在说同一件事、
只是换了个排法——两张卡加起来把日历挤到了第二屏。

跟着清掉 doneCount / allOpen / toggleAll / dateLabel 和一个没人绑的 openSheet
(路线图里的 pk-body 原来绑它,现在那块没了)。

一个前提确认过:删掉路线图不会让节点变孤儿。模板从计划开始日生成 day 0-30,
正好落在本月和下月,两个月都能从日历翻到。只有很旧的计划(开始日在上个月之前)
会有节点翻不到,那些已经是过去的事。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-30 11:12:46 +08:00

92 lines
4.9 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<nav-bar title="养宠计划" show-back="{{true}}"></nav-bar>
<view class="top-bar"><pet-switch show-add="{{false}}"></pet-switch></view>
<scroll-view class="page-scroll" scroll-y="{{true}}" enhanced="{{true}}" show-scrollbar="{{false}}">
<view class="page-body">
<view wx:if="{{!pet.id}}" class="no-pet">
<view class="no-pet-ic"><pt-icon name="community" size="{{52}}"></pt-icon></view>
<view class="no-pet-b">还没有毛孩子的档案</view>
<view class="no-pet-p">建好档会按它的年龄阶段自动排好 30 天计划和疫苗驱虫提醒。</view>
<view class="btn btn-dark" bindtap="onAddPet"><pt-icon name="plus" size="{{30}}"></pt-icon>建一份档案</view>
</view>
<block wx:else>
<!-- 月历。按自然月切而不是「从计划开始日起 30 天」:那样窗口会跨两个月,
用户看着 7月26日—8月25日 既不像本月也不像下月,「这个月还剩什么」对不上。
能翻到下月,否则「做下月计划」这件事本身做不了 -->
<view class="card">
<view class="section-head">
<view class="sh-title">{{monthLabel}}</view>
<view class="link-tabs">
<view class="link {{monthOff === 0 ? 'on' : ''}}" data-off="0" bindtap="switchMonth">本月</view>
<view class="link {{monthOff === 1 ? 'on' : ''}}" data-off="1" bindtap="switchMonth">下月</view>
</view>
</view>
<view wx:if="{{monthOff === 1 && !nextCount}}" class="plan-tip">
<pt-icon name="warn" size="{{28}}"></pt-icon>{{monthLabel}}还没有安排,点某天加几件
</view>
<view class="cal-grid">
<text class="cal-w">一</text><text class="cal-w">二</text><text class="cal-w">三</text><text class="cal-w">四</text><text class="cal-w">五</text><text class="cal-w">六</text><text class="cal-w">日</text>
<view wx:for="{{cells}}" wx:key="index"
class="cal-cell {{item.blank ? 'blank' : ''}} {{item.today ? 'today' : ''}} {{item.count ? 'tasked' : ''}} {{item.date === selDate ? 'sel' : ''}}"
data-date="{{item.date}}" bindtap="onTapDay">{{item.day || ''}}</view>
</view>
</view>
<!-- 选中那天的安排 -->
<view class="card">
<view class="section-head">
<view class="sh-title">{{selLabel}}</view>
<view class="link" bindtap="openAdd"> 加一件</view>
</view>
<view wx:for="{{dayTasks}}" wx:key="id" class="plan-task {{item.done ? 'done' : ''}}">
<view class="pk-check" catchtap="toggleTask" data-id="{{item.id}}">
<pt-icon wx:if="{{item.done}}" name="check" size="{{22}}"></pt-icon>
</view>
<view class="pk-body" data-id="{{item.id}}" bindtap="openEdit">
<text class="pk-b">{{item.title}}</text>
<view wx:if="{{item.description}}" class="pk-p">{{item.description}}</view>
</view>
<view class="pk-del" catchtap="onDelete" data-id="{{item.id}}" data-title="{{item.title}}">
<pt-icon name="trash" size="{{28}}"></pt-icon>
</view>
</view>
<view wx:if="{{!dayTasks.length}}" class="empty">这天还没有安排,点右上角加一件</view>
</view>
</block>
</view>
</scroll-view>
<!-- 加/改一条计划。字段少,用弹层比再开一页合适 -->
<view wx:if="{{editShow}}" class="pe-mask" bindtap="closeEdit">
<view class="pe-sheet" catchtap="noop">
<view class="pe-h">{{editId ? '改这件事' : '加一件事'}}</view>
<view class="field"><label>做什么</label>
<input class="input" placeholder="比如 带去打第二针" placeholder-class="placeholder"
value="{{form.title}}" bindinput="onFormTitle"/></view>
<view class="field"><label>哪天</label>
<picker mode="date" value="{{form.date}}" start="{{pickStart}}" end="{{pickEnd}}" bindchange="onFormDate">
<view class="picker-box">{{form.date}}</view>
</picker>
<view class="tiny">只能安排 {{pickStart}} 到 {{pickEnd}} 之间</view>
</view>
<view class="field"><label>备注</label>
<textarea class="textarea" placeholder="可不填" placeholder-class="placeholder"
value="{{form.description}}" bindinput="onFormDesc"></textarea></view>
<!-- 只有新增能选「每天」:已有的那条改成每天等于凭空复制 29 份,
用户想要的是「以后每天」,不是「把这条撒开」 -->
<view wx:if="{{!editId}}" class="field pe-daily">
<view class="pe-daily-main">
<view class="tt-b">应用到每天</view>
<view class="tt-p">从这天排到 {{monthEndLabel}},每天一条,可以分别打勾</view>
</view>
<switch checked="{{form.daily}}" color="#F5A947" bindchange="onFormDaily"></switch>
</view>
<view class="btn btn-primary btn-block" bindtap="onSubmit">{{saving ? '保存中…' : '保存'}}</view>
</view>
</view>
<bottom-sheet show="{{sheetShow}}" type="{{sheetType}}" bind:close="closeSheet"></bottom-sheet>