export const getDisable = (code, id, value) => { return code === 'LOCKED' && !!id && (value || value === 0); }; // 利润分析的权限校验 export const getProfitDisable = (field, code, id, value) => { // 包装费用,汇率不允许修改 if (['exchangeRate', 'profitRate'].includes(field)) { return true; } // code是lock,编辑并且value存在,才需要审核 return code === 'LOCKED' && !!id && (value || value === 0); }; // 基本信息的权限校验 客户编码、项目号、生产科、内部编号、业务员 才需要审核 //业务员可更改的权限:订单基本信息:客户编码、项目号、内部编码 //跟单员可更改的权限:订单基本信息:客户po号、客户style、Mode(REFERENCE)、COLLECTION(style desciption)、PO COLOR、订单图片、颜色中文、生产要求、订单成分、款式类型、生产科拖货时间、订单上HOD时间、出库类型、包装类型 export const getBaseDisable = (field, code, id, role) => { if (['picUrl', 'productionComment'].includes(field) && role == 'business_user') { return code === 'LOCKED' && !!id; } else if (!['customerCode', 'projectNo', 'innerNo'].includes(field) && role == 'business_user') { return code === 'LOCKED' && !!id; } else if ( [ 'customerCode', 'projectNo', 'productionDepartment', 'innerNo', 'orderCount', 'businessPerson', ].includes(field) && (role === 'admin' || role === 'tracker_user') ) { return code === 'LOCKED' && !!id; } return false; }; // export const getBaseDisable = (field, code, id) => { // if ( // [ // 'customerCode', // 'projectNo', // 'productionDepartment', // 'innerNo', // 'orderCount', // 'businessPerson', // ].includes(field) // ) { // return code === 'LOCKED' && !!id; // } // return false; // }; // 质量检测的disable函数 // 中期验货:只要是PASS, PASS 2ND, PASS 3RD, FAIL-RELEASE,就锁定。 // 终期验货:只要是PASS, PASS 2ND, PASS 3RD, FAIL-RELEASE,就锁定。 export const getQualityDisable = (field, code, id, value, endValue) => { // 确认自己是否是锁住的 // const isLock = getDisable(code, id, value); const isLock = code === 'LOCKED' && !!id; // 如果不是锁的,直接返回不锁 if (!isLock) return false; // 锁的话,需要在进行下面判断,确定要不要不锁 if (isLock) { // 所有字段就锁定判断,终期验货结果,值是PASS, PASS 2ND, PASS 3RD, FAIL-RELEASE就锁定。 const isEndLock = ['PASS', 'PASS 2ND', 'PASS 3RD', 'FAIL RELEASE'].includes(endValue); if (isEndLock) { // return isEndLock && !!id && (value || value === 0); return isEndLock; } else { // 中期验货结果,值是PASS, PASS 2ND, PASS 3RD, FAIL-RELEASE,就锁定。 if (field === 'midCheckResult') { return ['PASS', 'PASS 2ND', 'PASS 3RD', 'FAIL RELEASE'].includes(value); } } } return false; };