Archived
活动包 views/target-style.ts / report.ts 与两份 W05 文档都指着 docs/SS02-ACT-WORK-05-html —— 模版「逐字节搬自目标件」的那份目标件此前没入库。docs/img/cy 三张 png 现无引用,随批入库。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0167qWjeyBwvfdGovd7FWbCu
342 lines
27 KiB
HTML
342 lines
27 KiB
HTML
<!doctype html>
|
||
<html lang="zh-CN">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||
<title>数据工单 1 · 芯片主数据创建(P-08)· SS02 ACT-WORK-05 差异评估</title>
|
||
<style>
|
||
:root{
|
||
--ink:#1f2329; --ink-2:#41464e; --ink-3:#646a73; --ink-4:#8f959e;
|
||
--line:#dee0e3; --line-soft:#e8eaed; --soft:#f8f9fb;
|
||
--brand:#3370ff; --brand-deep:#245bdb; --brand-soft:#e1eaff; --brand-wash:#f0f4ff;
|
||
--data:#3370ff; --data-soft:#e1eaff; --data-line:#c3d6ff;
|
||
--ok:#278717; --ok-soft:#e8f8e4; --danger:#d83931; --danger-soft:#feeae9;
|
||
--mono:"SF Mono",Menlo,Consolas,monospace;
|
||
}
|
||
*{box-sizing:border-box}
|
||
html,body{margin:0;padding:0}
|
||
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;background:#eef1f6;color:var(--ink);font-size:14px;line-height:1.7;-webkit-font-smoothing:antialiased}
|
||
.page{margin:0;padding:0}
|
||
.card{background:#fff;overflow:hidden;border:0;border-radius:0;box-shadow:none}
|
||
.card-head{display:flex;align-items:center;gap:14px;padding:18px 22px;border-bottom:2px solid var(--ink);background:linear-gradient(120deg,#f0f5ff 0%,#fff 55%,#eef4ff 100%)}
|
||
.badge{flex:none;width:44px;height:44px;border-radius:10px;display:grid;place-items:center;background:var(--data);color:#fff;font-weight:800;font-size:13px;box-shadow:0 6px 16px rgba(51,112,255,.25)}
|
||
.tit{flex:1;min-width:0}
|
||
.tit .kick{font-size:11px;letter-spacing:.08em;color:var(--ink-4);font-weight:700}
|
||
.tit h1{margin:2px 0 0;font-size:19px;font-weight:800;line-height:1.3}
|
||
.tit .sub{font-size:12px;color:var(--ink-3);margin-top:3px}
|
||
.side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:none}
|
||
.tag{font-size:11px;font-weight:800;padding:2px 10px;border-radius:999px;color:var(--data);background:var(--data-soft);border:1px solid var(--data-line)}
|
||
.step{font-size:12px;color:var(--ink-3)}
|
||
.deadline{font-size:12px;color:var(--ink-3)}
|
||
.deadline b{color:var(--danger)}
|
||
.card-bd{padding:20px 22px}
|
||
.zone{font-size:11px;font-weight:800;letter-spacing:.12em;color:var(--ink-4);margin:0 0 8px}
|
||
.zone b{color:var(--ink-3)}
|
||
.note{border:1px solid var(--line);border-left:3px solid var(--data);border-radius:8px;background:var(--soft);padding:14px 16px;margin-bottom:16px}
|
||
.note p{margin:0 0 6px;font-size:13px;color:var(--ink-2)}
|
||
.note p:last-child{margin-bottom:0}
|
||
.note b{color:var(--ink)}
|
||
.note .done{color:var(--ok);font-weight:700}
|
||
.note .need{color:var(--data);font-weight:700}
|
||
.jc-editgate{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0 10px;padding:9px 12px;border-radius:9px;background:var(--soft);border:1px solid var(--line-soft);font-size:12px;color:var(--ink-3)}
|
||
.jc-editgate-t{flex:1 1 auto;min-width:0}
|
||
.jc-editgate-t b{color:var(--ink-2);font-weight:700}
|
||
.jc-egbtn{flex:none;display:inline-flex;align-items:center;gap:5px;cursor:pointer;border:1px solid var(--line);border-radius:7px;padding:6px 13px;font:inherit;font-size:12px;font-weight:700;color:var(--ink-2);background:#fff;transition:border-color .16s,color .16s,background .16s}
|
||
.jc-egbtn:hover{border-color:var(--brand);color:var(--brand)}
|
||
.jc-egbtn.save{color:#fff;background:var(--data);border-color:var(--data)}
|
||
.jc-egbtn.save:hover{filter:brightness(1.06);color:#fff}
|
||
.jc-editgate .eg-cancel,.jc-editgate .eg-save{display:none}
|
||
.jc-editgate.on{background:var(--brand-wash);border-color:var(--data-line);color:#1e40af}
|
||
.jc-editgate.on .eg-open{display:none}
|
||
.jc-editgate.on .eg-cancel,.jc-editgate.on .eg-save{display:inline-flex}
|
||
.tbl-wrap{border:1px solid var(--line-soft);border-radius:10px;overflow:hidden}
|
||
table{width:100%;border-collapse:collapse;font-size:12.5px}
|
||
th{text-align:left;background:var(--soft);font-size:11px;letter-spacing:.03em;font-weight:800;color:var(--ink-3);padding:9px 10px;border-bottom:1px solid var(--line)}
|
||
th.req::after{content:" *";color:var(--danger);font-size:11px}
|
||
td{padding:8px 10px;border-bottom:1px solid var(--line-soft);vertical-align:middle}
|
||
tr:last-child td{border-bottom:0}
|
||
td.rn{position:relative;width:38px;white-space:nowrap;font-family:var(--mono);font-size:11px;color:var(--ink-4);text-align:center}
|
||
.jc-vcell{display:block;font-size:12.5px;color:var(--ink);line-height:1.5;overflow-wrap:anywhere}
|
||
.jc-vcell.mono{font-family:var(--mono);font-size:11.5px;color:var(--ink-2)}
|
||
.jc-cell{display:none;width:100%;min-width:60px;border:1px solid var(--line);border-radius:6px;padding:6px 8px;font:inherit;font-size:12.5px;color:var(--ink);background:#fff}
|
||
.jc-cell.mono{font-family:var(--mono);font-size:11.5px}
|
||
.jc-cell:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-wash);outline:none}
|
||
table.on td>.jc-vcell{display:none}
|
||
table.on td>.jc-cell{display:block}
|
||
td.rn .jc-rowdel{display:none;width:22px;height:22px;margin:0 auto;cursor:pointer;border:1px solid var(--line);border-radius:6px;padding:0;font:inherit;font-size:14px;line-height:1;color:var(--ink-3);background:#fff}
|
||
td.rn .jc-rowdel:hover{border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}
|
||
table.on td.rn .jc-rn-num{display:none}
|
||
table.on td.rn .jc-rowdel{display:block}
|
||
.jc-addrow{display:none;margin:8px 0 0;padding:8px 12px;border-radius:9px;background:var(--soft);border:1px dashed var(--line);font-size:12px;color:var(--ink-3)}
|
||
.jc-addrow.show{display:flex;align-items:center;gap:8px}
|
||
.jc-addrow button{cursor:pointer;border:1px solid var(--brand-soft);border-radius:7px;padding:5px 12px;font:inherit;font-size:12px;font-weight:700;color:var(--brand-deep);background:var(--brand-wash)}
|
||
.jc-addrow button:hover{background:var(--brand-soft)}
|
||
.jc-addrow em{font-style:normal;font-size:11.5px;color:var(--ink-4)}
|
||
.flow{margin-top:16px;padding:9px 12px;border-radius:8px;background:var(--soft);border:1px dashed var(--line);font-size:12px;color:var(--ink-3)}
|
||
.flow b{color:var(--ink)}
|
||
.card-foot{padding:13px 22px;border-top:1px solid var(--line-soft);font-size:11.5px;color:var(--ink-4);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
|
||
@media(max-width:600px){.card-head{flex-wrap:wrap}.side{align-items:flex-start}}
|
||
/* 补充:数据工单专用标识(仅追加,不改动基件样式) */
|
||
.mono{font-family:var(--mono);font-size:12px;color:var(--ink-2)}
|
||
.pre{font-style:normal;font-size:10.5px;font-weight:800;color:var(--data);background:var(--data-soft);border:1px solid var(--data-line);border-radius:999px;padding:0 7px;margin-left:6px;white-space:nowrap}
|
||
table.on td>.pre{display:none}
|
||
.ct{display:inline-block;font-size:11px;font-weight:700;padding:1px 8px;border-radius:999px;border:1px solid transparent;white-space:nowrap}
|
||
.ct.hard{color:var(--danger);background:var(--danger-soft);border-color:#f3b9b5}
|
||
.ct.soft{color:var(--ink-3);background:#eef1f6;border-color:var(--line)}
|
||
.tbl-gap{margin-top:18px}
|
||
</style>
|
||
<style>
|
||
/* ===== 视觉补充段 v3(通用批量模板:字段即表头、每行一条;不改基件样式与 JS 钩子) ===== */
|
||
.hic{flex:none;width:26px;height:26px;color:var(--data)}
|
||
.zic{width:14px;height:14px;color:var(--ink-3);vertical-align:-2px;margin-right:3px}
|
||
/* 表头内字段说明(第二行小字) */
|
||
.thd{display:block;font-size:10px;font-weight:600;color:var(--ink-4);letter-spacing:0;margin-top:1px;line-height:1.4}
|
||
/* 表 1:字段即表头,内容多列,允许横向滚动 */
|
||
#tbl1{min-width:1240px}
|
||
#tbl1 .jc-vcell{display:inline}
|
||
/* 表 2 列宽 */
|
||
#tbl2 th:nth-child(2){width:150px}
|
||
#tbl2 th:nth-child(3){width:18%}
|
||
#tbl2 th:nth-child(4){width:14%}
|
||
#tbl2 th:nth-child(5){width:8%;text-align:center;white-space:nowrap}
|
||
#tbl2 th:nth-child(6){width:13%;text-align:center;white-space:nowrap}
|
||
#tbl2 td:nth-child(5),#tbl2 td:nth-child(6){text-align:center;white-space:nowrap}
|
||
/* 说明列(只读注释,编辑态保持可见) */
|
||
.desc{color:var(--ink-3);font-size:12px;line-height:1.5}
|
||
table.on td>.jc-vcell.ro{display:block}
|
||
.tbl-wrap{overflow-x:auto}
|
||
@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}
|
||
</style>
|
||
</head>
|
||
<body>
|
||
<div class="page">
|
||
<div class="card">
|
||
|
||
<header class="card-head">
|
||
<div class="badge">数据</div>
|
||
<svg class="hic" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><ellipse cx="10" cy="5" rx="7" ry="3"/><path d="M3 5v14c0 1.66 3.13 3 7 3 1.13 0 2.21-.09 3.2-.26"/><path d="M3 12c0 1.66 3.13 3 7 3 1.13 0 2.21-.09 3.2-.26"/><circle cx="18" cy="18" r="4.2"/><path d="M18 15.8v4.4M15.8 18h4.4"/></svg>
|
||
<div class="tit">
|
||
<div class="kick">SS02 · ACT-WORK-05 差异评估 · 数据工单 1/1</div>
|
||
<h1>芯片主数据创建(P-08)</h1>
|
||
<div class="sub">收件人:<span data-slot="meta.task.owner">PW · 王工</span> · 关联任务:<span data-slot="meta.task.id">TASK-BT02-20260818-007</span></div>
|
||
</div>
|
||
<div class="side">
|
||
<span class="tag">数据工单</span>
|
||
<span class="step" data-slot="meta.phase">等待数据 · 步骤 0.5/5</span>
|
||
<span class="deadline">最迟交回:<b data-slot="card.deadline">1 个工作日</b></span>
|
||
</div>
|
||
</header>
|
||
|
||
<div class="card-bd">
|
||
|
||
<p class="zone"><svg class="zic" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="8" y="2" width="8" height="4" rx="1"/><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"/><path d="M9 12h6M9 16h4"/></svg><b>【做什么】</b>—— 批量创建 P-08 主数据记录</p>
|
||
<div class="note">
|
||
<p><span class="need">模板定位</span>:本单是「数据工单」统一模板的实例——<b>一单一类(可多条)</b>:目标台账=<b data-slot="meta.data.target_ledger">P-08</b>、本批创建=<b data-slot="meta.data.target_key">XL2596S-5.0(1 条,可加行增建)</b>;<b>字段即表头、每行一条新记录</b>。同一活动每次读数缺数据都可能再派发新实例(D02、D03…),模板与规则完全相同。</p>
|
||
<p><span class="need">触发原因</span>:系统按 internal_pn 查 P-08 <b>无「XL2596S-5.0」记录</b>——是「完全没有」,不是字段缺失。本单为<b>系统判断派发</b>的数据创建工单(与执行工单的「有而不全」严格区分,互不嵌套)。</p>
|
||
<p><span class="done">AI 预填</span>:本单已上传 datasheet(选填),AI 已预填 <b data-slot="sd.prefill_count">1 条记录 · 8 项字段 + 7 行参数</b>(标「预填」),请核对并补齐空缺;若本单未上传 datasheet,则全部手填,同为合法路径。</p>
|
||
<p><span class="need">纪律</span>:<b>确认即正式入库</b>(无草稿、无审核),确认人 = 数据责任人并留痕;只建主数据 / 资料,事实与证据记录(如验证记录)须实测产生;在对话区【数据卡】确认后,活动自动从「等待数据」唤醒进入步骤 1,本单不复用。</p>
|
||
</div>
|
||
|
||
<p class="zone"><svg class="zic" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="3" y="4" width="18" height="16" rx="2"/><path d="M3 10h18M9 10v10"/></svg><b>【创建什么 · 表 1】</b>—— 主数据记录(每行一条,*为必填列)</p>
|
||
|
||
<div class="jc-editgate" id="gate1">
|
||
<span class="jc-editgate-t"><b>每行一条新记录</b>,点「编辑」核对预填、补齐空缺;「+ 加一行」= 再建一条;必填列(*)全齐才允许确认</span>
|
||
<button class="jc-egbtn eg-open" type="button">编辑</button>
|
||
<button class="jc-egbtn eg-cancel" type="button">取消</button>
|
||
<button class="jc-egbtn eg-save" type="button">保存</button>
|
||
</div>
|
||
|
||
<div class="tbl-wrap">
|
||
<table id="tbl1">
|
||
<thead>
|
||
<tr>
|
||
<th style="width:38px">#</th>
|
||
<th class="req" data-h="内部料号">内部料号 internal_pn<span class="thd">全链路统一基准,不可自由文本</span></th>
|
||
<th class="req" data-h="品牌名称">品牌 brand_name<span class="thd">与制造商、供应商分开</span></th>
|
||
<th data-h="制造商名称">制造商 manufacturer_name<span class="thd">与品牌不一致时分开记录</span></th>
|
||
<th class="req" data-h="规格描述">规格描述 specification_description<span class="thd">按原厂资料口径</span></th>
|
||
<th class="req" data-h="封装">封装 package<span class="thd">影响硬约束比对</span></th>
|
||
<th data-h="工艺">工艺 process_technology<span class="thd">硬约束比较项</span></th>
|
||
<th class="req" data-h="生命周期状态">生命周期 lifecycle_status<span class="thd">Active/NRND/EOL/停产/风险</span></th>
|
||
<th data-h="EOL/PCN状态">EOL/PCN eol_pcn_status<span class="thd">条件必填:通知/影响/生效时间</span></th>
|
||
<th data-h="Datasheet引用+版本">Datasheet 引用+版本<span class="thd">成对条件:有引用必填版本</span></th>
|
||
<th data-h="适配应用场景">适配场景 application_scenarios<span class="thd">判断实际适用性</span></th>
|
||
</tr>
|
||
</thead>
|
||
<tbody data-rows="in.create_p08_fields">
|
||
<tr>
|
||
<td class="rn"><span class="jc-rn-num">1</span><button class="jc-rowdel" type="button" title="删除此行">×</button></td>
|
||
<td data-field="internal_pn"><span class="jc-vcell mono">XL2596S-5.0</span><em class="pre">预填</em><input class="jc-cell mono" value="XL2596S-5.0"></td>
|
||
<td data-field="brand_name"><span class="jc-vcell">XLSEMI</span><em class="pre">预填</em><input class="jc-cell" value="XLSEMI"></td>
|
||
<td data-field="manufacturer_name"><span class="jc-vcell">XLSEMI</span><em class="pre">预填</em><input class="jc-cell" value="XLSEMI"></td>
|
||
<td data-field="specification_description"><span class="jc-vcell">降压型 DCDC 稳压器,3A,固定 5.0V,150kHz</span><em class="pre">预填</em><input class="jc-cell" value="降压型 DCDC 稳压器,3A,固定 5.0V,150kHz"></td>
|
||
<td data-field="package"><span class="jc-vcell mono">TO-263-5</span><em class="pre">预填</em><input class="jc-cell mono" value="TO-263-5"></td>
|
||
<td data-field="process_technology"><span class="jc-vcell">BCD</span><em class="pre">预填</em><input class="jc-cell" value="BCD"></td>
|
||
<td data-field="lifecycle_status"><span class="jc-vcell">Active</span><em class="pre">预填</em><input class="jc-cell" value="Active"></td>
|
||
<td data-field="eol_pcn_status"><span class="jc-vcell">—</span><input class="jc-cell" value="—"></td>
|
||
<td data-field="datasheet_ref"><span class="jc-vcell mono">xlsemi.com/datasheet/XL2596S-5.0.pdf · Rev C</span><em class="pre">预填</em><input class="jc-cell mono" value="xlsemi.com/datasheet/XL2596S-5.0.pdf · Rev C"></td>
|
||
<td data-field="application_scenarios"><span class="jc-vcell">工业电源;消费电源</span><input class="jc-cell" value="工业电源;消费电源"></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
|
||
<div class="jc-addrow" id="addrow1">
|
||
<button type="button">+ 加一行(再建一条记录)</button>
|
||
<em>新行的必填列(*)全部填写后才允许确认;删一行 = 该记录不建</em>
|
||
</div>
|
||
|
||
<p class="zone tbl-gap"><svg class="zic" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M4 21v-7M4 10V3M12 21v-9M12 8V3M20 21v-5M20 12V3"/><path d="M1 14h6M9 8h6M17 16h6"/></svg><b>【创建什么 · 表 2】</b>—— 标准化参数集 normalized_parameter_set(每行一个参数,按所属料号归属,*必填)</p>
|
||
|
||
<div class="jc-editgate" id="gate2">
|
||
<span class="jc-editgate-t"><b>AI 已预填 7 行参数</b>(全部归属 XL2596S-5.0),点「编辑」核对修正;「+ 加一行」补充未列出的参数</span>
|
||
<button class="jc-egbtn eg-open" type="button">编辑</button>
|
||
<button class="jc-egbtn eg-cancel" type="button">取消</button>
|
||
<button class="jc-egbtn eg-save" type="button">保存</button>
|
||
</div>
|
||
|
||
<div class="tbl-wrap">
|
||
<table id="tbl2">
|
||
<thead>
|
||
<tr>
|
||
<th style="width:38px">#</th>
|
||
<th class="req" data-h="所属料号">所属料号 internal_pn<span class="thd">归属表 1 哪条记录</span></th>
|
||
<th class="req" data-h="参数名">参数名</th>
|
||
<th class="req" data-h="值">值</th>
|
||
<th data-h="单位">单位</th>
|
||
<th class="req" data-h="约束类型">约束(硬/软)</th>
|
||
<th data-h="说明">说明</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody data-rows="in.create_p08_params">
|
||
<tr>
|
||
<td class="rn"><span class="jc-rn-num">1</span><button class="jc-rowdel" type="button" title="删除此行">×</button></td>
|
||
<td data-field="internal_pn"><span class="jc-vcell mono">XL2596S-5.0</span><em class="pre">预填</em><input class="jc-cell mono" value="XL2596S-5.0"></td>
|
||
<td data-field="param"><span class="jc-vcell">输入电压范围</span><input class="jc-cell" value="输入电压范围"></td>
|
||
<td data-field="value"><span class="jc-vcell mono">4.5~40</span><input class="jc-cell mono" value="4.5~40"></td>
|
||
<td data-field="unit"><span class="jc-vcell">V</span><input class="jc-cell" value="V"></td>
|
||
<td data-field="constraint"><span class="jc-vcell"><span class="ct hard">硬约束</span></span><input class="jc-cell" value="硬约束"></td>
|
||
<td data-field="desc" class="desc"><span class="jc-vcell ro">必须覆盖客户输入(本例上限 40V)</span></td>
|
||
</tr>
|
||
<tr>
|
||
<td class="rn"><span class="jc-rn-num">2</span><button class="jc-rowdel" type="button" title="删除此行">×</button></td>
|
||
<td data-field="internal_pn"><span class="jc-vcell mono">XL2596S-5.0</span><em class="pre">预填</em><input class="jc-cell mono" value="XL2596S-5.0"></td>
|
||
<td data-field="param"><span class="jc-vcell">输出电压</span><input class="jc-cell" value="输出电压"></td>
|
||
<td data-field="value"><span class="jc-vcell mono">5.0(固定)</span><input class="jc-cell mono" value="5.0(固定)"></td>
|
||
<td data-field="unit"><span class="jc-vcell">V</span><input class="jc-cell" value="V"></td>
|
||
<td data-field="constraint"><span class="jc-vcell"><span class="ct hard">硬约束</span></span><input class="jc-cell" value="硬约束"></td>
|
||
<td data-field="desc" class="desc"><span class="jc-vcell ro">固定版 vs 可调版是硬差异点</span></td>
|
||
</tr>
|
||
<tr>
|
||
<td class="rn"><span class="jc-rn-num">3</span><button class="jc-rowdel" type="button" title="删除此行">×</button></td>
|
||
<td data-field="internal_pn"><span class="jc-vcell mono">XL2596S-5.0</span><em class="pre">预填</em><input class="jc-cell mono" value="XL2596S-5.0"></td>
|
||
<td data-field="param"><span class="jc-vcell">输出电流</span><input class="jc-cell" value="输出电流"></td>
|
||
<td data-field="value"><span class="jc-vcell mono">3</span><input class="jc-cell mono" value="3"></td>
|
||
<td data-field="unit"><span class="jc-vcell">A</span><input class="jc-cell" value="A"></td>
|
||
<td data-field="constraint"><span class="jc-vcell"><span class="ct hard">硬约束</span></span><input class="jc-cell" value="硬约束"></td>
|
||
<td data-field="desc" class="desc"><span class="jc-vcell ro">满载能力,须 ≥ 设计电流</span></td>
|
||
</tr>
|
||
<tr>
|
||
<td class="rn"><span class="jc-rn-num">4</span><button class="jc-rowdel" type="button" title="删除此行">×</button></td>
|
||
<td data-field="internal_pn"><span class="jc-vcell mono">XL2596S-5.0</span><em class="pre">预填</em><input class="jc-cell mono" value="XL2596S-5.0"></td>
|
||
<td data-field="param"><span class="jc-vcell">开关频率</span><input class="jc-cell" value="开关频率"></td>
|
||
<td data-field="value"><span class="jc-vcell mono">150</span><input class="jc-cell mono" value="150"></td>
|
||
<td data-field="unit"><span class="jc-vcell">kHz</span><input class="jc-cell" value="kHz"></td>
|
||
<td data-field="constraint"><span class="jc-vcell"><span class="ct soft">软约束</span></span><input class="jc-cell" value="软约束"></td>
|
||
<td data-field="desc" class="desc"><span class="jc-vcell ro">影响外围电感 / 电容选型</span></td>
|
||
</tr>
|
||
<tr>
|
||
<td class="rn"><span class="jc-rn-num">5</span><button class="jc-rowdel" type="button" title="删除此行">×</button></td>
|
||
<td data-field="internal_pn"><span class="jc-vcell mono">XL2596S-5.0</span><em class="pre">预填</em><input class="jc-cell mono" value="XL2596S-5.0"></td>
|
||
<td data-field="param"><span class="jc-vcell">静态电流</span><input class="jc-cell" value="静态电流"></td>
|
||
<td data-field="value"><span class="jc-vcell mono">4.2</span><input class="jc-cell mono" value="4.2"></td>
|
||
<td data-field="unit"><span class="jc-vcell">mA</span><input class="jc-cell" value="mA"></td>
|
||
<td data-field="constraint"><span class="jc-vcell"><span class="ct soft">软约束</span></span><input class="jc-cell" value="软约束"></td>
|
||
<td data-field="desc" class="desc"><span class="jc-vcell ro">影响待机功耗</span></td>
|
||
</tr>
|
||
<tr>
|
||
<td class="rn"><span class="jc-rn-num">6</span><button class="jc-rowdel" type="button" title="删除此行">×</button></td>
|
||
<td data-field="internal_pn"><span class="jc-vcell mono">XL2596S-5.0</span><em class="pre">预填</em><input class="jc-cell mono" value="XL2596S-5.0"></td>
|
||
<td data-field="param"><span class="jc-vcell">工作温度</span><input class="jc-cell" value="工作温度"></td>
|
||
<td data-field="value"><span class="jc-vcell mono">-40~+125</span><input class="jc-cell mono" value="-40~+125"></td>
|
||
<td data-field="unit"><span class="jc-vcell">℃</span><input class="jc-cell" value="℃"></td>
|
||
<td data-field="constraint"><span class="jc-vcell"><span class="ct hard">硬约束</span></span><input class="jc-cell" value="硬约束"></td>
|
||
<td data-field="desc" class="desc"><span class="jc-vcell ro">工业温域必须覆盖</span></td>
|
||
</tr>
|
||
<tr>
|
||
<td class="rn"><span class="jc-rn-num">7</span><button class="jc-rowdel" type="button" title="删除此行">×</button></td>
|
||
<td data-field="internal_pn"><span class="jc-vcell mono">XL2596S-5.0</span><em class="pre">预填</em><input class="jc-cell mono" value="XL2596S-5.0"></td>
|
||
<td data-field="param"><span class="jc-vcell">使能阈值</span><input class="jc-cell" value="使能阈值"></td>
|
||
<td data-field="value"><span class="jc-vcell mono">未披露</span><input class="jc-cell mono" value="未披露"></td>
|
||
<td data-field="unit"><span class="jc-vcell">V</span><input class="jc-cell" value="V"></td>
|
||
<td data-field="constraint"><span class="jc-vcell"><span class="ct hard">硬约束</span></span><input class="jc-cell" value="硬约束"></td>
|
||
<td data-field="desc" class="desc"><span class="jc-vcell ro">未披露项将进入 UNKNOWN 并挂验证任务</span></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
|
||
<div class="jc-addrow" id="addrow2">
|
||
<button type="button">+ 加一行(补充参数)</button>
|
||
<em>所属料号 / 参数名 / 值 / 单位 / 约束类型齐全;「未披露」请直接写未披露,将进入 UNKNOWN 并挂验证任务;「说明」列为系统注释,无需填写</em>
|
||
</div>
|
||
|
||
<div class="flow"><b>提交 / 确认:</b>本工单只承载内容;确认请在对话区【数据卡】中进行。</div>
|
||
|
||
</div>
|
||
|
||
<footer class="card-foot">
|
||
<span>SS02 · ACT-WORK-05 差异评估 · 数据工单 1/1 · 芯片主数据创建(P-08)</span>
|
||
<span style="font-family:'SF Mono',Menlo,Consolas,monospace">工单类型:数据 · <span data-slot="card.id">WO-ACT-WORK-05-D01</span></span>
|
||
</footer>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<script>
|
||
(function(){
|
||
function wire(gateId, tblId, addrowId, addTpl){
|
||
var gate = document.getElementById(gateId);
|
||
var tbl = document.getElementById(tblId);
|
||
var addrow = addrowId ? document.getElementById(addrowId) : null;
|
||
var tbody = tbl.querySelector('tbody');
|
||
function setEdit(on){ gate.classList.toggle('on',on); tbl.classList.toggle('on',on); if(addrow){ addrow.classList.toggle('show',on); } }
|
||
function sync(fromVtoC){ tbody.querySelectorAll('tr').forEach(function(tr){ tr.querySelectorAll('td').forEach(function(td){ var v=td.querySelector('.jc-vcell'),c=td.querySelector('.jc-cell'); if(v&&c){ if(fromVtoC){c.value=v.textContent;}else{v.textContent=c.value;} } }); }); }
|
||
function renumber(){ tbody.querySelectorAll('tr').forEach(function(tr,i){ tr.querySelector('.jc-rn-num').textContent=i+1; }); }
|
||
gate.querySelector('.eg-open').addEventListener('click', function(){ setEdit(true); });
|
||
gate.querySelector('.eg-cancel').addEventListener('click', function(){ sync(true); setEdit(false); });
|
||
gate.querySelector('.eg-save').addEventListener('click', function(){ sync(false); renumber(); setEdit(false); });
|
||
if(addrow && addTpl){
|
||
addrow.querySelector('button').addEventListener('click', function(){
|
||
var tr=document.createElement('tr');
|
||
tr.innerHTML=addTpl;
|
||
tbody.appendChild(tr); renumber();
|
||
});
|
||
tbody.addEventListener('click', function(e){ if(e.target.classList.contains('jc-rowdel')){ e.target.closest('tr').remove(); renumber(); } });
|
||
}
|
||
}
|
||
wire('gate1','tbl1','addrow1',
|
||
'<td class="rn"><span class="jc-rn-num"></span><button class="jc-rowdel" type="button" title="删除此行">×</button></td>'+
|
||
'<td><span class="jc-vcell mono"></span><input class="jc-cell mono" placeholder="内部料号*"></td>'+
|
||
'<td><span class="jc-vcell"></span><input class="jc-cell" placeholder="品牌*"></td>'+
|
||
'<td><span class="jc-vcell"></span><input class="jc-cell" placeholder="制造商"></td>'+
|
||
'<td><span class="jc-vcell"></span><input class="jc-cell" placeholder="规格描述*"></td>'+
|
||
'<td><span class="jc-vcell mono"></span><input class="jc-cell mono" placeholder="封装*"></td>'+
|
||
'<td><span class="jc-vcell"></span><input class="jc-cell" placeholder="工艺"></td>'+
|
||
'<td><span class="jc-vcell"></span><input class="jc-cell" placeholder="生命周期*"></td>'+
|
||
'<td><span class="jc-vcell"></span><input class="jc-cell" placeholder="EOL/PCN"></td>'+
|
||
'<td><span class="jc-vcell mono"></span><input class="jc-cell mono" placeholder="Datasheet 引用 · 版本"></td>'+
|
||
'<td><span class="jc-vcell"></span><input class="jc-cell" placeholder="适配场景"></td>');
|
||
wire('gate2','tbl2','addrow2',
|
||
'<td class="rn"><span class="jc-rn-num"></span><button class="jc-rowdel" type="button" title="删除此行">×</button></td>'+
|
||
'<td><span class="jc-vcell mono"></span><input class="jc-cell mono" placeholder="所属料号*"></td>'+
|
||
'<td><span class="jc-vcell"></span><input class="jc-cell" placeholder="参数名"></td>'+
|
||
'<td><span class="jc-vcell mono"></span><input class="jc-cell mono" placeholder="值"></td>'+
|
||
'<td><span class="jc-vcell"></span><input class="jc-cell" placeholder="单位"></td>'+
|
||
'<td><span class="jc-vcell"></span><input class="jc-cell" placeholder="硬约束 / 软约束"></td>'+
|
||
'<td><span class="jc-vcell ro">—</span></td>');
|
||
})();
|
||
</script>
|
||
</body>
|
||
</html>
|