1. 移除工单、工件、日排产中的冗余工位组合/接驳台字段 2. 新增工位接驳台编码字段与唯一约束,关联WMS接驳台主数据 3. 重构日排产为工位产量分配模式,替代原接驳台列表 4. 新增备料单工位级字段与分批出库支持 5. 移除定时同步可生产数量,改为WMS实时拉取接口 6. 过滤操作日志,排除登录/退出相关日志 7. 调整仪表盘工序展示逻辑为今日派工路线 8. 新增接驳台维护菜单与基础数据
4 lines
4.4 KiB
JavaScript
4 lines
4.4 KiB
JavaScript
import{j as E,c as K,a as e,w as o,k as b,F as S,l as U,h as w,r,i as B,o as y,g as i,f as m,n as I,p as F,t as g,E as D,v as V}from"./index-CeNpw27z.js";import{c as O}from"./perm-DCTK2KrM.js";import{c as P,P as R}from"./help-92MqPoF4.js";const G={__name:"MaterialRequest",setup(Y){const t=U({planDate:"",orderNo:"",status:"",materialCode:"",materialName:"",targetDock:""}),c=B([]),N=n=>n==="PENDING"?"待备料":n==="CONFIRMED"?"已确认":n;async function p(){c.value=await w.get("/material-requests",{params:t})||[]}async function M(){if(!t.planDate)return D.warning("请先选择排产日期");await V.confirm(`将按排产日期 ${t.planDate} 的所有工单,根据各产品物料清单自动计算所需物料并生成备料单。确认继续?`,"生成备料",{type:"info"});const n=await w.post("/material-requests/generate",{planDate:t.planDate});if(n!=null&&n.blocked){const l=(n.missing||[]).join("、");await V.alert(`以下物料在 WMS 物料档案中不存在,请先到 WMS 创建物料档案后再生成备料单:
|
|
|
|
${l}`,"无法生成备料单",{type:"error",confirmButtonText:"知道了"});return}D.success(`已生成 ${(n==null?void 0:n.count)||0} 条备料`),p()}return E(()=>{t.planDate=new Date().toISOString().slice(0,10),p()}),(n,l)=>{const k=r("el-alert"),x=r("el-date-picker"),u=r("el-form-item"),d=r("el-input"),_=r("el-option"),C=r("el-select"),f=r("el-button"),h=r("el-form"),s=r("el-table-column"),q=r("el-table"),v=r("el-card");return y(),K(S,null,[e(v,null,{default:o(()=>[e(k,{type:"info",closable:!1,style:{"margin-bottom":"12px"},title:"备料单:根据「日排产」自动算出某天要生产的所有工单所需物料。选好排产日期后点「按日排产生成备料」,系统按各产品物料清单(单台用量×计划数量×(1+损耗率))自动汇总生成备料单,仓库据此备料出库。"}),e(h,{inline:""},{default:o(()=>[e(u,{label:"日期"},{default:o(()=>[e(x,{modelValue:t.planDate,"onUpdate:modelValue":l[0]||(l[0]=a=>t.planDate=a),type:"date","value-format":"YYYY-MM-DD",onChange:p},null,8,["modelValue"])]),_:1}),e(u,{label:"工单号"},{default:o(()=>[e(d,{modelValue:t.orderNo,"onUpdate:modelValue":l[1]||(l[1]=a=>t.orderNo=a),clearable:"",style:{width:"160px"},onKeyup:i(p,["enter"])},null,8,["modelValue"])]),_:1}),e(u,{label:"图号"},{default:o(()=>[e(d,{modelValue:t.materialCode,"onUpdate:modelValue":l[2]||(l[2]=a=>t.materialCode=a),clearable:"",style:{width:"150px"},placeholder:"不区分大小写",onKeyup:i(p,["enter"])},null,8,["modelValue"])]),_:1}),e(u,{label:"物料名称"},{default:o(()=>[e(d,{modelValue:t.materialName,"onUpdate:modelValue":l[3]||(l[3]=a=>t.materialName=a),clearable:"",style:{width:"150px"},onKeyup:i(p,["enter"])},null,8,["modelValue"])]),_:1}),e(u,{label:"接驳台"},{default:o(()=>[e(d,{modelValue:t.targetDock,"onUpdate:modelValue":l[4]||(l[4]=a=>t.targetDock=a),clearable:"",style:{width:"120px"},placeholder:"如 DOCK05",onKeyup:i(p,["enter"])},null,8,["modelValue"])]),_:1}),e(u,{label:"状态"},{default:o(()=>[e(C,{modelValue:t.status,"onUpdate:modelValue":l[5]||(l[5]=a=>t.status=a),clearable:"",placeholder:"全部",style:{width:"130px"}},{default:o(()=>[e(_,{label:"待备料",value:"PENDING"}),e(_,{label:"已确认",value:"CONFIRMED"})]),_:1},8,["modelValue"])]),_:1}),e(u,null,{default:o(()=>[e(f,{type:"primary",onClick:p},{default:o(()=>[...l[6]||(l[6]=[m("查询",-1)])]),_:1}),b(O)("produce.material:generate")?(y(),I(f,{key:0,type:"success",onClick:M},{default:o(()=>[...l[7]||(l[7]=[m("按日排产生成备料",-1)])]),_:1})):F("",!0)]),_:1})]),_:1}),e(q,{data:c.value,border:"",size:"small"},{default:o(()=>[e(s,{prop:"requestNo",label:"备料单号","min-width":"180"}),e(s,{prop:"orderNo",label:"工单号","min-width":"130"}),e(s,{prop:"planDate",label:"排产日期",width:"110"}),e(s,{prop:"materialCode",label:"图号","min-width":"110"}),e(s,{prop:"materialName",label:"物料名称","min-width":"110"}),e(s,{prop:"unit",label:"单位",width:"70"}),e(s,{prop:"manageMode",label:"管理方式",width:"110"},{default:o(({row:a})=>[m(g(a.manageMode==="1"?"结构件(批次)":"电气件(SN)"),1)]),_:1}),e(s,{prop:"reqQty",label:"需求数量",width:"90"}),e(s,{prop:"status",label:"状态",width:"90"},{default:o(({row:a})=>[m(g(N(a.status)),1)]),_:1}),e(s,{prop:"operator",label:"操作人",width:"90"})]),_:1},8,["data"])]),_:1}),e(R,{data:b(P),page:"MaterialRequest"},null,8,["data"])],64)}}};export{G as default};
|