Files
mama-box/topic/shouxu-js/index.html

101 lines
9.2 KiB
HTML
Raw Permalink 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.
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no,viewport-fit=cover">
<meta name="format-detection" content="telephone=no">
<title>出生后手续时间线</title>
<!-- 孕期计算器 · 出生后手续时间线(2026-11-04 用户从 20 个备选里选了带星的 10 个,本页是其中之一)。
时间依据:《户口登记条例》第 7 条(出生后 1 个月内申报户口);新生儿参加城乡居民医保出生后 90 天内参保、可从出生起享受待遇,凭出生医学证明就能参保、不用等户口(国家医保局 2025 年居民医保参保通知;2026-11-08 核查后由「3 个月」改按 90 天、出生当天算第 1 天,取保守);
预防接种证出生后 1 个月内到社区建证;个税 3 岁以下照护扣除出生当月起;育儿补贴落户后申领;产后 42 天复查。
出生医学证明、个税、育儿补贴没有法定截止(个税可次年汇算补填,育儿补贴按年申领),11-08 起标为「建议…前」(第 5 项 = 1),过了不算「已超过截止」。
各地规定不一,页面写「以当地为准」。很多地方已开通「新生儿出生一件事」联办(出生证 + 户口 + 医保 + 社保卡一次办)。
做完可以打勾(记在本机 mmbox.calc.shouxu);还没生的按预产期先排。
共用 ../_shared/calc.css + calc.js(返回 / 禁回弹 / 日期按北京时间 / 记住上次填的值);自成一页,不引 app.js。 -->
<link rel="stylesheet" href="../_shared/calc.css?v=26110464">
<link rel="stylesheet" href="../_shared/wizard.css?v=26110464">
<style>:root{--c:#4E7FD8;--c2:#86AEF2;--cbg:#EDF3FF}.tl .ck{flex:none;align-self:flex-start;height:28px;padding:0 10px;margin-top:1px;border-radius:99px;background:#F4F6F8;color:var(--m);font-size:12px;font-weight:800}.tl li.ok .ck{background:var(--c);color:#fff}.tl li.ok .m{opacity:.55}.tl li.ok .d{border-color:var(--c);background:var(--c);box-shadow:none}.tl li.late .m b em{background:#FFE8E6;color:#E0453A}.tl .m span.w{color:var(--t)}</style>
</head>
<body>
<div id="scroll">
<header class="bar" id="bar">
<button class="back" id="back" aria-label="返回"><svg viewBox="0 0 24 24"><path d="M15 5l-7 7 7 7"/></svg></button>
<span class="t">孕期计算器</span>
</header>
<section class="hd"><p>孕期计算器</p><h1>出生后手续时间线</h1><span>出生证、上户口、医保、社保卡……每件事截止哪天</span></section>
<section class="calc">
<div class="res" id="res"><div class="empty">填宝宝出生日期,马上排出时间线</div></div>
<div class="tabs" id="tabs" data-q="宝宝生了吗?"><button type="button" data-v="1">已经生了</button><button type="button" data-v="0">还没生,按预产期</button></div>
<div class="fld"><label class="lb" for="cD" id="cDl">宝宝出生日期</label><input class="in num" type="date" id="cD"></div>
</section>
<section class="sec hide" id="sTl">
<h2>手续时间线</h2>
<p class="lead">按截止时间排,做完点「办好了」</p>
<ol class="tl" id="tl"></ol>
</section>
<div class="tip"><b>先查有没有「出生一件事」:</b>很多城市在支付宝、微信或当地政务 App 上能把出生医学证明、上户口、医保参保、社保卡一次办完,不用一趟趟跑。<br><b>要准备的:</b>爸妈身份证、户口本、结婚证、出生医学证明(宝宝名字定好再办)。</div>
<p class="foot">各地规定和截止时间不完全一样,以当地公安、医保、卫健部门要求为准。</p>
</div>
<script src="../_shared/calc.js?v=26110464"></script>
<script>
(function () {
'use strict';
var C = window.CK, $ = C.$;
C.shell();
var DAY = C.DAY, T = C.today();
/* [名称, 截止:天数 或 'm1' = 1 个月 / 'm3' = 3 个月, 在哪办 / 说明, 起始偏移天, 1 = 只是建议时间、没有硬截止] */
var L = [
['出生医学证明', 3, '出院前在医院办最省事,名字定好再填;写错要去医院改,很麻烦。出院后也能回医院办', 0, 1],
['乙肝疫苗第 1 针 + 卡介苗', 1, '医院出生后 24 小时内接种,出院前确认接种记录', 0],
['个税加上宝宝', 'm1', '「个人所得税」App 填 3 岁以下婴幼儿照护,出生当月起每月可扣 2000 元;晚填了也能在第二年汇算时补', 0, 1],
['办预防接种证', 'm1', '带出院时的接种记录,到户籍或居住地社区卫生服务中心建证', 0],
['上户口', 'm1', '《户口登记条例》规定出生后 1 个月内申报,带出生证、爸妈身份证、户口本、结婚证去派出所,或网上办', 0],
['乙肝疫苗第 2 针', 'm1', '满 1 个月到社区医院接种', 25],
['产后 42 天复查 + 宝宝体检', 42, '妈妈查子宫恢复、伤口、盆底,宝宝查生长发育;去生产医院或社区', 40],
['新生儿医保参保', 89, '出生后 90 天内参保,可以从出生那天起报销;有出生医学证明就能办,不用等上户口', 0],
['申请育儿补贴', 'm3', '落户后在支付宝、微信「育儿补贴」或当地政务平台申请,每年 3600 元;按年申领,没有出生后 3 个月的截止,早办早到账', 0, 1],
['申领社保卡 / 医保电子凭证', 'm3', '参保后办,看病报销要用', 0],
['申领生育津贴', 365, '一般单位代办,产假结束后提交;多数地方要求产后 1 年内', 90]
];
var st = C.store('mmbox.calc.shouxu', { b: 1, d: '', ok: {} });
if (!st.d) { var sd = C.savedDue(); if (!isNaN(sd)) { st.d = C.fmt(sd); st.b = sd > T ? 0 : 1; } }
var tabUi = C.seg($('#tabs'), st, 'b', function () { ui(); paint(); });
function ui() { $('#cDl').textContent = st.b ? '宝宝出生日期' : '预产期'; $('#cD').value = st.d; }
function due(b, x) { return typeof x === 'number' ? b + x * DAY : C.addMonths(b, +x.slice(1)); }
function paint() {
st.save();
var b = C.parse(st.d), R = $('#res');
$('#sTl').classList.toggle('hide', isNaN(b));
if (isNaN(b)) { R.innerHTML = '<div class="empty">填宝宝出生日期,马上排出时间线</div>'; return; }
var rows = L.map(function (x, i) { return { x: x, i: i, e: due(b, x[1]), s: b + x[3] * DAY, ok: !!st.ok[i] }; }).sort(function (p, q) { return p.e - q.e; });
var nx = null, late = 0, done = 0, soon = 0;
$('#tl').innerHTML = rows.map(function (r) {
var left = Math.round((r.e - T) / DAY), sf = r.x[4], lt = !r.ok && !sf && left < 0, cls = r.ok ? 'ok' : lt ? 'late now' : '';
if (r.ok) done++; if (lt) late++; if (!r.ok && sf && left < 0) soon++; if (!r.ok && left >= 0 && !nx) nx = r;
return '<li class="' + cls + '"><i class="d"></i><div class="m"><b>' + r.x[0] + (r.ok || (sf && left < 0) ? '' : lt ? '<em>已超过截止</em>' : left <= 7 ? '<em>还剩 ' + left + ' 天</em>' : '') + '</b>' +
'<span><i class="num">' + (r.x[3] ? C.cn(r.s) + ' 起,' : '') + (sf ? '建议 ' : '') + C.cn(r.e) + ' 前</i></span><span class="w">' + r.x[2] + '</span></div>' +
'<button type="button" class="ck" data-i="' + r.i + '">' + (r.ok ? '办好了 ✓' : '办好了') + '</button></li>';
}).join('');
R.innerHTML = nx ? '<small>' + (st.b ? '接下来最急的一件' : '宝宝出生后第一件要办的') + '</small><b class="big">' + nx.x[0] + '</b>' +
'<div class="row"><div><small>' + (nx.x[4] ? '建议在这天前' : '截止') + '</small><b class="num">' + C.cn(nx.e) + '</b></div><div><small>还剩</small><b class="num">' + Math.max(0, Math.round((nx.e - T) / DAY)) + ' 天</b></div></div>' +
'<div class="pg"><i style="width:' + (done / L.length * 100).toFixed(1) + '%"></i></div><span class="note">已办好 ' + done + ' / ' + L.length + ' 件' + (late ? ',有 ' + late + ' 件过了常规截止时间,尽快去办,多数还能补' : '') + '</span>'
: '<small>手续都办完啦</small><b class="big">' + (late ? '还有 ' + late + ' 件待补' : soon ? '还有 ' + soon + ' 件尽早办' : '全部搞定') + '</b><span class="note">已办好 ' + done + ' / ' + L.length + ' 件</span>';
}
$('#tl').addEventListener('click', function (e) { var b = e.target.closest('.ck'); if (!b) return; var i = b.dataset.i; if (st.ok[i]) delete st.ok[i]; else st.ok[i] = 1; paint(); });
$('#cD').addEventListener('change', function () { st.d = this.value; paint(); });
tabUi(); ui(); paint();
})();
</script>
<script src="../_shared/brand.js?v=26110203"></script>
<script src="../../js/share-card.js?v=26110464"></script>
<script>window.mbShare('../../assets/share/t/shouxu-js.jpg', '出生后手续时间线:每件事截止哪天'); /* 11-04 微信转发图 */</script>
<!-- 11-04 分步模式:一步一题、最后出结果(同生娃计算器),见 ../_shared/wizard.js -->
<script src="../_shared/wizard.js?v=26110464"></script>
<script>CKW.init({ root: '.calc', res: '#res', after: '#scroll > section.calc ~ *' });</script>
<script src="../../js/last-sub.js?v=26110905"></script> <!-- 11-07 小程序刷新回到这一页(见 js/last-sub.js) -->
<script src="../../js/pv.js?v=26110653"></script> <!-- 11-07 页面访问记录(推送效果看板,见 js/pv.js) -->
</body>
</html>