graph TD
Start((开始)) --> A[填写药品入库单]
A --> B{检查入库单号是否唯一}
B -->|否| C[重新生成或修改入库单号]
C --> A
B -->|是| D{校验供商编号与供商名称是否匹配}
D -->|否| E[修正供商信息]
E --> A
D -->|是| F{验证经办人是否存在且有效}
F -->|否| G[选择有效经办人]
G --> A
F -->|是| H{计算应付金额是否与明细一致}
H -->|否| I[重新核算应付金额]
I --> A
H -->|是| J{已付金额是否超过应付金额}
J -->|是| K[调整已付金额]
K --> A
J -->|否| L{未付金额是否等于应付金额减已付金额}
L -->|否| M[修正未付金额]
M --> A
L -->|是| N{入库类型是否允许当前操作}
N -->|否| O[选择正确的入库类型]
O --> A
N -->|是| P[保存药品入库单]
P --> End((结束))